22/02/2022

AWS Cloudformation

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.

Leave a Reply