Talk

The essense of Graceful Shutdown

Thursday, May 29

15:35 - 16:05
RoomFusilli
LanguageEnglish
Audience levelIntermediate
Elevator pitch

What is graceful shutdown? Not many people are aware of this term and how to use it properly. Recently every app can be deployed using containers and orchestrators of containers, which makes this problem even more important.

Abstract

What is graceful shutdown? Not many people are aware of this term and how to use it properly. Recently every app can be deployed using containers and orchestrators of containers, which makes this problem even more important.

So our workloads must be “Cloud Native Apps” which means it relies upon some orchestrators like Kubernetes or another container orchestrator. The lifecycle usually includes killing workloads and we need to adapt to it properly. When the orchestrator sends special signals to restart the workload we need to understand what’s is signals and why we have all of them.

So in this talk, I’ll walk you through different patterns of how to add graceful shutdown to your services and apps, why it’s important, and also how to investigate and adapt to orchestrators and be in sync with them about signals. Also, I’ll demonstrate how to shut down long-running tasks and connections gracefully so your users will be happy during releases and other different maintenance work.

TagsBest Practice, DevOps and SRE
Participant

Andrii Soldatenko

Python developer in the day, Go developer (gopher) under the hood. Big fan of full-text search and graph databases.

Contributed to different open source projects:

Apache Airflow (airflow helm chart and other related projects). docker registry pyhelm, aiohttp-swagger, mezzanine chalice, requests, aiohttp tutorial sendgrid-python and sendgrid-django OpenAPI v3 specification, fix Go docs Speaker at KCD Austria 2023, FOSDEM 2020 and 2023 (Go and Rust dev rooms), GoDays 2020, PyCaribbean, PyCon Israel, PyCon Italia 2017 and 2022, EuroPython 2016 and 2022, PyCon Ukraine 2014, OdessaPy and lot’s of local meetups.