How netcracker/kubemarine works
Kubemarine is a CLI and Python-extensible tool for Kubernetes cluster deployment and lifecycle maintenance. The principal workflow takes an operator’s procedure and cluster inventory, constructs an execution context, runs staged tasks against remote nodes, and reports cluster checks or maintenance results. Procedures cover installation, node changes, upgrades, backup/restore, reconfiguration, and other maintenance; system preparation, Kubernetes components, packages, and plugins provide operational capabilities. The README documents these branches; sampled excerpts only support some internal wiring, so uncertain procedure-to-subsystem links are omitted.
Main entry points: group.py Remote execution · cluster.py Cluster context · __init__.py Procedure dispatch · install.py Install workflow
Components 20
CLI and workflows
- CLI entry
kubemarine/__main__.py - Procedure dispatch
kubemarine/procedures/__init__.py - Install workflow
kubemarine/procedures/install.py - Maintenance workflows
kubemarine/procedures
Execution runtime
- Cluster inventory
kubemarine/core/inventory.py - Cluster context
kubemarine/core/cluster.py - Task flow
kubemarine/core/flow.py - Action framework
kubemarine/core/action.py - Remote execution
kubemarine/core/group.py
Cluster operations
- System preparation
kubemarine/system.py - Package management
kubemarine/packages.py - Kubernetes lifecycle
kubemarine/kubernetes/__init__.py - Container runtime
kubemarine/cri/containerd.py
Validation
- Infrastructure checks
kubemarine/procedures/check_iaas.py - Cluster health checks
kubemarine/procedures/check_paas.py
Plugins
- Plugin framework
kubemarine/plugins/__init__.py - Built-in plugins
kubemarine/plugins/builtin.py
Other components
- Operator
- Managed nodes
- Kubernetes services
Connections 23
- Operator → CLI entry: invokes
- CLI entry → Procedure dispatch: dispatches
- Procedure dispatch → Install workflow: selects
- Procedure dispatch → Maintenance workflows: selects
- Install workflow → Task flow: runs tasks
- Maintenance workflows → Task flow: runs tasks
- Install workflow → Cluster inventory: loads configuration
- Maintenance workflows → Cluster inventory: uses configuration
- Task flow → Action framework: dispatches
- Action framework → Cluster context: operates on
- Cluster context → Cluster inventory: uses
- System preparation → Remote execution: executes remotely
- Package management → Remote execution: executes remotely
- Kubernetes lifecycle → Remote execution: executes remotely
- Container runtime → Remote execution: executes remotely
- Remote execution → Managed nodes: runs commands
- Infrastructure checks → Cluster context: checks infrastructure
- Infrastructure checks → Remote execution: probes nodes
- Cluster health checks → Cluster context: checks services
- Cluster health checks → Remote execution: queries cluster
- Plugin framework → Cluster context: applies extensions
- Built-in plugins → Plugin framework: registers plugins
- Plugin framework → Kubernetes services: installs components