Infrastructure i kod olarak JSON olarak veya YAML olarak yazıyoruz ve deploy ediyoruz. Aşağıda ki gibi bir deneme yaparken AMI-ID ye ihtiyaç olacak onuda yeni bir instance yaratma işlemi yaparken öğreneceğiz.
Resources:
MyInstance:
Type: AWS::EC2::Instance
Properties:
AvailabilityZone: eu-central-1a
ImageId: ami-0eb7496c2e0403237
InstanceType: t2.micro
Daha sonra Cloudformation a gidiyoruz.
Upload a template seçiyoruz ve upload ediyoruz. Daha sonra designer da görmek istersek
Herşey uygunsa “create stack” tıklayabiliriz.
Daha sonra bir isim veriyoruz ve next next create stack diyerek oluşturuyoruz.
Events ten olayları takip ediyoruz. Kurulum bittiği zaman artık bir s3 bucketimiz birrde EC2 instancemız oluşmuş olacak.
Cloudformation templatelerinin kullanımı konusunda AWS in dokümantasyonu iyidir.
Eğer cloudformation ile S3 oluşturmak istersek
S3Bucket.yml
Resources:
Canstraining:
Type: AWS::S3::Bucket
Properties:
AccessControl: PublicRead
WebsiteConfiguration:
IndexDocument: index.html
ErrorDocument: error.html
Eğre bir stack i silmek istersek Cloudformation neyi oluşturduğunu ve neyi silmesi gerektiğini biliyor ancak eğer herhangi birşeyde değişiklik yaptıysak silinmeyebilir dolayısıyla onu manuel temizlemek zorunda kalabiliriz. Mutlaka delete action ın sonucunu takip etmeliyiz ki gereksiz masraf çıkarmasın sonra.