AWS Emulator ile bulutun bir kısmı PC'de
AWS Emulator, AWS API'lerini yerel makinede sunan Rust tabanlı bir araç. Testler buluta gitmediği için ücretsiz, ancak her özellik birebir değil.

- AWS, API'lerini yerel makinede sunan AWS Emulator adlı aracı yayımladı.
- Rust ile yazılan araç, testler buluta gitmediği için ücretsiz kullanılıyor.
- IAM politikaları AWS'deki gibi değerlendirilmiyor; hesaplar arası ve bölgeler arası davranış da yok.
AWS, geliştiricilerin kodunu kendi bilgisayarında denemesi için AWS Emulator adlı bir araç yayımladı. Program, AWS'nin API uç noktasını yerel makinede sunuyor ve testler buluta hiç uğramadığı için ücret doğurmuyor. Ancak bulutun kendisi değil, yalnızca API'leri geliyor; IAM politikaları bile AWS'deki gibi değerlendirilmiyor.
AWS Emulator'ın kapsamı
GitHub deposundaki tanıma göre araç, AWS API uç noktası sunan yerel bir program. Yazılımı AWS'yi çağırmadan denemek için kullanıyorsunuz: kendi makinenizde, bir geliştirme sunucusunda ya da sürekli entegrasyon (CI) hattında. Testler AWS bulutuna dokunmadığı için kullanım bedava.

AWS aracı Rust diliyle yazdı. Kıdemli uzman çözüm mimarı Daniel Abib'e göre bu tercih, aracın dizüstü bilgisayarda işlemciyi ve belleği az yormasını sağlıyor.
AWS Emulator, AWS API modelleri deposunda API modeli bulunan servisleri destekliyor. Aynı depoda 1.300'den fazla öğe listeleniyor. Bununla birlikte araç, AWS bulutunun bütün özelliklerini kopyalamıyor.
Sınırlar ve sadakat puanları
Abib'in yazdığına göre emulator, IAM (kimlik ve erişim yönetimi) politikalarını AWS'nin yaptığı gibi değerlendirmiyor. Her emulator tek bir hesap gibi çalışıyor; hesaplar arası ya da bölgeler arası davranış yok. AWS'ye ne kadar yaklaşıldığı da servise ve özelliğe göre değişiyor.
AWS, AWS Emulator'ın hangi serviste AWS'ye ne kadar yakın çalıştığını gösteren “sadakat puanları” (fidelity scores) yayımlıyor. Amazon tam sadakati hedefliyor: geçerli API çağrılarında AWS'yle aynı sonuç, geçersiz çağrılarda aynı hata çıkması gerekiyor.
Kodlama ajanları ve kurulum
AWS Emulator'ı yapay zeka kodlama ajanları da kullanabiliyor. AWS'ye göre bir projenin araçla çalışıp çalışmayacağını anlamanın en kolay yolu, kodlama ajanları için hazırlanan aws-emulator becerisini (skill) kullanmak. Ajan öncelikle projenin bağlı olduğu AWS işlemlerini ve kaynaklarını buluyor. Ardından bunları sadakat testleri ve puanlarıyla karşılaştırıyor. Hangi kısımlar için emulator'a güvenilebileceğini, hangilerinin AWS'den farklı davranabileceğini de bildiriyor.
Abib'in tarifi şöyle: emulator kurulur, başlatılır, araçlar yerel uç noktaya yönlendirilir. İlk açılışta kendi kimlik bilgilerini, bir yapılandırma dosyasını ve bir sertifikayı üretip ~/.aws/emulator/9297/ klasörüne yazıyor. Ortam değişkenleri ayarlanınca AWS SDK, AWS yerine dizüstü bilgisayarla konuşuyor. Bu yüzden uygulama kodu aynı kalıyor.
Örneğin Amazon DynamoDB tablosu oluşturan, bir kayıt yazıp geri okuyan birim testi olduğu gibi çalışıyor. Fark, testin dağıtım gerektirmeden kendi makinede işlemesi. Aynı zamanda mevcut CLI betikleri ve kodlama ajanları da eskisi gibi çalışmayı sürdürüyor.
AWS'nin amacının, geliştiricilere kodlarının AWS'de iyi çalışacağından emin olma ve bunu kolayca deneme imkanı verip bulut kullanımını artırmak olduğu anlaşılıyor.
AWS Emulator, RPM ya da Debian paketi olarak sunuluyor. Öte yandan Mac ve PC kullanıcıları Docker çalıştırıp emulator imajını kullanmak zorunda.
Haberde hata mı var?Bize bildirin
Senin fikrin ne?
Bu gelişme hakkında sen ne düşünüyorsun?
Yorumlar
İlk yorumu siz yazın.