KubeKey v3.1 發佈:快速自定義離線安裝包

日前,KubeKey v3.1 正式發佈。該版本主要對離線場景部署、離線包製作以及向 Kubernetes v1.24+ 升級進行了優化。

KubeKey 簡介

KubeKey 是 KubeSphere 社區開源的一款高效集羣部署工具,運行時默認使用 Docker,也可對接 Containerd、CRI-O、iSula 等 CRI 運行時,且 ETCD 集羣獨立運行,支持與 K8s 分離部署,提高環境部署靈活性。它提供了一種靈活、快速、便捷的方式來僅安裝 Kubernetes/K3s,或同時安裝 Kubernetes/K3s 和 KubeSphere,以及其他雲原生插件。除此之外,它也是擴展和升級集羣的有效工具。

主要更新變化

支持 Docker 作爲 runtime 部署 Kubernetes v1.24+ 集羣

相關 PR: https://github.com/kubesphere/kubekey/pull/2111

貢獻者:chilianyi

支持 Docker 作爲 runtime 的集羣升級至 v1.24+ 版本

相關 PR: https://github.com/kubesphere/kubekey/pull/2148

貢獻者:pixiake

支持部署開啓 IPV6 協議的集羣

相關 PR: https://github.com/kubesphere/kubekey/pull/2142

貢獻者:wenwenxiong

支持向多級路徑鏡像倉庫中推送鏡像

相關 PR: https://github.com/kubesphere/kubekey/pull/2159

貢獻者:liangzai006

支持按需製作 artifact

相關 PR: https://github.com/kubesphere/kubekey/pull/2161

貢獻者:ImitationImmortal

支持自定義 Kubernetes 版本生成 manifest

相關 PR: https://github.com/kubesphere/kubekey/pull/2204

貢獻者:liangzai006

優化 etcd 部署管理邏輯,支持 etcd 升級

相關 PR: https://github.com/kubesphere/kubekey/pull/2200

貢獻者:pixiake

更多詳情見 GitHub Release:

獲取最新版本 KubeKey

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

新增功能介紹

自定義製作 Kubernetes 離線包

老版本中使用 KubeKey 創建 manifests 文件需依賴已存在的集羣,使用新版本 KubeKey 可以直接指定 kubernetes 版本及 arch 創建 manifests 文件。

# 示例:創建包含 kubernetes v1.24.17,v1.25.16,且 cpu 架構爲 amd64、arm64 的 manifests 文件。

./kk create manifest --with-kubernetes v1.24.17,v1.25.16 --arch amd64 --arch arm64

# 以下爲新創建的 manifest-sample.yaml, 可根據離線部署需求,自定義添加或刪除鏡像。自定義對 manifests 文件調整後執行 ./kk artifact export -m manifest-sample.yaml 製作離線包。
---
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: {}

致謝

以下是參與 KubeKey v3.1 代碼與文檔貢獻的貢獻者 GitHub ID,若此名單有遺漏請您與我們聯繫,排名不分先後。

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

再次感謝您的貢獻!

本文由博客一文多發平臺 OpenWrite 發佈!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章