Senin sorun
ECS, EC2'de yalnızca bir docker kurulumu mu? Zaten bir EC2'ye sahipsem, bir ECS başlatırım, bu iki örneğim olduğu anlamına mı gelir?
Hayır AWS ECS
, EC2
örneklerin mantıksal bir gruplamasıdır (küme) ve tüm EC2
örnekler, bir ana bilgisayar ECS
olarak hareketin parçasıdır, Docker
yani ECS üzerlerinde bir kapsayıcı başlatmak için komut gönderebilir ( EC2
). Zaten bir EC2'niz varsa ve ardından ECS'yi başlatırsanız, yine de tek bir örneğiniz olur. ECS'yi ECS'ye ekler / kaydederseniz (AWS ECS Container Agent'ı yükleyerek) EC2 kümenin bir parçası olur, ancak yine de tek bir EC2 örneği olur.
EC2 kaydı olmayan (kümeye eklenmiş) bir Amazon ECS hiçbir işe yaramaz.
TP; DR
Genel Bakış
EC2
- basitçe uzak (sanal) bir makinedir.
ECS
açılımı Elastic Container Service
- temel tanıma uygun olarak bilgisayar küme , ECS
temel olarak bir mantıksal gruplandırmadır
EC2
makineleri / durumlarda . Teknik olarak konuşursak ECS
, EC2
örnek (ler) in kaynaklarınızın verimli kullanımı ve yönetimi için yalnızca bir yapılandırmadır (ör. Depolama, bellek, CPU vb.)
Daha da basitleştirmek için, Amazon ECS
herhangi bir EC2
örnek eklenmemiş bir başlattıysanız , hiçbir şey için iyidir, yani bu konuda hiçbir şey yapamazsınız. ECS
yalnızca bir (veya daha fazla) EC2
örnek eklendiğinde anlamlıdır .
Buradaki bir sonraki kafa karıştırıcı şey, konteyner terimidir - ki bu tamamen sanallaştırılmış makine örnekleri değildir ve Docker , konteyner örnekleri oluşturmak için kullanabileceğimiz bir teknolojidir. Docker
bizim makinemize kurabileceğiniz bir yardımcı programdır, bu onu bir Docker
ana bilgisayar yapar ve bu ana bilgisayarda kapsayıcılar oluşturabilirsiniz (sanal makinelerle aynı - ancak çok daha hafif). Özetlemek gerekirse ECS
, EC2 bulut sunucularının kümelenmesi ile ilgilidir ve Docker
bu ( EC2
) ana bilgisayarlarda kapsayıcıları / örnekleri / sanal makineleri başlatmak için kullanır .
Yapmanız gereken tek şey bir başlatmak ECS
ve EC2
ihtiyaç duyduğunuz kadar çok örnek kaydetmek / eklemek . EC2 bulut sunucuları ekleyebilir / kaydedebilirsiniz; tek ihtiyacınız olan, EC2 bulut sunucunuzda / makinenizde çalışan Amazon ECS Container Agent'tır. Bu, manuel olarak veya doğrudan özel AMI (Amazon Machine Image), yani halihazırda sahip olan Amazon ECS için optimize edilmiş AMI kullanılarak yapılabilir. Amazon ECS Container Agent. Yeni bir EC2 bulut sunucusunun başlatılması sırasında, Aracı onu otomatik olarak varsayılan ECS kümesine kaydeder.
Kap madde örnekleri (her biri üzerinde çalışan EC2
bir mesafede olan örnekler) Amazon ECS
küme örneğinin mevcut çalışan görevlerin ve Amazon ECS kaynak kullanımı, ve başlar hakkında bilgi gönderir ve Amazon ECS bir talep aldığı her görevleri durur. Daha fazla bilgi için bkz.Amazon ECS Container Agent . Bir kez ayarlandıktan sonra, oluşturulan kapsayıcı örneklerinin her biri (hangi EC2
makine / düğümden olursa olsun ) Amazon ECS
sürüsündeki bir örnek olacaktır .
Daha fazla bilgi için bu belgedeki 10. adımı okuyun: Bir Amazon ECS Container Bulut Sunucusunu Başlatma :
Kapsayıcı örneğiniz için bir AMI seçin. Amazon ECS için optimize edilmiş AMI'yi veya CoreOS ya da Ubuntu gibi başka bir işletim sistemini seçebilirsiniz. Amazon ECS için optimize edilmiş AMI'yi seçmezseniz Amazon ECS Container Agent'ı Yükleme bölümündeki prosedürleri izlemeniz gerekir .
Varsayılan olarak, kapsayıcı örneğiniz varsayılan kümenizde başlatılır. Varsayılan yerine kendi kümenizi başlatmak istiyorsanız, Gelişmiş Ayrıntılar listesini seçin ve aşağıdaki komut dosyasını Kullanıcı verileri alanına yapıştırarak kümenizin_adını, kümenizin adıyla değiştirin.
#!/bin/bash
echo ECS_CLUSTER=your_cluster_name >> /etc/ecs/ecs.config
Veya Amazon S3'te bir ecs.config dosyanız varsa ve Amazon S3'ün kapsayıcı örnek rolünüz için salt okunur erişimini etkinleştirdiyseniz, Gelişmiş Ayrıntılar listesini seçin ve aşağıdaki komut dosyasını Kullanıcı verileri alanına yapıştırın, your_bucket_name'nizi şu adla değiştirin: Paketiniz, AWS CLI'yi yüklemek ve başlatma sırasında yapılandırma dosyanızı yazmak için. Not Bu yapılandırma hakkında daha fazla bilgi için bkz. Container Instance Configuration'ı Amazon S3'te Saklama.
#!/bin/bash
yum install -y aws-cli
aws s3 cp s3://your_bucket_name/ecs.config /etc/ecs/ecs.config
Daha fazla açıklığa kavuşturmak için - EC2
olmadan tek örneğinizde kapsayıcılar oluşturabilirsiniz ECS
. Konteynırlaştırma teknolojilerinden herhangi birini yükleyin, yani Docker
konteynır oluşturma komutunu çalıştırın, kendinizi EC2
bir Docker
ana bilgisayar olarak ayarlayın ve Docker
istediğiniz kadar konteynere (veya EC2
kaynaklarınızın izin verdiği kadar) sahip olun.