Hogyan jutott el egy startup a docker-compose-tól a Kubernetes-hez

Ebben a cikkben arról szeretnék beszélni, hogyan változtattuk meg a hangszerelés megközelítését startup projektünk során, miért csináltuk, és milyen problémákat oldottunk meg az út során. Ez a cikk aligha állíthatja, hogy egyedi, de mégis úgy gondolom, hogy valakinek hasznos lehet, hiszen a probléma megoldása során tisztességes csikorgással gyűjtöttük össze az anyagot.  

Mi volt és miről beszélünk? És volt egy start-up projektünk, körülbelül 2 éves fejlesztési múlttal a hirdetési területről. A projekt eredetileg mikroszolgáltatásként épült fel, és a szerver része Symfonyban + egy kis Laravel, Django és natív NodeJ-ben íródott. A szolgáltatások alapvetően egy mobil klienseknek szánt API (3 db van a projektben) és egy saját SDK for IOS (ügyfeleink alkalmazásaiba beépítve), valamint ugyanezen ügyfelek webes felületei és különféle dashboardjai. Kezdetben minden szolgáltatás dokkolós volt, és a docker-compose futtatta.

Igaz, a docker-compose-t nem mindenhol használták, hanem csak a fejlesztők helyi környezetében, a tesztszerveren és a pipeline belsejében a szolgáltatások kiépítése és tesztelése során. Az éles környezetben azonban a Google Kubernetes Engine-t (GKE) használták. Sőt, a GKE konfigurálását a projekt elején teljes egészében a webes felületén keresztül végeztük el, ami elég gyors volt, és ahogy akkoriban úgy tűnt, kényelmes is. Itt csak a GKE szolgáltatásainak futtatásához szükséges docker-képfájlok létrehozásának folyamatát automatizáltuk.

Tovább