AWS EC2'yi kullanmaya başladığımda, sadece bir sunucu döndüreceğimi düşündüm. Çoğu tutorial bunu söylüyor. Sadece “bir varsayım başlat” ve iyi. Ama bilmediğim şey şu: EC2 yüzeyde basittir, ancak size zaman, para ve akılcılığa mal olabilecek birçok gizli ayrıntıya sahiptir. İşte EC2'yi ilk kez kullanmadan önce birisinin bana söylediği her şey - böylece yaptığım hatalardan kaçınabilirsiniz. 1. Doğru örnek türü seçmek seçmeli değildir İlk kararınız örneğin örnek türüdür. ve ve Ve böylece. t2.micro t3.medium m5.large Daha sonra en ucuz olanı seçtim. Serbest hayvan değil mi? t2.micro Benim App’im çöktü. Neden? “burstable” durumların nasıl çalıştığını anlamadım. : What I learned t2.micro CPU kredilerini kullanır. Zamanla kredileri kazanır ve uygulamanızın daha fazla CPUye ihtiyacı olduğunda harcar. Uzun süreli bir işlem (örneğin bir yapılandırma veya senaryo) çalıştırırsanız, kredilerinizi hızlı bir şekilde bitirebilirsiniz. Bir kez çalıştırdığınızda, örneği çok yavaş hale gelir. : What to do instead Sadece deney yapıyorsanız veya statik bir site barındırıyorsanız, t2.micro iyi. Arka plan görevleri için daha istikrarlı bir şeye ihtiyacınız varsa, t3 veya m serisini kullanın. Her zaman örneğinizi gerçek çalışma yükünüzle eşleştirin - fiyat etiketine değil. Güvenlik Grupları Yangın Duvarlarıdır (Ve Önemlidir) EC2 örneğimi başlattığımda, SSH'yi açamadım. Kırıldığını düşünüyordum. Ama bu sadece o - EC2'nin bir güvenlik duvarı sürümü - benim erişimimi engellemek. security group : What I learned Varsayılan olarak, EC2 tüm gelen trafiği engeller. Portları SSH (port 22) veya HTTP (port 80) için bile manuel olarak açmalısınız. Uygulamayı bir tarayıcıda ziyaret etmek istiyorsanız, portu 80 (veya HTTPS için 443) izin vermelisiniz. : What to do instead Örnek oluştururken, IP'nizden SSH'yi izin vermek için bir kural ekleyin. Kamu web siteleri için HTTP ve HTTPS izin verin. Tüm limanları dünyaya açmayın, bu sorunlara neden oluyor. EC2 sadece boş bir sunucu İçeriye girdiğimde, yazdım Node uygulamasını çalıştırın. node “Uygulama bulunamadı” denedim Bu da işe yaramadı. git pull Sonra beni vurdu - EC2 sadece bir Hiçbir şey önceden yüklü gelmez. bare OS : What I learned Her şeyi yüklemeniz gerekir: Node, Python, Git, Nginx, ne olursa olsun. Hiç bir GUI yok, sadece bir terminal. Temel olarak, bulutdan bir bilgisayar kiralamak gibidir. : What to do instead Başlangıç kurulumunu otomatikleştirmek için bir başlangıç senaryosunu kullanın. Ya da her şey istediğiniz şekilde yapılandırıldıktan sonra kendi özelleştirilmiş AMI'nizi oluşturun. Sık sık dağıtıyorsanız, Elastic Beanstalk veya AWS AMI görüntüleri önceden yüklü yığınlarla kullanmayı düşünün. 4. EC2 verilerinizi size söylemediğiniz sürece saklamaz Bir kez EC2 örneğimi yeniden başlattım ve tüm uygulama dosyalarım kayboldu. gitmiş Neden kullanıyordum - Stop / Start'ta temizleyici temizler. ephemeral storage : What I learned EC2 iki ana depolama türüne sahiptir: Instance Store (tüm zamanlı) ve EBS (sıkı kalıcı). Sadece EBS hacimleri kapatıldıktan sonra verilerinizi korur. Bazı AMI'ler değişmediği sürece varsayılan olarak instance store'a kaydedilir. : What to do instead Her zaman önemli bir şey için EBS kullanın. Düzenli olarak sesinizin sesini çıkarın. Daha fazla dayanıklılık istiyorsanız, bunun yerine dosyaları S3'e kaydetmeyi düşünün. 5. Kamu IP'leri Değişebilir (Elastic IP'leri kullanmadığınız sürece) Güzel bir küçük uygulama inşa ettim, onu EC2'de dağıttım ve IP'yi arkadaşlarıma gönderdim. Birkaç gün sonra, işe yaramadığını söylediler. Bildiğim kadarıyla IP adresi değişti. : What I learned EC2 örneği durdurduğunuz ve başlattığınız her zaman yeni bir kamu IP atar. Eğer istikrarlı bir IP istiyorsanız, Elastic IP'yi kullanmalısınız. : What to do instead EC2 > Elastic IPs'e gidin ve birini atın. Bunları kendi durumunuzla ilişkilendirin. DNS'inizi güncelleyin veya bu IP'yi ön kodunuzda kullanın. Not: Kullanılmayan Elastic IP'ler için ücretlendirileceksiniz, bu nedenle ihtiyaç duyulmadığında serbest bırakın. SSH anahtar çiftleri her şeydir Sadece bir şifreyle giriş yapamazsınız. Örneğin, AWS’i açtığınızda, AWS bir - Bu Dosyaları key pair .pem Tekrar ihtiyacım olmadığımı düşündüğümü silmiştim. Büyük bir hata. : What I learned .pem dosyası olmadan, SSH'yi örneğe aktaramazsınız. Kaybederseniz, yeni bir örneği oluşturmanız veya bir anlık çözümü kullanmanız gerekir. : What to do instead Anahtarınızı güvenle saklayın. Uygulama ile %100 tamamlanmadıkça asla silmeyin. Bir şifre yöneticisi veya güvenli yedekleme aracı kullanın. 7. Auto Shutdown ayarlamak gerekir ya da unutursunuz Bir ay boyunca çalıştığım bir EC2 örneğini bıraktım. Hatta farkında bile değildim. Bilet gelene kadar. : What I learned EC2 ikincisi ile yüklenir, ancak yalnızca örneğin çalıştığı sürece. Bir şey çalışıyorsa herhangi bir uyarı veya hatırlatma yoktur. : What to do instead Kullanılmayan örnekleri durdurmak için bir takvim hatırlatması ayarlayın. Harcamalar hakkında uyarılar almak için AWS Bütçeleri'ni kullanın. Aynı zamanda otomatik olarak durdurmak için bir Lambda işlevi ayarlayabilirsiniz EC2 sürümleri. EC2 Güçlü, Ama Her Zaman En İyi Seçenek Değil Sadece statik bir web sitesini barındırmaya çalışıyorsanız, EC2 aşırı ölür. Linux’u kullanmak istemiyorsanız. : What I learned EC2 size tam kontrol sağlar - bu da tam sorumluluk anlamına gelir. For simpler use cases, AWS offers easier tools: for frontend apps Amplify for managed backends Elastic Beanstalk for WordPress or quick server setup Lightsail for serverless tasks Lambda : What to do instead Gerçekten neye ihtiyacınız olduğunu düşünün. Sadece bir şey test ediyorsanız, EC2 iyi. Ama mantıklı olmasa bile altyapıyı yönetmeye zorlamayın. Son Düşünceler EC2 güçlü bir araçtır.Ama çoğu AWS servisi gibi, ne yaptığınızı bildiğinizi varsayar. Belgeler her zaman işleri basitleştirmez. Ve küçük bir ayar, saatlerce denetleme veya beklenmedik maliyetlere yol açabilir. Ancak temel bilgileri anladığınızda – varsayımlar, IP’ler, depolama, güvenlik duvarları – EC2 anlamaya başlar. Güvenebileceğiniz bir araç haline geliyor. Unutmayın: EC2'yi gerçek bir sunucu gibi muamele edin. Ve biraz hazırlık size daha sonra çok acı kurtarır.