Bir başlanğıc docker-compose-dən Kubernetesə necə keçdi

Bu yazıda startap layihəmizdə orkestrləşməyə yanaşmanı necə dəyişdiyimizdən, bunu nə üçün etdiyimizdən və bu yolda hansı problemləri həll etdiyimizdən danışmaq istərdim. Bu məqalə çətin ki, unikal olduğunu iddia edə bilər, amma yenə də hesab edirəm ki, bu, kiməsə faydalı ola bilər, çünki problemin həlli prosesində material bizim tərəfimizdən layiqli bir cırıltı ilə toplanmışdır.  

Nəyimiz var idi və nədən danışırıq? Və bizim reklam sahəsindən təxminən 2 illik inkişaf tarixi olan bir başlanğıc layihəmiz var idi. Layihə əvvəlcə mikroservis kimi qurulmuşdu və onun server hissəsi Symfony + bir az Laravel, Django və yerli NodeJ-lərdə yazılmışdır. Xidmətlər əsasən mobil müştərilər üçün API (layihədə onlardan 3-ü var) və IOS üçün öz SDK-mız (müştərilərimizin tətbiqlərində quraşdırılmışdır), həmçinin bu eyni müştərilərin veb interfeysləri və müxtəlif idarə panelləridir. Bütün xidmətlər əvvəlcə dokerləşdirilmiş və docker-compose tərəfindən idarə edilmişdir.

Düzdür, docker-compose hər yerdə istifadə olunmurdu, yalnız inkişaf etdiricilərin yerli mühitində, sınaq zamanı istifadə olunurdu. server və xidmətlərin qurulması və sınaqdan keçirilməsi zamanı boru kəməri daxilində. İstehsal mühitində Google Kubernetes Engine (GKE) istifadə etdik. Üstəlik, layihənin əvvəlində GKE-ni tamamilə veb interfeysi vasitəsilə konfiqurasiya etdik ki, bu da olduqca sürətli və o vaxt düşündüyümüz kimi rahat idi. Yeganə avtomatlaşdırılmış proses GKE-də xidmətləri işə salmaq üçün Docker şəkillərinin yaradılması idi.

daha ətraflı