Como pasou unha startup de docker-compose a Kubernetes

Neste artigo gustaríame falar de como cambiamos o enfoque da orquestración no noso proxecto de inicio, por que o fixemos e que problemas resolvemos ao longo do camiño. Este artigo dificilmente pode pretender ser único, pero sigo pensando que pode ser útil para alguén, xa que no proceso de resolución do problema, recollemos o material cun esforzo decente.  

Que tiñamos e de que falamos? E tivemos un proxecto de inicio con preto de 2 anos de historia de desenvolvemento no campo da publicidade. O proxecto foi construído inicialmente como un microservizo, e a súa parte do servidor escribiuse en Symfony + un pouco de Laravel, Django e NodeJs nativos. Os servizos son principalmente unha API para clientes móbiles (no proxecto hai 3) e o noso propio SDK para IOS (integrado nas aplicacións dos nosos clientes), así como interfaces web e varios paneis de control destes mesmos clientes. Todos os servizos foron inicialmente dockerizados e executáronse baixo docker-compose.

É certo que docker-compose non se utilizou en todas partes, senón só no ambiente local dos desenvolvedores, nun servidor de proba e dentro da canalización ao construír e probar servizos. Pero no entorno de produción utilizouse o Google Kubernetes Engine (GKE). Ademais, configuramos GKE ao inicio do proxecto íntegramente a través da súa interface web, que era bastante rápida e, como nos pareceu entón, cómoda. Aquí só se automatizou o proceso de creación de imaxes docker para lanzar servizos en GKE.

Ler máis