KubeKey v3.1 Release: Quick Customize Offline Installation Package

original
05/17 14:13
Reading 2.7K

Recently, KubeKey v3.1 was officially released. This version mainly optimizes offline scene deployment, offline package production and upgrading to Kubernetes v1.24+.

About KubeKey

KubeKey is an efficient cluster deployment tool open sourced by the KubeSphere community. The runtime uses Docker by default. It can also interface with CRI runtimes such as Containerd, CRI-O, and iSula. The ETCD cluster runs independently, supports separate deployment from K8s, and improves the flexibility of environment deployment. It provides a flexible, fast and convenient way to install only Kubernetes/K3s, or install both Kubernetes/K3s and KubeSphere, as well as other cloud native plug-ins. In addition, it is also an effective tool for expanding and upgrading clusters.

Major update changes

Support Docker to deploy Kubernetes v1.24+cluster as runtime

Related PR: https://github.com/kubesphere/kubekey/pull/2111

Contributor: chilianyi

Clusters that support Docker as runtime are upgraded to v1.24+

Related PR: https://github.com/kubesphere/kubekey/pull/2148

Contributor: pixiake

Support the deployment of clusters with IPV6 enabled

Related PR: https://github.com/kubesphere/kubekey/pull/2142

Contributor: wenwenxiong

Support pushing images to the multi path image warehouse

Related PR: https://github.com/kubesphere/kubekey/pull/2159

Contributor: liangzai006

Support the creation of artifacts on demand

Related PR: https://github.com/kubesphere/kubekey/pull/2161

Contributor: ImitationImmortal

Support custom Kubernetes version to generate manifest

Related PR: https://github.com/kubesphere/kubekey/pull/2204

Contributor: liangzai006

Optimize etcd deployment management logic and support etcd upgrade

Related PR: https://github.com/kubesphere/kubekey/pull/2200

Contributor: pixiake

See GitHub Release for more details:

Get the latest version of KubeKey

 curl -sfL  https://get-kk.kubesphere.io  | sh -

Introduction to new functions

Customized Kubernetes offline package

The old version of KubeKey needs to rely on the existing cluster to create the manifest file. Using the new version of KubeKey, you can directly specify the kubernetes version and arch to create the manifest file.

 #Example: Create a manifest file containing kubernetes v1.24.17 and v1.25.16, and the CPU architecture is amd64 and arm64. ./kk create manifest --with-kubernetes v1.24.17, v1.25.16 --arch amd64 --arch arm64 #The following is the newly created manifest-sample.yaml, which can be customized to add or delete images according to offline deployment requirements. Customize and execute after adjusting the manifest file/ Kk artifact export - m manifest-sample.yaml Create offline package. --- apiVersion: kubekey.kubesphere.io/v1alpha2 kind: Manifest metadata: name: sample spec: arches: - amd64 - arm64 operatingSystems: - arch: amd64 type: linux id: ubuntu version: "20.04" osImage: Ubuntu 20.04.6 LTS repository: iso: localPath: url: kubernetesDistributions: - type: kubernetes version: v1.24.17 - type: kubernetes version: v1.25.16 components: helm: version: v3.14.3 cni: version: v1.2.0 etcd: version: v3.5.13 containerRuntimes: - type: docker version: 24.0.9 - type: containerd version: 1.7.13 calicoctl: version: v3.27.3 crictl: version: v1.29.0 images: - docker.io/kubesphere/pause:3.7 - docker.io/kubesphere/kube-apiserver:v1.24.17 - docker.io/kubesphere/kube-controller-manager:v1.24.17 - docker.io/kubesphere/kube-scheduler:v1.24.17 - docker.io/kubesphere/kube-proxy:v1.24.17 - docker.io/coredns/coredns:1.8.6 - docker.io/kubesphere/k8s-dns-node-cache:1.22.20 - docker.io/calico/kube-controllers:v3.27.3 - docker.io/calico/cni:v3.27.3 - docker.io/calico/node:v3.27.3 - docker.io/calico/pod2daemon-flexvol:v3.27.3 - docker.io/calico/typha:v3.27.3 - docker.io/flannel/flannel:v0.21.3 - docker.io/flannel/flannel-cni-plugin:v1.1.2 - docker.io/cilium/cilium:v1.15.3 - docker.io/cilium/operator-generic:v1.15.3 - docker.io/hybridnetdev/hybridnet:v0.8.6 - docker.io/kubeovn/kube-ovn:v1.10.10 - docker.io/kubesphere/multus-cni:v3.8 - docker.io/openebs/provisioner-localpv:3.3.0 - docker.io/openebs/linux-utils:3.3.0 - docker.io/library/haproxy:2.9.6-alpine - docker.io/plndr/kube-vip:v0.7.2 - docker.io/kubesphere/kata-deploy:stable - docker.io/kubesphere/node-feature-discovery:v0.10.0 - docker.io/kubesphere/pause:3.8 - docker.io/kubesphere/kube-apiserver:v1.25.16 - docker.io/kubesphere/kube-controller-manager:v1.25.16 - docker.io/kubesphere/kube-scheduler:v1.25.16 - docker.io/kubesphere/kube-proxy:v1.25.16 - docker.io/coredns/coredns:1.9.3 registry: auths: {}

thank

The following is GitHub ID of the contributors who participated in KubeKey v3.1 code and document contributions. If there is any omission in this list, please contact us, ranking in no particular order.

  • pixiake
  • liangzai006
  • hellocn9
  • samt42
  • chilianyi
  • deqingLv
  • liuxu623
  • wenwenxiong
  • zliang90
  • yzxiu
  • vicoooo26
  • qyz87
  • wenwutang1
  • ImitationImmortal
  • xrwang8
  • baikjy0215

Thank you again for your contribution!

This article is written by the blog OpenWrite release!

Expand to read the full text
Loading
Click to join the discussion 🔥 (2) Post and join the discussion 🔥
Reward
two comment
five Collection
zero fabulous
 Back to top
Top