第33节 sealos PR


❤️💕💕记录sealosopen in new window开源项目的学习过程。k8s,docker和云原生的学习open in new window。Myblog:http://nsddd.topopen in new window


[TOC]

Planning Draft

Problem Description

#2863

Sealos currently does not support the k3s runtime and requires the redesign of the runtime interface to avoid excessive coupling with the Processor and to add verification.

Here is a record of testing various k3s installation methodsopen in new window. If you're curious about k3s, be sure to read this noteopen in new window, as well as k3s • officialopen in new window and documentationopen in new window, and its GitHub • open source addressopen in new window.


Solution

Design a new runtime interface

Redesign the runtime interface to avoid excessive coupling with the Processor and add verification.

Design ideas for the k3s runtime module

To support the k3s runtime, we need to add a new runtime module. This module needs to support the following functions:

  • Execute k3s installation commands
  • Execute k3s upgrade commands
  • Execute k3s uninstall commands

Design the k3s directory and filesystem distribution using Sealos' image distribution logic

To support the k3s runtime, we need to use Sealos' image distribution logic to design the k3s directory and filesystem distribution of the k3s image.

Optimize the packaging of kubeadm and k3s binaries

To support the k3s runtime, we need to optimize the packaging of kubeadm and k3s binaries.

Provide unit test and CI flow to ensure code quality

To ensure code quality, we need to provide unit testing and CI flow.


Tasks

TypeImprovementsIssuePRStatus
🚀 FeatureDesign a new runtime interface to avoid excessive coupling with the Processor and add verification#1943, #2037
🔨 EnhancementImplement the k3s runtime module to support k3s installation, upgrade, and uninstall commands
🔧 MaintenanceDesign the k3s directory and filesystem distribution using Sealos' image distribution logic
👌 RefactoringOptimize the packaging of kubeadm and k3s binaries
🧪 TestingProvide unit testing and CI flow to ensure code quality
📈 MetricsCompare k3s and k0s, as well as Kubernetes for various changes in sealos, for users to choose according to their scenarios
🎯 FixThe current logic of sealos run will parse the environment variable $, which inevitably needs to be fixed.#2861#2862

END 链接