ECS Fargate Deployment Stratejileri

Konuyu dogru mu sectim bilmiyorum ama bir sorum olacak.

ECS ve Fargate uzerinde bir feature icin socket server ayaga kaldirdim. Trafik akisi su sekilde:

ALB → Target Group → ECS Cluster → Fargate

Deploymentlarimi Jenkins uzerinden yapiyorum.

Söyle bir problemim var;

Deployment aldigimda var olan container(task) uzerindeki socket baglantilari kopuyor ya da container ölmeden yeni container ayaga kalkmiyor.
Yeni bir deployment aldigimda (task olusturdugumda) yeni bir container ayaga kaldirsin ve yeni gelen baglantilar surekli o container’a gitsin istiyorum, eski deploymentteki baglantilar bittiginde de eski deployment ölsün istiyorum fakat basaramadim. Dedigim sekilde yapmak mümkün mü? ALB yerine API Gateway kullanmam gerekiyor?

Umarim soruyu dogru sekilde sormusumdur. Tesekkurler.

Deployment tanımlarınızda liveness ve readiness probe kullanarak uygulamanızın ayakta ve çalışır durumda olduğunu kontrol ediyor musunuz? bu tanımlar yoksa dediğiniz soruna çözüm bulamazsınız.

Deploymenttan kastim CI/CD kismindaki deployment, kubernetes objesi degil. ECS cluster’im var, liveness ve readiness prob yok diye biliyorum ECS’de. Umarim yoktur :slight_smile:

pardon ECS demişsiniz ben otomatik EKS diye okudum :slight_smile: Evet ECS’de bu probelar yok, sadece healthcheck var. bildiğim kadarıyla ECS’de bunu çözemezsiniz. Ama yine de bir ECS support kısıma bakın AWS’de belki dökümanlarda vardır birşeyler benim bilmediğim.

Bu probleme yanit vereyim, istedigimi yapamamis olsam da baska sekilde cozdum.
Minumum ve Maximum Healty Percent ayarlarini 100 ve 200 seklinde yaptim, yeni deployment geldiginde yeni taskler (containerlar ayaga kalkiyor.) 2 tane task varsa 4 tane oluyor yani.

Bir onceki deploymentta kalan containerlar ölmeden önce deploymentten gelen SIGTERM sinyalleri ile socket servarlarda islemler yapiyorum. Task Stop = Docker container Stop komutuna denk geliyor. Socketleri oldurmek, var olan sureyle islemler yapmak gibi. Boylelikle gracefully shutdown yapmis oluyorum.

Ilgili dokumanda cok güzel aciklamis:

Tesekkurler yardimlarin icin. @ozgurozturknet

1 Beğeni