Chkk Upgrade Plans are instantiated, cluster-specific workflows that provide detailed, step-by-step instructions for safely upgrading individual Kubernetes clusters, add-ons, application services, and Kubernetes operators. They are created from approved Upgrade Templates and represent the execution phase of Chkk’s upgrade process.

Key Characteristics

1. Instantiation from Templates
  • Upgrade Plans are created by instantiating an approved Upgrade Template for a specific cluster
  • They inherit all the information from the template plus additional cluster-specific details like:
    • The cluster’s name and region
    • Node Group details
    • Which applications are using deprecated/removed APIs
    • Application client changes in add-ons
    • Application misconfigurations (like incorrect Pod Disruption Budgets) that could cause upgrades to fail
2. Types of Upgrade Plans
  • Cluster Upgrade Plans: For upgrading entire Kubernetes clusters
  • Add-on Upgrade Plans: For upgrading specific add-ons, application services, or Kubernetes operators within a cluster
3. Lifecycle Statuses Upgrade Plans move through these statuses:
  • Waiting for Plan: Being generated
  • In Progress: Ready for execution
  • Completed: Cluster upgraded successfully
  • Canceled: User-initiated cancellation
4. Key Features
  • Standardized Workflows: Ensure consistent upgrade processes across multiple clusters
  • Delegation Support: Allow senior engineers to assign upgrade tasks to team members with confidence
  • Progress Tracking: Monitor overall progress through distinct stages
  • Customization: Can be tailored for specific clusters even after instantiation
  • Reusability: Based on proven templates that can be used across multiple environments

How They Work

  1. Creation: Generated from approved Upgrade Templates through the instantiation process
  2. Customization: Include cluster-specific information and can be further customized with additional steps
  3. Execution: Provide a structured, step-by-step approach to performing upgrades
  4. Tracking: Allow teams to monitor progress and mark completion
  5. Collaboration: Support team coordination through features like comments and activity feeds