Kod Olarak Altyapı
Kod Olarak Altyapının bulut kaynaklarını tekrarlanabilir, sürüm denetimli ve otomatik sağlama için bildirimsel olarak tanımlamanızı nasıl sağladığını öğrenin.
Kod Olarak Altyapı, CoddyKit'te ücretsiz bir System Design Basics for Backend Developers dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, System Design Basics for Backend Developers öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. System Design Basics for Backend Developers kursu toplamda 4 dersten oluşur.
Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.
From Clicking to Code
Manually clicking through a cloud console to create servers and networks is slow, error-prone, and impossible to reproduce. Infrastructure as Code (IaC) defines your infrastructure in files you can version, review, and re-run.
Why IaC Matters
IaC brings software engineering discipline to infrastructure:
- Version control and code review for changes
- Reproducible environments (dev, staging, prod identical)
- Automated, fast provisioning and teardown
- Self-documenting infrastructure
Declarative vs Imperative
IaC tools are usually declarative: you describe the desired end state and the tool figures out how to get there. Imperative scripts instead list the exact steps. Declarative is easier to reason about and converge to.
A Declarative Resource
Here is a declarative definition of a virtual machine. You state what should exist; the tool creates or updates it to match.
resource "aws_instance" "web" {
ami = "ami-123456"
instance_type = "t3.micro"
tags = {
Name = "web-server"
}
}Idempotency
A core IaC property is idempotency: applying the same definition repeatedly yields the same result. If the resource already matches, nothing changes. This makes re-runs safe.
State and Drift
Many tools track a state of what they manage. When reality diverges — someone changes a resource by hand — that is drift. The tool detects drift and can reconcile infrastructure back to the declared definition.
Plan Before Apply
Good IaC workflows preview changes before applying them. A plan step shows exactly what will be created, changed, or destroyed, so you catch a destructive change in review rather than in production.
$ terraform plan
+ aws_instance.web will be created
~ aws_security_group.sg will be updated
- aws_instance.old will be destroyedProvisioning vs Configuration
Two related but distinct jobs:
- Provisioning creates infrastructure (Terraform, CloudFormation, Pulumi)
- Configuration management sets up software on existing machines (Ansible, Chef, Puppet)
Containers and immutable images blur this line.
Modules and Reuse
Avoid copy-paste by packaging infrastructure into reusable modules with input variables. One well-tested module can stamp out identical, parameterized environments for many teams.
module "web" {
source = "./modules/app"
instance_type = "t3.small"
env = "production"
}IaC and Cloud-Native CI/CD
IaC fits naturally into pipelines: a commit triggers a plan, review approves it, and the pipeline applies it. Combined with containers and Kubernetes manifests, the entire stack — network, cluster, and apps — becomes reproducible from code.
Best Practices
Keep IaC healthy: store state remotely and locked, never hardcode secrets, review every plan, keep modules small, and treat infrastructure code exactly like application code — tested and reviewed.
Quick Check
Test your understanding of Infrastructure as Code.
Recap
You learned the foundations of Infrastructure as Code:
- Declarative definitions describe desired state idempotently
- State tracking detects and reconciles drift
- Plan before apply to preview changes safely
- Modules enable reuse; IaC integrates into CI/CD pipelines
Sıkça Sorulan Sorular
“Kod Olarak Altyapı” dersi ücretsiz mi?
Evet — “Kod Olarak Altyapı” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve System Design Basics for Backend Developers kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. System Design Basics for Backend Developers kursu toplamda 4 dersten oluşur.
“Kod Olarak Altyapı” dersinde ne öğreneceğim?
Kod Olarak Altyapının bulut kaynaklarını tekrarlanabilir, sürüm denetimli ve otomatik sağlama için bildirimsel olarak tanımlamanızı nasıl sağladığını öğrenin. System Design Basics for Backend Developers ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
System Design Basics for Backend Developers öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te System Design Basics for Backend Developers, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Kod Olarak Altyapı” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu System Design Basics for Backend Developers dersinde kod yazıp çalıştırabilir miyim?
Evet. Her System Design Basics for Backend Developers dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Sunucusuz Mimariler
- Docker ve K8s ile Konteynerleştirme
- Gözlemlenebilirlik ve Dağıtık İzleme
- Kod Olarak Altyapı