Cuma akşamı, Instagram benzeri bir fotoğraf paylaşım uygulamasını yayına almak üzeresin. Kullanıcılar fotoğraf yükleyecek, akışta gezinecek, kalbe dokunacak. İlk kullanıcı gelmeden önce kodun çalışacağı bir yer, bir veritabanı, fotoğrafların duracağı bir depolama alanı ve gelen her görseli küçülten bir mekanizma gerekiyor. Akla gelen soru da basit. Azure ücretsiz hesap bunların ne kadarını karşılıyor, bedava kısım nerede bitiyor?
Bu yazıda bu ilk gün uygulamasını örnek alıyorum. Anlattığım kurgu tamamen hayali, Instagram’ın ya da başka bir şirketin gerçek altyapısını yansıtmıyor. Amaç, gerçek bir uygulamanın parçalarının Azure’ın ücretsiz sunduklarıyla nasıl eşleştiğini görmek.
Önce bilinmesi gereken üç kavram
Azure her şeyi üç fikirle düzenler ve ücretsiz sınırların içinde kalmak için üçü de önemlidir.
- Abonelik. Faturalandırma sınırıdır. Her maliyet bir aboneliğe bağlanır, ücretsiz hesap da senin için bir tane oluşturur.
- Kaynak grubu. Yaşam döngüsü olan bir klasör gibi düşünülebilir. Grup silindiğinde içindeki her şey de gider. Denemelerde kazanılabilecek en faydalı alışkanlık budur.
- Bölge. Kaynağın fiziksel olarak çalıştığı konumdur. Kullanıcılara yakın bir bölge seçilir ve her hizmetin ya da VM boyutunun her bölgede bulunmadığı akılda tutulur.
Tek hesap, üç ayrı saat
Azure ücretsiz hesap aslında ayrı ayrı işleyen üç tekliften oluşur.
- 200 dolarlık kredi. Hemen her hizmette kullanılabilir ama yalnızca 30 gün geçerlidir. 30. güne kadar harcanmayan kısım yanar.
- 12 ay ücretsiz hizmetler. 20’den fazla popüler hizmet ilk 12 ay boyunca aylık belirli bir miktarda ücretsizdir. Küçük bir Linux sanal makine ve bir PostgreSQL sunucusu bunlara örnektir.
- Her zaman ücretsiz hizmetler. 65’ten fazla hizmetin aylık ücretsiz miktarı, hesap açık kaldığı sürece devam eder. Azure Functions ve Cosmos DB bunların arasındadır.
Üçü de kayıt günü başlar ama farklı günlerde biter. İnsanların en çok takıldığı yer bu fark, aşağıda tekrar değiniyorum.
200 dolar asıl olarak ne için
Kredi bir barındırma bütçesi değil, laboratuvar bütçesi gibi düşünülmeli. Ücretsiz listede olmayan hizmetleri ve ücretsiz miktarın üstündeki kullanımı karşılar. Daha büyük bir VM, yönetilen Kubernetes kümesi ya da merak edilen bir yapay zeka servisi denemek için doğru yer burasıdır.
Sınırları da var. Azure Market’teki üçüncü taraf ürünlere uygulanmaz, Spot VM’lerde kullanılamaz ve Azure Hibrit Avantajı ile birleştirilemez. Ayrıca kullanılsın ya da kullanılmasın 30. günde sona erer. Bu yüzden küçük denemelerle damla damla harcamak yerine 30 günlük bir plan yapmak daha verimlidir.
İlk gün uygulamasını ücretsiz hizmetlerle eşleştirmek
Fotoğraf uygulamasının ihtiyaçları, bedava olanlarla şöyle eşleşir.
| Uygulamanın ihtiyacı | Azure hizmeti | Aylık ücretsiz miktar | Süre |
|---|---|---|---|
| Açılış sayfası ve web istemcisi | Static Web Apps | 100 GB bant genişliği, 2 özel alan adı | Her zaman |
| Yüklemede yeniden boyutlandırma, bildirim dağıtımı | Functions | 1 milyon istek | Her zaman |
| Telefonlara anlık bildirim | Notification Hubs | 1 milyon bildirim | Her zaman |
| Beğeni, yorum ve akış verisi | Cosmos DB | 1.000 RU/s ve 25 GB | Her zaman |
| Hesaplar ve ilişkisel veri | SQL Database (sunucusuz) | 100.000 vCore saniye, 32 GB | Her zaman |
| Aynı veri için Postgres seçeneği | PostgreSQL Esnek Sunucu | 750 saat B1MS, 32 GB | 12 ay |
| Özel işler için düz bir Linux sunucu | Sanal Makineler | 750 saat B1s | 12 ay |
| Dağıtım için kapsayıcı imajları | Container Registry | 1 Standart kayıt defteri, 100 GB | 12 ay |
| Kaynak kod ve pipeline | Azure DevOps | 5 kullanıcı, sınırsız özel Git deposu | Her zaman |
Fotoğraf dosyalarının kendisi Blob Storage’a gider. Ücretsiz payı zaman içinde değiştiği için tabloya bilerek almadım, güvenmeden önce güncel ücretsiz hizmetler listesine bakılması gerekir. 200 dolarlık kredinin işe yaradığı yer de burasıdır.
Dikkat edilirse bir örüntü var. Arka ucun büyük kısmı “Her zaman” satırlarında duruyor. Tasarım bu satırlara göre yapılırsa, 30. günden sonra kullandıkça öde planına geçilse bile uygulama aylık miktarlar içinde para harcamadan çalışmaya devam eder.
Hesabı açmak ve ilk kaynak grubunu oluşturmak
Kayıt için Microsoft ya da GitHub hesabı, telefon numarası ve kredi ya da banka kartı gerekir (ön ödemeli kartlar kabul edilmez). Doğrulama sırasında karta yaklaşık 1 dolarlık geçici bir provizyon konur ve sonradan iptal edilir. Teklif fatura adresine bağlı olduğu için ülke olarak fatura adresiyle eşleşen seçenek seçilir.
Portala girildiğinde Cloud Shell açılır ve denemeler için bir kaynak grubu oluşturulur. Cloud Shell zaten oturum açık geldiği için az login komutu yalnızca kendi bilgisayarında çalışırken gerekir.
az login az account show --output table az group create --name rg-photoapp-demo --location westeurope az group delete --name rg-photoapp-demo --yes
İlk iki komut hangi abonelikte olunduğunu gösterir. Üçüncüsü grubu oluşturur, sonuncusu da içindeki her şeyle birlikte siler. Her denemenin sonunda bu silme komutunu çalıştırmak, yazıdaki en ucuz alışkanlıktır.
Herkesin takıldığı yerler
- 30. gün. Kredi harcanmaz ve plana geçilmezse hizmetler durur, sonrasında kaldırılır. Geri getirmek için 30 gün daha süre tanınır. 30. günden önce plana geçilirse harcanmamış kredi 30. güne kadar kullanılmaya devam eder, yani son ana kadar beklemenin bir anlamı yok.
- 12. ay. 12 ay ücretsiz olan hizmetler kapanmaz. Çalışmaya devam eder ve kullandıkça öde fiyatından faturalanır. 11. aya takvim hatırlatıcısı koymak iyi olur.
- Ücretsiz boyut, her şeyin ücretsiz olması demek değildir. Ücretsiz bir VM boyutu, çevresindeki her şeyi ücretsiz yapmaz. Diskler ve ağ eklentileri ayrı kalemler olarak görünebilir. Her kaynağın yanında neler oluşturduğuna bakmak gerekir.
- Plana geçmek bir anahtardır. Kullandıkça öde planına geçmek ücretsiz hizmetleri yaşatır ama gerçek ücretlerin doğabileceği an da budur. Geçmeden önce bütçe uyarısı kurulur.
Diğer bulutlarla karşılaştırma
Aynı soru her platformda farklı cevaplanıyor.
| Sağlayıcı | Başlangıç teklifi | Süre | Süre bitince |
|---|---|---|---|
| Azure | 200 dolar kredi ve aylık ücretsiz miktarlar | Kredi 30 gün, popüler hizmetler 12 ay, 65’ten fazla hizmet her zaman | Plana geçilene kadar hizmetler durur, sonrasında yalnızca ücretsiz miktarların üstü ücretlenir |
| AWS | 100 dolar kredi, hizmetleri deneyerek 100 dolara kadar ek kredi | Ücretsiz plan en fazla 6 ay | Ücretli plana geçilmezse hesap kapanır, 30’dan fazla her zaman ücretsiz hizmet sürer |
| Google Cloud | 300 dolar kredi | 90 gün | İş yükleri durur, yükseltmek için 30 gün süre var, 20’den fazla her zaman ücretsiz ürün |
| DigitalOcean | 200 dolar kredi | 60 gün | Çalışan hizmetler standart fiyattan karta yansır, her zaman ücretsiz hesaplama yok |
İki fark öne çıkıyor. Azure, AWS ve Google Cloud’da deneme süresi, iş yüklerini durdurup kararını beklemekle biter. DigitalOcean’da durum farklı, 60 gün dolduğunda hâlâ çalışan her şey standart fiyattan faturalanmaya başlar. Dört sağlayıcı arasında en uzun süreyi Google veriyor.
Teklifler sık değiştiği için kayıt olmadan önce her sağlayıcının kendi sayfasından doğrulamak gerekir. Yukarıdaki AWS koşulları 15 Temmuz 2025 sonrasında açılan hesaplar için geçerlidir.
Akılda kalacaklar
Ücretsiz hesap, saatleri hesaba katarak plan yapanları ödüllendirir. Kalıcı olacak her şeyi her zaman ücretsiz satırlarına kurmak, 200 doları 30 günlük bir laboratuvar bütçesi olarak görmek ve 25. güne ile 11. aya hatırlatıcı koymak yeterli.
Bir sonraki yazıda plana geçmeden önce kurulması gereken bütçe uyarısını ve bir uygulama viral olduğu gece faturaya gerçekten ne olduğunu anlatıyorum.
Tüm projelerim ve üzerinde çalıştığım konuları incelemek istersen https://hub.barisgunduz.com/ adresini ziyaret edebilirsin.