Michal works as a software engineer at Kiwi.com. Python is his language of choice since high school. He likes challenges, travelling and learning new things.
Kubernetes won the container orchestration war in 2017 and become the de facto standard for deploying containerized applications at scale. Many software projects, including Python projects, are being migrated to Kubernetes nowadays. The vision of a beautiful Cloud-native ecosystem powered by Kubernetes, where the smallest misbehavior of services is detected and everything scales automatically is very nice. However, the way to such an ecosystem can be longer and harder than it seems to be. What are the real challenges of migrating complex Python system to Kubernetes? What are the threats you should be aware of?
This talk summarizes the experience gained during the migration of booking, one of the most critical Python services at Kiwi.com, to Google Kubernetes Engine. Booking is a mixture of legacy services, new services based on Flask and asynchronous Celery tasks. I will be talking about our approach, our success, but also our failures and things we've learned the hard way.