KB:Process Manager (Supervisord/Tini)

The container process manager, often referred to as an "init system" (such as tini or supervisord), is a lightweight and essential component within containerized environments. Acting as the first process (PID 1) in a container, its primary responsibility is to monitor and manage all subsequent processes, ensuring that any child processes are properly started, monitored, and restarted in case of failure. This process manager is critical for maintaining container stability, as it handles important tasks like reaping zombie processes, forwarding system signals, and ensuring that resource consumption remains efficient. 
However, it is not considered best practice to run multiple processes within a single container or pod; each pod/container should have a primary init process focused on a single responsibility to align with the principles of containerization, such as process isolation and microservices architecture.








References: 

https://docs.docker.com/engine/containers/multi-service_container/

http://supervisord.org/

https://xuri.me/2015/09/07/monitoring-processes-with-supervisord.html

Comments

Popular posts from this blog

KB: Azure ACA Container fails to start (no User Assigned or Delegated Managed Identity found for specified ClientId)

Electron Process Execution Failure with FSLogix

KB:RMM VS DEX (Remote Monitoring Management vs Digital Employee Experience)