AWS bulut hizmetleri içerisinde var olan bir hizmeti durdurmadığınız zaman faturanız artmaya devam edecektir. Bazı durumlarda maliyeti için hizmeti etkili bir şekilde kullanmanız gerekmektedir. Sürecin düzgün yönetilmediği durumlarda başınıza ufak sorunlara yol açabilir.
Bu yazıda sizlere AWS hesabınız içerisindeki kaynakları hızlı ve etkili bir şekilde temizlemek için kullanacağınız güçlü bir araçtan bahsedeceğim. Bu araç ile kaynakları manuel olarak yönetebilir veya terraform gibi yapılar kullanarak işlemleri otomatikleştirebilirsiniz. Cloud-Nuke GitHub’da bulunan açık kaynaklı bir araçtır.
Cloud-Nuke, bir hesaptaki tüm AWS kaynaklarını silmek veya hesabı temizlemek için tasarlanan bir araçtır. Cloud-Nuke kullanarak hesap içerisindeki kaynakları manuel temizleme görevlerinden kurtulursunuz. Windows kullanıcıları için Winget komutunu kullanarak kurulum yapabilirsiniz.
“winget install cloud-nuke”

Resim-1
Winget üzerinden kurulum işe yaramazsa Cloud-Nuke kurulumunu GitHub üzerinden manuel olarak indirip kurabilirsiniz. Kurulumu doğrulamak için aşağıdaki komutu çalıştırabilirsiniz.
“cloud-nuke”

Resim-2
Cloud-Nuke’u kullanmadan önce AWS erişim anahtarınızı, gizli anahtarınızı ve bölgenizi değişken olarak dışarı çıkarmanız gerekir. Aşağıdaki komutları kullanarak bu işlemi yapabilirsiniz:
export AWS_ACCESS_KEY_ID=”xxxxxxxxxxxxxxxx”
export AWS_SECRET_KEY==”xxxxxxxxxxxxxxx”
export AWS_REGION=”<eu-west-1>”
Bu işlemi yapmak istemiyorsanız eğer bu değerleri bilgisayarınız içerisine Environment Variable olarak da ekleyip ilerleyebilirsiniz.
Cloud-Nuke komutunu çalıştırmak AWS hesabınızdaki tüm kaynakları silecektir. Bu yüzden komutun geri dönüşü olmadığı için bu komutu kullanırken dikkatli olmalısınız. Tüm AWS kaynaklarını silmek için aşağıdaki komutu çalıştırabilirsiniz:
“cloud-nuke aws”

Resim-3
Bu komut silinmek üzere olan kaynakları listeler. Listelenen kaynakları silmeden önce onaylamak için “nuke” komutunu yazıp Enter’a basmalısınız.
Belirli bir bölgedeki kaynakları silmek istiyorsanız eğer –region parametresini kullanabilirsiniz. (us-east-1)
“cloud-nuke aws –region us-east-1”
Bu komutu çalıştırdıktan sonra AWS hesabınızdaki “us-east-1” region içerisindeki kaynakları silmiş olacaksınız.
Belirli kaynakların silinmesini engellemek için komut içerisinde –exclude-resource-type parametresini kullanmalısınız.
“cloud-nuke aws –exclude-resource-type s3 –exclude-resource-type ec2”
Aşağıdaki komutu kullanarak resource type IAM group, IAM policy, IAM role, IAM service linked role ve IAM servisi haricindeki tüm kaynaklar silinecektir.
“cloud–nuke aws –exclude-resource-type iam-group –exclude-resource-type iam-policy –exclude-resource-type iam-role –exclude-resource-type iam-service-linked-role –exclude-resource-type iam”
Belirli bir zamandan önce oluşturulan kaynakları silmek istiyorsanız –older-than parametresini kullanabilirsiniz.
“cloud-nuke aws –older-than 24h”
Belirli bir kaynak türlerini hedeflemek için resource-type parametresini kullanabilirsiniz.
“cloud-nuke aws –resource-type ec2 –resource-type ami
Bu durumda sadece ec2 ve ami kaynakları silinecektir.
Bu komutu kullanmadan önce kaynaklarınızın bağımlılığı olup olmadığı kontrol etmelisiniz. Cloud-Nuke komutunu kullanmadan önce tüm bağımlılıkların kaldırıldığından emin olmalısınız. Ayrıca hesaba uygulanan herhangi bir Service Control Policy politikasının olup olmadığını kontrol etmelisiniz.
Faydalı Olması Dileğiyle…
Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.
Referanslar
TAGs: AWS, Cloud-Nuke, Service Control Policy, AWS Organization, AWS EC2, AWS Region, AWS IAM, Winget, AWS Secret Key, AWS Access Key, IAM Role, IAM Policy


