Jak jeden startup przeszedł od docker-compose do Kubernetes

W tym artykule chciałbym opowiedzieć o tym, jak zmienialiśmy podejście do orkiestracji w naszym projekcie startupowym, dlaczego to robiliśmy i jakie problemy napotykaliśmy po drodze. Ta artykuł nie może rościć sobie prawa do unikalności, ale mimo to myślę, że może być przydatny dla kogoś, ponieważ w trakcie rozwiązywania problemu materiał był zbierany przez nas z dużym wysiłkiem.  

Co mieliśmy i o czym w ogóle mowa? Mieliśmy projekt startupowy z około 2-letnią historią rozwoju w obszarze reklamy. Projekt był początkowo budowany jako mikroserwisowy, a jego część serwerowa została napisana w Symfony + trochę Laravel, Django i natywnego NodeJs. Usługi to głównie API dla mobilnych klientów (w projekcie są 3) i nasze własne SDK dla iOS (wbudowane w aplikacje naszych klientów), a także interfejsy webowe i różne pulpity dla tych klientów. Wszystkie usługi były początkowo zdockerowane i działały pod zarządzaniem docker-compose.

Prawda jest taka, że docker-compose nie był używany wszędzie, a tylko w lokalnym środowisku u programistów, w teście serwerze i wewnątrz pipeline przy budowaniu i testowaniu usług. Natomiast w środowisku produkcyjnym używano Google Kubernetes Engine (GKE). Co ciekawe, konfigurację GKE na początku projektu robiliśmy całkowicie przez jego interfejs webowy, co było dość szybkie i, jak nam się wtedy wydawało, wygodne. Zautomatyzowany był tylko proces budowy obrazów dockerowych do uruchamiania usług w GKE.

Czytaj dalej

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster