Në këtë artikull do të doja të flasë për mënyrën si ne kemi ndryshuar qasjen ndaj orkestrimit në projektin tonë të startupit, pse e bëmë këtë dhe cilat probleme zgjidhëm gjatë këtij procesi. Kjo artikull nuk pretendohet të jetë unik, por gjithsesi mendoj se mund të jetë e dobishme për dikë, pasi gjatë zgjidhjes së detyrës, materiali u mbledh nga ne me një përkushtim të konsiderueshëm.
Çfarë kishim dhe për çfarë bëhet fjalë? Ishim në një projekt startup me rreth 2 vjet histori zhvillimi në fushën e reklamimeve. Projekti fillimisht u ndërtua si një mikros layanan dhe pjesa servere e tij është shkruar në Symfony + pak Laravel, Django dhe NodeJs të natyrshëm. Shërbimet përbëjnë kryesisht API për klientët mobilë (në projekt janë 3) dhe SDK-në tonë për IOS (integrimi në aplikacionet e klientëve tanë), si dhe ndërfaqe web dhe tabela të ndryshme për këta klientë. Të gjitha shërbimet u dockerizuan fillimisht dhe punuan nën menaxhimin e docker-compose.
E vërteta është, docker-compose u përdor vetëm në mjedisin lokal të zhvilluesve, në testin serveri dhe brenda pipeline gjatë ndërtimit dhe testimit të shërbimeve. Ndërsa në mjedisin production u përdor Google Kubernetes Engine (GKE). Për më tepër, konfigurimi i GKE në fillim të projektit u bë plotësisht përmes ndërfaqes së tij web, që ishte mjaft e shpejtë dhe, siç na dukej atëherë, e përshtatshme. Procesi i ndërtimit të imazheve docker për nisjen e shërbimeve në GKE ishte i automatizuar.
