diff --git a/zh/search/search_index.json b/zh/search/search_index.json
index dd13e371e..72012a2d6 100644
--- a/zh/search/search_index.json
+++ b/zh/search/search_index.json
@@ -1 +1 @@
-{"config":{"lang":["en"],"separator":"[\\s\\u200b\\u3000\\-\u3001\u3002\uff0c\uff0e\uff1f\uff01\uff1b]+","pipeline":["stemmer"]},"docs":[{"location":"","title":"Kubean","text":"Kubean \u662f\u4e00\u6b3e\u51c6\u751f\u4ea7\u7684\u96c6\u7fa4\u751f\u547d\u5468\u671f\u7ba1\u7406\u5de5\u5177\uff0c\u57fa\u4e8e kubespray \u4e0e\u5176\u4ed6\u96c6\u7fa4 LCM \u5f15\u64ce\u3002
"},{"location":"#_1","title":"\u529f\u80fd\u8d85\u8d5e","text":" - \u7b80\u5355\u6613\u7528\uff1a\u901a\u8fc7\u58f0\u660e\u5f0f API \u5b9e\u73b0 Kubean \u548c K8s \u96c6\u7fa4\u5f3a\u52b2\u751f\u547d\u5468\u671f\u7ba1\u7406\u7684\u90e8\u7f72\u3002
- \u652f\u6301\u79bb\u7ebf\uff1a\u6bcf\u4e2a\u7248\u672c\u90fd\u4f1a\u53d1\u5e03\u79bb\u7ebf\u5305\uff08os-pkgs\u3001\u955c\u50cf\u3001\u4e8c\u8fdb\u5236\u5305\uff09\u3002\u4f60\u4e0d\u5fc5\u62c5\u5fc3\u5982\u4f55\u6536\u96c6\u6240\u9700\u7684\u8d44\u6e90\u3002
- \u517c\u5bb9\u6027\uff1a\u652f\u6301\u591a\u67b6\u6784\u4ea4\u4ed8\uff1aAMD\u3001ARM\uff1b\u5e38\u89c1\u7684 Linux \u53d1\u884c\u7248\uff1b\u4ee5\u53ca\u57fa\u4e8e\u9cb2\u9e4f\u6784\u5efa\u7684\u9e92\u9e9f\u64cd\u4f5c\u7cfb\u7edf\u3002
- \u53ef\u6269\u5c55\u6027\uff1a\u5141\u8bb8\u4f7f\u7528\u539f\u751f Kubespray \u81ea\u5b9a\u4e49\u96c6\u7fa4\u3002
"},{"location":"#others","title":"Others","text":"Copyright The Kubean Authors
We are a Cloud Native Computing Foundation sandbox project.
The Linux Foundation\u00ae (TLF) has registered trademarks and uses trademarks. For a list of TLF trademarks, see Trademark Usage.
"},{"location":"concepts/architecture/","title":"Kubean \u57fa\u7840\u67b6\u6784","text":"Kubean \u7684\u6574\u4f53\u67b6\u6784\u5982\u4e0b\u6240\u793a\uff1a
Kubean \u9700\u8981\u8fd0\u884c\u5728\u4e00\u4e2a\u5df2\u5b58\u5728\u7684 Kubernetes \u96c6\u7fa4\uff0c\u901a\u8fc7\u5e94\u7528 Kubean \u63d0\u4f9b\u7684\u6807\u51c6 CRD \u8d44\u6e90\u548c Kubernetes \u5185\u5efa\u8d44\u6e90\u6765\u63a7\u5236\u548c\u7ba1\u7406\u96c6\u7fa4\u7684\u751f\u547d\u5468\u671f\uff08\u5b89\u88c5\u3001\u5378\u8f7d\u3001\u5347\u7ea7\u3001\u6269\u5bb9\u3001\u7f29\u5bb9\u7b49\uff09\u3002 Kubean \u91c7\u7528 Kubespray \u4f5c\u4e3a\u5e95\u5c42\u6280\u672f\u4f9d\u8d56\uff0c\u4e00\u65b9\u9762\u7b80\u5316\u4e86\u96c6\u7fa4\u90e8\u7f72\u7684\u64cd\u4f5c\u6d41\u7a0b\uff0c\u964d\u4f4e\u4e86\u7528\u6237\u7684\u4f7f\u7528\u95e8\u69db\u3002\u53e6\u4e00\u65b9\u9762\u5728 Kubespray \u80fd\u529b\u57fa\u7840\u4e0a\u589e\u52a0\u4e86\u96c6\u7fa4\u64cd\u4f5c\u8bb0\u5f55\u3001\u79bb\u7ebf\u7248\u672c\u8bb0\u5f55\u7b49\u8bf8\u591a\u65b0\u7279\u6027\u3002
Kubean \u8fd0\u884c\u7740\u591a\u4e2a\u63a7\u5236\u5668\uff0c\u8fd9\u4e9b\u63a7\u5236\u5668\u8ddf\u8e2a Kubean CRD \u5bf9\u8c61\u7684\u53d8\u5316\uff0c\u5e76\u4e14\u4e0e\u5e95\u5c42\u96c6\u7fa4\u7684 API \u670d\u52a1\u5668\u8fdb\u884c\u901a\u4fe1\u6765\u521b\u5efa Kubernetes\u539f\u751f\u8d44\u6e90\u5bf9\u8c61\u3002\u7531\u4ee5\u4e0b\u56db\u4e2a\u7ec4\u4ef6\u6784\u6210\uff1a
- Cluster Controller: \u76d1\u89c6
Cluster Objects
\u3002\u552f\u4e00\u6807\u8bc6\u4e00\u4e2a\u96c6\u7fa4\uff0c\u62e5\u6709\u96c6\u7fa4\u8282\u70b9\u7684\u8bbf\u95ee\u4fe1\u606f\u3001\u7c7b\u578b\u4fe1\u606f\u3001\u90e8\u7f72\u53c2\u6570\u4fe1\u606f\uff0c\u5e76\u4e14\u5173\u8054\u6240\u6709\u5bf9\u6b64\u96c6\u7fa4\u7684\u64cd\u4f5c\uff08ClusterOperation Objects
\uff09\uff1b - ClusterOperation Controller: \u76d1\u89c6
ClusterOperation Objects
\u3002\u5f53 ClusterOperation Object
\u88ab\u521b\u5efa\u65f6\uff0c\u63a7\u5236\u5668\u4f1a\u7ec4\u88c5\u4e00\u4e2a Job \u53bb\u6267\u884c CRD \u5bf9\u8c61\u91cc\u5b9a\u4e49\u7684\u64cd\u4f5c\uff1b - Manifest Controller: \u76d1\u89c6
Manifest Objects
\u3002\u7528\u4e8e\u8bb0\u5f55\u548c\u7ef4\u62a4\u5f53\u524d\u7248\u672c\u7684 Kubean \u4f7f\u7528\u548c\u517c\u5bb9\u7684\u7ec4\u4ef6\u3001\u5305\u53ca\u7248\u672c\uff1b - LocalArtifactSet Controller\uff1a\u76d1\u89c6
LocalArtifactSet Objects
\u3002\u7528\u4e8e\u8bb0\u5f55\u79bb\u7ebf\u5305\u652f\u6301\u7684\u7ec4\u4ef6\u53ca\u7248\u672c\u4fe1\u606f\u3002
"},{"location":"concepts/comparisons/","title":"\u5bf9\u6bd4\u53c2\u8003","text":""},{"location":"concepts/comparisons/#kubean-vs-kubespray","title":"Kubean vs Kubespray","text":"Kubespray \u4f7f\u7528 Ansible \u4f5c\u4e3a\u5e95\u5c42\u6765\u914d\u7f6e\u548c\u7f16\u6392\uff0c\u53ef\u4ee5\u8fd0\u884c\u5728\u88f8\u91d1\u5c5e\u673a\u3001\u865a\u62df\u673a\u3001\u5927\u591a\u6570\u4e91\u73af\u5883\u7b49\u3002\u5b83\u652f\u6301\u4f17\u591a Kubernetes \u7248\u672c\u548c\u63d2\u4ef6\uff0c\u53ef\u4ee5\u5b8c\u6210\u96c6\u7fa4\u4ece 0 \u5230 1 \u7684\u642d\u5efa\u548c\u914d\u7f6e\uff0c\u4e5f\u5305\u542b\u96c6\u7fa4\u751f\u547d\u5468\u671f\u7684\u7ef4\u62a4\uff0c\u4f7f\u7528\u65b9\u5f0f\u975e\u5e38\u7075\u6d3b\u3002
Kubean \u57fa\u4e8e Kubespray\uff0c\u62e5\u6709 Kubespray \u6240\u6709\u4f18\u52bf\u3002\u5e76\u4e14 Kubean \u5f15\u7528 Operator \u6982\u5ff5\u4ee5\u5b9e\u73b0\u5b8c\u5168\u4e91\u539f\u751f\u5316\uff0c\u539f\u751f\u4ee5\u5bb9\u5668\u65b9\u5f0f\u8fd0\u884c\uff0c\u63d0\u4f9b Helm Chart \u5305\u8fdb\u884c\u5feb\u901f\u90e8\u7f72\u3002
Kubespray \u4ec5\u5728\u53c2\u6570\u7ea7\u522b\u4e0a\u652f\u6301\u79bb\u7ebf\uff0c\u5e76\u6ca1\u6709\u5305\u542b\u4e00\u4e2a\u5b8c\u6210\u6784\u5efa\u79bb\u7ebf\u5b89\u88c5\u5305\u7684\u8fc7\u7a0b\uff0c\u6240\u4ee5\u5bf9\u4e8e\u6709\u79bb\u7ebf\u573a\u666f\u9700\u6c42\u7684\u4f7f\u7528\u8005\u6765\u8bf4\uff0c\u76f4\u63a5\u4f7f\u7528 Kubespray \u4f1a\u53d8\u5f97\u975e\u5e38\u7e41\u7410\uff0c\u8fd9\u901a\u5e38\u4f1a\u8ba9\u4ed6\u4eec\u5931\u53bb\u8010\u5fc3\u3002
Kubean \u4e0d\u4ec5\u6709\u4e00\u5957\u5b8c\u5584\u7684\u5236\u4f5c\u79bb\u7ebf\u5305\u7684\u5de5\u4f5c\u6d41\uff0c\u8fd8\u9002\u914d\u56fd\u4ea7\u4fe1\u521b\u73af\u5883\uff0c\u7b80\u5316 Kubespray \u7684\u590d\u6742\u914d\u7f6e\uff0c\u80fd\u591f\u5bf9\u96c6\u7fa4\u751f\u547d\u5468\u671f\u4ee5\u4e91\u539f\u751f\u7684\u65b9\u5f0f\u53bb\u7ba1\u7406\u3002
"},{"location":"concepts/crds/","title":"CRD \u6982\u8ff0","text":""},{"location":"concepts/crds/#cluster","title":"Cluster","text":"Kubean \u5141\u8bb8\u901a\u8fc7 custom resource definitions (CRDs) \u6765\u58f0\u660e\uff08\u552f\u4e00\u6807\u8bc6\uff09\u4e00\u4e2a Kubernetes \u96c6\u7fa4\u3002\u6240\u6709\u5bf9\u96c6\u7fa4\u7684\u64cd\u4f5c\u90fd\u57fa\u4e8e\u6b64 CRD \u91cc\u58f0\u660e\u7684\u5185\u5bb9\u3002
\u4e0b\u9762\u662f\u4e00\u4efd\u793a\u4f8b\uff0c\u5e2e\u52a9\u7406\u89e3\u4e0b\u6587\u7684\u914d\u7f6e\u9879\u8bf4\u660e\uff1a
apiVersion: kubean.io/v1alpha1\nkind: Cluster\nmetadata:\n name: cluster1-offline-demo\nspec:\n hostsConfRef:\n namespace: kubean-system\n name: cluster1-offline-demo-hosts-conf\n varsConfRef:\n namespace: kubean-system\n name: cluster1-offline-demo-vars-conf\n
"},{"location":"concepts/crds/#_1","title":"\u914d\u7f6e\u9879","text":""},{"location":"concepts/crds/#_2","title":"\u5143\u6570\u636e","text":" name
\uff1aname \u7528\u4e8e\u58f0\u660e\u4e00\u4e2a\u96c6\u7fa4\uff0c\u5168\u5c40\u552f\u4e00
"},{"location":"concepts/crds/#_3","title":"\u5c5e\u6027\u5173\u8054","text":" hostConfRef
\uff1ahostConfRef \u662f\u4e00\u4e2a ConfigMap \u8d44\u6e90\uff0c\u5b83\u7684\u5185\u5bb9\u5e94\u6ee1\u8db3 ansible inventory \u7684\u683c\u5f0f\uff0c\u5305\u542b\u96c6\u7fa4\u8282\u70b9\u4fe1\u606f\u3001\u7c7b\u578b\u5206\u7ec4\u4fe1\u606f\u3002\u5185\u5bb9\u53ef\u53c2\u8003 demo\u3002 name
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 ConfigMap \u7684\u540d\u79f0 -
namespace
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 ConfigMap \u6240\u5728\u7684\u547d\u540d\u7a7a\u95f4
-
varsConfRef
\uff1avarsConfRef \u662f\u4e00\u4e2a ConfigMap \u8d44\u6e90\uff0c\u7528\u4f5c\u521d\u59cb\u5316\u6216\u8986\u76d6 Kubespray \u4e2d\u58f0\u660e\u7684\u53d8\u91cf\u503c\u3002\u5982\u679c\u6709\u79bb\u7ebf\u9700\u6c42\uff0c\u8fd9\u5c06\u5f88\u6709\u7528\u3002\u5185\u5bb9\u53ef\u53c2\u8003 demo\u3002
name
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 ConfigMap \u7684\u540d\u79f0 -
namespace
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 ConfigMap \u6240\u5728\u7684\u547d\u540d\u7a7a\u95f4
-
sshAuthRef
\uff1asshAuthRef \u662f\u4e00\u4e2a Secret \u8d44\u6e90\uff0c\u4ec5\u5728 SSH \u79c1\u94a5\u6a21\u5f0f\u65f6\u4f7f\u7528\u3002
name
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 Secret \u540d\u79f0 namespace
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 Secret \u6240\u5728\u7684\u547d\u540d\u7a7a\u95f4
"},{"location":"concepts/crds/#clusteroperation","title":"ClusterOperation","text":"Kubean \u5141\u8bb8\u901a\u8fc7 custom resource definitions (CRDs) \u6765\u58f0\u660e\u5bf9\u4e00\u4e2a Kubernetes \u96c6\u7fa4\u7684\u64cd\u4f5c\uff08\u90e8\u7f72\u3001\u5347\u7ea7\u7b49\uff09\uff0c\u524d\u63d0\u662f\u6b63\u786e\u5173\u8054\u4e00\u4e2a\u5df2\u7ecf\u5b9a\u4e49\u7684 Cluster CRD\u3002\u5b8c\u6210\u64cd\u4f5c\u6240\u5fc5\u8981\u7684\u4fe1\u606f\u4ece\u5176\u5173\u8054\u7684 Cluster CRD \u4e2d\u83b7\u53d6\u3002
\u4e0b\u9762\u662f\u4e00\u4efd\u793a\u4f8b\uff0c\u5e2e\u52a9\u7406\u89e3\u4e0b\u6587\u7684\u914d\u7f6e\u9879\u8bf4\u660e\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster1-demo-ops-1\nspec:\n cluster: cluster1-demo\n image: ghcr.m.daocloud.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: kubeconfig.yml\n - actionType: playbook\n action: cluster-info.yml\n
"},{"location":"concepts/crds/#_4","title":"\u914d\u7f6e\u9879","text":""},{"location":"concepts/crds/#_5","title":"\u5143\u6570\u636e","text":" name
\uff1aname \u552f\u4e00\u6807\u8bc6\u4e00\u4e2a\u5bf9\u6240\u5173\u8054\u96c6\u7fa4\u7684\u64cd\u4f5c
"},{"location":"concepts/crds/#_6","title":"\u64cd\u4f5c\u5b9a\u4e49","text":" cluster
\uff1a\u4e0e\u6b64\u64cd\u4f5c\u5173\u8054\u7684\u96c6\u7fa4\u540d\u79f0\uff0c\u5176\u503c\u4e3a Cluster CRD \u4e2d\u58f0\u660e\u7684\u540d\u79f0 image
\uff1akubespray \u955c\u50cf\u5730\u5740\uff1b\u53ef\u4ee5\u4f7f\u7528 Kubean \u4ed3\u5e93\u6784\u5efa\u7684\u955c\u50cf\uff0c\u4e5f\u53ef\u4f7f\u7528\u81ea\u884c\u6784\u5efa\u955c\u50cf actionType
\uff1a\u64cd\u4f5c\u7c7b\u578b\uff0c\u76ee\u524d\u652f\u6301\u6307\u5b9a playbook
\u6216 shell
action
\uff1a\u610f\u56fe\u6267\u884c\u7684\u64cd\u4f5c\uff0c\u76ee\u524d\u652f\u6301\u6307\u5b9a playbook \u6587\u4ef6\u7684\u8def\u5f84\u6216 shell \u547d\u4ee4 preHook
\uff1a\u524d\u7f6e\u6267\u884c\u64cd\u4f5c\uff0c\u53ef\u4ee5\u6307\u5b9a\u591a\u4e2a\uff0c\u4f8b\u5982\u53ef\u4ee5\u6d4b\u8bd5\u8282\u70b9\u8fde\u901a\u6027\u7b49 actionType
\uff1a\u540c\u4e0a action
\uff1a\u540c\u4e0a postHook
\uff1a\u540e\u7f6e\u6267\u884c\u64cd\u4f5c\uff0c\u53ef\u4ee5\u6307\u5b9a\u591a\u4e2a\uff0c\u4f8b\u5982\u53ef\u4ee5\u83b7\u53d6\u96c6\u7fa4\u72b6\u6001\u7b49 actionType
\uff1a\u540c\u4e0a action
\uff1a\u540c\u4e0a
"},{"location":"concepts/crds/#manifest","title":"Manifest","text":"Kubean \u5141\u8bb8\u901a\u8fc7 custom resource definitions (CRDs) \u6765\u8bb0\u5f55\u548c\u7ef4\u62a4\u5f53\u524d\u7248\u672c\u7684 Kubean \u4f7f\u7528\u548c\u517c\u5bb9\u7684\u7ec4\u4ef6\u3001\u5305\u53ca\u7248\u672c\uff1b\u4f7f\u7528\u8005\u4e0d\u7528\u624b\u52a8\u7f16\u5199\u6b64\u8d44\u6e90\uff0c\u7531 Kubean \u81ea\u884c\u7ef4\u62a4\u3002
\u4e0b\u9762\u662f\u4e00\u4efd\u793a\u4f8b\uff0c\u5e2e\u52a9\u7406\u89e3\u4e0b\u6587\u7684 spec \u8bf4\u660e\uff1a
apiVersion: kubean.io/v1alpha1\nkind: Manifest\nmetadata:\n name: kubeaninfomanifest-v0-4-0-rc2\nspec:\n components:\n - defaultVersion: v1.1.1\n name: cni\n versionRange:\n - v1.0.1\n - v1.1.1\n - defaultVersion: 1.6.9\n name: containerd\n versionRange:\n .......\n - 1.6.7\n - 1.6.8\n - 1.6.9\n - defaultVersion: \"\"\n name: kube\n versionRange:\n - v1.25.3\n - v1.25.2\n - v1.25.1\n ........\n - defaultVersion: v3.23.3\n name: calico\n versionRange:\n - v3.23.3\n - v3.22.4\n - v3.21.6\n - defaultVersion: v1.12.1\n name: cilium\n versionRange: []\n - defaultVersion: \"null\"\n name: etcd\n versionRange:\n - v3.5.3\n - v3.5.4\n - v3.5.5\n docker:\n - defaultVersion: \"20.10\"\n os: redhat-7\n versionRange:\n - latest\n - \"18.09\"\n - \"19.03\"\n - \"20.10\"\n - stable\n - edge\n - defaultVersion: \"20.10\"\n os: debian\n versionRange:\n - latest\n - \"18.09\"\n - \"19.03\"\n - \"20.10\"\n - stable\n - edge\n - defaultVersion: \"20.10\"\n os: ubuntu\n versionRange:\n - latest\n - \"18.09\"\n - \"19.03\"\n - \"20.10\"\n - stable\n - edge\n kubeanVersion: v0.4.0-rc2\n kubesprayVersion: c788620\n
"},{"location":"concepts/crds/#spec","title":"spec \u8bf4\u660e","text":" components
\uff1a\u955c\u50cf\u6216\u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u7248\u672c\u58f0\u660e name
\uff1a\u7ec4\u4ef6\u540d\u79f0 defaultVersion
\uff1a\u4f7f\u7528\u7684\u9ed8\u8ba4\u7248\u672c versionRange
\uff1a\u53d7\u652f\u6301\u7684\u7248\u672c\u5217\u8868 docker
\uff1aDocker \u7684\u7248\u672c\u7ba1\u7406 os
\uff1a\u53d7\u652f\u6301\u7684\u64cd\u4f5c\u7cfb\u7edf defaultVersion
\uff1a\u4f7f\u7528\u7684\u9ed8\u8ba4\u7248\u672c versionRange
\uff1a\u53d7\u652f\u6301\u7684\u7248\u672c\u5217\u8868 kubeanVersion
\uff1aKubean \u7248\u672c\u53f7 kubesprayVersion
\uff1a\u5f53\u524d Kubean \u4f9d\u8d56\u7684 Kubespray \u7248\u672c\u53f7
"},{"location":"concepts/crds/#localartifact","title":"LocalArtifact","text":"Kubean \u5141\u8bb8\u901a\u8fc7 custom resource definitions (CRDs) \u6765\u8bb0\u5f55\u79bb\u7ebf\u5305\u652f\u6301\u7684\u7ec4\u4ef6\u53ca\u7248\u672c\u4fe1\u606f\uff1b\u4f7f\u7528\u8005\u4e0d\u7528\u624b\u52a8\u7f16\u5199\u6b64\u8d44\u6e90\uff0c\u7531 Kubean \u81ea\u884c\u7ef4\u62a4\u3002
\u4e0b\u9762\u662f\u4e00\u4efd\u793a\u4f8b\uff0c\u5e2e\u52a9\u7406\u89e3\u4e0b\u6587\u7684 spec \u8bf4\u660e\uff1a
apiVersion: kubean.io/v1alpha1\nkind: LocalArtifactSet\nmetadata:\n name: \"localartifactset-1709796014\"\n labels:\n kubean.io/sprayRelease: master\nspec:\n kubespray: \"989ba207e9da2e1364f375450561d08af80c8535\"\n items:\n - name: cilium\n versionRange:\n - \"v1.13.4\"\n - name: flannel\n versionRange:\n - \"v0.22.0\"\n - name: kube_ovn\n versionRange:\n - \"v1.11.5\"\n - name: runc\n versionRange:\n - \"v1.1.12\"\n - name: kube\n versionRange:\n - \"v1.1.12\"\n - name: cni\n versionRange:\n - \"v1.3.0\"\n - name: calico\n versionRange:\n - \"v3.26.4\"\n - name: containerd\n versionRange:\n - \"1.7.13\"\n
"},{"location":"concepts/crds/#spec_1","title":"spec \u8bf4\u660e","text":" arch
\uff1a\u53d7\u652f\u6301\u7684 CPU \u6307\u4ee4\u96c6\u67b6\u6784\u5217\u8868 kubespray
\uff1a\u4f7f\u7528\u7684 Kubespray \u7248\u672c docker
\uff1aDocker \u7248\u672c\u7ba1\u7406 os
\uff1aDocker \u53d7\u652f\u6301\u7684\u64cd\u4f5c\u7cfb\u7edf\u7c7b\u578b versionRange
\uff1a\u53d7\u652f\u6301\u7684 Docker \u7248\u672c\u5217\u8868 items
\uff1a\u5176\u4ed6\u7ec4\u4ef6\u7248\u672c\u7ba1\u7406 name
\uff1a\u7ec4\u4ef6\u540d\u79f0 versionRange
\uff1a\u8be5\u7ec4\u4ef6\u53d7\u652f\u6301\u7684\u7248\u672c\u5217\u8868
"},{"location":"concepts/custom_action/","title":"\u81ea\u5b9a\u4e49 Action","text":""},{"location":"concepts/custom_action/#_1","title":"\u52a8\u673a","text":"\u5bf9\u4e8e\u4f7f\u7528\u8005\u6765\u8bb2\uff0cKubean \u548c Kubesprary \u7684\u4ea7\u7269\u90fd\u662f OCI \u955c\u50cf\u3001Helm Chart \u53ca K8s manifest\u3002 \u5728\u5df2\u62ff\u5230\u8fd9\u4e9b\u4ea7\u7269\u7684\u60c5\u51b5\u4e0b\u8981\u81ea\u5b9a\u4e49\u4e00\u4e9b\u64cd\u4f5c\uff0c\u4e5f\u80fd\u505a\u5230\uff0c\u4f46\u662f\u4f1a\u6bd4\u8f83\u590d\u6742\uff0c\u9700\u8981\u624b\u52a8\u4fee\u6539\u4e0d\u5c11\u7684\u914d\u7f6e\u3002\u5e0c\u671b\u80fd\u591f\u7b80\u5316\u8fd9\u4e00\u8fc7\u7a0b\u3002
"},{"location":"concepts/custom_action/#_2","title":"\u76ee\u6807","text":"\u63d0\u4f9b\u4e00\u79cd\u4fbf\u6377\u7684\u65b9\u5f0f\u80fd\u591f\u8ba9\u4f7f\u7528\u8005\u4f7f\u7528\u4e00\u4e9b\u81ea\u5b9a\u4e49\u7684\u64cd\u4f5c\u6765\u67e5\u770b\u3001\u4fee\u6539\u548c\u63a7\u5236\u96c6\u7fa4\u8282\u70b9\u7684\u72b6\u6001\u3002
"},{"location":"concepts/custom_action/#crd","title":"CRD \u8bbe\u8ba1","text":" -
\u589e\u52a0 ActionSource \u5b57\u6bb5\u4ee5\u58f0\u660e Action \u6765\u6e90\uff0c\u5176\u503c\u76ee\u524d\u652f\u6301\uff1a
-
builtin\uff08\u7f3a\u7701\u503c\uff09
\u8868\u660e\u4f7f\u7528 kubean \u5185\u5efa ansible playbook \u6216\u5728 manifest \u5185\u8054\u7684 shell \u811a\u672c
-
configmap
\u8868\u660e\u9700\u8981\u7684 ansible playbook \u6216 shell \u811a\u672c\u901a\u8fc7 \u5f15\u7528 K8s configmap \u6765\u83b7\u53d6
-
\u589e\u52a0 ActionSourceRef \u5b57\u6bb5\u4ee5\u58f0\u660e\u5f53 ActionSource \u503c\u4e3a configmap \u65f6\u6240\u5f15\u7528\u7684\u8d44\u6e90\u5bf9\u8c61\uff0c\u4e14\u4ec5\u5f53 ActionSource \u4e3a configmap \u65f6\u6b64\u5b57\u6bb5\u624d\u751f\u6548\uff0c\u5176\u683c\u5f0f\u4e3a\uff1a
actionSourceRef:\n name: <configmap name>\n namespace: <namespace of configmap>\n
\u914d\u7f6e\u793a\u4f8b\uff1a
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: cluster1-demo-myaction\n namespace: kubean-system\ndata:\n myplaybook.yml: |\n - hosts: k8s_cluster\n gather_facts: false\n become: yes\n any_errors_fatal: \"{{ any_errors_fatal | default(true) }}\"\n tasks:\n - name: Print inventory hostname\n debug:\n msg: \"inventory_hostname is {{ inventory_hostname }}\"\n hello.sh: |\n echo \"hello world!\"\n---\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster1-demo-ops-1\nspec:\n cluster: cluster1-demo\n image: ghcr.io/kubean-io/spray-job:latest\n actionType: playbook\n action: myplaybook.yml\n actionSource: configmap\n actionSourceRef:\n name: cluster1-demo-myaction\n namespace: kubean-system\n preHook:\n - actionType: shell\n action: hello.sh\n actionSource: configmap\n actionSourceRef:\n name: cluster1-demo-myaction\n namespace: kubean-system\n
"},{"location":"concepts/theory_of_airgapped_package/","title":"\u79bb\u7ebf\u5b89\u88c5\u5305\u7684\u539f\u7406","text":"Kubean CI \u6784\u5efa\u4fbf\u4e8e\u5728\u79bb\u7ebf\u73af\u5883\u4e2d\u5b89\u88c5 Kubernetes \u7684\u79bb\u7ebf\u6587\u4ef6\u3002
\u6ce8\uff1a\u6709\u5173\u5982\u4f55\u4f7f\u7528\u79bb\u7ebf\u6587\u4ef6\uff0c\u8bf7\u53c2\u9605\u79bb\u7ebf\u573a\u666f\u7684\u4f7f\u7528\u3002
\u672c\u9875\u8bf4\u660e\u79bb\u7ebf\u6587\u4ef6\u5305\u7684\u6784\u5efa\u539f\u7406\u3002
- \u53d1\u7248\u9875\u9762\uff1aGithub Releases
- \u4e3b\u8981\u5305\u542b\uff1a
\u6587\u4ef6\u5305 \u63cf\u8ff0 files-*.tar.gz Kubespray \u5b89\u88c5\u6240\u9700\u7684\u4e8c\u8fdb\u5236\u6587\u4ef6\uff1akubeadm\u3001runc images-*.tar.gz K8s \u96c6\u7fa4\u955c\u50cf\u548c CNI \u955c\u50cf os-pkgs-${linux_distribution}-${tag}.tar.gz K8s \u5b89\u88c5\u671f\u95f4\u6240\u9700\u7684 deb/rpm"},{"location":"concepts/theory_of_airgapped_package/#_2","title":"\u5982\u4f55\u6784\u5efa\u79bb\u7ebf\u6587\u4ef6","text":" -
\u955c\u50cf\u548c\u4e8c\u8fdb\u5236\u6587\u4ef6
\u7c7b\u4f3c Kubespray \u79bb\u7ebf\u90e8\u7f72\u6307\u5357\u6240\u8ff0\uff0c Kubespray \u63d0\u4f9b\u4e86\u4e00\u4e9b\u811a\u672c\u6765\u751f\u6210\u955c\u50cf\u548c\u4e8c\u8fdb\u5236\u6587\u4ef6\u5217\u8868\uff08\u611f\u8c22 Kubespray\uff01\uff09
\u5f97\u76ca\u4e8e Kubespray \u751f\u6210\u4e8c\u8fdb\u5236\u548c\u955c\u50cf\u5217\u8868\u7684\u811a\u672c\uff0c \u6211\u4eec\u53ef\u4ee5\u4f7f\u7528 manage-offline-files.sh \u4e0b\u8f7d\u8fd9\u4e9b\u4e8c\u8fdb\u5236\u6587\u4ef6\u548c\u955c\u50cf\u3002 \u968f\u540e Kubean \u63d0\u4f9b\u4e86 call-offline-build.yaml\uff08Github Action \u811a\u672c\uff09 \u5c06\u6240\u6709\u8fd9\u4e9b\u878d\u5408\u4e8e\u4e00\u8d77\u3002
-
os-packages (deb/rpm)
\u5728 K8s \u5b89\u88c5\u671f\u95f4\uff0c\u6709\u4e9b\u6587\u4ef6\u5305\u4e0d\u4f1a\u968f\u4e8c\u8fdb\u5236\u6587\u4ef6\u4e00\u8d77\u5b89\u88c5\uff0c\u56e0\u6b64\u6211\u4eec\u5fc5\u987b\u901a\u8fc7 deb/rpm \u6765\u5b89\u88c5\u8fd9\u4e9b\u6587\u4ef6\u5305\u3002 os packages \u5217\u8868\u5b9a\u4e49\u4e86\u6240\u6d89\u53ca\u7684\u6587\u4ef6\u5305\u3002
Github Action \u5c06\u901a\u8fc7 dnf/apt
\u6784\u5efa\u4e0d\u540c\u64cd\u4f5c\u7cfb\u7edf\u7684\u6587\u4ef6\u5305\uff08\u4f8b\u5982 Qemu\uff09\uff0c\u4fbf\u4e8e\u4e0b\u8f7d\u548c\u5f52\u6863 RPM/DEB \u5305\u3002
-
CI \u6d41\u7a0b
\u79bb\u7ebf\u6587\u4ef6\u5305\u7531 Github Action \u811a\u672c\u751f\u6210\u548c\u7ba1\u7406\u3002
"},{"location":"develop/roadmap/","title":"Kubean \u8def\u7ebf\u56fe","text":"\u5f53\u524d\u7684 Roadmap \u662f\u6682\u65f6\u7684\uff0c\u5177\u4f53\u7684\u65f6\u95f4\u8868\u4ee5\u793e\u533a\u9700\u8981\u800c\u5b9a\u3002
\u5728 Roadmap \u4e2d\u672a\u63d0\u53ca\u7684\u529f\u80fd\u7279\u6027, \u6211\u4eec\u53ef\u4ee5\u5728 issues \u4e2d\u8ba8\u8bba.
"},{"location":"develop/roadmap/#q3-2022","title":"Q3 2022","text":" - \u8bbe\u8ba1 Kubean \u9879\u76ee\u67b6\u6784\u6d41\u7a0b architecture.md
- \u9a8c\u8bc1 Kubean \u7684\u96c6\u7fa4\u751f\u547d\u5468\u671f\u7ba1\u7406\u64cd\u4f5c
- \u6dfb\u52a0\u7cfb\u7edf\u5305\u6784\u5efa CI https://github.com/kubean-io/kubean/pull/62
- \u63d0\u4f9b Kubean API https://github.com/kubean-io/kubean/pull/128
"},{"location":"develop/roadmap/#q4-2022","title":"Q4 2022","text":" - E2E tests kubean test case
- k8s \u955c\u50cf\u53ca\u4e8c\u8fdb\u5236\u5305\u652f\u6301 arm \u67b6\u6784 https://github.com/kubean-io/kubean/pull/200
- \u652f\u6301\u5347\u7ea7\u5305\u6784\u5efa https://github.com/kubean-io/kubean/pull/289
- \u79bb\u7ebf\u573a\u666f RHEL8.4 \u90e8\u7f72\u9002\u914d https://github.com/kubean-io/kubean/pull/325
- \u652f\u6301\u8fd8\u539f\u7cfb\u7edf\u5305\u7ba1\u7406\u914d\u7f6e https://github.com/kubean-io/kubean/pull/298
- \u652f\u6301\u96c6\u7fa4\u90e8\u7f72\u5b8c\u540e\u56de\u4f20 Kubeconfig https://github.com/kubean-io/kubean/pull/192
- \u589e\u52a0 SSH Key \u8ba4\u8bc1\u90e8\u7f72\u65b9\u5f0f https://github.com/kubean-io/kubean/pull/302
"},{"location":"develop/roadmap/#q1-2023","title":"Q1 2023","text":" - \u652f\u6301 apt \u7cfb\u7edf\u5305\u7ba1\u7406\u914d\u7f6e https://github.com/kubean-io/kubean/pull/459
- Cluster Operation CRD \u652f\u6301\u81ea\u5b9a\u4e49 Action https://github.com/kubean-io/kubean/issues/361
- Kubean Chart \u652f\u6301 Charts Syncer https://github.com/kubean-io/kubean/pull/468
- \u652f\u6301 Pre check \u90e8\u7f72\u524d\u7684\u9884\u68c0\u6d4b https://github.com/kubean-io/kubean/pull/555
- \u7edf\u4fe1 UOS 1020a \u7cfb\u7edf\u5305\u9002\u914d https://github.com/kubean-io/kubean/pull/583
"},{"location":"develop/roadmap/#q2-2023","title":"Q2 2023","text":" - \u652f\u6301\u57fa\u4e8e OpenEuler \u79bb\u7ebf\u573a\u666f\u7684\u96c6\u7fa4\u90e8\u7f72 https://github.com/kubean-io/kubean/pull/628
- \u652f\u6301 Other Linux \u901a\u8fc7\u811a\u672c\u81ea\u4e3b\u6784\u5efa\u79bb\u7ebf\u573a\u666f\u4f9d\u8d56\u7684\u7cfb\u7edf\u5305 https://github.com/kubean-io/kubean/pull/627
- \u4f7f\u7528 mkdocs \u66f4\u65b0 kubean \u6587\u6863\u7ad9 https://github.com/kubean-io/kubean/pull/728
- \u4f18\u5316 release \u53d1\u7248 CI https://github.com/kubean-io/kubean/pull/863
- \u65b0\u589e\u5173\u4e8e\u8bc1\u4e66\u66f4\u65b0\u7684 ansible \u5267\u672c https://github.com/kubean-io/kubean/pull/884
- \u66f4\u65b0 release \u53d1\u7248\u6d41\u7a0b https://github.com/kubean-io/kubean/pull/869
"},{"location":"develop/roadmap/#q3-2023","title":"Q3 2023","text":" - \u6dfb\u52a0\u8bc1\u4e66\u66f4\u65b0\u5267\u672c https://github.com/kubean-io/kubean/pull/884
- \u65b0\u589e\u6d41\u6c34\u7ebf\u5bf9\u4e0a\u6e38 kubespray \u6700\u65b0\u7248\u672c\u7684\u6bcf\u65e5\u90e8\u7f72\u9a8c\u8bc1 https://github.com/kubean-io/kubean/pull/870
- \u786e\u4fdd Cluster \u8d44\u6e90\u7684\u7ea7\u8054\u5220\u9664 https://github.com/kubean-io/kubean/pull/918
- \u4e3a ClusterOperation \u8bb0\u5f55\u6dfb\u52a0\u6e05\u9664\u6743\u91cd https://github.com/kubean-io/kubean/pull/983
"},{"location":"develop/roadmap/#q4-2023","title":"Q4 2023","text":" - \u4f18\u5316\u955c\u50cf\u79bb\u7ebf\u5305\u4e3a OCI \u683c\u5f0f https://github.com/kubean-io/kubean/pull/996
- \u4f18\u5316 Operator \u7684\u65e5\u5fd7\u8f93\u5165 https://github.com/kubean-io/kubean/pull/1032
- \u63d0\u9ad8 Manifest \u8d44\u6e90\u7684\u67e5\u8be2\u6548\u7387 https://github.com/kubean-io/kubean/pull/1036
- \u91cd\u6784\u955c\u50cf\u5bfc\u5165\u811a\u672c\uff0c\u4f7f\u5176\u652f\u6301\u591a\u67b6\u6784\u5bfc\u5165 https://github.com/kubean-io/kubean/pull/1040
"},{"location":"develop/roadmap/#q1-2024","title":"Q1 2024","text":" - \u63d0\u9ad8 precheck \u5267\u672c\u7684\u6267\u884c\u6548\u7387 https://github.com/kubean-io/kubean/pull/1076
- \u4f18\u5316 ClusterOperation \u7684\u8c03\u8c10\u6027\u80fd https://github.com/kubean-io/kubean/pull/1082
- \u91cd\u6784\u81ea\u5b9a\u4e49\u8d44\u6e90\u751f\u6210\u811a\u672c\u903b\u8f91 https://github.com/kubean-io/kubean/pull/1152
- \u4fee\u590d ubuntu18.04 \u79bb\u7ebf\u5305\u7248\u672c\u95ee\u9898 https://github.com/kubean-io/kubean/pull/1158
- \u81ea\u52a8\u5316 docker \u9650\u5236\u5355\u5bb9\u5668\u78c1\u76d8\u5360\u7528\u7684\u524d\u7f6e\u6b65\u9aa4 https://github.com/kubean-io/kubean/pull/1179
"},{"location":"develop/roadmap/#q2-2024","title":"Q2 2024","text":" - \u63d0\u4f9b\u5ba2\u6237\u7aef\u547d\u4ee4\u884c\u5de5\u5177\uff0c\u53ca\u4fbf\u6377\u7684\u81ea\u5b9a\u4e49\u8d44\u6e90\u6a21\u5757\u751f\u6210\u65b9\u5f0f
- \u4e0d\u540c\u8282\u70b9\u89c4\u6a21\u96c6\u7fa4\u90e8\u7f72\u7684\u5bb9\u91cf\u89c4\u5212
- \u63d0\u4f9b\u5b8c\u6574\u7684\u79bb\u7ebf\u8d44\u6e90\u7ba1\u7406\u65b9\u6848
- \u652f\u6301\u591a\u79cd\u751f\u547d\u5468\u671f\u7ba1\u7406\u5f15\u64ce\uff0c\u6bd4\u5982kubespray\u3001kubekey
- \u652f\u6301\u57fa\u4e8e ostree \u7684\u96c6\u7fa4\u64cd\u4f5c\u56de\u6eda
"},{"location":"releases/artifacts/","title":"Artifacts","text":""},{"location":"releases/artifacts/#release-224","title":"\u25b6\ufe0f release-2.24","text":"\u2693 kube_version range: [ v1.26.0 ~ v1.29.1 ]
Commit Date Artifacts \ud83d\udcc5 2024-07-29 07:00:34 \ud83d\udcdd manifest-2.24-1688e05.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.24-1688e05
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.24-1688e05
\ud83d\udcc5 2024-06-11 07:55:11 \ud83d\udcdd manifest-2.24-5377247.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.24-5377247
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.24-5377247
\ud83d\udcc5 2024-03-07 15:59:09 \ud83d\udcdd manifest-2.24-bc6bd21.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.24-bc6bd21
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.24-bc6bd21
"},{"location":"releases/artifacts/#release-222","title":"\u25b6\ufe0f release-2.22","text":"\u2693 kube_version range: [ v1.24.0 ~ v1.26.13 ]
Commit Date Artifacts \ud83d\udcc5 2024-02-07 19:59:36 \ud83d\udcdd manifest-2.22-71b6fa1.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.22-71b6fa1
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.22-71b6fa1
\ud83d\udcc5 2024-01-22 16:23:42 \ud83d\udcdd manifest-2.22-d8a8fb0.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.22-d8a8fb0
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.22-d8a8fb0
\ud83d\udcc5 2024-01-11 13:59:56 \ud83d\udcdd manifest-2.22-774d824.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.22-774d824
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.22-774d824
"},{"location":"releases/artifacts/#release-223","title":"\u25b6\ufe0f release-2.23","text":"\u2693 kube_version range: [ v1.25.0 ~ v1.27.10 ]
Commit Date Artifacts \ud83d\udcc5 2024-05-03 09:20:40 \ud83d\udcdd manifest-2.23-e5fc8a9.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.23-e5fc8a9
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.23-e5fc8a9
\ud83d\udcc5 2024-02-06 14:06:16 \ud83d\udcdd manifest-2.23-07e19e5.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.23-07e19e5
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.23-07e19e5
\ud83d\udcc5 2023-12-13 10:30:18 \ud83d\udcdd manifest-2.23-e4be213.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.23-e4be213
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.23-e4be213
"},{"location":"releases/artifacts/#release-221","title":"\u25b6\ufe0f release-2.21","text":"\u2693 kube_version range: [ v1.23.0 ~ v1.25.6 ]
Commit Date Artifacts \ud83d\udcc5 2024-01-22 16:13:31 \ud83d\udcdd manifest-2.21-e86c0cf.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.21-e86c0cf
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.21-e86c0cf
\ud83d\udcc5 2024-01-12 07:28:51 \ud83d\udcdd manifest-2.21-e4ac3ab.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.21-e4ac3ab
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.21-e4ac3ab
"},{"location":"releases/artifacts/#release-225","title":"\u25b6\ufe0f release-2.25","text":"\u2693 kube_version range: [ v1.27.0 ~ v1.29.5 ]
Commit Date Artifacts \ud83d\udcc5 2024-07-15 06:11:10 \ud83d\udcdd manifest-2.25-462e68b.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.25-462e68b
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.25-462e68b
"},{"location":"releases/v0.10.0/","title":"V0.10.0","text":""},{"location":"releases/v0.10.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.10.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - sync chart to release.daocloud.io by @hangscer8 in https://github.com/kubean-io/kubean/pull/991
- fix upload charts to release.daocloud.io by @hangscer8 in https://github.com/kubean-io/kubean/pull/992
- Change image artifact to OCI format by @tu1h in https://github.com/kubean-io/kubean/pull/996
- Optimize file handle logic by @Rei1010 in https://github.com/kubean-io/kubean/pull/998
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/997
- Optimize file import logic by @Rei1010 in https://github.com/kubean-io/kubean/pull/1000
- Allow etcd hosts in some playbooks by @tu1h in https://github.com/kubean-io/kubean/pull/1001
- Allow etcd hosts in playbook remove-pkgs by @tu1h in https://github.com/kubean-io/kubean/pull/1002
- Bump kubespray by @tu1h in https://github.com/kubean-io/kubean/pull/1003
- spray artifact patch by @tu1h in https://github.com/kubean-io/kubean/pull/1005
- Fix kubespray image build compatibility by @tu1h in https://github.com/kubean-io/kubean/pull/1006
- Update airgap patch by @ErikJiang in https://github.com/kubean-io/kubean/pull/1004
- make kubespray download files compatible by @tu1h in https://github.com/kubean-io/kubean/pull/1007
- Fixing airgap-patch image build issues by @ErikJiang in https://github.com/kubean-io/kubean/pull/1008
- fix upload assets greater than 2 GiB issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/1009
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.9.3...v0.10.0
"},{"location":"releases/v0.11.0/","title":"V0.11.0","text":""},{"location":"releases/v0.11.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.11.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/setup-qemu-action from 2 to 3 by @dependabot in https://github.com/kubean-io/kubean/pull/1019
- Bump mikefarah/yq from 4.33.3 to 4.40.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1018
- Bump docker/build-push-action from 4.1.1 to 5.1.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1017
- Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1016
- Bump docker/login-action from 2 to 3 by @dependabot in https://github.com/kubean-io/kubean/pull/1015
- Bump docker/setup-buildx-action from 2.7.0 to 3.0.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1028
- Bump mikefarah/yq from 4.40.2 to 4.40.4 by @dependabot in https://github.com/kubean-io/kubean/pull/1041
- Bump actions/labeler from 4 to 5 by @dependabot in https://github.com/kubean-io/kubean/pull/1042
- Bump actions/setup-python from 4 to 5 by @dependabot in https://github.com/kubean-io/kubean/pull/1046
- Bump mikefarah/yq from 4.40.4 to 4.40.5 by @dependabot in https://github.com/kubean-io/kubean/pull/1052
- Bump actions/setup-go from 4 to 5 by @dependabot in https://github.com/kubean-io/kubean/pull/1047
"},{"location":"releases/v0.11.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - add kubespray commit timestamp by @ErikJiang in https://github.com/kubean-io/kubean/pull/1010
- clean debug info for manual CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/1011
- update kubespray artifact patch CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/1012
- fix rebuild kubespray image issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/1013
- clean manifest dir by @ErikJiang in https://github.com/kubean-io/kubean/pull/1014
- update artifact patch md by @ErikJiang in https://github.com/kubean-io/kubean/pull/1024
- Revert \"Bump actions/checkout from 3 to 4\" by @ErikJiang in https://github.com/kubean-io/kubean/pull/1026
- Refactor controllers of Manifest and Localartifact by @tu1h in https://github.com/kubean-io/kubean/pull/1025
- update airgap patch docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1029
- fix airgap dockerfile issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/1030
- Enhancement log print by @tu1h in https://github.com/kubean-io/kubean/pull/1032
- Fix bump version failed by @Rei1010 in https://github.com/kubean-io/kubean/pull/1035
- Optimize manifest lookup overhead by @tu1h in https://github.com/kubean-io/kubean/pull/1036
- Add unit test by @tu1h in https://github.com/kubean-io/kubean/pull/1038
- Refactor import images script to support merge multi-platform image by @tu1h in https://github.com/kubean-io/kubean/pull/1040
- Allows using the airgap patch script to generate full offline packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/1033
- refine airgap demo by @ErikJiang in https://github.com/kubean-io/kubean/pull/1043
- Fix e2e failure since incompatible image-importing script by @tu1h in https://github.com/kubean-io/kubean/pull/1044
- Update CNCF image in README by @tu1h in https://github.com/kubean-io/kubean/pull/1048
- Fix nop-copy in code generation by @tu1h in https://github.com/kubean-io/kubean/pull/1051
- Fix upstream breaking-change #10626 by @tu1h in https://github.com/kubean-io/kubean/pull/1050
- Revert \"Bump actions/setup-go from 4 to 5\" by @ErikJiang in https://github.com/kubean-io/kubean/pull/1053
- update kubespray commit by @ErikJiang in https://github.com/kubean-io/kubean/pull/1045
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.10.0...v0.11.0
"},{"location":"releases/v0.11.1/","title":"V0.11.1","text":""},{"location":"releases/v0.11.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.11.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Add unit test cases by @tu1h in https://github.com/kubean-io/kubean/pull/1061
- Adjust support matrix permission by @Rei1010 in https://github.com/kubean-io/kubean/pull/1063
- set default flag for airgap full mode by @ErikJiang in https://github.com/kubean-io/kubean/pull/1064
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.11.0...v0.11.1
"},{"location":"releases/v0.11.2/","title":"V0.11.2","text":""},{"location":"releases/v0.11.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.11.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1065
- Fix e2e when upgrade cluster by @tu1h in https://github.com/kubean-io/kubean/pull/1066
- Restore image address by @ErikJiang in https://github.com/kubean-io/kubean/pull/1067
- update binaries url by @ErikJiang in https://github.com/kubean-io/kubean/pull/1068
- clear old airgap data in dockerfile by @ErikJiang in https://github.com/kubean-io/kubean/pull/1069
- update airgap scripts by @ErikJiang in https://github.com/kubean-io/kubean/pull/1070
- update release latest status by @ErikJiang in https://github.com/kubean-io/kubean/pull/1071
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.11.1...v0.11.2
"},{"location":"releases/v0.12.0/","title":"V0.12.0","text":""},{"location":"releases/v0.12.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.12.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Remove building and uses of kubespray latest tag by @tu1h in https://github.com/kubean-io/kubean/pull/1073
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1072
- Get correct kubespray version in e2e by @tu1h in https://github.com/kubean-io/kubean/pull/1074
- Add playbook for kube-vip configuration by @tu1h in https://github.com/kubean-io/kubean/pull/1075
- Improve execution efficiency for precheck playbook by @tu1h in https://github.com/kubean-io/kubean/pull/1076
- Bump kubespray by @tu1h in https://github.com/kubean-io/kubean/pull/1077
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.11.2...v0.12.0
"},{"location":"releases/v0.12.1/","title":"V0.12.1","text":""},{"location":"releases/v0.12.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.12.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - get pause image tag by @ErikJiang in https://github.com/kubean-io/kubean/pull/1080
- Optimize clusteroperation reconcile by @tu1h in https://github.com/kubean-io/kubean/pull/1082
- Add new playbook into whitelist by @tu1h in https://github.com/kubean-io/kubean/pull/1081
- [zh-cn] update offline build script describe by @my-git9 in https://github.com/kubean-io/kubean/pull/1062
- Patch for #1076 - cancel gather fact in playbook level by @tu1h in https://github.com/kubean-io/kubean/pull/1083
- Fix coredns image version mismatch by @ErikJiang in https://github.com/kubean-io/kubean/pull/1084
- fixed crictl binary version mismatch by @ErikJiang in https://github.com/kubean-io/kubean/pull/1085
- update denpendencies url by @ErikJiang in https://github.com/kubean-io/kubean/pull/1086
- add project for harbor by @ErikJiang in https://github.com/kubean-io/kubean/pull/1087
- Bump kubespray by @tu1h in https://github.com/kubean-io/kubean/pull/1088
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.12.0...v0.12.1
"},{"location":"releases/v0.12.2/","title":"V0.12.2","text":""},{"location":"releases/v0.12.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.12.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Fix verify Kubespray e2e by @tu1h in https://github.com/kubean-io/kubean/pull/1094
- Fix verify Kubespray e2e in cluster reset step by @tu1h in https://github.com/kubean-io/kubean/pull/1095
- migrate old version localArtifactSet by @ErikJiang in https://github.com/kubean-io/kubean/pull/1096
- enhance quick start gif by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1098
- add podman for offline e2e by @ErikJiang in https://github.com/kubean-io/kubean/pull/1099
- fix missing version_lt function by @ErikJiang in https://github.com/kubean-io/kubean/pull/1100
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1078
- Refine kube vip playbook by @tu1h in https://github.com/kubean-io/kubean/pull/1101
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.12.1...v0.12.2
"},{"location":"releases/v0.12.3/","title":"V0.12.3","text":""},{"location":"releases/v0.12.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.12.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [cherry-pick] Add Rockylinux support by @tu1h in https://github.com/kubean-io/kubean/pull/1129
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.12.2...v0.12.3
"},{"location":"releases/v0.13.0/","title":"V0.13.0","text":""},{"location":"releases/v0.13.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Unrestrict kubeproxy mode for kubevip playbook by @tu1h in https://github.com/kubean-io/kubean/pull/1106
- update spray version to 0dbde75 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1107
- remove cd step in release ci and change workflows name by @ErikJiang in https://github.com/kubean-io/kubean/pull/1105
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.12.2...v0.13.0
"},{"location":"releases/v0.13.1/","title":"V0.13.1","text":""},{"location":"releases/v0.13.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.1/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/onsi/gomega from 1.27.6 to 1.31.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1091
- Bump actions/cache from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1089
- Bump actions/upload-artifact from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1057
- Bump actions/download-artifact from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1056
"},{"location":"releases/v0.13.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Add Rockylinux 9 support by @tu1h in https://github.com/kubean-io/kubean/pull/1104
- Bump default E2E Kubernetes version by @Rei1010 in https://github.com/kubean-io/kubean/pull/1108
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1102
- Revert \"Bump github.com/onsi/gomega from 1.27.6 to 1.31.1\" by @tu1h in https://github.com/kubean-io/kubean/pull/1109
- update kubespray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1112
- add concurrency policy for PR CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/1113
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.0...v0.13.1
"},{"location":"releases/v0.13.10/","title":"V0.13.10","text":""},{"location":"releases/v0.13.10/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.10/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/setup-buildx-action from 3.2.0 to 3.3.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1197
- Bump peaceiris/actions-gh-pages from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1200
"},{"location":"releases/v0.13.10/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1193
- Reconstruct the daily e2e test structure and add automatic retry of e2e tests by @FloatXD in https://github.com/kubean-io/kubean/pull/1194
- add panpan0000 as maintainer. by @panpan0000 in https://github.com/kubean-io/kubean/pull/1196
- update roadmap for Q2 2024 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1195
- update sonobouy_e2e CONTAINER_TAG by @FloatXD in https://github.com/kubean-io/kubean/pull/1198
- Update README.md by @wawa0210 in https://github.com/kubean-io/kubean/pull/1199
- rollback kubespray version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1202
"},{"location":"releases/v0.13.10/#new-contributors","title":"New Contributors","text":" - @FloatXD made their first contribution in https://github.com/kubean-io/kubean/pull/1194
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.14.0...v0.13.10
"},{"location":"releases/v0.13.11/","title":"V0.13.11","text":""},{"location":"releases/v0.13.11/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.11/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1203
- Support multi-arch for Ubuntu ospkg by @tu1h in https://github.com/kubean-io/kubean/pull/1204
- Update MAINTAINERS by @tu1h in https://github.com/kubean-io/kubean/pull/1205
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.10...v0.13.11
"},{"location":"releases/v0.13.2/","title":"V0.13.2","text":""},{"location":"releases/v0.13.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1115
- add stale workflow by @ErikJiang in https://github.com/kubean-io/kubean/pull/1116
- Remove kubectl get version option by @Rei1010 in https://github.com/kubean-io/kubean/pull/1117
- Bump offline E2E Kubernetes version by @Rei1010 in https://github.com/kubean-io/kubean/pull/1122
- Bump offline E2E Kubernetes version to 1.27.5 by @Rei1010 in https://github.com/kubean-io/kubean/pull/1128
- Enhance Kubean chart helper template by @tu1h in https://github.com/kubean-io/kubean/pull/1132
- Bump docker-containerd to 1.6.28 for ospkgs by @tu1h in https://github.com/kubean-io/kubean/pull/1131
- Correct the downloads info generation by @tu1h in https://github.com/kubean-io/kubean/pull/1134
- fix kube_version empty by @ErikJiang in https://github.com/kubean-io/kubean/pull/1136
- update verify tag by @ErikJiang in https://github.com/kubean-io/kubean/pull/1137
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.1...v0.13.2
"},{"location":"releases/v0.13.3/","title":"V0.13.3","text":""},{"location":"releases/v0.13.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix empty images list file by @ErikJiang in https://github.com/kubean-io/kubean/pull/1138
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.2...v0.13.3
"},{"location":"releases/v0.13.4/","title":"V0.13.4","text":""},{"location":"releases/v0.13.4/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.4/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.40.5 to 4.42.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1135
- Bump docker/setup-buildx-action from 3.0.0 to 3.1.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1141
"},{"location":"releases/v0.13.4/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - add runc component version info by @ErikJiang in https://github.com/kubean-io/kubean/pull/1139
- add runc key in template by @ErikJiang in https://github.com/kubean-io/kubean/pull/1140
- Bump Offline E2E by @Rei1010 in https://github.com/kubean-io/kubean/pull/1133
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1130
- Fix E2E Failure by @Rei1010 in https://github.com/kubean-io/kubean/pull/1143
- remove pause version function by @ErikJiang in https://github.com/kubean-io/kubean/pull/1144
- Remove etcd from optional component version information by @ErikJiang in https://github.com/kubean-io/kubean/pull/1146
- add docker version 24.0 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1145
- Remove etcd version multi-select information from custom resources by @ErikJiang in https://github.com/kubean-io/kubean/pull/1147
- Fix container-selinux version for redhat8 by @tu1h in https://github.com/kubean-io/kubean/pull/1148
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.3...v0.13.4
"},{"location":"releases/v0.13.5/","title":"V0.13.5","text":""},{"location":"releases/v0.13.5/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.5/#new-features","title":"\u2728 New Features","text":" - refactoring custom resource generate script by @ErikJiang in https://github.com/kubean-io/kubean/pull/1152
"},{"location":"releases/v0.13.5/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump softprops/action-gh-release from 1 to 2 by @dependabot in https://github.com/kubean-io/kubean/pull/1155
- Bump docker/build-push-action from 5.1.0 to 5.2.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1154
- Bump golangci/golangci-lint-action from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1120
- Bump peter-evans/create-pull-request from 5 to 6 by @dependabot in https://github.com/kubean-io/kubean/pull/1111
"},{"location":"releases/v0.13.5/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix artifacts kube_version_range by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1150
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1149
- clean unused files by @ErikJiang in https://github.com/kubean-io/kubean/pull/1153
- fix docker-ce-cli version in ubuntu2004 by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1157
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.4...v0.13.5
"},{"location":"releases/v0.13.6/","title":"V0.13.6","text":""},{"location":"releases/v0.13.6/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.6/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/build-push-action from 5.2.0 to 5.3.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1162
- Bump docker/setup-buildx-action from 3.1.0 to 3.2.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1161
"},{"location":"releases/v0.13.6/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1159
- fix docker-ce-cli version in ubuntu18.04 by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1158
- fresh package list when build os pkgs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1160
- add debug script by @ErikJiang in https://github.com/kubean-io/kubean/pull/1163
- Precheck if docker is running by @tu1h in https://github.com/kubean-io/kubean/pull/1164
- Add playbook to config insecure registry by @tu1h in https://github.com/kubean-io/kubean/pull/1170
- Add playbook to enable nf_conntrack by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1171
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.5...v0.13.6
"},{"location":"releases/v0.13.7/","title":"V0.13.7","text":""},{"location":"releases/v0.13.7/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.7/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix missing lib file in arm-arch container by @ErikJiang in https://github.com/kubean-io/kubean/pull/1173
- fix kube version rendering error by @ErikJiang in https://github.com/kubean-io/kubean/pull/1174
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.6...v0.13.7
"},{"location":"releases/v0.13.8/","title":"V0.13.8","text":""},{"location":"releases/v0.13.8/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.8/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix build ubuntu os-pkg: lack unzip pkg by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1175
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.7...v0.13.8
"},{"location":"releases/v0.13.9/","title":"V0.13.9","text":""},{"location":"releases/v0.13.9/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.9/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Make the python version determined in config-insecure-registry.yml by @tu1h in https://github.com/kubean-io/kubean/pull/1176
- enable live restore for docker by @tu1h in https://github.com/kubean-io/kubean/pull/1178
- fix build os-pkg for ubuntu2004: set containerd to 1.6.28-1 when install docker by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1177
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1172
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.8...v0.13.9
"},{"location":"releases/v0.14.0/","title":"V0.14.0","text":""},{"location":"releases/v0.14.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.14.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.42.1 to 4.43.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1182
"},{"location":"releases/v0.14.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - playbook: mount xfs device with pquota option by @ErikJiang in https://github.com/kubean-io/kubean/pull/1179
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1180
- add ut by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1183
- Chore: update chart readme by @yyzxw in https://github.com/kubean-io/kubean/pull/1186
- clear coverage temp file by @ErikJiang in https://github.com/kubean-io/kubean/pull/1188
- coverage spelling mistake by @ErikJiang in https://github.com/kubean-io/kubean/pull/1189
- add ut by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1187
- add release version 2.24 for artifact doc by @ErikJiang in https://github.com/kubean-io/kubean/pull/1190
- change spray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1191
- Bump python version for offline build github action by @tu1h in https://github.com/kubean-io/kubean/pull/1192
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.9...v0.14.0
"},{"location":"releases/v0.15.0/","title":"V0.15.0","text":""},{"location":"releases/v0.15.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.15.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump golangci/golangci-lint-action from 4 to 5 by @dependabot in https://github.com/kubean-io/kubean/pull/1213
"},{"location":"releases/v0.15.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - load kubeconfig filepath when load rest config fail by @HeavenTonight in https://github.com/kubean-io/kubean/pull/1201
- fix: makefile error by @yyzxw in https://github.com/kubean-io/kubean/pull/1215
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1206
- add other info for docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1219
- Add license scan report and status by @fossabot in https://github.com/kubean-io/kubean/pull/1218
- Update README and GOVERNANCE md by @tu1h in https://github.com/kubean-io/kubean/pull/1220
- Support for Ubuntu jammy by @tu1h in https://github.com/kubean-io/kubean/pull/1221
- [docs] Improve usage/airgap.md by @windsonsea in https://github.com/kubean-io/kubean/pull/1223
- optimized pkg_mgr patch logic by @ErikJiang in https://github.com/kubean-io/kubean/pull/1222
- fix CVE-2023-24538 vulnerabilities in spray image by @ErikJiang in https://github.com/kubean-io/kubean/pull/1225
- update kubespray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1216
"},{"location":"releases/v0.15.0/#new-contributors","title":"New Contributors","text":" - @HeavenTonight made their first contribution in https://github.com/kubean-io/kubean/pull/1201
- @fossabot made their first contribution in https://github.com/kubean-io/kubean/pull/1218
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.11...v0.15.0
"},{"location":"releases/v0.15.1/","title":"V0.15.1","text":""},{"location":"releases/v0.15.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.15.1/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump golangci/golangci-lint-action from 5 to 6 by @dependabot in https://github.com/kubean-io/kubean/pull/1226
"},{"location":"releases/v0.15.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1227
- Modify Kubespray CI's rebuild logic for image building by @ErikJiang in https://github.com/kubean-io/kubean/pull/1229
- fix get dockerfile commit is empty by @ErikJiang in https://github.com/kubean-io/kubean/pull/1230
- add dockerfile commit outputs var by @ErikJiang in https://github.com/kubean-io/kubean/pull/1231
- Remove quotes from Dockerfile commit values in image building CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/1232
- Bump Kubespray by @tu1h in https://github.com/kubean-io/kubean/pull/1233
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.15.0...v0.15.1
"},{"location":"releases/v0.15.2/","title":"V0.15.2","text":""},{"location":"releases/v0.15.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.15.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1234
- add sha256sum file to release assets by @ErikJiang in https://github.com/kubean-io/kubean/pull/1236
- update the image: kubean architecture by @windsonsea in https://github.com/kubean-io/kubean/pull/1235
- Update en and zh README by @windsonsea in https://github.com/kubean-io/kubean/pull/1228
- update fossa badge for readme by @ErikJiang in https://github.com/kubean-io/kubean/pull/1238
- Supplement centos in os pkgs matrix by @ErikJiang in https://github.com/kubean-io/kubean/pull/1240
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.15.1...v0.15.2
"},{"location":"releases/v0.15.3/","title":"V0.15.3","text":""},{"location":"releases/v0.15.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.15.3/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.43.1 to 4.44.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1242
- Bump github.com/spf13/cobra from 1.7.0 to 1.8.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1246
- Bump github.com/go-logr/logr from 1.2.4 to 1.4.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1247
"},{"location":"releases/v0.15.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Add checksum in the download script by @FloatXD in https://github.com/kubean-io/kubean/pull/1237
- fix util download_resource_files by @FloatXD in https://github.com/kubean-io/kubean/pull/1248
- Fix invalid use of klog format specifier by @tu1h in https://github.com/kubean-io/kubean/pull/1249
- Fix incorrect e2e assert by @tu1h in https://github.com/kubean-io/kubean/pull/1251
- update default kube_version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1250
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.15.2...v0.15.3
"},{"location":"releases/v0.16.0/","title":"V0.16.0","text":""},{"location":"releases/v0.16.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.16.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/go-logr/logr from 1.4.1 to 1.4.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1263
- Bump docker/build-push-action from 5.3.0 to 5.4.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1266
- Bump github.com/onsi/ginkgo/v2 from 2.9.4 to 2.19.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1267
"},{"location":"releases/v0.16.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1252
- streamlined remote access with ssh key mode for other linux by @ErikJiang in https://github.com/kubean-io/kubean/pull/1253
- update KUBE_VERSION in e2e_test by @FloatXD in https://github.com/kubean-io/kubean/pull/1258
- update offline e2e kube verison by @FloatXD in https://github.com/kubean-io/kubean/pull/1259
- update e2e kube verison by @FloatXD in https://github.com/kubean-io/kubean/pull/1260
- Remove kubectl get version option by @FloatXD in https://github.com/kubean-io/kubean/pull/1262
- bump kube_version to v1.29 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1268
- add docker 26.1 to os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/1269
- update rhel8 os package by @ErikJiang in https://github.com/kubean-io/kubean/pull/1270
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.15.3...v0.16.0
"},{"location":"releases/v0.16.1/","title":"V0.16.1","text":""},{"location":"releases/v0.16.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.16.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1271
- update e2e kube verison to v1.29.0 by @FloatXD in https://github.com/kubean-io/kubean/pull/1272
- Add playbook to set containerd registry mirrors by @tu1h in https://github.com/kubean-io/kubean/pull/1273
- Refine playbook set_containerd_registry_mirror by @tu1h in https://github.com/kubean-io/kubean/pull/1274
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.16.0...v0.16.1
"},{"location":"releases/v0.16.2/","title":"V0.16.2","text":""},{"location":"releases/v0.16.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.16.2/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.44.1 to 4.44.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1282
- Bump docker/build-push-action from 5.4.0 to 6.0.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1281
- Bump k8s.io/klog/v2 from 2.100.1 to 2.130.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1280
- Bump github.com/spf13/cobra from 1.8.0 to 1.8.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1276
"},{"location":"releases/v0.16.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1275
- Support disable kernel unattended upgrades for Ubuntu by @tu1h in https://github.com/kubean-io/kubean/pull/1283
- Fix bug of #1283 by @tu1h in https://github.com/kubean-io/kubean/pull/1284
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.16.1...v0.16.2
"},{"location":"releases/v0.16.3/","title":"V0.16.3","text":""},{"location":"releases/v0.16.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.16.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix kylinv10 containerd version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1286
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.16.2...v0.16.3
"},{"location":"releases/v0.17.0/","title":"V0.17.0","text":""},{"location":"releases/v0.17.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.0/#new-features","title":"\u2728 New Features","text":" - restart components after renew certs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1295
- Add ipset & ipvsadm to os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/1298
- fix CVE-2024-24790 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1300
"},{"location":"releases/v0.17.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/build-push-action from 6.0.0 to 6.1.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1289
- Bump k8s.io/klog/v2 from 2.130.0 to 2.130.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1291
- Bump docker/build-push-action from 6.1.0 to 6.2.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1293
- Bump docker/build-push-action from 6.2.0 to 6.3.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1299
- Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1301
"},{"location":"releases/v0.17.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix config error in e2e upgrade test by @FloatXD in https://github.com/kubean-io/kubean/pull/1287
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1285
- update os-pkg linux list by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1290
- Simplify kubean download_url format by @ErikJiang in https://github.com/kubean-io/kubean/pull/1294
- restart control plane pods after renew certs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1297
- Use orcalelinux7 instead of centos7 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1296
- update kubespray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1302
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.16.3...v0.17.0
"},{"location":"releases/v0.17.1/","title":"V0.17.1","text":""},{"location":"releases/v0.17.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1303
- Clean os pkgs for rhel7 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1304
- Add os pkg for kylin v10 sp3 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1305
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.0...v0.17.1
"},{"location":"releases/v0.17.2/","title":"V0.17.2","text":""},{"location":"releases/v0.17.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - update kylin default docker version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1307
- Change Docker cgroupDriver to cgroupfs in Kylin SP2 by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1308
- bump docker containerd version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1309
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1306
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.1...v0.17.2
"},{"location":"releases/v0.17.3/","title":"V0.17.3","text":""},{"location":"releases/v0.17.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.3/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/build-push-action from 6.3.0 to 6.4.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1311
"},{"location":"releases/v0.17.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1310
- update kylin iso repo urls by @ErikJiang in https://github.com/kubean-io/kubean/pull/1312
- add precheck time info by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1313
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.2...v0.17.3
"},{"location":"releases/v0.17.4/","title":"V0.17.4","text":""},{"location":"releases/v0.17.4/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.4/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [e2e]fix os repo in arm-offline-e2e by @FloatXD in https://github.com/kubean-io/kubean/pull/1323
- Bump kubespray to 2d194af by @tu1h in https://github.com/kubean-io/kubean/pull/1324
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.3...v0.17.4
"},{"location":"releases/v0.17.5/","title":"V0.17.5","text":""},{"location":"releases/v0.17.5/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.5/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - update artifact doc script by @ErikJiang in https://github.com/kubean-io/kubean/pull/1316
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1314
- Bump kubespray to 86f9803 by @tu1h in https://github.com/kubean-io/kubean/pull/1329
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.4...v0.17.5
"},{"location":"releases/v0.18.0/","title":"V0.18.0","text":""},{"location":"releases/v0.18.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/setup-buildx-action from 3.4.0 to 3.6.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1328
- Bump github.com/onsi/ginkgo/v2 from 2.19.0 to 2.19.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1327
- Bump docker/build-push-action from 6.4.0 to 6.5.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1318
"},{"location":"releases/v0.18.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [docs] remove $ from only-command to reduce actions by @windsonsea in https://github.com/kubean-io/kubean/pull/1325
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.5...v0.18.0
"},{"location":"releases/v0.18.1/","title":"V0.18.1","text":""},{"location":"releases/v0.18.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Fix role privilege by @tu1h in https://github.com/kubean-io/kubean/pull/1336
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.0...v0.18.1
"},{"location":"releases/v0.18.2/","title":"V0.18.2","text":""},{"location":"releases/v0.18.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.2/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/build-push-action from 6.5.0 to 6.7.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1339
"},{"location":"releases/v0.18.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [Test]fix network e2e by @FloatXD in https://github.com/kubean-io/kubean/pull/1338
- Image building enhancement by @tu1h in https://github.com/kubean-io/kubean/pull/1341
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1330
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.1...v0.18.2
"},{"location":"releases/v0.18.3/","title":"V0.18.3","text":""},{"location":"releases/v0.18.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - add SprayJobImageRegistry to kubean-config and update manifest by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1348
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.2...v0.18.3
"},{"location":"releases/v0.18.4/","title":"V0.18.4","text":""},{"location":"releases/v0.18.4/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.4/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - keep current manifest when helm upgrade kubean by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1349
- bump kubespray version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1350
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.3...v0.18.4
"},{"location":"releases/v0.18.5/","title":"V0.18.5","text":""},{"location":"releases/v0.18.5/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.5/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix kubean manifest helm keep policy by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1352
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.4...v0.18.5
"},{"location":"releases/v0.19.0/","title":"V0.19.0","text":""},{"location":"releases/v0.19.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.19.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.44.2 to 4.44.3 by @dependabot in https://github.com/kubean-io/kubean/pull/1333
- Bump github.com/onsi/gomega from 1.34.0 to 1.34.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1334
- Bump k8s.io/apiserver from 0.26.4 to 0.31.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1343
- Bump github.com/onsi/ginkgo/v2 from 2.19.1 to 2.20.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1360
- Bump github.com/onsi/gomega from 1.34.1 to 1.34.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1359
- Bump peter-evans/create-pull-request from 6 to 7 by @dependabot in https://github.com/kubean-io/kubean/pull/1361
"},{"location":"releases/v0.19.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix rls version handing in artifacts doc by @ErikJiang in https://github.com/kubean-io/kubean/pull/1351
- Update gen_artifact_doc.py by @ErikJiang in https://github.com/kubean-io/kubean/pull/1353
- Support Rocky Linux 8 by @tu1h in https://github.com/kubean-io/kubean/pull/1354
- Update renew-certs.yml by @ErikJiang in https://github.com/kubean-io/kubean/pull/1355
- [Test]Use ls -l instead of ll by @FloatXD in https://github.com/kubean-io/kubean/pull/1347
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1342
- Revert \"Bump k8s.io/apiserver from 0.26.4 to 0.31.0\" by @ErikJiang in https://github.com/kubean-io/kubean/pull/1357
- add helm hook to add manifest annotation by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1358
- update spray commit & kube version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1362
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.5...v0.19.0
"},{"location":"releases/v0.20.0/","title":"V0.20.0","text":""},{"location":"releases/v0.20.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.20.0/#documentation","title":"\ud83d\udcda Documentation","text":" - [test]update Kubean test case by @FloatXD in https://github.com/kubean-io/kubean/pull/1383
"},{"location":"releases/v0.20.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/setup-buildx-action from 3.6.1 to 3.7.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1382
- Bump docker/build-push-action from 6.7.0 to 6.9.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1380
- Bump aquasecurity/trivy-action from 0.20.0 to 0.28.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1385
"},{"location":"releases/v0.20.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [Test]update kube_version in e2e test by @FloatXD in https://github.com/kubean-io/kubean/pull/1364
- [Test]Optimize the retry logic in e2e test by @FloatXD in https://github.com/kubean-io/kubean/pull/1366
- [Test]Remove check for /proc/sys/net/ipv4/tcp_tw_recycle by @FloatXD in https://github.com/kubean-io/kubean/pull/1367
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1363
- [Test]update e2e test for rocky8 by @FloatXD in https://github.com/kubean-io/kubean/pull/1368
- [Test]update e2e test for rocky8 by @FloatXD in https://github.com/kubean-io/kubean/pull/1369
- [Test]update e2e test for import rocky8 os-pkg by @FloatXD in https://github.com/kubean-io/kubean/pull/1374
- [Test]update e2e test for import rocky8 iso_image by @FloatXD in https://github.com/kubean-io/kubean/pull/1375
- Enable gosec in golangci check by @tu1h in https://github.com/kubean-io/kubean/pull/1377
- [Test]update e2e test offline_minio_url by @FloatXD in https://github.com/kubean-io/kubean/pull/1376
- [Test]update offline_e2e kubeanClusterOps.yml by @FloatXD in https://github.com/kubean-io/kubean/pull/1379
- Enable cert scan by @tu1h in https://github.com/kubean-io/kubean/pull/1378
- [e2e] add ca auto_renew check in e2e test by @FloatXD in https://github.com/kubean-io/kubean/pull/1384
- update testcase reference by @emmanuel-ferdman in https://github.com/kubean-io/kubean/pull/1386
- bump kubespray version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1391
"},{"location":"releases/v0.20.0/#new-contributors","title":"New Contributors","text":" - @emmanuel-ferdman made their first contribution in https://github.com/kubean-io/kubean/pull/1386
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.19.0...v0.20.0
"},{"location":"releases/v0.21.0/","title":"V0.21.0","text":""},{"location":"releases/v0.21.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.21.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/onsi/ginkgo/v2 from 2.20.2 to 2.21.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1395
"},{"location":"releases/v0.21.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [Test] Remove centos7 from the test list by @FloatXD in https://github.com/kubean-io/kubean/pull/1393
- [Test]Replacement check items for rocky8 by @FloatXD in https://github.com/kubean-io/kubean/pull/1394
- [Test] Replace the centos7 test label with rocky8 by @FloatXD in https://github.com/kubean-io/kubean/pull/1396
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1392
- optimize tool scripts for other os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/1398
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.20.0...v0.21.0
"},{"location":"releases/v0.21.1/","title":"V0.21.1","text":""},{"location":"releases/v0.21.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.21.1/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/onsi/gomega from 1.34.2 to 1.35.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1402
"},{"location":"releases/v0.21.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [CI] Add support list in release notes markdown by @FloatXD in https://github.com/kubean-io/kubean/pull/1401
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1399
- [Test] Upgrade k8s version to 1.30.5 by @FloatXD in https://github.com/kubean-io/kubean/pull/1403
- [Test] Fixed the issue that rocky8 cannot select the correct kubeanClusterOps.yml in e2e test by @FloatXD in https://github.com/kubean-io/kubean/pull/1405
- add nfs client tools in os-packages by @san3Xian in https://github.com/kubean-io/kubean/pull/1404
- Update Maintainer by @0ekk in https://github.com/kubean-io/kubean/pull/1406
- Bump Kubespray by @0ekk in https://github.com/kubean-io/kubean/pull/1407
"},{"location":"releases/v0.21.1/#new-contributors","title":"New Contributors","text":" - @san3Xian made their first contribution in https://github.com/kubean-io/kubean/pull/1404
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.21.0...v0.21.1 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | v1.30.5 | \u00a0 'v1.31.2' \u00a0 'v1.31.1' \u00a0 'v1.31.0' \u00a0 'v1.30.6' \u00a0 'v1.30.5' \u00a0 'v1.30.4' \u00a0 'v1.30.3' \u00a0 'v1.30.2' \u00a0 'v1.30.1' \u00a0 'v1.30.0' \u00a0 'v1.29.10' \u00a0 'v1.29.9' \u00a0 'v1.29.8' \u00a0 'v1.29.7' \u00a0 'v1.29.6' \u00a0 'v1.29.5' \u00a0 'v1.29.4' \u00a0 'v1.29.3' \u00a0 'v1.29.2' \u00a0 'v1.29.1' \u00a0 'v1.29.0'|
"},{"location":"releases/v0.22.0/","title":"V0.22.0","text":""},{"location":"releases/v0.22.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.22.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump aquasecurity/trivy-action from 0.28.0 to 0.29.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1412
- Bump mikefarah/yq from 4.44.3 to 4.44.5 by @dependabot in https://github.com/kubean-io/kubean/pull/1410
- Bump github.com/onsi/ginkgo/v2 from 2.21.0 to 2.22.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1417
- Bump docker/build-push-action from 6.9.0 to 6.10.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1422
- Bump github.com/onsi/gomega from 1.35.1 to 1.36.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1425
"},{"location":"releases/v0.22.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [CI] Add support list in release notes body by @FloatXD in https://github.com/kubean-io/kubean/pull/1409
- [Test]Optimize the generation method of rocky-kubeanclusterops by @FloatXD in https://github.com/kubean-io/kubean/pull/1413
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1408
- [doc]Fix the incorrect Default Kubernetes Version by @FloatXD in https://github.com/kubean-io/kubean/pull/1414
- [Test]Update the Cluster Type in calicoctl version to v3.28.1 by @FloatXD in https://github.com/kubean-io/kubean/pull/1415
- [Test]Remove redundant operations on kubeanClusterOps.yml by @FloatXD in https://github.com/kubean-io/kubean/pull/1421
- clear redundant log info by @ErikJiang in https://github.com/kubean-io/kubean/pull/1426
- bump kubespray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1427
- fix set secret OwnerReferences by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1424
- fix latest tag invaild in release action by @ErikJiang in https://github.com/kubean-io/kubean/pull/1428
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.21.1...v0.22.0 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | null | null|
"},{"location":"releases/v0.22.1/","title":"V0.22.1","text":""},{"location":"releases/v0.22.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.22.1/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.44.5 to 4.44.6 by @dependabot in https://github.com/kubean-io/kubean/pull/1431
"},{"location":"releases/v0.22.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [CI]Added the function of judging whether curl successfully obtains manifest.cr.yaml by @FloatXD in https://github.com/kubean-io/kubean/pull/1430
- fix: airgap package build doesn't exit on error by @ErikJiang in https://github.com/kubean-io/kubean/pull/1435
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.22.0...v0.22.1 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | v1.30.5 | 'v1.31.3' \u00a0 'v1.31.2' \u00a0 'v1.31.1' \u00a0 'v1.31.0' \u00a0 'v1.30.7' \u00a0 'v1.30.6' \u00a0 'v1.30.5' \u00a0 'v1.30.4' \u00a0 'v1.30.3' \u00a0 'v1.30.2' \u00a0 'v1.30.1' \u00a0 'v1.30.0' \u00a0 'v1.29.11' \u00a0 'v1.29.10' \u00a0 'v1.29.9' \u00a0 'v1.29.8' \u00a0 'v1.29.7' \u00a0 'v1.29.6' \u00a0 'v1.29.5' \u00a0 'v1.29.4' \u00a0 'v1.29.3' \u00a0 'v1.29.2' \u00a0 'v1.29.1' \u00a0 'v1.29.0'|
"},{"location":"releases/v0.22.2/","title":"V0.22.2","text":""},{"location":"releases/v0.22.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.22.2/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/onsi/gomega from 1.36.0 to 1.36.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1443
- Bump docker/setup-buildx-action from 3.7.1 to 3.8.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1438
"},{"location":"releases/v0.22.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1436
- Allow run playbook facts.yml in Kubean by @0ekk in https://github.com/kubean-io/kubean/pull/1444
- [Test]Before using --limit run playbook facts.yml in test by @FloatXD in https://github.com/kubean-io/kubean/pull/1433
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.22.1...v0.22.2 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | v1.30.5 | 'v1.31.3' \u00a0 'v1.31.2' \u00a0 'v1.31.1' \u00a0 'v1.31.0' \u00a0 'v1.30.7' \u00a0 'v1.30.6' \u00a0 'v1.30.5' \u00a0 'v1.30.4' \u00a0 'v1.30.3' \u00a0 'v1.30.2' \u00a0 'v1.30.1' \u00a0 'v1.30.0' \u00a0 'v1.29.11' \u00a0 'v1.29.10' \u00a0 'v1.29.9' \u00a0 'v1.29.8' \u00a0 'v1.29.7' \u00a0 'v1.29.6' \u00a0 'v1.29.5' \u00a0 'v1.29.4' \u00a0 'v1.29.3' \u00a0 'v1.29.2' \u00a0 'v1.29.1' \u00a0 'v1.29.0'|
"},{"location":"releases/v0.4.0/","title":"V0.4.0","text":""},{"location":"releases/v0.4.0/#whats-changed","title":"What's Changed","text":" - update docker os-pkg version by @hangscer8 in https://github.com/kubean-io/kubean/pull/262
- cluster info with more retry time by @hangscer8 in https://github.com/kubean-io/kubean/pull/261
- Manifest crd support multi image repo by @hangscer8 in https://github.com/kubean-io/kubean/pull/266
- update kubespray default version to v1.24.7 by @ErikJiang in https://github.com/kubean-io/kubean/pull/272
- Disable cn proxy sources to improve kubean image build efficiency by @ErikJiang in https://github.com/kubean-io/kubean/pull/273
- fix e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/267
- add dasu23 into approvers by @YunShiHang in https://github.com/kubean-io/kubean/pull/275
- Update offline doc by @ErikJiang in https://github.com/kubean-io/kubean/pull/276
- Fix temporary version tag issues by @YunShiHang in https://github.com/kubean-io/kubean/pull/281
- add version constraints of dependencies in offline case by @tu1h in https://github.com/kubean-io/kubean/pull/274
- [chroe] Improve the install trivy method by @SSmallMonster in https://github.com/kubean-io/kubean/pull/282
- add certificated logo by @wenting-guo in https://github.com/kubean-io/kubean/pull/284
- adjust generate_offline_package to multi harbor projects by @hangscer8 in https://github.com/kubean-io/kubean/pull/285
- Unified k8s version by @ErikJiang in https://github.com/kubean-io/kubean/pull/286
- Update README badge by @ErikJiang in https://github.com/kubean-io/kubean/pull/287
- Add Dockerfile for airgap-patch by @hangscer8 in https://github.com/kubean-io/kubean/pull/289
- Add os package for ubuntu by @ErikJiang in https://github.com/kubean-io/kubean/pull/291
- rename ansible_ssh_pass to ansible_password by @tu1h in https://github.com/kubean-io/kubean/pull/290
- rename doc folder to docs by @tu1h in https://github.com/kubean-io/kubean/pull/293
- Add Doc For Airgap Patch by @hangscer8 in https://github.com/kubean-io/kubean/pull/294
- fix pr e2e fail by @wenting-guo in https://github.com/kubean-io/kubean/pull/288
- Support restore yum repo in enable-repo.yml by @ErikJiang in https://github.com/kubean-io/kubean/pull/298
- update & add some docs by @tu1h in https://github.com/kubean-io/kubean/pull/299
- Add documentation for deploying clusters with ssh secret keys by @ErikJiang in https://github.com/kubean-io/kubean/pull/302
- Update doc for deploy cluster with ssh key by @ErikJiang in https://github.com/kubean-io/kubean/pull/306
- Add auto release notes ci by @YunShiHang in https://github.com/kubean-io/kubean/pull/309
- add os compatibility e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/310
- fix checkout repository bug by @YunShiHang in https://github.com/kubean-io/kubean/pull/311
- add unit test by @hangscer8 in https://github.com/kubean-io/kubean/pull/314
- chore: add ut by @yyzxw in https://github.com/kubean-io/kubean/pull/313
- fix airgap patch mod by @hangscer8 in https://github.com/kubean-io/kubean/pull/315
- import_iso support kylin v10 sp2 by @hangscer8 in https://github.com/kubean-io/kubean/pull/316
- Translation of kubean documents (issue305) by @yulng in https://github.com/kubean-io/kubean/pull/307
- upgrade kind version to 1.25.3 by @wenting-guo in https://github.com/kubean-io/kubean/pull/312
- [CI]add incremental packages by @YunShiHang in https://github.com/kubean-io/kubean/pull/317
- Update os_family for kylin in enable-repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/318
- Add os packages for kylin linux by @ErikJiang in https://github.com/kubean-io/kubean/pull/321
- Update os packages for kylin linux by @ErikJiang in https://github.com/kubean-io/kubean/pull/324
- Update the absolute path of the command in playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/326
- Offline adapation for RHEL 8.4 by @tu1h in https://github.com/kubean-io/kubean/pull/325
- fix Dockerfile.redhat8 by @tu1h in https://github.com/kubean-io/kubean/pull/327
- v0.4.1 Pre-release version by @ErikJiang in https://github.com/kubean-io/kubean/pull/329
"},{"location":"releases/v0.4.0/#new-contributors","title":"New Contributors","text":" - @tu1h made their first contribution in https://github.com/kubean-io/kubean/pull/274
- @SSmallMonster made their first contribution in https://github.com/kubean-io/kubean/pull/282
- @yulng made their first contribution in https://github.com/kubean-io/kubean/pull/307
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.3.7...v0.4.0
"},{"location":"releases/v0.4.1/","title":"V0.4.1","text":""},{"location":"releases/v0.4.1/#whats-changed","title":"What's Changed","text":" - Fix import_iso.sh by @tu1h in https://github.com/kubean-io/kubean/pull/330
- specify k8s version by @ErikJiang in https://github.com/kubean-io/kubean/pull/331
- Fix kylin linux offline deployment python3-libselinux dependency issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/332
- translate sshkey_deploy_cluster.md by @Michelle951 in https://github.com/kubean-io/kubean/pull/323
- translate comparisons.md by @Michelle951 in https://github.com/kubean-io/kubean/pull/322
- translate crds.md to en by @Michelle951 in https://github.com/kubean-io/kubean/pull/320
- update packages.yml for kylin os by @ErikJiang in https://github.com/kubean-io/kubean/pull/335
- fix test by @hangscer8 in https://github.com/kubean-io/kubean/pull/334
- add release-process.md by @hangscer8 in https://github.com/kubean-io/kubean/pull/333
- Fix released image tag overrided by @tu1h in https://github.com/kubean-io/kubean/pull/336
- add offline-e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/341
- fix offline e2e workflow file by @wenting-guo in https://github.com/kubean-io/kubean/pull/342
- chart: namespace should go with release by @weizhoublue in https://github.com/kubean-io/kubean/pull/337
- update case md by @wenting-guo in https://github.com/kubean-io/kubean/pull/343
- Fix template rendering failure by @tu1h in https://github.com/kubean-io/kubean/pull/338
- fix offline workflow by @wenting-guo in https://github.com/kubean-io/kubean/pull/344
- fix offline shell by @wenting-guo in https://github.com/kubean-io/kubean/pull/345
- update airgap_patch image tag in doc by @hangscer8 in https://github.com/kubean-io/kubean/pull/349
- oprimize offline shell by @wenting-guo in https://github.com/kubean-io/kubean/pull/369
- optimize logs output by @hangscer8 in https://github.com/kubean-io/kubean/pull/362
- Optimize kubeanoperation spec.image tag by @hangscer8 in https://github.com/kubean-io/kubean/pull/371
- shihang.yun-fix-cd-bug by @YunShiHang in https://github.com/kubean-io/kubean/pull/374
- shihang.yun-optimize-input by @YunShiHang in https://github.com/kubean-io/kubean/pull/375
- fix cd image tag's bug by @YunShiHang in https://github.com/kubean-io/kubean/pull/376
- use kube-vip first by @hangscer8 in https://github.com/kubean-io/kubean/pull/379
- fix kubeconfig playbook by @hangscer8 in https://github.com/kubean-io/kubean/pull/380
- Reduce kubespray image size by @tu1h in https://github.com/kubean-io/kubean/pull/382
- allow custom kubean image repo in cd by @tu1h in https://github.com/kubean-io/kubean/pull/372
- fix arm image build failure by @tu1h in https://github.com/kubean-io/kubean/pull/384
- fix airgap-patch image build failure by @tu1h in https://github.com/kubean-io/kubean/pull/385
- Remove libselinux from os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/386
- Fix local Service yum repo by @hangscer8 in https://github.com/kubean-io/kubean/pull/387
- optimize offline-e2e environment set by @wenting-guo in https://github.com/kubean-io/kubean/pull/389
- add rhel7 ospkg by @tu1h in https://github.com/kubean-io/kubean/pull/390
- Check if the OS package needs to be rebuilt by @ErikJiang in https://github.com/kubean-io/kubean/pull/391
- Update get latest tag by @ErikJiang in https://github.com/kubean-io/kubean/pull/393
- Ready for release version v0.4.1 by @ErikJiang in https://github.com/kubean-io/kubean/pull/394
"},{"location":"releases/v0.4.1/#new-contributors","title":"New Contributors","text":" - @Michelle951 made their first contribution in https://github.com/kubean-io/kubean/pull/323
- @weizhoublue made their first contribution in https://github.com/kubean-io/kubean/pull/337
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.0...v0.4.1
"},{"location":"releases/v0.4.10/","title":"V0.4.10","text":""},{"location":"releases/v0.4.10/#whats-changed","title":"What's Changed","text":" - update redaht8 related e2e case by @wenting-guo in https://github.com/kubean-io/kubean/pull/654
- fix: ignore actionSourceRef not set by @jonyhy96 in https://github.com/kubean-io/kubean/pull/666
- optimize generate crds by @hangscer8 in https://github.com/kubean-io/kubean/pull/667
- add UT by @hangscer8 in https://github.com/kubean-io/kubean/pull/670
- kubean install on none kubean-system ns e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/672
- fix speedup offline package by @wenting-guo in https://github.com/kubean-io/kubean/pull/676
- [docs] update and translate theory-of-air-gapped-package.md by @windsonsea in https://github.com/kubean-io/kubean/pull/671
- cleanup: replace pkg ioutil with os by @yyzxw in https://github.com/kubean-io/kubean/pull/680
- update e2e case md by @wenting-guo in https://github.com/kubean-io/kubean/pull/683
- fix create job occasionally unsuccessfully from ops by @hangscer8 in https://github.com/kubean-io/kubean/pull/684
- Fix ansible lint by @tu1h in https://github.com/kubean-io/kubean/pull/694
- Add kubean examples by @ErikJiang in https://github.com/kubean-io/kubean/pull/693
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.9...v0.4.10
"},{"location":"releases/v0.4.2/","title":"V0.4.2","text":""},{"location":"releases/v0.4.2/#whats-changed","title":"What's Changed","text":" - Update previous tag by @ErikJiang in https://github.com/kubean-io/kubean/pull/395
- remove preset playbook by @tu1h in https://github.com/kubean-io/kubean/pull/396
- fix enable-repo by @hangscer8 in https://github.com/kubean-io/kubean/pull/397
- Block the update repo from kylin os by @ErikJiang in https://github.com/kubean-io/kubean/pull/399
- Revert \"fix enable-repo\" by @hangscer8 in https://github.com/kubean-io/kubean/pull/400
- Remove unnecessary pkgs by @tu1h in https://github.com/kubean-io/kubean/pull/403
- Improve check_rebuild_pkgs by @tu1h in https://github.com/kubean-io/kubean/pull/404
- Restore os pkg by @tu1h in https://github.com/kubean-io/kubean/pull/411
- Revert \"Restore os pkg\" by @ErikJiang in https://github.com/kubean-io/kubean/pull/412
- Restore os pkg by @tu1h in https://github.com/kubean-io/kubean/pull/413
- add kylin os case by @wenting-guo in https://github.com/kubean-io/kubean/pull/416
- fix offline e2e bug by @wenting-guo in https://github.com/kubean-io/kubean/pull/417
- update pr ci yaml by @wenting-guo in https://github.com/kubean-io/kubean/pull/422
- make pr ci from vagrant to vm by @wenting-guo in https://github.com/kubean-io/kubean/pull/423
- add a parameter to pr ci workflow by @wenting-guo in https://github.com/kubean-io/kubean/pull/435
- add calico case in nightly e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/438
- add secrets for nightly e2e in workflow yaml by @wenting-guo in https://github.com/kubean-io/kubean/pull/445
- Add resources by @ErikJiang in https://github.com/kubean-io/kubean/pull/447
- update case md by @wenting-guo in https://github.com/kubean-io/kubean/pull/448
- update nightly e2e yaml by @wenting-guo in https://github.com/kubean-io/kubean/pull/449
- update kubean logo by @ErikJiang in https://github.com/kubean-io/kubean/pull/450
- update os compatibility e2e to vm by @wenting-guo in https://github.com/kubean-io/kubean/pull/451
- update nightly e2e passwd to secret by @wenting-guo in https://github.com/kubean-io/kubean/pull/455
- add secrets parameter in os compatibility workflow yaml by @wenting-guo in https://github.com/kubean-io/kubean/pull/456
- Remove versions.json by @tu1h in https://github.com/kubean-io/kubean/pull/452
- optimize hardcode namespace by @hangscer8 in https://github.com/kubean-io/kubean/pull/457
- Support import for ubuntu iso by @tu1h in https://github.com/kubean-io/kubean/pull/458
- Add spray job timeout by @hangscer8 in https://github.com/kubean-io/kubean/pull/462
- Remove fuse only in docker mode by @tu1h in https://github.com/kubean-io/kubean/pull/463
- add apt repo in enable-repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/459
- Update the check scripts for building os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/464
- fix nightly e2e helm version set by @wenting-guo in https://github.com/kubean-io/kubean/pull/466
- support charts syncer by @ErikJiang in https://github.com/kubean-io/kubean/pull/468
- update restore apt condition in enable-repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/471
- Update action version for workflows by @ErikJiang in https://github.com/kubean-io/kubean/pull/474
- add redhat offline e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/475
- update case md by @wenting-guo in https://github.com/kubean-io/kubean/pull/476
- add unit test by @hangscer8 in https://github.com/kubean-io/kubean/pull/478
- set runner2 ip for e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/485
- update e2e k8s version to 1.24.7 by @wenting-guo in https://github.com/kubean-io/kubean/pull/489
- set nightly e2e and online os-compatibility-e2e to the online runner by @wenting-guo in https://github.com/kubean-io/kubean/pull/491
- Add ansible-lint for playbooks in pr gate by @tu1h in https://github.com/kubean-io/kubean/pull/483
- Support import offline resource parallelly by @tu1h in https://github.com/kubean-io/kubean/pull/482
- Fix job creating failure across different namespace by @tu1h in https://github.com/kubean-io/kubean/pull/488
- change upgrade e2e to vm by @wenting-guo in https://github.com/kubean-io/kubean/pull/492
- fix sa error by @cleverhu in https://github.com/kubean-io/kubean/pull/493
- change cluster lcm e2e case to vm by @wenting-guo in https://github.com/kubean-io/kubean/pull/497
- Get serviceaccount name by labelselector by @tu1h in https://github.com/kubean-io/kubean/pull/499
- add calico dual stack e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/500
- update online os compatibility run rate by @wenting-guo in https://github.com/kubean-io/kubean/pull/501
- support imageRepo with password by @hangscer8 in https://github.com/kubean-io/kubean/pull/502
- optimize ClusterRole && set COMMIT_SHA for release by @hangscer8 in https://github.com/kubean-io/kubean/pull/506
- set kubespray commit by @hangscer8 in https://github.com/kubean-io/kubean/pull/507
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.1...v0.4.2
"},{"location":"releases/v0.4.3/","title":"V0.4.3","text":""},{"location":"releases/v0.4.3/#whats-changed","title":"What's Changed","text":" - rollback clusterrole by @hangscer8 in https://github.com/kubean-io/kubean/pull/511
- update minio repo by @wenting-guo in https://github.com/kubean-io/kubean/pull/512
- Fix incomplete ospkg cache judgment by @tu1h in https://github.com/kubean-io/kubean/pull/513
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.2...v0.4.3
"},{"location":"releases/v0.4.4/","title":"V0.4.4","text":""},{"location":"releases/v0.4.4/#whats-changed","title":"What's Changed","text":" - Remove ospkg buiding immediate exit by @tu1h in https://github.com/kubean-io/kubean/pull/514
- Fix import ospkgs script by @tu1h in https://github.com/kubean-io/kubean/pull/515
- Remove audit on rhel8 by @tu1h in https://github.com/kubean-io/kubean/pull/517
- add kubean maintainer by @wawa0210 in https://github.com/kubean-io/kubean/pull/519
- fix release image by @ErikJiang in https://github.com/kubean-io/kubean/pull/520
"},{"location":"releases/v0.4.4/#new-contributors","title":"New Contributors","text":" - @wawa0210 made their first contribution in https://github.com/kubean-io/kubean/pull/519
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.3...v0.4.4
"},{"location":"releases/v0.4.5/","title":"V0.4.5","text":""},{"location":"releases/v0.4.5/#whats-changed","title":"What's Changed","text":" - fix typo hack script for setup by @yanggangtony in https://github.com/kubean-io/kubean/pull/516
- chore: delete unused file #523 by @yyzxw in https://github.com/kubean-io/kubean/pull/526
- Fix offline e2e failure by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/530
- Remove runc on offline rhel8 from playbook by @tu1h in https://github.com/kubean-io/kubean/pull/531
- fix imageRepo field by @panguicai008 in https://github.com/kubean-io/kubean/pull/534
- Update e2e_schedule.yaml by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/536
- fix variable definition by @panguicai008 in https://github.com/kubean-io/kubean/pull/533
- fix spray-job container name by @hangscer8 in https://github.com/kubean-io/kubean/pull/537
- fix cluster status.conditions.startTime and endTime invalid value null by @panguicai008 in https://github.com/kubean-io/kubean/pull/538
- fix clusteroperation multi field invalid value null by @panguicai008 in https://github.com/kubean-io/kubean/pull/539
- Support custom action by @tu1h in https://github.com/kubean-io/kubean/pull/540
- Reduce centos7 package size by @yankay in https://github.com/kubean-io/kubean/pull/543
- Update CD about helm cmd vars by @tu1h in https://github.com/kubean-io/kubean/pull/546
- provide auto ci of k8s version compatibility by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/547
- Support upgrade kubean CRDs by helm by @tu1h in https://github.com/kubean-io/kubean/pull/552
- Fix charts rendering exception by @tu1h in https://github.com/kubean-io/kubean/pull/554
- support pre-check playbook by @hangscer8 in https://github.com/kubean-io/kubean/pull/555
- Fix incorrect rendered template by @tu1h in https://github.com/kubean-io/kubean/pull/556
- optimize pre-check playbook by @hangscer8 in https://github.com/kubean-io/kubean/pull/559
- add ut by @hangscer8 in https://github.com/kubean-io/kubean/pull/560
- Set offline-pkg default k8s version to 1.25.4 by @hangscer8 in https://github.com/kubean-io/kubean/pull/564
- Add Others OS package build method by @ErikJiang in https://github.com/kubean-io/kubean/pull/561
- fix offline e2e and update iptables e2e test by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/557
- fix main branch: auto-kubean-compatibility-schedule.yaml was modified incorrectly by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/563
- fix the wrong image tag when the main ci builds images. by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/558
- Fix image name when push, and update the default k8s version to 1.26.0, fix kube_version of offline e2e by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/566
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/568
- support import iso for uniontech by @ErikJiang in https://github.com/kubean-io/kubean/pull/570
- add node affinity for chart by @ErikJiang in https://github.com/kubean-io/kubean/pull/571
- fix airgap patch image build and push by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/572
- support unionTech for enable repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/575
- update anti affinity for kubean by @ErikJiang in https://github.com/kubean-io/kubean/pull/579
- set helm upgrade timeout and sprayJob tag by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/578
- fix: update offline usage docs by @yyzxw in https://github.com/kubean-io/kubean/pull/577
- add theory-of-air-gapped-package by @panpan0000 in https://github.com/kubean-io/kubean/pull/582
- Update build script for UOS by @ErikJiang in https://github.com/kubean-io/kubean/pull/583
- optimize airgap patch by @hangscer8 in https://github.com/kubean-io/kubean/pull/584
- fix mv no such file in RHEL by @ErikJiang in https://github.com/kubean-io/kubean/pull/586
- optimize airgap patch image by @hangscer8 in https://github.com/kubean-io/kubean/pull/588
- change runner1 e2e ips by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/589
- fix wrong tag of cd when running main ci by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/581
- add call-cd params in main ci and release ci by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/591
- add extra binary for airgap-patch by @hangscer8 in https://github.com/kubean-io/kubean/pull/592
- add create cilium cluster e2e test by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/594
- remove registry.k8s.io/pause:3.4 by @hangscer8 in https://github.com/kubean-io/kubean/pull/595
"},{"location":"releases/v0.4.5/#new-contributors","title":"New Contributors","text":" - @XiuguangHuang made their first contribution in https://github.com/kubean-io/kubean/pull/530
- @panguicai008 made their first contribution in https://github.com/kubean-io/kubean/pull/534
- @panpan0000 made their first contribution in https://github.com/kubean-io/kubean/pull/582
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.4...v0.4.5
"},{"location":"releases/v0.4.6/","title":"V0.4.6","text":""},{"location":"releases/v0.4.6/#whats-changed","title":"What's Changed","text":" - clean unnecessary files by @hangscer8 in https://github.com/kubean-io/kubean/pull/597
- add debugger2 vms and debug cilium cluster by @wenting-guo in https://github.com/kubean-io/kubean/pull/598
- delete unused test case doc by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/599
- Precheck Result Configmap by @hangscer8 in https://github.com/kubean-io/kubean/pull/600
- fix upgrade failed due to hard affinity by @ErikJiang in https://github.com/kubean-io/kubean/pull/601
- add cilium_kube_proxy_replacement by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/605
- download offline files after release ci by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/607
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.5...v0.4.6
"},{"location":"releases/v0.4.7/","title":"V0.4.7","text":""},{"location":"releases/v0.4.7/#whats-changed","title":"What's Changed","text":" - Fix incorrect data type on ActionSource by @tu1h in https://github.com/kubean-io/kubean/pull/613
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.6...v0.4.7
"},{"location":"releases/v0.4.8/","title":"V0.4.8","text":""},{"location":"releases/v0.4.8/#whats-changed","title":"What's Changed","text":" - add multi kubean operator e2e case by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/608
- Update changes imported by pointer type by @tu1h in https://github.com/kubean-io/kubean/pull/618
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.7...v0.4.8
"},{"location":"releases/v0.4.9/","title":"V0.4.9","text":""},{"location":"releases/v0.4.9/#whats-changed","title":"What's Changed","text":" - fix download files job by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/620
- fix remount iso by @hangscer8 in https://github.com/kubean-io/kubean/pull/624
- adding flannel\u3001kube-ovn to manifest cr by @cyclinder in https://github.com/kubean-io/kubean/pull/622
- [docs] add readme_zh.md by @windsonsea in https://github.com/kubean-io/kubean/pull/623
- Add code-of-conduct and CONTRIBUTING documentation by @tu1h in https://github.com/kubean-io/kubean/pull/625
- remove redundant docker os_pkgs by @hangscer8 in https://github.com/kubean-io/kubean/pull/626
- support openEuler by @hangscer8 in https://github.com/kubean-io/kubean/pull/628
- optimize import iso openeuler by @hangscer8 in https://github.com/kubean-io/kubean/pull/629
- support other linux in AirGap scenario by @ErikJiang in https://github.com/kubean-io/kubean/pull/627
- update pkgs.yml by @ErikJiang in https://github.com/kubean-io/kubean/pull/630
- fix unkonwn arch image by @ErikJiang in https://github.com/kubean-io/kubean/pull/631
- add openeuler ospkg by @hangscer8 in https://github.com/kubean-io/kubean/pull/632
- Support import ISO data to local path by @tu1h in https://github.com/kubean-io/kubean/pull/640
- Add Dependabot by @ErikJiang in https://github.com/kubean-io/kubean/pull/641
- Bump mikefarah/yq from 4.30.8 to 4.33.3 by @dependabot in https://github.com/kubean-io/kubean/pull/645
- Bump docker/build-push-action from 3.3.0 to 4.0.0 by @dependabot in https://github.com/kubean-io/kubean/pull/642
- Fix import_iso.sh by @tu1h in https://github.com/kubean-io/kubean/pull/651
- Bump docker/setup-buildx-action from 2.2.1 to 2.5.0 by @dependabot in https://github.com/kubean-io/kubean/pull/644
- Bump actions/setup-go from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/643
- set pr-ci nightly-ci run time-limit to 15h by @wenting-guo in https://github.com/kubean-io/kubean/pull/653
- include dockerfile on ospkg cache judgment include by @tu1h in https://github.com/kubean-io/kubean/pull/655
- doc: fix english doc broken link by @jonyhy96 in https://github.com/kubean-io/kubean/pull/656
- add speedup offline packages by @wenting-guo in https://github.com/kubean-io/kubean/pull/657
- Add Roadmap by @ErikJiang in https://github.com/kubean-io/kubean/pull/661
- generate offline package for flannel by @cyclinder in https://github.com/kubean-io/kubean/pull/662
- add unsafe_show_logs to debug the download failed resource by @wenting-guo in https://github.com/kubean-io/kubean/pull/663
"},{"location":"releases/v0.4.9/#new-contributors","title":"New Contributors","text":" - @cyclinder made their first contribution in https://github.com/kubean-io/kubean/pull/622
- @dependabot made their first contribution in https://github.com/kubean-io/kubean/pull/645
- @jonyhy96 made their first contribution in https://github.com/kubean-io/kubean/pull/656
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.8...v0.4.9
"},{"location":"releases/v0.5.0/","title":"V0.5.0","text":""},{"location":"releases/v0.5.0/#whats-changed","title":"What's Changed","text":" - support oracle linux in offline enviroment by @ErikJiang in https://github.com/kubean-io/kubean/pull/700
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.10...v0.5.0
"},{"location":"releases/v0.5.1/","title":"V0.5.1","text":""},{"location":"releases/v0.5.1/#whats-changed","title":"What's Changed","text":" - remove dockerCE from openeuler pkgs by @hangscer8 in https://github.com/kubean-io/kubean/pull/706
- kubean e2e ci follow kubespray structure category by @tukwila in https://github.com/kubean-io/kubean/pull/707
- Fix KUBEAN_E2E_TEST_CI Error: A branch or tag with the name kubean_ci_test could not be found by @tukwila in https://github.com/kubean-io/kubean/pull/709
- fix kubean e2e ci not really run problem by @tukwila in https://github.com/kubean-io/kubean/pull/712
- Rename subdir api mod path by @hangscer8 in https://github.com/kubean-io/kubean/pull/715
- update other linux tool script by @ErikJiang in https://github.com/kubean-io/kubean/pull/716
- fix ci config variables by @tukwila in https://github.com/kubean-io/kubean/pull/718
- Update go mod dep version by @hangscer8 in https://github.com/kubean-io/kubean/pull/719
- add ipvs case by @wenting-guo in https://github.com/kubean-io/kubean/pull/714
- enable trivy security scanning by @hangscer8 in https://github.com/kubean-io/kubean/pull/721
- update enable repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/723
- add clean repolist in other linux script by @ErikJiang in https://github.com/kubean-io/kubean/pull/725
- update yum repo config in other linux by @ErikJiang in https://github.com/kubean-io/kubean/pull/726
- add mkdocs by @ErikJiang in https://github.com/kubean-io/kubean/pull/728
- update docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/729
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.0...v0.5.1
"},{"location":"releases/v0.5.2/","title":"V0.5.2","text":""},{"location":"releases/v0.5.2/#whats-changed","title":"What's Changed","text":" - add module repo for yum manager by @ErikJiang in https://github.com/kubean-io/kubean/pull/730
- CI failure:debug vm change to runner vm by @yulng in https://github.com/kubean-io/kubean/pull/734
- update kube download url by @ErikJiang in https://github.com/kubean-io/kubean/pull/735
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.1...v0.5.2
"},{"location":"releases/v0.5.3/","title":"V0.5.3","text":""},{"location":"releases/v0.5.3/#whats-changed","title":"What's Changed","text":" - CI failure :change vm config and update docker rm command by @yulng in https://github.com/kubean-io/kubean/pull/740
- fetch os kernel version in precheck.yml by @hangscer8 in https://github.com/kubean-io/kubean/pull/739
- add ut by @hangscer8 in https://github.com/kubean-io/kubean/pull/741
- add kubean compatibility k8s version 1.27.1 by @wenting-guo in https://github.com/kubean-io/kubean/pull/743
- Update allinone.md by @yanrongshi in https://github.com/kubean-io/kubean/pull/749
- Support script import_iso.sh to load main function by @ErikJiang in https://github.com/kubean-io/kubean/pull/753
- Update README.md by @wawa0210 in https://github.com/kubean-io/kubean/pull/754
- add readme for docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/755
- ignore pull pause 4 image by @ErikJiang in https://github.com/kubean-io/kubean/pull/756
"},{"location":"releases/v0.5.3/#new-contributors","title":"New Contributors","text":" - @yanrongshi made their first contribution in https://github.com/kubean-io/kubean/pull/749
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.2...v0.5.3
"},{"location":"releases/v0.5.4/","title":"V0.5.4","text":""},{"location":"releases/v0.5.4/#whats-changed","title":"What's Changed","text":" - remove alpha_arm by @hangscer8 in https://github.com/kubean-io/kubean/pull/759
- centos_cilium_online should use offline runner by @tukwila in https://github.com/kubean-io/kubean/pull/761
- e2e:update worker cluster k8s version by @yulng in https://github.com/kubean-io/kubean/pull/760
- update import iso by @ErikJiang in https://github.com/kubean-io/kubean/pull/762
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.3...v0.5.4
"},{"location":"releases/v0.6.0/","title":"V0.6.0","text":""},{"location":"releases/v0.6.0/#whats-changed","title":"What's Changed","text":" - add mirror.md by @yanrongshi in https://github.com/kubean-io/kubean/pull/758
- fix-cluster-controllers-reconcile-loop by @learner0810 in https://github.com/kubean-io/kubean/pull/765
- fix:add kubean version in readme by @yulng in https://github.com/kubean-io/kubean/pull/763
- e2e:modify e2e k8s version by @yulng in https://github.com/kubean-io/kubean/pull/767
- fix error: Failed to compile kubean_ipvs_cluster_e2e by @tukwila in https://github.com/kubean-io/kubean/pull/766
- Add scale docs by @yanrongshi in https://github.com/kubean-io/kubean/pull/768
- update scale docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/769
- Update upgrade.md by @yanrongshi in https://github.com/kubean-io/kubean/pull/771
- Translate installation and use documentation by @yanrongshi in https://github.com/kubean-io/kubean/pull/772
- translation en by @yanrongshi in https://github.com/kubean-io/kubean/pull/773
- fix speedup offline package with curl by @yulng in https://github.com/kubean-io/kubean/pull/727
- when pr just changed docs file not run e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/781
- add kubean support k8s version range by @wenting-guo in https://github.com/kubean-io/kubean/pull/782
- [docs]Fix upgrade.md by @yanrongshi in https://github.com/kubean-io/kubean/pull/774
- add field to identify image repo scheme by @tu1h in https://github.com/kubean-io/kubean/pull/784
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/788
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/789
- check user has sudo_access by @hangscer8 in https://github.com/kubean-io/kubean/pull/793
- support tencentos 3.1 by @ErikJiang in https://github.com/kubean-io/kubean/pull/791
- fix the Chinese in en docs by @my-git9 in https://github.com/kubean-io/kubean/pull/794
- update import iso sh by @ErikJiang in https://github.com/kubean-io/kubean/pull/797
"},{"location":"releases/v0.6.0/#new-contributors","title":"New Contributors","text":" - @learner0810 made their first contribution in https://github.com/kubean-io/kubean/pull/765
- @my-git9 made their first contribution in https://github.com/kubean-io/kubean/pull/794
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.4...v0.6.0
"},{"location":"releases/v0.6.1/","title":"V0.6.1","text":""},{"location":"releases/v0.6.1/#whats-changed","title":"What's Changed","text":" - Update os package for tencentos by @ErikJiang in https://github.com/kubean-io/kubean/pull/800
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.0...v0.6.1
"},{"location":"releases/v0.6.2/","title":"V0.6.2","text":""},{"location":"releases/v0.6.2/#whats-changed","title":"What's Changed","text":" - fix trap issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/802
- update kube version to v1.26.5 by @ErikJiang in https://github.com/kubean-io/kubean/pull/803
- detect dual_stack network by @hangscer8 in https://github.com/kubean-io/kubean/pull/805
- Add auto bump pause version by @ErikJiang in https://github.com/kubean-io/kubean/pull/807
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.1...v0.6.2
"},{"location":"releases/v0.6.3/","title":"V0.6.3","text":""},{"location":"releases/v0.6.3/#whats-changed","title":"What's Changed","text":" - optimize check sudo_access by @hangscer8 in https://github.com/kubean-io/kubean/pull/809
- [e2e test] change kindest version to v1.26.4 by @yulng in https://github.com/kubean-io/kubean/pull/816
- optimize accelerate address by @hangscer8 in https://github.com/kubean-io/kubean/pull/822
- chore: update docs i18n by @yyzxw in https://github.com/kubean-io/kubean/pull/819
- add test case to markdown by @yulng in https://github.com/kubean-io/kubean/pull/796
- Bump mikefarah/yq from 4.33.3 to 4.34.1 by @dependabot in https://github.com/kubean-io/kubean/pull/751
- Bump docker/build-push-action from 4.0.0 to 4.1.1 by @dependabot in https://github.com/kubean-io/kubean/pull/818
- Bump docker/setup-buildx-action from 2.5.0 to 2.7.0 by @dependabot in https://github.com/kubean-io/kubean/pull/817
- add import iso script to release assets by @ErikJiang in https://github.com/kubean-io/kubean/pull/825
- Bump cpina/github-action-push-to-another-repository from 1.5.1 to 1.7.2 by @dependabot in https://github.com/kubean-io/kubean/pull/747
- [docs] update en/zh usage files by @windsonsea in https://github.com/kubean-io/kubean/pull/821
- separate resource build from e2e step by @wenting-guo in https://github.com/kubean-io/kubean/pull/827
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.2...v0.6.3
"},{"location":"releases/v0.6.4/","title":"V0.6.4","text":""},{"location":"releases/v0.6.4/#whats-changed","title":"What's Changed","text":" - update the e2e case list by @wenting-guo in https://github.com/kubean-io/kubean/pull/829
- optimize check vip by @hangscer8 in https://github.com/kubean-io/kubean/pull/830
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.3...v0.6.4
"},{"location":"releases/v0.6.5/","title":"V0.6.5","text":""},{"location":"releases/v0.6.5/#whats-changed","title":"What's Changed","text":" - fix spray-job endTime when operator crashed And return pkg_mgr info by @hangscer8 in https://github.com/kubean-io/kubean/pull/831
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.4...v0.6.5
"},{"location":"releases/v0.6.6/","title":"V0.6.6","text":""},{"location":"releases/v0.6.6/#whats-changed","title":"What's Changed","text":" - Update deploy script for main CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/840
- fix helm client-side throttling by @ErikJiang in https://github.com/kubean-io/kubean/pull/842
- apply for a seat to maintain docs by @windsonsea in https://github.com/kubean-io/kubean/pull/841
- [docs] fix a term
\u6a21\u677f
by @windsonsea in https://github.com/kubean-io/kubean/pull/834 - [docs] fix indentations in theory_of_airgapped_package.md by @windsonsea in https://github.com/kubean-io/kubean/pull/833
- [docs] update custom_action by @windsonsea in https://github.com/kubean-io/kubean/pull/832
- fix version parse in manage_version_cr.sh by @ErikJiang in https://github.com/kubean-io/kubean/pull/844
- doc: install with non-root user by @tu1h in https://github.com/kubean-io/kubean/pull/845
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.5...v0.6.6
"},{"location":"releases/v0.7.0/","title":"V0.7.0","text":""},{"location":"releases/v0.7.0/#whats-changed","title":"What's Changed","text":" - [test] release CI auto to update the 'k8s supported version range list' by @yulng in https://github.com/kubean-io/kubean/pull/849
- [CI failure]retry to get pod name and state running by @yulng in https://github.com/kubean-io/kubean/pull/846
- [e2e test] create 3master+vip cluster by @yulng in https://github.com/kubean-io/kubean/pull/848
- docs: update usage/install by @my-git9 in https://github.com/kubean-io/kubean/pull/847
- [e2e case ] add runner vm (vipadd) and fix readme by @yulng in https://github.com/kubean-io/kubean/pull/855
- [docs] resolve documentation issue 824,360,359,250 by @yulng in https://github.com/kubean-io/kubean/pull/850
- fix kubespray package by @hangscer8 in https://github.com/kubean-io/kubean/pull/859
- Optimize Reconcile Requeue by @RuliXu in https://github.com/kubean-io/kubean/pull/860
- refactor network testcase architecture by @tukwila in https://github.com/kubean-io/kubean/pull/861
- Lock kubespray commit sha by @ErikJiang in https://github.com/kubean-io/kubean/pull/863
- Fix release created repeatedly by @ErikJiang in https://github.com/kubean-io/kubean/pull/866
"},{"location":"releases/v0.7.0/#new-contributors","title":"New Contributors","text":" - @RuliXu made their first contribution in https://github.com/kubean-io/kubean/pull/860
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.6...v0.7.0
"},{"location":"releases/v0.7.1/","title":"V0.7.1","text":""},{"location":"releases/v0.7.1/#whats-changed","title":"What's Changed","text":" - Update spray image by @ErikJiang in https://github.com/kubean-io/kubean/pull/872
- work with oracle 8 by @hangscer8 in https://github.com/kubean-io/kubean/pull/871
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.0...v0.7.1
"},{"location":"releases/v0.7.2/","title":"V0.7.2","text":""},{"location":"releases/v0.7.2/#whats-changed","title":"What's Changed","text":" - add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/873
- verify kubespray master head commit id sha pipeline by @tukwila in https://github.com/kubean-io/kubean/pull/870
- retry more times to download files in e2e schedule testing by @tukwila in https://github.com/kubean-io/kubean/pull/875
- correct workflow yaml by @tukwila in https://github.com/kubean-io/kubean/pull/876
- correct verify kubespray yaml errors by @tukwila in https://github.com/kubean-io/kubean/pull/877
- correct HELM_CHART_VERSION value in verify_kubespray_e2e_test by @tukwila in https://github.com/kubean-io/kubean/pull/879
- fix some bug in kubespray commit workflow by @tukwila in https://github.com/kubean-io/kubean/pull/882
- Add renew certs playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/884
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.1...v0.7.2
"},{"location":"releases/v0.7.3/","title":"V0.7.3","text":""},{"location":"releases/v0.7.3/#whats-changed","title":"What's Changed","text":" - Add sshpass for sync ansible module by @ErikJiang in https://github.com/kubean-io/kubean/pull/886
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.2...v0.7.3
"},{"location":"releases/v0.7.4/","title":"V0.7.4","text":""},{"location":"releases/v0.7.4/#whats-changed","title":"What's Changed","text":" - Set ownReference for clusterOperation releated with cluster by @hangscer8 in https://github.com/kubean-io/kubean/pull/889
- Update renew certs groups by @ErikJiang in https://github.com/kubean-io/kubean/pull/891
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.3...v0.7.4
"},{"location":"releases/v0.8.0/","title":"V0.8.0","text":""},{"location":"releases/v0.8.0/#whats-changed","title":"What's Changed","text":" - Update release process by @tu1h in https://github.com/kubean-io/kubean/pull/869
- enable to config max records by @hangscer8 in https://github.com/kubean-io/kubean/pull/893
- Add license info by @ErikJiang in https://github.com/kubean-io/kubean/pull/892
- Bump actions/setup-go from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/838
- fix static check format by @hangscer8 in https://github.com/kubean-io/kubean/pull/900
- add cncf to readme by @windsonsea in https://github.com/kubean-io/kubean/pull/897
- add kubean v0.7.4 version compatible with k8s version by @tukwila in https://github.com/kubean-io/kubean/pull/901
- docs: add en install_without_root.md by @my-git9 in https://github.com/kubean-io/kubean/pull/902
- Add killercoda to README by @tu1h in https://github.com/kubean-io/kubean/pull/903
- make cache for new repo by @ErikJiang in https://github.com/kubean-io/kubean/pull/906
- Remove backofflimit by @hangscer8 in https://github.com/kubean-io/kubean/pull/905
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.4...v0.8.0
"},{"location":"releases/v0.8.1/","title":"V0.8.1","text":""},{"location":"releases/v0.8.1/#whats-changed","title":"What's Changed","text":" - update repo url for tencentos by @ErikJiang in https://github.com/kubean-io/kubean/pull/907
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.0...v0.8.1
"},{"location":"releases/v0.8.2/","title":"V0.8.2","text":""},{"location":"releases/v0.8.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.8.2/#new-features","title":"\u2728 New Features","text":" - update k8s to v1.26.7 by @hangscer8 in https://github.com/kubean-io/kubean/pull/925
"},{"location":"releases/v0.8.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Ensure the job pod never run again by @hangscer8 in https://github.com/kubean-io/kubean/pull/911
- Fix incorrect ansible pkgmgr detection for tencentos by @tu1h in https://github.com/kubean-io/kubean/pull/912
- fix generate release notes content is empty by @ErikJiang in https://github.com/kubean-io/kubean/pull/915
- Add labeler action by @ErikJiang in https://github.com/kubean-io/kubean/pull/916
- add labeler.yml config by @ErikJiang in https://github.com/kubean-io/kubean/pull/919
- update ci bot by @ErikJiang in https://github.com/kubean-io/kubean/pull/922
- Ensure Cascade Deletion with Ownreference by @hangscer8 in https://github.com/kubean-io/kubean/pull/918
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.1...v0.8.2
"},{"location":"releases/v0.8.3/","title":"V0.8.3","text":""},{"location":"releases/v0.8.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.8.3/#documentation","title":"\ud83d\udcda Documentation","text":" - update Q3 roadmap by @ErikJiang in https://github.com/kubean-io/kubean/pull/929
"},{"location":"releases/v0.8.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - disable CI robot by @ErikJiang in https://github.com/kubean-io/kubean/pull/926
- Add governance doc by @ErikJiang in https://github.com/kubean-io/kubean/pull/927
- support rhel9 by @tu1h in https://github.com/kubean-io/kubean/pull/930
- update docs config by @ErikJiang in https://github.com/kubean-io/kubean/pull/931
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.2...v0.8.3
"},{"location":"releases/v0.8.4/","title":"V0.8.4","text":""},{"location":"releases/v0.8.4/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.8.4/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/spf13/cobra from 1.6.0 to 1.7.0 by @dependabot in https://github.com/kubean-io/kubean/pull/732
"},{"location":"releases/v0.8.4/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Correct download path by @Rei1010 in https://github.com/kubean-io/kubean/pull/933
- add ISA field to precheck playbook by @tu1h in https://github.com/kubean-io/kubean/pull/934
- Bump Kubespray version by @tu1h in https://github.com/kubean-io/kubean/pull/937
"},{"location":"releases/v0.8.4/#new-contributors","title":"New Contributors","text":" - @Rei1010 made their first contribution in https://github.com/kubean-io/kubean/pull/933
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.3...v0.8.4
"},{"location":"releases/v0.8.5/","title":"V0.8.5","text":""},{"location":"releases/v0.8.5/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.8.5/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - chor: add golanglint --fix flag by @yyzxw in https://github.com/kubean-io/kubean/pull/936
- Revert \"Bump Kubespray version\" by @tu1h in https://github.com/kubean-io/kubean/pull/938
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.4...v0.8.5
"},{"location":"releases/v0.9.0/","title":"V0.9.0","text":""},{"location":"releases/v0.9.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.9.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update k8s support version by @Rei1010 in https://github.com/kubean-io/kubean/pull/946
- add ut Test_TrySuspendPod by @KubeKyrie in https://github.com/kubean-io/kubean/pull/944
- Update E2E kube version by @Rei1010 in https://github.com/kubean-io/kubean/pull/955
- webhook for clusterOperations by @hangscer8 in https://github.com/kubean-io/kubean/pull/956
- fix missing latest release note by @ErikJiang in https://github.com/kubean-io/kubean/pull/953
- update kubespray by @hangscer8 in https://github.com/kubean-io/kubean/pull/960
"},{"location":"releases/v0.9.0/#new-contributors","title":"New Contributors","text":" - @KubeKyrie made their first contribution in https://github.com/kubean-io/kubean/pull/944
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.6...v0.9.0
"},{"location":"releases/v0.9.1/","title":"V0.9.1","text":""},{"location":"releases/v0.9.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.9.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Add compability for kubernetes 1.28.0 by @Rei1010 in https://github.com/kubean-io/kubean/pull/957
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/961
- Build admission image during schedule CI by @Rei1010 in https://github.com/kubean-io/kubean/pull/962
- Correct config path by @Rei1010 in https://github.com/kubean-io/kubean/pull/966
- Adjust env conf by @Rei1010 in https://github.com/kubean-io/kubean/pull/967
- Add missing param by @Rei1010 in https://github.com/kubean-io/kubean/pull/969
- Auto bump kubean support kubernetes version with CI by @Rei1010 in https://github.com/kubean-io/kubean/pull/971
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/972
- Optimize CI trigger logic by @Rei1010 in https://github.com/kubean-io/kubean/pull/974
- update containerd version by @hangscer8 in https://github.com/kubean-io/kubean/pull/977
"},{"location":"releases/v0.9.1/#new-contributors","title":"New Contributors","text":" - @github-actions made their first contribution in https://github.com/kubean-io/kubean/pull/972
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.9.0...v0.9.1
"},{"location":"releases/v0.9.2/","title":"V0.9.2","text":""},{"location":"releases/v0.9.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.9.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - optimize precheck to avoid losing data by @hangscer8 in https://github.com/kubean-io/kubean/pull/982
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/976
- Adjust PR CI by @Rei1010 in https://github.com/kubean-io/kubean/pull/984
- add BackUp Weight for ClusterOperation by @hangscer8 in https://github.com/kubean-io/kubean/pull/983
- update k8s version by @hangscer8 in https://github.com/kubean-io/kubean/pull/986
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.9.1...v0.9.2
"},{"location":"releases/v0.9.3/","title":"V0.9.3","text":""},{"location":"releases/v0.9.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.9.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Use complete execute path in playbook
renew_certs
by @tu1h in https://github.com/kubean-io/kubean/pull/988
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.9.2...v0.9.3
"},{"location":"usage/airgap/","title":"\u79bb\u7ebf\u573a\u666f\u7684\u4f7f\u7528","text":""},{"location":"usage/airgap/#_2","title":"\u63d0\u9192\u4e8b\u9879","text":" - \u9488\u5bf9 RHEL 8.4 \u7cfb\u5217\uff0c\u7531\u4e8e\u5305\u4f9d\u8d56\u95ee\u9898\uff0c\u6267\u884c\u8fc7\u7a0b\u4e2d\u4f1a\u5378\u8f7d\u7cfb\u7edf\u9884\u88c5\u7684 fuse \u5305
"},{"location":"usage/airgap/#_3","title":"\u51c6\u5907\u4e8b\u9879","text":" -
\u9700\u8981\u9884\u5148\u90e8\u7f72\u7684\u670d\u52a1:
- \u6587\u4ef6\u8d44\u6e90\u670d\u52a1
minio
- \u955c\u50cf\u4ed3\u5e93\u670d\u52a1
docker registry
\uff082.7 \u4ee5\u4e0b\uff09\u6216\u8005 harbor
-
\u9700\u8981\u5b89\u88c5\u7684\u5fc5\u8981\u5de5\u5177:
- \u7528\u4e8e\u5bfc\u5165\u955c\u50cf\u6587\u4ef6\u7684\u5de5\u5177:
skopeo
\uff0c\u9700\u8981 >=1.9.2; podman
, Required >= 4.4.4 - \u7528\u4e8e\u5bfc\u5165\u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u5de5\u5177:
minio client
-
\u901a\u8fc7Helm\u90e8\u7f72kubean
"},{"location":"usage/airgap/#_4","title":"\u4e0b\u8f7d\u79bb\u7ebf\u8d44\u6e90","text":"\u901a\u8fc7 Github Releases \u9875\u9762\u53ef\u4ee5\u4e0b\u8f7d\u6211\u4eec\u60f3\u8981\u7248\u672c\u7684\u79bb\u7ebf\u8d44\u6e90\u3002
\u79bb\u7ebf\u8d44\u6e90\u7684\u57fa\u672c\u8bf4\u660e:
\u251c\u2500\u2500 files.list # \u6587\u4ef6\u5185\u5bb9\u7684\u5217\u8868\n\u251c\u2500\u2500 files-${tag}.tar.gz # \u6587\u4ef6\u538b\u7f29\u5305, \u5185\u542b\u5bfc\u5165\u811a\u672c\n\u251c\u2500\u2500 images.list # \u955c\u50cf\u5185\u5bb9\u7684\u5217\u8868\n\u251c\u2500\u2500 images-${tag}.tar.gz # \u955c\u50cf\u538b\u7f29\u5305, \u5185\u542b\u5bfc\u5165\u811a\u672c\n\u2514\u2500\u2500 os-pkgs-${linux_distribution}-${tag}.tar.gz # \u5404\u7cfb\u7edf\u538b\u7f29\u5305, \u5185\u542b\u5bfc\u5165\u811a\u672c\n
"},{"location":"usage/airgap/#_5","title":"\u5c06\u79bb\u7ebf\u8d44\u6e90\u5bfc\u5165\u5bf9\u5e94\u670d\u52a1","text":""},{"location":"usage/airgap/#binaries","title":"\u5bfc\u5165 Binaries \u8d44\u6e90","text":"\u8bf7\u5148\u89e3\u538b files-${tag}.tar.gz
\u6587\u4ef6, \u5176\u5185\u90e8\u5305\u542b:
files/\n\u251c\u2500\u2500 import_files.sh # \u8be5\u811a\u672c\u7528\u4e8e\u5bfc\u5165\u4e8c\u8fdb\u5236\u6587\u4ef6\u5230 minio \u6587\u4ef6\u670d\u52a1\n\u2514\u2500\u2500 offline-files.tar.gz # \u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u538b\u7f29\u5305\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4, \u5c06\u4e8c\u8fdb\u5236\u6587\u4ef6\u5bfc\u5165\u5230 minio \u670d\u52a1\u4e2d:
MINIO_USER=${username} MINIO_PASS=${password} ./import_files.sh ${minio_address}\n
minio_address
\u662f minio API Server
\u5730\u5740\uff0c\u7aef\u53e3\u4e00\u822c\u4e3a9000\uff0c\u6bd4\u5982 http://1.2.3.4:9000
"},{"location":"usage/airgap/#images","title":"\u5bfc\u5165 Images \u8d44\u6e90","text":"\u9700\u8981\u89e3\u538b images-${tag}.tar.gz
\u6587\u4ef6, \u5176\u5185\u90e8\u5305\u542b:
images/\n\u251c\u2500\u2500 import_images.sh # \u8be5\u811a\u672c\u7528\u4e8e\u5bfc\u5165\u955c\u50cf\u6587\u4ef6\u5230 docker registry \u6216 harbor \u955c\u50cf\u4ed3\u5e93\u670d\u52a1, \u53ef\u7528\u4e8e\u5408\u5e76\u4e0d\u540c\u5e73\u53f0\u955c\u50cf\n\u2514\u2500\u2500 offline-images.tar.gz # \u955c\u50cf\u6587\u4ef6\u7684\u538b\u7f29\u5305\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4, \u5c06\u955c\u50cf\u6587\u4ef6\u5bfc\u5165\u5230 docker registry \u6216 harbor \u955c\u50cf\u4ed3\u5e93\u670d\u52a1\u4e2d:
# \u514d\u5bc6\u6a21\u5f0f\nREGISTRY_SCHEME=http REGISTRY_ADDR=${registry_address} ./import_images.sh\n\n# \u7528\u6237\u540d\u53e3\u4ee4\u6a21\u5f0f\nREGISTRY_SCHEME=https REGISTRY_ADDR=${registry_address} REGISTRY_USER=${username} REGISTRY_PASS=${password} ./import_images.sh\n
REGISTRY_ADDR
\u662f\u955c\u50cf\u4ed3\u5e93\u7684\u5730\u5740\uff0c\u6bd4\u59821.2.3.4:5000
- \u5f53\u955c\u50cf\u4ed3\u5e93\u5b58\u5728\u7528\u6237\u540d\u5bc6\u7801\u9a8c\u8bc1\u65f6\uff0c\u9700\u8981\u8bbe\u7f6e
REGISTRY_USER
\u548c REGISTRY_PASS
"},{"location":"usage/airgap/#os-packages","title":"\u5bfc\u5165 OS packages \u8d44\u6e90","text":"Note
- \u76ee\u524d\u652f\u6301 Centos / Redhat / Kylin / Ubuntu \u7b49\u53d1\u884c\u7248\u7684 OS Packages \u8d44\u6e90
- \u7edf\u4fe1 UnionTech V20 \u7cfb\u5217\u7684 OS Package \u9700\u8981\u624b\u52a8\u6784\u5efa\uff0c\u6784\u5efa\u65b9\u6cd5\u89c1 README
\u9700\u8981\u89e3\u538b os-pkgs-${linux_distribution}-${tag}.tar.gz
\u6587\u4ef6\uff0c\u5176\u5185\u90e8\u5305\u542b:
os-pkgs\n\u251c\u2500\u2500 import_ospkgs.sh # \u8be5\u811a\u672c\u7528\u4e8e\u5bfc\u5165 os packages \u5230 minio \u6587\u4ef6\u670d\u52a1\n\u251c\u2500\u2500 os-pkgs-amd64.tar.gz # amd64 \u67b6\u6784\u7684 os packages \u5305\n\u251c\u2500\u2500 os-pkgs-arm64.tar.gz # arm64 \u67b6\u6784\u7684 os packages \u5305\n\u2514\u2500\u2500 os-pkgs.sha256sum.txt # os packages \u5305\u7684 sha256sum \u6548\u9a8c\u6587\u4ef6\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff0c\u5c06 os packages \u5305\u5230 minio \u6587\u4ef6\u670d\u52a1\u4e2d\uff1a
MINIO_USER=${username} MINIO_PASS=${password} ./import_ospkgs.sh ${minio_address} os-pkgs-${arch}.tar.gz\n
"},{"location":"usage/airgap/#_6","title":"\u5efa\u7acb\u79bb\u7ebf\u6e90","text":"\u4e0b\u9762\u7684\u3010\u5efa\u7acb\u672c\u5730ISO\u955c\u50cf\u6e90\u3011\u4e0e\u3010\u5efa\u7acb\u5728\u7ebfISO\u955c\u50cf\u6e90\u3011\u53ea\u9700\u8981\u6267\u884c\u5176\u4e2d\u4e00\u4e2a\u5373\u53ef\u3002
"},{"location":"usage/airgap/#iso","title":"\u5efa\u7acb ISO \u955c\u50cf\u6e90","text":""},{"location":"usage/airgap/#iso_1","title":"\u5efa\u7acb\u672c\u5730 ISO \u955c\u50cf\u6e90","text":"OS Packages \u4e3b\u8981\u7528\u4e8e\u89e3\u51b3 docker-ce \u7684\u5b89\u88c5\u4f9d\u8d56\uff0c\u4f46\u5728\u5b9e\u9645\u7684\u79bb\u7ebf\u90e8\u7f72\u8fc7\u7a0b\u4e2d\uff0c\u53ef\u80fd\u8fd8\u9700\u8981\u4f7f\u7528\u5230\u53d1\u884c\u7248\u7cfb\u7edf\u7684\u5176\u4ed6\u5305\uff0c\u6b64\u65f6\u9700\u8981\u5efa\u7acb\u672c\u5730 ISO \u955c\u50cf\u6e90\u3002
Note
\u6211\u4eec\u9700\u8981\u63d0\u524d\u4e0b\u8f7d\u4e3b\u673a\u5bf9\u5e94\u7684 ISO \u7cfb\u7edf\u53d1\u884c\u7248\u955c\u50cf, \u5f53\u524d\u652f\u6301 Centos\u3001Redhat\u3001Ubuntu \u53d1\u884c\u7248\u7684 ISO \u955c\u50cf\u6e90\u521b\u5efa\uff1b \u9700\u8981\u5728\u6bcf\u4e2a\u521b\u5efakubernetes\u7684\u96c6\u7fa4\u4e0a\u90fd\u6267\u884c\u672c\u64cd\u4f5c\u3002
\u8fd9\u91cc\u53ef\u4ee5\u4f7f\u7528\u811a\u672c artifacts/gen_repo_conf.sh
, \u6267\u884c\u5982\u4e0b\u547d\u4ee4\u5373\u53ef\u6302\u8f7d ISO \u955c\u50cf\u6587\u4ef6, \u5e76\u521b\u5efa Repo \u914d\u7f6e\u6587\u4ef6:
# \u57fa\u672c\u683c\u5f0f\n./gen_repo_conf.sh --iso-mode ${linux_distribution} ${iso_image_file}\n# linux_distribution \u7684\u503c\u662f centos\u3001redhat\u3001debian \u6216\u8005 ubuntu\n# \u6267\u884c\u811a\u672c\u521b\u5efa ISO \u955c\u50cf\u6e90\n./gen_repo_conf.sh --iso-mode centos CentOS-7-x86_64-Everything-2207-02.iso\n# \u67e5\u770b ISO \u955c\u50cf\u6302\u8f7d\u60c5\u51b5\ndf -h | grep mnt\n/dev/loop0 9.6G 9.6G 0 100% /mnt/centos-iso\n# \u67e5\u770b ISO \u955c\u50cf\u6e90\u914d\u7f6e\ncat /etc/yum.repos.d/Kubean-ISO.repo\n
[kubean-iso]\nname=Kubean ISO Repo\nbaseurl=file:///mnt/centos-iso\nenabled=1\ngpgcheck=0\nsslverify=0\n
"},{"location":"usage/airgap/#iso_2","title":"\u5efa\u7acb\u5728\u7ebf ISO \u955c\u50cf\u6e90","text":""},{"location":"usage/airgap/#minio","title":"\u5bfc\u5165\u81f3 MinIO","text":"\u5c06 ISO \u4e2d\u7684\u955c\u50cf\u6e90\u5bfc\u5165\u5230 minio server\u4e2d\uff0c\u9700\u8981\u4f7f\u7528\u5230\u811a\u672c artifacts/import_iso.sh
\uff0c\u6267\u884c\u5982\u4e0b\u9762\u547d\u4ee4\u5373\u53ef\u5c06 ISO \u955c\u50cf\u4e2d\u8f6f\u4ef6\u6e90\u5bfc\u5165\u5230 minio server \u4e2d\uff1a
MINIO_USER=${username} MINIO_PASS=${password} ./import_iso.sh ${minio_address} Centos-XXXX.ISO\n
\u4e3a\u4e3b\u673a\u65b0\u5efa\u5982\u4e0b\u6587\u4ef6 /etc/yum.repos.d/centos-iso-online.repo
\u5373\u53ef\u4f7f\u7528\u5728\u7ebf ISO \u955c\u50cf\u6e90:
[kubean-iso-online]\nname=Kubean ISO Repo Online\nbaseurl=${minio_address}/kubean/centos-iso/$releasever/os/$basearch\nenabled=1\ngpgcheck=0\nsslverify=0\n
\u6b64\u5916\uff0c\u5982\u679c\u5bfc\u5165\u7684\u662f RHEL ISO\uff0c\u9700\u6ce8\u610f\u6b64 ISO \u63d0\u4f9b\u4e24\u4e2a\u6e90\uff1a
[kubean-iso-online-BaseOS]\nname=Kubean ISO Repo Online BaseOS\nbaseurl=${minio_address}/kubean/redhat-iso/$releasever/os/$basearch/BaseOS\nenabled=1\ngpgcheck=0\nsslverify=0\n\n\n[kubean-iso-online-AppStream]\nname=Kubean ISO Repo Online AppStream\nbaseurl=${minio_address}/kubean/redhat-iso/$releasever/os/$basearch/AppStream\nenabled=1\ngpgcheck=0\nsslverify=0\n
- \u9700\u8981\u5c06
${minio_address}
\u66ff\u6362\u4e3a minio API Server \u5730\u5740
\u8fd9\u4e00\u6b65\u4e5f\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e ClusterOperation \u6587\u4ef6\u4e2d enable-repo.yml \u7684 extraArgs \u7684\u503c\u6765\u5b9e\u73b0\uff0c \u5c06 extraArgs \u7684\u503c\u6dfb\u52a0\u4e3a '{minio_url}/kubean/centos-iso/$releasever/os/$basearch'
\u8fd9\u79cd\u683c\u5f0f\uff0c \u53c2\u9605 ClusterOperation \u7ed3\u5408 playbook \u521b\u5efa\u6e90\u914d\u7f6e\u6587\u4ef6\u4e86\u89e3\u66f4\u591a\u4fe1\u606f\u3002
"},{"location":"usage/airgap/#_7","title":"\u5bfc\u5165\u81f3\u672c\u5730\u76ee\u5f55","text":"\u5c06 ISO \u4e2d\u7684\u955c\u50cf\u6e90\u5bfc\u5165\u5230\u672c\u5730\u76ee\u5f55\u4e2d\uff0c\u9700\u8981\u4f7f\u7528\u5230\u811a\u672c artifacts/import_iso.sh
\uff0c\u6267\u884c\u5982\u4e0b\u9762\u547d\u4ee4\u5373\u53ef\u5c06 ISO \u955c\u50cf\u4e2d\u8f6f\u4ef6\u6e90\u5bfc\u5165\u5230\u6307\u5b9a\u7684\u672c\u5730\u76ee\u5f55\u4e2d
./import_iso.sh ${you_local_path} Centos-XXXX.ISO\n
repo \u914d\u7f6e\u65b9\u5f0f\u7c7b\u4f3c\u5bfc\u5165\u81f3 MinIO
[kubean-iso-online]\nname=Kubean ISO Repo Online\nbaseurl=${your_local_path}/centos-iso/$releasever/os/$basearch\nenabled=1\ngpgcheck=0\nsslverify=0\n
"},{"location":"usage/airgap/#extras","title":"\u5efa\u7acb extras \u8f6f\u4ef6\u6e90","text":"\u5f53\u524d\u652f\u6301 Red Hat Linux \u7cfb\u5217
\u5728\u5b89\u88c5 K8S \u96c6\u7fa4\u65f6, \u8fd8\u4f1a\u4f9d\u8d56\u4e00\u4e9b extras \u8f6f\u4ef6, \u6bd4\u5982 container-selinux
, \u8fd9\u4e9b\u8f6f\u4ef6\u5f80\u5f80\u5728 ISO \u955c\u50cf\u6e90\u4e2d\u5e76\u4e0d\u63d0\u4f9b. \u5bf9\u6b64 OS packages \u79bb\u7ebf\u5305\u5df2\u5bf9\u5176\u8fdb\u884c\u4e86\u8865\u5145, \u5176\u5728\u5bfc\u5165 minio \u4e4b\u540e, \u6211\u4eec\u8fd8\u9700\u8981\u5411\u5404\u4e2a\u8282\u70b9\u521b\u5efa extra repo \u914d\u7f6e\u6587\u4ef6.
\u540c\u6837\u53ef\u4ee5\u4f7f\u7528\u811a\u672c artifacts/gen_repo_conf.sh
, \u6267\u884c\u5982\u4e0b\u547d\u4ee4\u5373\u53ef\u521b\u5efa Extra Repo:
./gen_repo_conf.sh --url-mode ${linux_distribution} ${repo_base_url}\n\n# \u6267\u884c\u811a\u672c\u521b\u5efa URL \u6e90\u914d\u7f6e\u6587\u4ef6\n./gen_repo_conf.sh --url-mode centos ${minio_address}/kubean/centos/\\$releasever/os/\\$basearch\n# \u67e5\u770b URL \u6e90\u914d\u7f6e\u6587\u4ef6\ncat /etc/yum.repos.d/Kubean-URL.repo\n
[kubean-extra]\nname=Kubean Extra Repo\nbaseurl=http://10.20.30.40:9000/kubean/centos/$releasever/os/$basearch\nenabled=1\ngpgcheck=0\nsslverify=0\n
Note
\u82e5 repo_base_url
\u53c2\u6570\u4e2d\u5e26\u6709 $
\u7b26\u53f7\uff0c\u9700\u8981\u5bf9\u5176\u8fdb\u884c\u8f6c\u4e49 \\$
\u3002
\u9700\u8981\u5c06 ${minio_address}
\u66ff\u6362\u4e3a\u5b9e\u9645 minio API Server
\u7684\u5730\u5740\u3002
"},{"location":"usage/airgap/#clusteroperation-playbook","title":"ClusterOperation \u7ed3\u5408 playbook \u521b\u5efa\u6e90\u914d\u7f6e\u6587\u4ef6","text":"\u7531\u4e8e\u521b\u5efa\u6e90\u7684\u8fc7\u7a0b\u6d89\u53ca\u5230\u96c6\u7fa4\u7684\u6240\u6709\u8282\u70b9, \u624b\u52a8\u811a\u672c\u64cd\u4f5c\u76f8\u5bf9\u7e41\u7410, \u8fd9\u91cc\u63d0\u4f9b\u4e86\u4e00\u79cd playbook \u7684\u89e3\u51b3\u65b9\u5f0f.
centos yum repo \u7684\u914d\u7f6e\u793a\u4f8b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-ops-01\nspec:\n cluster: sample\n image: ghcr.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: enable-repo.yml # \u5728\u90e8\u7f72\u96c6\u7fa4\u524d, \u5148\u6267\u884c enable-repo \u7684 playbook, \u4e3a\u6bcf\u4e2a\u8282\u70b9\u521b\u5efa\u6307\u5b9a url \u7684\u6e90\u914d\u7f6e\n extraArgs: |\n -e \"{repo_list: ['http://10.20.30.40:9000/kubean/centos/\\$releasever/os/\\$basearch']}\"\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: cluster-info.yml\n - actionType: playbook\n action: enable-repo.yml # \u5728\u90e8\u7f72\u96c6\u7fa4\u540e, \u8fd8\u539f\u5404\u8282\u70b9 yum repo \u914d\u7f6e. (\u6ce8\uff1a\u6b64\u6b65\u9aa4, \u53ef\u89c6\u60c5\u51b5\u6dfb\u52a0.)\n extraArgs: |\n -e undo=true\n
ubuntu20.04 apt repo \u7684\u914d\u7f6e\u793a\u4f8b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-ops-01\nspec:\n cluster: sample\n image: ghcr.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: enable-repo.yml # \u5728\u90e8\u7f72\u96c6\u7fa4\u524d, \u5148\u6267\u884c enable-repo \u7684 playbook, \u4e3a\u6bcf\u4e2a\u8282\u70b9\u521b\u5efa\u6307\u5b9a url \u7684\u6e90\u914d\u7f6e\n # \u6ce8\uff1aubuntu \u662f os package \u79bb\u7ebf\u8d44\u6e90\uff0cubuntu-iso \u662f iso \u5b89\u88c5\u5305\u8d44\u6e90\n extraArgs: |\n -e \"{repo_list: ['deb [trusted=yes] http://MINIO_ADDR:9000/kubean/ubuntu/amd64 focal/', 'deb [trusted=yes] http://MINIO_ADDR:9000/kubean/ubuntu-iso focal main restricted']}\"\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: cluster-info.yml\n - actionType: playbook\n action: enable-repo.yml # \u5728\u90e8\u7f72\u96c6\u7fa4\u540e, \u8fd8\u539f\u5404\u8282\u70b9 apt repo \u914d\u7f6e. (\u6ce8\uff1a\u6b64\u6b65\u9aa4, \u53ef\u89c6\u60c5\u51b5\u6dfb\u52a0.)\n extraArgs: |\n -e undo=true\n
"},{"location":"usage/airgap/#_8","title":"\u90e8\u7f72\u96c6\u7fa4\u524d\u7684\u914d\u7f6e","text":"\u79bb\u7ebf\u8bbe\u7f6e\u9700\u8981\u53c2\u8003 kubespray
\u4f4d\u4e8e kubespray/inventory/sample/group_vars/all/offline.yml
\u7684\u914d\u7f6e\u6587\u4ef6\uff1a
---\n## \u5168\u5c40\u7684\u79bb\u7ebf\u914d\u7f6e\n### \u914d\u7f6e\u79c1\u6709\u5bb9\u5668\u955c\u50cf\u4ed3\u5e93\u670d\u52a1\u7684\u5730\u5740\nregistry_host: \"{{ registry_address }}\"\n\n### \u914d\u7f6e\u4e8c\u8fdb\u5236\u6587\u4ef6\u670d\u52a1\u7684\u5730\u5740\ngithub_url: https://files.m.daocloud.io/github.com\ndl_k8s_io_url: https://files.m.daocloud.io/dl.k8s.io\nstorage_googleapis_url: https://files.m.daocloud.io/storage.googleapis.com\nget_helm_url: https://files.m.daocloud.io/get.helm.sh\n\n### \u5982\u679c\u4f7f\u7528 CentOS / RedHat / AlmaLinux / Fedora, \u9700\u8981\u914d\u7f6e yum \u6e90\u6587\u4ef6\u670d\u52a1\u5730\u5740:\nyum_repo: \"{{ minio_address }}\"\n\n### \u5982\u679c\u4f7f\u7528 Debian, \u5219\u914d\u7f6e:\ndebian_repo: \"{{ minio_address }}\"\n\n### \u5982\u679c\u4f7f\u7528 Ubuntu, \u5219\u914d\u7f6e:\nubuntu_repo: \"{{ minio_address }}\"\n\n### \u5982\u679c containerd \u91c7\u7528\u975e\u5b89\u5168 HTTP \u514d\u8ba4\u8bc1\u65b9\u5f0f, \u5219\u9700\u8981\u914d\u7f6e:\ncontainerd_registries_mirrors:\n - prefix: \"{{ registry_address }}\"\n mirrors:\n - host: \"http://{{ registry_address }}\"\n capabilities: [\"pull\", \"resolve\"]\n skip_verify: true\n\n### \u5982\u679c docker \u91c7\u7528\u975e\u5b89\u5168 HTTP \u514d\u8ba4\u8bc1\u65b9\u5f0f, \u5219\u9700\u8981\u914d\u7f6e:\ndocker_insecure_registries:\n - {{ registry_address }}\n
\u989d\u5916\u8bf4\u660e\uff1a
\u9488\u5bf9\u4e00\u4e9b\u7279\u6b8a\u7684\u64cd\u4f5c\u7cfb\u7edf\uff0c\u5728\u79bb\u7ebf\u90e8\u7f72\u65f6\uff0c\u8fd8\u9700\u8981\u6dfb\u52a0\u4e00\u4e9b\u989d\u5916\u53c2\u6570\uff1a
\u64cd\u4f5c\u7cfb\u7edf \u989d\u5916\u53c2\u6570 RHEL \u7cfb\u5217 rhel_enable_repos: false
Oracle Linux \u7cfb\u5217 use_oracle_public_repo: false
\u6211\u4eec\u4ee5 examples/install/3.airgap
\u4f5c\u4e3a\u6a21\u677f\u3002
\u5c06\u5982\u4e0a\u79bb\u7ebf\u914d\u7f6e\u6309\u7167\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u8c03\u6574\uff0c\u7279\u522b\u9700\u8981\u66ff\u6362<registry_address>
\u548c <minio_address>
\u3002
\u6700\u7ec8\u5c06\u914d\u7f6e\u6dfb\u52a0\u66f4\u65b0\u5230 examples/install/3.airgap/VarsConfCM.yml
\u6587\u4ef6\u4e2d\u3002
\u540c\u65f6\u6211\u4eec\u8fd8\u9700\u8981\u4fee\u6539 examples/install/3.airgap/HostsConfCM.yml
\u4e2d\u7684\u96c6\u7fa4\u8282\u70b9 IP \u53ca\u7528\u6237\u540d\u5bc6\u7801\u3002
\u6700\u7ec8\uff0c\u901a\u8fc7 kubectl apply -f examples/install/3.airgap
\u542f\u52a8 ClusterOperation \u4efb\u52a1\u6765\u5b89\u88c5 k8s \u96c6\u7fa4\u3002
"},{"location":"usage/airgap/#_9","title":"\u589e\u91cf\u79bb\u7ebf\u5305\u7684\u751f\u6210\u548c\u4f7f\u7528","text":"\u8be6\u7ec6\u6587\u6863\u89c1 Air gap patch usage\u3002
"},{"location":"usage/airgap_patch_usage/","title":"\u589e\u91cf\u79bb\u7ebf\u5305\u7684\u751f\u6210\u548c\u4f7f\u7528","text":"\u4e3a\u4e86\u6ee1\u8db3\u7528\u6237\u5bf9\u4e8e\u67d0\u4e9b\u8f6f\u4ef6\u7279\u5b9a\u7248\u672c\u7684\u9700\u8981\uff0cKubean \u63d0\u4f9b\u811a\u672c artifacts/airgap_patch.py
\u6839\u636e\u914d\u7f6e\u6587\u4ef6 manifest.yml
\u6765\u751f\u6210\u5bf9\u5e94\u7248\u672c\u7684\u79bb\u7ebf\u5305\u3002
"},{"location":"usage/airgap_patch_usage/#_2","title":"\u751f\u6210\u589e\u91cf\u79bb\u7ebf\u5305","text":" -
\u5728\u5f53\u524d\u6587\u4ef6\u5939\u65b0\u5efa manifest.yml
\u6587\u4ef6\uff0c\u5185\u5bb9\u4e3e\u4f8b\u5982\u4e0b\uff1a
image_arch:\n - \"amd64\"\n - \"arm64\"\nkube_version:\n - \"v1.24.6\"\n - \"v1.24.4\"\ncalico_version:\n - \"v3.23.3\"\ncni_version:\n - \"v1.1.1\"\ncontainerd_version:\n - \"1.6.8\"\ncilium_version:\n - \"v1.12.1\"\netcd_version:\n - \"v3.5.3\"\n
-
\u5728\u5f53\u524d\u6587\u4ef6\u5939\u65b0\u5efa data
\u6587\u4ef6\u5939
-
\u4f7f\u7528\u955c\u50cf\uff0c\u7b49\u5f85\u8fd0\u884c\u9000\u51fa\u540e\uff0c\u5728 data
\u6587\u4ef6\u5939\u4e2d\u751f\u6210\u589e\u91cf\u79bb\u7ebf\u5305
docker run \\\n -v $(pwd)/data:/data \\\n -v $(pwd)/manifest.yml:/manifest.yml \\\n -e ZONE=CN \\\n ghcr.io/kubean-io/airgap-patch:v0.11.1\n
\u73af\u5883\u53d8\u91cf \u53ef\u9009\u503c\u63cf\u8ff0 \uff08 :\u8868\u793a\u9ed8\u8ba4\u503c\uff09 ZONE DEFAULT
: \u91c7\u7528\u9ed8\u8ba4\u539f\u59cb\u5730\u5740\u4e0b\u8f7d\u79bb\u7ebf\u8d44\u6e90 CN
: \u91c7\u7528\u56fd\u5185 DaoCloud \u52a0\u901f\u5668\u5730\u5740\u4e0b\u8f7d\u79bb\u7ebf\u8d44\u6e90 MODE INCR
: \u4ec5\u6784\u5efa\u914d\u7f6e\u4e2d\u6307\u5b9a\u7ec4\u4ef6\u7684\u79bb\u7ebf\u8d44\u6e90\uff08\u5373\uff1a\u589e\u91cf\u5305\uff09 FULL
: \u5c06\u6784\u5efa\u914d\u7f6e\u4e2d\u6307\u5b9a\u7684\u7ec4\u4ef6\u4ee5\u53ca\u96c6\u7fa4\u90e8\u7f72\u5fc5\u8981\u5176\u4ed6\u7ec4\u4ef6\u7684\u79bb\u7ebf\u8d44\u6e90\uff08\u5373\uff1a\u5168\u91cf\u5305\uff09
"},{"location":"usage/airgap_patch_usage/#_3","title":"\u4f7f\u7528\u589e\u91cf\u79bb\u7ebf\u5305","text":"\u589e\u91cf\u5305\u7684\u76ee\u5f55\u7ed3\u6784\u5982\u4e0b:
data\n\u2514\u2500\u2500 airgap_patch\n \u251c\u2500\u2500 amd64\n \u2502\u00a0\u00a0 \u251c\u2500\u2500 files\n \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 import_files.sh\n \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 offline-files.tar.gz\n \u2502\u00a0\u00a0 \u2514\u2500\u2500 images\n \u2502\u00a0\u00a0 \u251c\u2500\u2500 import_images.sh\n \u2502\u00a0\u00a0 \u2514\u2500\u2500 offline-images.tar.gz\n \u251c\u2500\u2500 arm64\n \u2502\u00a0\u00a0 \u251c\u2500\u2500 files\n \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 import_files.sh\n \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 offline-files.tar.gz\n \u2502\u00a0\u00a0 \u2514\u2500\u2500 images\n \u2502\u00a0\u00a0 \u251c\u2500\u2500 import_images.sh\n \u2502\u00a0\u00a0 \u2514\u2500\u2500 offline-images.tar.gz\n \u2514\u2500\u2500 localartifactset.cr.yaml\n
-
\u5411 MinIO \u4e2d\u5199\u5165\u6587\u4ef6\u6570\u636e
cd data/airgap_patch/amd64/files\n\nMINIO_USER=${username} MINIO_PASS=${password} ./import_files.sh ${minio_address}\n
minio_address
\u662f minio API Server
\u5730\u5740\uff0c\u7aef\u53e3\u4e00\u822c\u4e3a 9000\uff0c\u6bd4\u5982 http://1.2.3.4:9000
\u3002
-
\u5411 Docker Registry\uff08\u63a8\u8350\u4f7f\u7528 2.6.2 \u7248\u672c\uff09\u6216\u8005 Harbor \u5199\u5165\u955c\u50cf\u6570\u636e
cd data/airgap_patch/amd64/images\n\n# 1. \u514d\u5bc6\u6a21\u5f0f\nREGISTRY_SCHEME=http REGISTRY_ADDR=${registry_address} ./import_images.sh\n\n# 2. \u7528\u6237\u540d\u53e3\u4ee4\u6a21\u5f0f\nREGISTRY_SCHEME=https REGISTRY_ADDR=${registry_address} REGISTRY_USER=${username} REGISTRY_PASS=${password} ./import_images.sh\n
REGISTRY_ADDR
\u662f\u955c\u50cf\u4ed3\u5e93\u7684\u5730\u5740\uff0c\u6bd4\u59821.2.3.4:5000
- \u5f53\u955c\u50cf\u4ed3\u5e93\u5b58\u5728\u7528\u6237\u540d\u5bc6\u7801\u9a8c\u8bc1\u65f6\uff0c\u9700\u8981\u8bbe\u7f6e
REGISTRY_USER
\u548c REGISTRY_PASS
-
\u5c06 localartifactset.cr.yaml
\u5199\u5165\u5230 K8s \u96c6\u7fa4
cd data/airgap_patch\nkubectl apply -f localartifactset.cr.yaml\n
\u8fd9\u4e00\u6b65\u662f\u4e3a\u4e86\u5c06\u65b0\u7684\u53ef\u79bb\u7ebf\u4f7f\u7528\u7684\u8f6f\u4ef6\u7248\u672c\u4fe1\u606f\u544a\u77e5 kubean-operator\u3002
"},{"location":"usage/all_in_one_install/","title":"\u591a\u5408\u4e00\u6a21\u5f0f\u6700\u5c0f\u5316\u90e8\u7f72\u96c6\u7fa4","text":""},{"location":"usage/all_in_one_install/#_2","title":"\u524d\u7f6e\u6761\u4ef6","text":" - \u60a8\u5df2\u62e5\u6709\u4e00\u4e2a\u6807\u51c6 kubernetes \u96c6\u7fa4\u6216\u4e91\u5382\u5546\u63d0\u4f9b\u7684\u96c6\u7fa4\u3002
- \u96c6\u7fa4\u63a7\u5236\u8282\u70b9\u6216\u4e91\u7ec8\u7aef\u5df2\u5c06\u5b89\u88c5\u4e86 kubectl \u5de5\u5177\u3002
- kubean helm chart \u5df2\u5728\u60a8\u7684\u96c6\u7fa4\u4e0a\u90e8\u7f72\u3002
- kubean \u9879\u76ee\u5df2\u7ecf\u514b\u9686\u81f3\u60a8\u672c\u5730\uff0c\u5982\u679c\u60a8\u8fd8\u672a\u514b\u9686 kubean\uff0c\u53ef\u4ee5\u6267\u884c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u8fdb\u884c\u514b\u9686\uff1a
git clone https://github.com/kubean-io/kubean.git\n
"},{"location":"usage/all_in_one_install/#_3","title":"\u5f00\u59cb\u90e8\u7f72","text":"\u672c\u6559\u7a0b\u5c06\u4f7f\u7528\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example
\u6587\u4ef6\u4f5c\u4e3a\u8303\u4f8b\u6a21\u677f\uff0c\u8fdb\u884c\u96c6\u7fa4\u90e8\u7f72\u6f14\u793a\u3002
\u501f\u52a9\u6848\u4f8b\u6a21\u677f\uff0c\u4ec5\u9700\u4e24\u6b65\u6211\u4eec\u5c31\u80fd\u4f7f\u7528 kubean \u5b8c\u6210\u4e00\u4e2a\u5355\u8282\u70b9\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/all_in_one_install/#1-allinoneyml","title":"1. \u914d\u7f6e AllInOne.yml \u53c2\u6570","text":"\u8fdb\u5165 kubean/examples/install/1.minimal
\u6587\u4ef6\u8def\u5f84\u4e0b\uff0c\u7f16\u8f91\u5355\u8282\u70b9\u6a21\u5f0f\u90e8\u7f72\u6a21\u677f AllInOne.yml\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\u3002
<IP1>
\uff1a\u8282\u70b9 IP\u3002 <USERNAME>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\uff0c\u5efa\u8bae\u4f7f\u7528 root \u6216\u5177\u6709 root \u6743\u9650\u7684\u7528\u6237\u767b\u9646\u3002 <PASSWORD>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\u3002 <TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a AllInOne.yml \u793a\u4f8b\uff1a
AllInOne.yml \u793a\u4f8b ---\napiVersion: v1\nkind: ConfigMap\nmetadata:\nname: mini-hosts-conf\nnamespace: kubean-system\ndata:\nhosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n\n---\napiVersion: v1\nkind: ConfigMap\nmetadata:\nname: mini-vars-conf\nnamespace: kubean-system\ndata:\ngroup_vars.yml: |\n container_manager: containerd\n kube_network_plugin: calico\n etcd_deployment_type: kubeadm\n\n---\napiVersion: kubean.io/v1alpha1\nkind: Cluster\nmetadata:\nname: cluster-mini\nlabels:\n clusterName: cluster-mini\nspec:\nhostsConfRef:\n namespace: kubean-system\n name: mini-hosts-conf\nvarsConfRef:\n namespace: kubean-system\n name: mini-vars-conf\n\n---\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\nname: cluster-mini-install-ops\nspec:\ncluster: cluster-mini\nimage: ghcr.m.daocloud.io/kubean-io/spray-job:v0.5.2 # kubean \u955c\u50cf\u7248\u672c\nactionType: playbook\naction: cluster.yml\npreHook:\n - actionType: playbook\n action: disable-firewalld.yml\npostHook:\n - actionType: playbook\n action: cluster-info.yml\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u7f16\u8f91 AllInOne.yml \u914d\u7f6e\u6a21\u677f\uff1a
vi kubean/examples/install/1.minimal/AllInOne.yml\n
"},{"location":"usage/all_in_one_install/#2-allinoneyml","title":"2. \u5e94\u7528 AllInOne.yml \u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 AllInOne.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
kubectl apply -f examples/install/1.minimal/AllInOne.yml\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u5b8c\u6210\u4e86\u4e00\u4e2a\u7b80\u5355\u7684\u5355\u8282\u70b9\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/helm_install_kubean/","title":"\u5b89\u88c5 kubean helm \u5e94\u7528","text":""},{"location":"usage/helm_install_kubean/#_1","title":"\u524d\u7f6e\u6761\u4ef6","text":" - \u60a8\u5df2\u62e5\u6709\u4e00\u4e2a\u6807\u51c6 kubernetes \u96c6\u7fa4\u6216\u4e91\u5382\u5546\u63d0\u4f9b\u7684\u96c6\u7fa4\u3002
- \u5728\u60a8\u7684\u96c6\u7fa4\u63a7\u5236\u8282\u70b9\u6216\u4e91\u7ec8\u7aef\u4e0a\u5df2\u5b8c\u6210 Helm \u5de5\u5177\u7684\u5b89\u88c5\u3002\u5982\u4f55\u5b89\u88c5 Helm \u5de5\u5177\u3002
"},{"location":"usage/helm_install_kubean/#_2","title":"\u5f00\u59cb\u90e8\u7f72","text":""},{"location":"usage/helm_install_kubean/#1-kubean-helm","title":"1. \u6dfb\u52a0 kubean Helm \u4ed3\u5e93","text":"\u5c06 kubean Helm \u4ed3\u5e93\u6dfb\u52a0\u5230\u672c\u5730 Helm \u4ed3\u5e93\uff0c\u5728\u73b0\u6709\u96c6\u7fa4\u63a7\u5236\u8282\u70b9\u6216\u4e91\u7ec8\u7aef\u4e0a\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u3002
helm repo add kubean-io https://kubean-io.github.io/kubean-helm-chart/\n
\u5b8c\u6210\u4e0a\u4e00\u6b65\u540e\u68c0\u67e5 kubean \u4ed3\u5e93\u662f\u5426\u5df2\u7ecf\u6b63\u786e\u6dfb\u52a0\u81f3\u672c\u5730 Helm \u4ed3\u5e93\u3002
$ helm repo list\n\nNAME URL\nkubean-io https://kubean-io.github.io/kubean-helm-chart/\n
"},{"location":"usage/helm_install_kubean/#2-kubean","title":"2. \u5b89\u88c5 kubean","text":"\u68c0\u67e5 kubean Helm \u4ed3\u5e93\u4e2d\u53ef\u7528\u7684 Chart \u53ca\u5176\u7248\u672c\uff0c\u6267\u884c\u4e0b\u9762\u547d\u4ee4\u5c06\u5217\u51fa kubean Helm \u4ed3\u5e93\u5185\u6240\u6709\u7684 Chart \u5217\u8868\u3002
$ helm search repo kubean\n\nNAME CHART VERSION APP VERSION DESCRIPTION\nkubean-io/kubean v0.5.2 v0.5.2 A Helm chart for kubean\n
\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u540e\uff0c\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u5b89\u88c5 kubean\u3002
helm install kubean kubean-io/kubean --create-namespace -n kubean-system\n
Note
\u60a8\u8fd8\u53ef\u4ee5\u4f7f\u7528 \"--version\" \u53c2\u6570\u6765\u6307\u5b9a kubean \u7684\u7248\u672c\u3002
"},{"location":"usage/helm_install_kubean/#3-kubean-release","title":"3. \u67e5\u770b\u5df2\u5b89\u88c5\u7684 kubean release","text":"\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u5b8c\u6210\u4e86 kubean helm chart \u7684\u90e8\u7f72\uff0c\u60a8\u53ef\u4ee5\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u67e5\u770b kubean-system \u547d\u540d\u7a7a\u95f4\u4e0b\u7684 helm release\u3002
$ helm ls -n kubean-system\n\nNAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION\nkubean kubean-system 1 2023-05-15 00:24:32.719770617 -0400 -0400 deployed kubean-v0.4.9-rc1 v0.4.9-rc1\n
"},{"location":"usage/install/","title":"\u96c6\u7fa4\u90e8\u7f72","text":"\u524d\u7f6e\u6761\u4ef6\uff1a\u901a\u8fc7 helm \u5b89\u88c5 kubean charts\u3002
"},{"location":"usage/install/#_2","title":"\u5355\u8282\u70b9\u96c6\u7fa4\u90e8\u7f72","text":"\u53c2\u8003 minimal
\u6837\u4f8b\u6a21\u677f
\u53c2\u7167\u6a21\u677f\uff0c\u6211\u4eec\u5c06\u521b\u5efa\u4e00\u4e2a\u591a\u5408\u4e00\u7684\u5355\u8282\u70b9\u96c6\u7fa4\uff1a
"},{"location":"usage/install/#1-allinoneyml","title":"1. \u66f4\u65b0 AllInOne.yml
\u4e2d\u7684\u5360\u4f4d\u7b26\u4e3a\u771f\u5b9e\u503c","text":" <IP1>
<USERNAME>
<PASSWORD>
<TAG>
"},{"location":"usage/install/#2-allinoneyml","title":"2. \u5e94\u7528 AllInOne.yml
","text":"$ kubectl apply -f examples/install/1.minimal/\n
"},{"location":"usage/install/#_3","title":"\u52a0\u901f\u5668\u6a21\u5f0f\u90e8\u7f72","text":"\u53c2\u8003 mirror
\u6837\u4f8b\u6a21\u677f
"},{"location":"usage/install/#1-2mirror-yaml","title":"1. \u66f4\u65b0 2.mirror
\u76ee\u5f55\u4e2d yaml \u6e05\u5355\u7684\u5360\u4f4d\u7b26\u4e3a\u771f\u5b9e\u503c","text":" <IP1>
/ <IP2>
... <USERNAME>
<PASSWORD>
<TAG>
"},{"location":"usage/install/#2-2mirror-yaml","title":"2. \u5e94\u7528 2.mirror
\u4e2d\u7684 yaml \u6e05\u5355","text":"$ kubectl apply -f examples/install/2.mirror/\n
"},{"location":"usage/install/#3-varsconfcm","title":"3. \u52a0\u901f\u5668\u955c\u50cf\u8bbe\u7f6e\u8bf7\u89c1 VarsConfCM
","text":"\u672c\u4f8b\u4e2d\u4f7f\u7528\u5230\u7684\u52a0\u901f\u5668: * \u4e8c\u8fdb\u5236\u52a0\u901f\uff1apublic binary files mirror * \u955c\u50cf\u52a0\u901f\uff1apublic image mirror
"},{"location":"usage/install/#_4","title":"\u7eaf\u79bb\u7ebf\u6a21\u5f0f\u90e8\u7f72","text":"\u53c2\u8003 airgap
\u6837\u4f8b\u6a21\u677f
\u8be6\u7ec6\u8bf7\u6d4f\u89c8\u79bb\u7ebf\u573a\u666f\u7684\u4f7f\u7528
"},{"location":"usage/install/#ssh","title":"SSH \u79d8\u94a5\u6a21\u5f0f\u90e8\u7f72","text":"\u8be6\u7ec6\u8bf7\u6d4f\u89c8\u4f7f\u7528 SSH \u79d8\u94a5\u65b9\u5f0f\u90e8\u7f72 K8S \u96c6\u7fa4
"},{"location":"usage/install_without_root/","title":"\u4ee5\u975e root \u7528\u6237\u90e8\u7f72\u96c6\u7fa4","text":""},{"location":"usage/install_without_root/#_1","title":"\u5185\u5bb9","text":" - \u2713 1. sudo \u6743\u9650\u6821\u9a8c
- \u2713 2. \u521b\u5efa\u4e3b\u673a\u6e05\u5355\u914d\u7f6e
- \u2713 3. \u5236\u5907\u90e8\u7f72\u96c6\u7fa4\u7684\u914d\u7f6e\u53c2\u6570
- \u2713 4. \u51c6\u5907 Kubean \u7684\u81ea\u5b9a\u4e49\u8d44\u6e90
- \u2713 5. \u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4
"},{"location":"usage/install_without_root/#sudo","title":"sudo \u6743\u9650\u6821\u9a8c","text":"\u5b89\u88c5\u8fc7\u7a0b\u4e2d\u6d89\u53ca\u7cfb\u7edf\u7279\u6743\u64cd\u4f5c\uff0c\u6545\u7528\u6237\u9700\u8981\u5177\u5907 sudo \u6743\u9650\uff0c\u53ef\u8fdb\u884c\u5982\u4e0b\u68c0\u67e5\uff1a
-
\u4f7f\u7528\u975e root \u7528\u6237\u767b\u5f55\u5230\u76ee\u6807\u8282\u70b9
-
\u68c0\u67e5\u662f\u5426\u5b58\u5728 sudo \u547d\u4ee4\uff0c\u4e0d\u5b58\u5728\u5219\u901a\u8fc7\u7cfb\u7edf\u5305\u7ba1\u7406\u5668\u8fdb\u884c\u5b89\u88c5
which sudo
-
\u5728\u7ec8\u7aef\u6267\u884c echo | sudo -S -v
\u82e5\u7ed3\u679c\u8f93\u51fa xxx is not in the sudoers file. This incident will be reported
\u6216 User xxx do not have sudo privilege
\u7b49\u7c7b\u4f3c\u4fe1\u606f\uff0c\u5373\u8bf4\u660e\u5f53\u524d\u7528\u6237\u4e0d\u5177\u5907 sudo \u6743\u9650\uff0c\u53cd\u4e4b\u8bf4\u660e\u5f53\u524d\u7528\u6237\u5177\u6709 sudo \u6743\u9650\u3002
"},{"location":"usage/install_without_root/#_2","title":"\u914d\u7f6e\u4e3b\u673a\u6e05\u5355","text":"\u793a\u4f8b\uff1a\u4e3b\u673a\u6e05\u5355 HostsConfCM.yml
\u5185\u5bb9\u5927\u81f4\u5982\u4e0b\uff0c\u5c06\u4e0b\u65b9 \u548c \u66ff\u6362\u4e3a\u5b9e\u9645\u7684\u7528\u6237\u540d\u548c\u5bc6\u7801\uff1a
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: sample-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n master:\n ip: 192.168.10.11\n access_ip: 192.168.10.11\n ansible_host: 192.168.10.11\n ansible_connection: ssh\n ansible_user: <USERNAME>\n ansible_password: <PASSWORD>\n ansible_become_password: <PASSWORD>\n worker:\n ip: 192.168.10.12\n access_ip: 192.168.10.12\n ansible_host: 192.168.10.12\n ansible_connection: ssh\n ansible_user: <USERNAME>\n ansible_password: <PASSWORD>\n ansible_become_password: <PASSWORD>\n children:\n kube_control_plane:\n hosts:\n master:\n kube_node:\n hosts:\n master:\n worker:\n etcd:\n hosts:\n master:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u6ce8\uff1a\u5982\u679c\u5728 /etc/sudoers \u6587\u4ef6\u5185\u8be5\u7528\u6237\u914d\u7f6e\u4e3a NOPASSWD\uff08\u5373\u65e0\u5bc6\u7801\u63d0\u6743\uff09\uff0c\u53ef\u5c06 ansible_become_password
\u6240\u5728\u884c\u6ce8\u91ca
"},{"location":"usage/install_without_root/#_3","title":"\u5236\u5907\u90e8\u7f72\u96c6\u7fa4\u7684\u914d\u7f6e\u53c2\u6570","text":"\u96c6\u7fa4\u914d\u7f6e\u53c2\u6570 VarsConfCM.yml
\u7684\u5185\u5bb9\uff0c\u53ef\u4ee5\u53c2\u8003 demo vars conf\u3002
# VarsConfCM.yml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: sample-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n container_manager: containerd\n kube_network_plugin: calico\n kube_network_plugin_multus: false\n kube_proxy_mode: iptables\n enable_nodelocaldns: false\n etcd_deployment_type: kubeadm\n ntp_enabled: true\n ...\n
"},{"location":"usage/install_without_root/#kubean","title":"\u51c6\u5907 Kubean \u7684\u81ea\u5b9a\u4e49\u8d44\u6e90","text":" -
Cluster \u81ea\u5b9a\u4e49\u8d44\u6e90\u5185\u5bb9\u793a\u4f8b
# Cluster.yml\napiVersion: kubean.io/v1alpha1\nkind: Cluster\nmetadata:\n name: sample\nspec:\n hostsConfRef:\n namespace: kubean-system\n name: sample-hosts-conf\n varsConfRef:\n namespace: kubean-system\n name: sample-vars-conf\n sshAuthRef: # \u5173\u952e\u5c5e\u6027\uff0c\u6307\u5b9a\u96c6\u7fa4\u90e8\u7f72\u671f\u95f4\u7684 ssh \u79c1\u94a5 secret\n namespace: kubean-system\n name: sample-ssh-auth\n
-
ClusterOperation \u81ea\u5b9a\u4e49\u8d44\u6e90\u5185\u5bb9\u793a\u4f8b
# ClusterOperation.yml\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: sample-create-cluster\nspec:\n cluster: sample\n image: ghcr.m.daocloud.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: kubeconfig.yml\n - actionType: playbook\n action: cluster-info.yml\n
"},{"location":"usage/install_without_root/#_4","title":"\u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4","text":"\u5047\u8bbe\u6240\u6709 YAML \u6e05\u5355\u90fd\u5b58\u653e\u5728 create_cluster
\u76ee\u5f55\uff1a
$ tree create_cluster/\ncreate_cluster\n\u251c\u2500\u2500 HostsConfCM.yml # \u4e3b\u673a\u6e05\u5355\n\u251c\u2500\u2500 SSHAuthSec.yml # SSH\u79c1\u94a5\n\u251c\u2500\u2500 VarsConfCM.yml # \u96c6\u7fa4\u53c2\u6570\n\u251c\u2500\u2500 Cluster.yml # Cluster CR\n\u2514\u2500\u2500 ClusterOperation.yml # ClusterOperation CR\n
\u901a\u8fc7 kubectl apply
\u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4:
kubectl apply -f create_cluster/\n
"},{"location":"usage/mirror_install/","title":"\u4f7f\u7528\u52a0\u901f\u6a21\u5f0f\u90e8\u7f72\u96c6\u7fa4","text":""},{"location":"usage/mirror_install/#_2","title":"\u524d\u7f6e\u6761\u4ef6","text":" - \u60a8\u5df2\u62e5\u6709\u4e00\u4e2a\u6807\u51c6 kubernetes \u96c6\u7fa4\u6216\u4e91\u5382\u5546\u63d0\u4f9b\u7684\u96c6\u7fa4\u3002
- \u96c6\u7fa4\u63a7\u5236\u8282\u70b9\u6216\u4e91\u7ec8\u7aef\u5df2\u5c06\u5b89\u88c5\u4e86 kubectl \u5de5\u5177\u3002
- kubean helm chart \u5df2\u5728\u60a8\u7684\u96c6\u7fa4\u4e0a\u90e8\u7f72\u3002
- kubean \u9879\u76ee\u5df2\u7ecf\u514b\u9686\u81f3\u60a8\u672c\u5730\uff0c\u5982\u679c\u60a8\u8fd8\u672a\u514b\u9686 kubean\uff0c\u53ef\u4ee5\u6267\u884c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u8fdb\u884c\u514b\u9686\uff1a
$ git clone https://github.com/kubean-io/kubean.git\n
"},{"location":"usage/mirror_install/#_3","title":"\u5f00\u59cb\u90e8\u7f72","text":"\u672c\u6559\u7a0b\u5c06\u4f7f\u7528\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example/2.mirror
\u6587\u4ef6\u4f5c\u4e3a\u8303\u4f8b\u6a21\u677f\uff0c\u8fdb\u884c\u96c6\u7fa4\u52a0\u901f\u90e8\u7f72\u6f14\u793a\u3002
\u5728\u52a0\u901f\u90e8\u7f72\u6a21\u677f 2.mirror
\u5185\u5df2\u7ecf\u5185\u7f6e\u4e86\u52a0\u901f\u53c2\u6570\u914d\u7f6e\uff0c\u60a8\u53ea\u9700\u8981\u5c06 /2.mirror
\u6587\u4ef6\u8def\u5f84\u4e0b\u7684 HostsConfCM.yml
** \u548c ClusterOperation.yml
** \u4e24\u4e2a\u914d\u7f6e\u6a21\u677f\u6587\u4ef6\u5185\u7684\u4e3b\u673a\u7b49\u4fe1\u606f\u6539\u6210\u60a8\u7684\u771f\u5b9e\u53c2\u6570\u3002
2.mirror` \u6587\u4ef6\u5185\u4e3b\u8981\u7684\u914d\u7f6e\u6587\u4ef6\u53ca\u7528\u9014\u5982\u4e0b\uff1a .2.mirror\n \u251c\u2500\u2500 Cluster.yml # \u5f85\u5efa\u96c6\u7fa4\u4fe1\u606f\u7684\u62bd\u8c61\n \u251c\u2500\u2500 ClusterOperation.yml # kubean \u7248\u672c\u53ca\u4efb\u52a1\u914d\u7f6e\n \u251c\u2500\u2500 HostsConfCM.yml # \u5f85\u5efa\u96c6\u7fa4\u7684\u8282\u70b9\u4fe1\u606f\u914d\u7f6e\n \u2514\u2500\u2500 VarsConfCM.yml # \u52a0\u901f\u7b49\u5b83\u7279\u6027\u914d\u7f6e\n
"},{"location":"usage/mirror_install/#1-hostsconfcmyml","title":"1. \u914d\u7f6e\u4e3b\u673a\u914d\u7f6e\u53c2\u6570 HostsConfCM.yml","text":"\u8fdb\u5165 kubean/examples/install/2.mirror/
\u8def\u5f84\uff0c\u7f16\u8f91\u5f85\u5efa\u96c6\u7fa4\u8282\u70b9\u914d\u7f6e\u4fe1\u606f\u6a21\u677f HostsConfCM.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<IP1>
\uff1a\u8282\u70b9 IP\u3002 <USERNAME>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\uff0c\u5efa\u8bae\u4f7f\u7528 root \u6216\u5177\u6709 root \u6743\u9650\u7684\u7528\u6237\u767b\u9646\u3002 <PASSWORD>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\u3002
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a HostsConfCM.yml \u793a\u4f8b\uff1a
HostsConfCM.yml \u793a\u4f8b apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: online-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n node2:\n ip: 10.6.175.20 # \u8282\u70b9 2 \u7684 IP\n access_ip: 10.6.175.20 # \u8282\u70b9 2 IP\n ansible_host: 10.6.175.20 # \u8282\u70b9\u7684 2 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9 2 \u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9 2 \u7684\u5bc6\u7801\n children:\n kube_control_plane: # \u914d\u7f6e\u96c6\u7fa4\u63a7\u5236\u8282\u70b9\n hosts:\n node1:\n kube_node: # \u914d\u7f6e\u96c6\u7fa4\u5de5\u4f5c\u8282\u70b9\n hosts:\n node1:\n node2:\n etcd: # \u914d\u7f6e\u96c6\u7fa4 ETCD \u8282\u70b9\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u7f16\u8f91 HostsConfCM.yml \u914d\u7f6e\u6a21\u677f\uff1a
$ vi kubean/examples/install/2.mirror/HostsConfCM.yml\n
"},{"location":"usage/mirror_install/#2-kubean-clusteroperationyml","title":"2. \u914d\u7f6e kubean \u4efb\u52a1\u914d\u7f6e\u53c2\u6570 ClusterOperation.yml","text":"\u8fdb\u5165 kubean/examples/install/2.mirror/
\u8def\u5f84\uff0c\u7f16\u8f91\u5f85\u5efa\u96c6\u7fa4\u8282\u70b9\u914d\u7f6e\u4fe1\u606f\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a ClusterOperation.yml \u793a\u4f8b\uff1a
ClusterOperation.yml \u793a\u4f8b apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster1-online-install-ops\nspec:\n cluster: cluster1-online\n image: ghcr.m.daocloud.io/kubean-io/spray-job:v0.5.2 # kubean \u955c\u50cf\u7248\u672c\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: kubeconfig.yml\n - actionType: playbook\n action: cluster-info.yml\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u7f16\u8f91 ClusterOperation.yml \u914d\u7f6e\u6a21\u677f\uff1a
$ vi kubean/examples/install/2.mirror/ClusterOperation.yml\n
"},{"location":"usage/mirror_install/#3-2mirror","title":"3.\u5e94\u7528 2.mirror \u6587\u4ef6\u4e0b\u6240\u6709\u7684\u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 HostsConfCM.yml \u548c ClusterOperation.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/install/2.mirror\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u4f7f\u7528\u52a0\u901f\u6a21\u5f0f\u5b8c\u6210\u4e86\u4e00\u4e2a\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/scale_worknode/","title":"\u96c6\u7fa4\u5de5\u4f5c\u8282\u70b9\u6269\u7f29\u5bb9","text":"\u5728\u8f6f\u4ef6\u5f00\u53d1\u8fd0\u7ef4\u7684\u8fc7\u7a0b\u4e2d\uff0c\u4e1a\u52a1\u7684\u53d1\u5c55\u5f80\u5f80\u9700\u8981\u6dfb\u52a0\u96c6\u7fa4\u7684\u5de5\u4f5c\u8282\u70b9\u4ee5\u6ee1\u8db3\u4e1a\u52a1\u589e\u957f\uff0c\u5bf9\u4e8e\u4f7f\u7528 kubean \u90e8\u7f72\u7684\u96c6\u7fa4\uff0c\u5728 kubean \u4e2d\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u58f0\u660e\u5f0f\u7684\u65b9\u5f0f\uff0c\u5feb\u901f\u6269\u7f29\u5bb9\u96c6\u7fa4\u5de5\u4f5c\u8282\u70b9\u3002
\u5728\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example/scale
\u6587\u4ef6\u5185\uff0c\u540c\u6837\u63d0\u4f9b\u4e86\u5de5\u4f5c\u8282\u70b9\u6269\u7f29\u5bb9\u7684\u6837\u4f8b\u6a21\u677f\uff1a
sacle \u6587\u4ef6\u5185\u4e3b\u8981\u7684\u914d\u7f6e\u6587\u4ef6\u53ca\u7528\u9014\u5982\u4e0b\uff1a scale\n \u251c\u2500\u2500 1.addWorkNode # \u589e\u52a0\u5de5\u4f5c\u8282\u70b9\u6a21\u677f\n \u2502 \u251c\u2500\u2500 ClusterOperation.yml # kubean \u7248\u672c\u53ca\u4efb\u52a1\u914d\u7f6e\n \u2502 \u2514\u2500\u2500 HostsConfCM.yml #\u5f53\u524d\u96c6\u7fa4\u7684\u8282\u70b9\u4fe1\u606f\u914d\u7f6e\n \u2514\u2500\u2500 2.delWorkNode # \u5220\u9664\u5de5\u4f5c\u8282\u70b9\u6a21\u677f\n \u2502 \u251c\u2500\u2500 ClusterOperation.yml # kubean \u7248\u672c\u53ca\u4efb\u52a1\u914d\u7f6e\n \u2502 \u2514\u2500\u2500 HostsConfCM.yml #\u5f53\u524d\u96c6\u7fa4\u7684\u8282\u70b9\u4fe1\u606f\u914d\u7f6e\n
\u89c2\u5bdf\u4f38\u7f29\u914d\u7f6e\u6a21\u677f scale
\u6587\u4ef6\u53ef\u4ee5\u53d1\u73b0\uff0c\u5bf9\u96c6\u7fa4\u5de5\u4f5c\u8282\u70b9\u8fdb\u884c\u6269\u7f29\u5bb9\u53ea\u9700\u6267\u884c HostsConfCM.yml
\u548c ClusterOperation.yml
\u4e24\u4e2a\u914d\u7f6e\u6587\u4ef6\uff0c\u5e76\u5c06\u65b0\u589e\u8282\u70b9\u4fe1\u606f\u7b49\u53c2\u6570\u6539\u6210\u66ff\u6362\u6210\u60a8\u7684\u771f\u5b9e\u53c2\u6570\u3002
\u4e0b\u9762\u4ee5\u4f7f\u7528 all-in-one \u6a21\u5f0f\u90e8\u7f72\u7684\u5355\u8282\u70b9\u96c6\u7fa4\u4e3a\u4f8b\uff0c\u6765\u6f14\u793a\u96c6\u7fa4\u8282\u70b9\u7684\u6269\u7f29\u5bb9\u64cd\u4f5c\u3002
\u6ce8\u610f\uff1a\u6267\u884c\u96c6\u7fa4\u6269\u7f29\u5bb9\u524d\uff0c\u60a8\u5fc5\u987b\u5df2\u7ecf\u4f7f\u7528 kubean \u5b8c\u6210\u4e86\u4e00\u5957\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/scale_worknode/#_2","title":"\u6269\u5bb9\u5de5\u4f5c\u8282\u70b9","text":""},{"location":"usage/scale_worknode/#1-hostsconfcmyml","title":"1. \u5411 HostsConfCM.yml \u589e\u52a0\u65b0\u8282\u70b9\u4e3b\u673a\u53c2\u6570","text":"\u6211\u4eec\u8981\u5728\u539f\u6709\u7684 all-in-one \u6a21\u5f0f\u4e2d\uff0c\u5bf9\u540d\u4e3a mini-hosts-conf
\u7684 ConfigMap \u8fdb\u884c\u65b0\u589e\u8282\u70b9\u914d\u7f6e\uff0c\u5728\u539f\u6765 node1
\u4e3b\u8282\u70b9\u7684\u57fa\u7840\u4e0a, \u65b0\u589e node2
\u5de5\u4f5c\u8282\u70b9\uff1b
\u5177\u4f53\u5730\uff0c\u6211\u4eec\u53ef\u4ee5\u8fdb\u5165 kubean/examples/scale/1.addWorkNode/
\u8def\u5f84\uff0c\u7f16\u8f91\u5df2\u51c6\u5907\u597d\u7684\u8282\u70b9\u914d\u7f6e ConfigMap \u6a21\u677f HostsConfCM.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<IP2>
\uff1a\u8282\u70b9 IP\u3002 <USERNAME>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\uff0c\u5efa\u8bae\u4f7f\u7528 root \u6216\u5177\u6709 root \u6743\u9650\u7684\u7528\u6237\u767b\u9646\u3002 <PASSWORD>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\u3002
kubean/examples/scale/1.addWorkNode/
\u8def\u5f84\u4e0b HostsConfCM.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
HostsConfCM.yml \u6a21\u677f apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: <IP1>\n access_ip: <IP1>\n ansible_host: <IP1>\n ansible_connection: ssh\n ansible_user: <USERNAME>\n ansible_password: <PASSWORD>\n node2:\n ip: <IP2>\n access_ip: <IP2>\n ansible_host: <IP2>\n ansible_connection: ssh\n ansible_user: <USERNAME>\n ansible_password: <PASSWORD>\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n node2:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u91cd\u8981\u53c2\u6570\uff1a
all.hosts.node1
: \u539f\u96c6\u7fa4\u4e2d\u5df2\u5b58\u5728\u7684\u4e3b\u8282\u70b9 all.hosts.node2
: \u96c6\u7fa4\u6269\u5bb9\u5f85\u65b0\u589e\u7684\u5de5\u4f5c\u8282\u70b9 all.children.kube_node.hosts
: \u96c6\u7fa4\u4e2d\u7684\u5de5\u4f5c\u8282\u70b9\u7ec4
\u65b0\u589e\u5de5\u4f5c\u8282\u70b9\u4e3b\u673a\u53c2\u6570\u7684\u793a\u4f8b
\u65b0\u589e\u8282\u70b9\u524d\u65b0\u589e\u8282\u70b9\u540e apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n node2:\n ip: 10.6.175.20 # \u65b0\u589e\u8282\u70b9 2 \u7684 IP\n access_ip: 10.6.175.20 # \u65b0\u589e\u8282\u70b9 2 \u7684 IP\n ansible_host: 10.6.175.20 # \u65b0\u589e\u8282\u70b9\u7684 2 \u7684 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9 2 \u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9 2 \u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n node2:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
"},{"location":"usage/scale_worknode/#2-clusteroperationyml","title":"2. \u901a\u8fc7 ClusterOperation.yml \u65b0\u589e\u6269\u5bb9\u4efb\u52a1","text":"\u8fdb\u5165 kubean/examples/scale/1.addWorkNode/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
kubean/examples/scale/1.addWorkNode/
\u8def\u5f84\u4e0b ClusterOperation.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-awn-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:<TAG> # Please replace <TAG> with the specified version, such as v0.4.9\n actionType: playbook\n action: scale.yml\n extraArgs: --limit=node2\n
\u91cd\u8981\u53c2\u6570\uff1a spec.cluster
: \u6307\u5b9a\u9700\u8981\u6269\u5bb9\u8282\u70b9\u7684\u96c6\u7fa4\u540d\u79f0\uff0c\u4e0a\u8ff0\u6307\u5b9a\u7684\u662f\u540d\u4e3a cluster-mini
\u7684\u96c6\u7fa4\u4e3a\u6269\u5bb9\u76ee\u6807\u3002 spec.action:
\u6307\u5b9a\u6269\u5bb9\u8282\u70b9\u7684 kubespray \u5267\u672c, \u8fd9\u91cc\u8bbe\u7f6e\u4e3a scale.yml
. spec.extraArgs
: \u6307\u5b9a\u6269\u5bb9\u7684\u8282\u70b9\u9650\u5236\uff0c\u8fd9\u91cc\u901a\u8fc7 --limit=
\u53c2\u6570\u9650\u5b9a\u6269\u5bb9 node2 \u8282\u70b9
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a ClusterOperation.yml \u793a\u4f8b\uff1a
ClusterOperation.yml \u793a\u4f8b ---\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-awn-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:v0.5.2\n actionType: playbook\n action: scale.yml\n extraArgs: --limit=node2\n
"},{"location":"usage/scale_worknode/#3-scale1addworknode","title":"3.\u5e94\u7528 scale/1.addWorkNode
\u6587\u4ef6\u4e0b\u6240\u6709\u7684\u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 HostsConfCM.yml \u548c ClusterOperation.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/install/scale/1.addWorkNode/\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u4f7f\u5b8c\u6210\u4e86\u4e00\u4e2a\u96c6\u7fa4\u7684\u5de5\u4f5c\u8282\u70b9\u6269\u5bb9\u3002
"},{"location":"usage/scale_worknode/#_3","title":"\u7f29\u5bb9\u5de5\u4f5c\u8282\u70b9","text":""},{"location":"usage/scale_worknode/#1-clusteroperationyml","title":"1. \u901a\u8fc7 ClusterOperation.yml \u65b0\u589e\u7f29\u5bb9\u4efb\u52a1","text":"\u8fdb\u5165 kubean/examples/scale/2.delWorkNode/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
kubean/examples/scale/2.delWorkNode/
\u8def\u5f84\u4e0b ClusterOperation.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-dwn-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:<TAG> # Please replace <TAG> with the specified version, such as v0.4.9\n actionType: playbook\n action: remove-node.yml\n extraArgs: -e node=node2\n
\u91cd\u8981\u53c2\u6570\uff1a spec.cluster
: \u6307\u5b9a\u9700\u8981\u7f29\u5bb9\u8282\u70b9\u7684\u96c6\u7fa4\u540d\u79f0, \u4e0a\u8ff0\u6307\u5b9a\u7684\u662f\u540d\u4e3a cluster-mini \u7684\u96c6\u7fa4\u4e3a\u7f29\u5bb9\u76ee\u6807\u3002 spec.action
: \u6307\u5b9a\u7f29\u5bb9\u8282\u70b9\u7684 kubespray \u5267\u672c, \u8fd9\u91cc\u8bbe\u7f6e\u4e3a remove-node.yml\u3002 spec.extraArgs
: \u6307\u5b9a\u7f29\u5bb9\u7684\u8282\u70b9\uff0c\u8fd9\u91cc\u901a\u8fc7 -e \u53c2\u6570\u6307\u5b9a\u7f29\u5bb9 node2 \u8282\u70b9
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a ClusterOperation.yml \u793a\u4f8b\uff1a
ClusterOperation.yml \u793a\u4f8b apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-dwn-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:v0.5.2\n actionType: playbook\n action: remove-node.yml\n extraArgs: -e node=node2\n
"},{"location":"usage/scale_worknode/#2-scale2delworknode-clusteroperation","title":"2.\u5e94\u7528 scale/2.delWorkNode
\u76ee\u5f55\u4e0b\u7684 ClusterOperation \u7f29\u5bb9\u4efb\u52a1\u6e05\u5355","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 ClusterOperation.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/install/scale/2.delWorkNode/ClusterOperation.yml\n
\u9ed8\u8ba4\u8fdb\u5165 kubean-system \u547d\u540d\u7a7a\u95f4\uff0c\u67e5\u770b\u7f29\u5bb9\u4efb\u52a1\u6267\u884c\u72b6\u6001\uff1a
$ kubectl -n kubean-system get pod | grep cluster-mini-dwn-ops\n
\u4e86\u89e3\u7f29\u5bb9\u4efb\u52a1\u6267\u884c\u8fdb\u5ea6\uff0c\u53ef\u67e5\u770b\u8be5 pod \u65e5\u5fd7\uff1b"},{"location":"usage/scale_worknode/#3-hostsconfcmyml","title":"3. \u901a\u8fc7 HostsConfCM.yml \u5220\u9664\u5de5\u4f5c\u8282\u70b9\u4e3b\u673a\u53c2\u6570","text":"\u6211\u4eec\u5df2\u7ecf\u901a\u8fc7\u5982\u4e0a\u4e24\u6b65\u64cd\u4f5c\u6267\u884c\u4e86\u7f29\u5bb9\u4efb\u52a1\uff0c\u5f85\u7f29\u5bb9\u4efb\u52a1\u6267\u884c\u5b8c\u6210\u540e\uff0cnode2
\u5c06\u4ece\u73b0\u6709\u96c6\u7fa4\u4e2d\u6c38\u4e45\u79fb\u9664\uff0c\u5219\u6b64\u65f6\u6211\u4eec\u8fd8\u9700\u8981\u5b8c\u6210\u6700\u540e\u4e00\u6b65\uff0c\u5c06\u8282\u70b9\u914d\u7f6e\u76f8\u5173 Configmap \u4e2d\u7684 node2 \u4fe1\u606f\u79fb\u9664;
\u8fdb\u5165 kubean/examples/scale/2.delWorkNode/
\u8def\u5f84\uff0c\u7f16\u8f91\u5df2\u51c6\u5907\u597d\u7684\u8282\u70b9\u914d\u7f6e\u6a21\u677f HostsConfCM.yml
\uff0c\u5220\u9664\u9700\u8981\u79fb\u9664\u7684\u5de5\u4f5c\u8282\u70b9\u914d\u7f6e\u3002
\u5220\u9664\u53c2\u6570\u5982\u4e0b\uff1a
all.hosts
\u4e0b\u7684 node2 \u8282\u70b9\u63a5\u5165\u53c2\u6570\u3002 all.children.kube_node.hosts
\u5185\u7684\u4e3b\u673a\u540d\u79f0 node2 \u3002
\u79fb\u9664\u5de5\u4f5c\u8282\u70b9\u4e3b\u673a\u53c2\u6570\u7684\u793a\u4f8b
\u79fb\u9664\u8282\u70b9\u524d\u79fb\u9664\u8282\u70b9\u540e apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n node2:\n ip: 10.6.175.20 # \u65b0\u589e\u8282\u70b9 2 \u7684 IP\n access_ip: 10.6.175.20 # \u65b0\u589e\u8282\u70b9 2 IP\n ansible_host: 10.6.175.20 # \u65b0\u589e\u8282\u70b9\u7684 2 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9 2 \u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9 2 \u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n node2:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 HostsConfCM.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/install/scale/2.delWorkNode/HostsConfCM.yml\n
\u6b64\u65f6\uff0c\u6211\u4eec\u5df2\u5c06 node2 \u5de5\u4f5c\u8282\u70b9\u4ece\u96c6\u7fa4\u4e2d\u79fb\u9664\uff0c\u5e76\u4e14\u6e05\u7406\u6389\u4e86\u6709\u5173 node2 \u7684\u4e3b\u673a\u4fe1\u606f\uff0c\u6574\u4e2a\u7f29\u5bb9\u64cd\u4f5c\u5c31\u6b64\u7ed3\u675f\uff1b
"},{"location":"usage/sshkey_deploy_cluster/","title":"\u4ee5 SSH \u5bc6\u94a5\u65b9\u5f0f\u90e8\u7f72\u96c6\u7fa4","text":""},{"location":"usage/sshkey_deploy_cluster/#_1","title":"\u5185\u5bb9","text":" - \u2713 1. SSH \u5bc6\u94a5\u7684\u751f\u6210\u4e0e\u5206\u53d1
- \u2713 2. \u4f7f\u7528\u79c1\u94a5\u5236\u4f5c Secret
- \u2713 3. \u521b\u5efa\u4e3b\u673a\u6e05\u5355\u914d\u7f6e
- \u2713 4. \u5236\u5907\u90e8\u7f72\u96c6\u7fa4\u7684\u914d\u7f6e\u53c2\u6570
- \u2713 5. \u51c6\u5907 Kubean \u7684\u81ea\u5b9a\u4e49\u8d44\u6e90
- \u2713 6. \u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4
"},{"location":"usage/sshkey_deploy_cluster/#ssh_1","title":"SSH \u5bc6\u94a5\u7684\u751f\u6210\u4e0e\u5206\u53d1","text":" -
\u901a\u8fc7 ssh-keygen
\u547d\u4ee4\u751f\u6210\u516c\u79c1\u94a5\u5bf9\uff0c\u6bd4\u5982\uff1a
$ ssh-keygen -t rsa -b 4096 -C \"your_email@example.com\" -f $HOME/.ssh/id_rsa\nGenerating public/private rsa key pair.\nCreated directory '/root/.ssh'.\nEnter passphrase (empty for no passphrase):\nEnter same passphrase again:\nYour identification has been saved in /root/.ssh/id_rsa.\nYour public key has been saved in /root/.ssh/id_rsa.pub.\nThe key fingerprint is:\nSHA256:oMqlhL8wLuYycOkUNXyiDso62C+ryNYc9k3LMDltQZs your_email@example.com\nThe keys randomart image is:\n+---[RSA 4096]----+\n| . |\n| = .. |\n| o +o o |\n|..o . E |\n|+o.oo o S |\n|o==* = + |\n|*=O o O . |\n|@=++ . + |\n|OBo+. |\n+----[SHA256]-----+\n\n$ ls /root/.ssh/id_rsa* -lh\n-rw-------. 1 root root 1.7K Nov 10 03:47 /root/.ssh/id_rsa # \u79c1\u94a5\n-rw-r--r--. 1 root root 408 Nov 10 03:47 /root/.ssh/id_rsa.pub # \u516c\u94a5\n
-
\u5206\u53d1\u516c\u94a5\u5230\u96c6\u7fa4\u7684\u5404\u4e2a\u8282\u70b9\uff1a
# \u6bd4\u5982\u6307\u5b9a\u5c06\u516c\u94a5\u5206\u53d1\u81f3 `192.168.10.11` `192.168.10.12` \u4e24\u4e2a\u8282\u70b9\n$ declare -a IPS=(192.168.10.11 192.168.10.12)\n\n# \u904d\u5386\u8282\u70b9 IP \u5206\u53d1\u516c\u94a5(/root/.ssh/id_rsa.pub)\uff0c\u5047\u8bbe\u7528\u6237\u540d\u4e3a: root, \u5bc6\u7801\u4e3a: kubean\n$ for ip in ${IPS[@]}; do sshpass -p \"kubean\" ssh-copy-id -i /root/.ssh/id_rsa.pub -o StrictHostKeyChecking=no root@$ip; done\n
"},{"location":"usage/sshkey_deploy_cluster/#secret","title":"\u4f7f\u7528\u79c1\u94a5\u5236\u4f5c Secret","text":"\u901a\u8fc7 kubectl \u547d\u4ee4\u751f\u6210\u79c1\u94a5\u7684 Secret\uff1a
$ kubectl -n kubean-system \\ # \u6307\u5b9a\u547d\u540d\u7a7a\u95f4 kubean-system\n create secret generic sample-ssh-auth \\ # \u6307\u5b9a secret \u540d\u79f0\u4e3a sample-ssh-auth\n --type='kubernetes.io/ssh-auth' \\ # \u6307\u5b9a secret \u7c7b\u578b\u4e3a kubernetes.io/ssh-auth\n --from-file=ssh-privatekey=/root/.ssh/id_rsa \\ # \u6307\u5b9a ssh \u79c1\u94a5\u6587\u4ef6\u8def\u5f84\n --dry-run=client -o yaml > SSHAuthSec.yml # \u6307\u5b9a secret yaml \u6587\u4ef6\u751f\u6210\u8def\u5f84\n
\u751f\u6210\u7684 SSHAuthSec.yml
\u5185\u5bb9\u5927\u81f4\u5982\u4e0b\u6240\u793a\uff1a
# SSHAuthSec.yml\napiVersion: v1\nkind: Secret\nmetadata:\n creationTimestamp: null\n name: sample-ssh-auth\n namespace: kubean-system\ntype: kubernetes.io/ssh-auth\ndata:\n ssh-privatekey: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlKS1FJQkFBS0NBZ0VBdWVDbC8rSng1b0RT...\n
"},{"location":"usage/sshkey_deploy_cluster/#_2","title":"\u521b\u5efa\u4e3b\u673a\u6e05\u5355\u914d\u7f6e","text":"\u793a\u4f8b\uff1a\u4e3b\u673a\u6e05\u5355 HostsConfCM.yml
\u5185\u5bb9\u5927\u81f4\u5982\u4e0b\uff0c\u5e76\u5c06\u4e0b\u65b9 \u66ff\u6362\u4e3a\u5b9e\u9645\u7684\u7528\u6237\u540d\uff1a
# HostsConfCM.yml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: sample-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n master:\n ip: 192.168.10.11\n access_ip: 192.168.10.11\n ansible_host: 192.168.10.11\n ansible_user: <USRENAME>\n worker:\n ip: 192.168.10.12\n access_ip: 192.168.10.12\n ansible_host: 192.168.10.12\n ansible_user: <USRENAME>\n children:\n kube_control_plane:\n hosts:\n master:\n kube_node:\n hosts:\n master:\n worker:\n etcd:\n hosts:\n master:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u6ce8\uff1a\u7531\u4e8e\u91c7\u7528\u79c1\u94a5\u767b\u5f55\uff0c\u6240\u4ee5\u4e3b\u673a\u4fe1\u606f\u4e2d\u4e0d\u9700\u8981\u586b\u5199\u5bc6\u7801\uff08\u5373\uff1aansible_password\uff09
"},{"location":"usage/sshkey_deploy_cluster/#_3","title":"\u5236\u5907\u90e8\u7f72\u96c6\u7fa4\u7684\u914d\u7f6e\u53c2\u6570","text":"\u96c6\u7fa4\u914d\u7f6e\u53c2\u6570 VarsConfCM.yml
\u7684\u5185\u5bb9\uff0c\u53ef\u4ee5\u53c2\u8003 demo vars conf\u3002
# VarsConfCM.yml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: sample-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n container_manager: containerd\n kube_network_plugin: calico\n kube_network_plugin_multus: false\n kube_proxy_mode: iptables\n enable_nodelocaldns: false\n etcd_deployment_type: kubeadm\n ntp_enabled: true\n ...\n
"},{"location":"usage/sshkey_deploy_cluster/#kubean","title":"\u51c6\u5907 Kubean \u7684\u81ea\u5b9a\u4e49\u8d44\u6e90","text":" -
Cluster \u81ea\u5b9a\u4e49\u8d44\u6e90\u5185\u5bb9\u793a\u4f8b
# Cluster.yml\napiVersion: kubean.io/v1alpha1\nkind: Cluster\nmetadata:\n name: sample\nspec:\n hostsConfRef:\n namespace: kubean-system\n name: sample-hosts-conf\n varsConfRef:\n namespace: kubean-system\n name: sample-vars-conf\n sshAuthRef: # \u5173\u952e\u5c5e\u6027\uff0c\u6307\u5b9a\u96c6\u7fa4\u90e8\u7f72\u671f\u95f4\u7684 ssh \u79c1\u94a5 secret\n namespace: kubean-system\n name: sample-ssh-auth\n
-
ClusterOperation \u81ea\u5b9a\u4e49\u8d44\u6e90\u5185\u5bb9\u793a\u4f8b
# ClusterOperation.yml\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: sample-create-cluster\nspec:\n cluster: sample\n image: ghcr.m.daocloud.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: kubeconfig.yml\n - actionType: playbook\n action: cluster-info.yml\n
"},{"location":"usage/sshkey_deploy_cluster/#_4","title":"\u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4","text":"\u5047\u8bbe\u6240\u6709 YAML \u6e05\u5355\u90fd\u5b58\u653e\u5728 create_cluster
\u76ee\u5f55\uff1a
$ tree create_cluster/\ncreate_cluster\n\u251c\u2500\u2500 HostsConfCM.yml # \u4e3b\u673a\u6e05\u5355\n\u251c\u2500\u2500 SSHAuthSec.yml # SSH\u79c1\u94a5\n\u251c\u2500\u2500 VarsConfCM.yml # \u96c6\u7fa4\u53c2\u6570\n\u251c\u2500\u2500 Cluster.yml # Cluster CR\n\u2514\u2500\u2500 ClusterOperation.yml # ClusterOperation CR\n
\u901a\u8fc7 kubectl apply
\u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4:
kubectl apply -f create_cluster/\n
"},{"location":"usage/support_k8s_version/","title":"Support k8s version","text":"kubean Version Default Kubernetes Version Supported Kubernetes Version Range v0.8.6 v1.26.7 - \"v1.27.4\" - \"v1.27.3\" - \"v1.27.2\" - \"v1.27.1\" - \"v1.27.0\" - \"v1.26.7\" - \"v1.26.6\" - \"v1.26.5\" - \"v1.26.4\" - \"v1.26.3\" - \"v1.26.2\" - \"v1.26.1\" - \"v1.26.0\" - \"v1.25.11\" - \"v1.25.10\" - \"v1.25.9\" - \"v1.25.8\" - \"v1.25.7\" - \"v1.25.6\" - \"v1.25.5\" - \"v1.25.4\" - \"v1.25.3\" - \"v1.25.2\" - \"v1.25.1\" - \"v1.25.0\" - \"v1.24.15\" - \"v1.24.14\" v0.9.0 v1.26.7 - 'v1.28.1' - 'v1.28.0' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' - 'v1.26.8' - 'v1.26.7' - 'v1.26.6' - 'v1.26.5' - 'v1.26.4' - 'v1.26.3' - 'v1.26.2' - 'v1.26.1' - 'v1.26.0' v0.11.1 v1.27.5 - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' - 'v1.26.11' - 'v1.26.10' - 'v1.26.9' - 'v1.26.8' - 'v1.26.7' - 'v1.26.6' - 'v1.26.5' - 'v1.26.4' - 'v1.26.3' - 'v1.26.2' - 'v1.26.1' - 'v1.26.0' v0.11.2 v1.27.5 - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' - 'v1.26.11' - 'v1.26.10' - 'v1.26.9' - 'v1.26.8' - 'v1.26.7' - 'v1.26.6' - 'v1.26.5' - 'v1.26.4' - 'v1.26.3' - 'v1.26.2' - 'v1.26.1' - 'v1.26.0' v0.12.1 v1.27.5 - 'v1.29.0' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' - 'v1.26.12' - 'v1.26.11' - 'v1.26.10' - 'v1.26.9' - 'v1.26.8' - 'v1.26.7' - 'v1.26.6' - 'v1.26.5' - 'v1.26.4' - 'v1.26.3' - 'v1.26.2' - 'v1.26.1' - 'v1.26.0' v0.13.0 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.1 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.3 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.4 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.5 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.8 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.9 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.14.0 v1.27.5 - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.12' - 'v1.27.11' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.10 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.11 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.15.0 v1.27.5 - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.12' - 'v1.27.11' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.15.1 v1.27.5 - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.13' - 'v1.27.12' - 'v1.27.11' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.15.3 v1.28.9 - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.13' - 'v1.27.12' - 'v1.27.11' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.16.0 v1.29.5 - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.16.1 v1.29.5 - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.16.3 v1.29.5 - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.17.0 v1.29.5 - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.17.1 v1.29.5 - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.17.2 v1.29.5 - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.17.4 v1.29.5 - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.18.1 v1.29.5 - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.18.5 v1.29.5 - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.12' - 'v1.28.11' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.19.0 v1.30.4 - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.12' - 'v1.28.11' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.20.0 v1.30.4 - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' v0.21.0 v1.30.5 - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' v0.21.1 v1.30.5 - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' v0.22.1 v1.30.5 - 'v1.31.3' - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.7' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.11' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' v0.22.2 v1.30.5 - 'v1.31.3' - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.7' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.11' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0'"},{"location":"usage/uninstall/","title":"\u96c6\u7fa4\u5378\u8f7d","text":"\u672c\u8282\u5c06\u5411\u60a8\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528 kubean \u5378\u8f7d\u96c6\u7fa4\u3002\u5728\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example/uninstall
\u6587\u4ef6\u5185\uff0c\u540c\u6837\u63d0\u4f9b\u4e86\u5378\u8f7d\u96c6\u7fa4\u7684\u6837\u4f8b\u6a21\u677f\uff1a
uninsatall \u6587\u4ef6\u5185\u4e3b\u8981\u7684\u914d\u7f6e\u6587\u4ef6\u53ca\u7528\u9014\u5982\u4e0b\uff1a uninstall\n \u251c\u2500\u2500 ClusterOperation.yml # \u5378\u8f7d\u96c6\u7fa4\u4efb\u52a1\n
\u4e0b\u9762\u4ee5\u4f7f\u7528 all-in-one \u6a21\u5f0f\u90e8\u7f72\u7684\u5355\u8282\u70b9\u96c6\u7fa4\u4e3a\u4f8b\uff0c\u6765\u6f14\u793a\u96c6\u7fa4\u7248\u672c\u5347\u7ea7\u64cd\u4f5c\u3002
\u6ce8\u610f\uff1a\u6267\u884c\u96c6\u7fa4\u5378\u8f7d\u524d\uff0c\u60a8\u5fc5\u987b\u5df2\u7ecf\u4f7f\u7528 kubean \u5b8c\u6210\u4e86\u4e00\u5957\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/uninstall/#1","title":"1. \u65b0\u589e\u5378\u8f7d\u4efb\u52a1","text":"\u8fdb\u5165 kubean/examples/uninstall/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
kubean/examples/uninstall/
\u8def\u5f84\u4e0b ClusterOperation.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-uninstall-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:<TAG> # Please replace <TAG> with the specified version, such as v0.4.9\n actionType: playbook\n action: reset.yml\n
\u91cd\u8981\u53c2\u6570\uff1a spec.cluster
\uff1a\u6307\u5b9a\u9700\u8981\u5378\u8f7d\u7684\u96c6\u7fa4\u540d\u79f0, \u4e0a\u8ff0\u6307\u5b9a\u7684\u662f\u540d\u4e3a cluster-mini
\u7684\u96c6\u7fa4\u4e3a\u5378\u8f7d\u76ee\u6807\u3002 spec.action:
\uff1a\u6307\u5b9a\u5378\u8f7d\u76f8\u5173\u7684 kubespray \u5267\u672c, \u8fd9\u91cc\u8bbe\u7f6e\u4e3a reset.yml
\u3002
"},{"location":"usage/uninstall/#2-uninstall","title":"2.\u5e94\u7528 uninstall
\u6587\u4ef6\u4e0b\u7684\u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 ClusterOperation.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/uninstall/\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u4f7f\u5b8c\u6210\u4e86\u4e00\u4e2a\u96c6\u7fa4\u7684\u5378\u8f7d\u3002
"},{"location":"usage/upgrade/","title":"\u96c6\u7fa4\u7248\u672c\u5347\u7ea7","text":"\u672c\u8282\u5c06\u5411\u60a8\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528 kubean \u5347\u7ea7\u96c6\u7fa4\u7684 kubernnetes \u7248\u672c\u3002\u5728\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example/upgrade
\u6587\u4ef6\u5185\uff0c\u540c\u6837\u63d0\u4f9b\u4e86\u96c6\u7fa4\u7248\u672c\u5347\u7ea7\u7684\u6837\u4f8b\u6a21\u677f\uff1a
upgrade \u6587\u4ef6\u5185\u4e3b\u8981\u7684\u914d\u7f6e\u6587\u4ef6\u53ca\u7528\u9014\u5982\u4e0b\uff1a upgrade\n \u251c\u2500\u2500 ClusterOperation.yml # \u5347\u7ea7\u96c6\u7fa4\u4efb\u52a1\n \u2514\u2500\u2500 VarsConfCM.yml # \u96c6\u7fa4\u5347\u7ea7\u7248\u672c\u7b49\u53c2\u6570\u914d\u7f6e\n
\u4e0b\u9762\u4ee5\u4f7f\u7528 all-in-one \u6a21\u5f0f\u90e8\u7f72\u7684\u5355\u8282\u70b9\u96c6\u7fa4\u4e3a\u4f8b\uff0c\u6765\u6f14\u793a\u96c6\u7fa4\u7248\u672c\u5347\u7ea7\u64cd\u4f5c\u3002
\u6ce8\u610f\uff1a\u6267\u884c\u96c6\u7fa4\u7248\u672c\u5347\u7ea7\u524d\uff0c\u60a8\u5fc5\u987b\u5df2\u7ecf\u4f7f\u7528 kubean \u5b8c\u6210\u4e86\u4e00\u5957\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/upgrade/#1","title":"1. \u65b0\u589e\u5347\u7ea7\u4efb\u52a1","text":"\u8fdb\u5165 kubean/examples/upgrade/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
kubean/examples/upgrade/
\u8def\u5f84\u4e0b ClusterOperation.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-upgrade-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:<TAG> # Please replace <TAG> with the specified version, such as v0.4.9\n actionType: playbook\n action: upgrade-cluster.yml\n
\u91cd\u8981\u53c2\u6570\uff1a spec.cluster
: \u6307\u5b9a\u9700\u8981\u5347\u7ea7\u7684\u96c6\u7fa4\u540d\u79f0\uff0c\u4e0a\u8ff0\u6307\u5b9a\u7684\u662f\u540d\u4e3a cluster-mini
\u7684\u96c6\u7fa4\u4e3a\u5347\u7ea7\u76ee\u6807\u3002 spec.action:
\u6307\u5b9a\u5347\u7ea7\u76f8\u5173\u7684 kubespray \u5267\u672c, \u8fd9\u91cc\u8bbe\u7f6e\u4e3a upgrade-cluster.yml
\u3002
"},{"location":"usage/upgrade/#2","title":"2. \u6307\u5b9a\u96c6\u7fa4\u5347\u7ea7\u7248\u672c","text":"\u8fdb\u5165 kubean/examples/upgrade/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f VarsConfCM.yml
\uff0c\u901a\u8fc7\u914d\u7f6e kube_version
\u53c2\u6570\uff0c\u6307\u5b9a\u96c6\u7fa4\u5347\u7ea7\u7684\u7248\u672c\u3002
kubean/examples/upgrade/
\u8def\u5f84\u4e0b VarsConfCM.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n kube_version: v1.25.8\n # upgrade_cluster_setup: true\n # upgrade_node_confirm: true\n # upgrade_node_pause_seconds: 60\n\n container_manager: containerd\n kube_network_plugin: calico\n etcd_deployment_type: kubeadm\n
\u91cd\u8981\u53c2\u6570\uff1a kube_version
: \u6307\u5b9a\u9700\u8981\u5347\u7ea7\u7684\u96c6\u7fa4\u7248\u672c, \u4e0a\u8ff0\u6307\u5b9a\u4e86\u8981\u5347\u7ea7\u5230 k8s v1.25.8 \u7248\u672c\u3002
\u5347\u7ea7\u96c6\u7fa4\u7248\u672c\u53c2\u6570\u7684\u793a\u4f8b
\u5347\u7ea7\u7248\u672c\u524d\u5347\u7ea7\u7248\u672c\u540e apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n kube_version: v1.25.0\n # upgrade_cluster_setup: true\n # upgrade_node_confirm: true\n # upgrade_node_pause_seconds: 60\n\n container_manager: containerd\n kube_network_plugin: calico\n etcd_deployment_type: kubeadm\n
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n kube_version: v1.25.8\n # upgrade_cluster_setup: true\n # upgrade_node_confirm: true\n # upgrade_node_pause_seconds: 60\n\n container_manager: containerd\n kube_network_plugin: calico\n etcd_deployment_type: kubeadm\n
\u9644\uff1akubean \u96c6\u7fa4\u7248\u672c\u652f\u6301\u673a\u5236\uff1a
kubean \u7248\u672c \u63a8\u8350\u7684 kubernetes \u7248\u672c \u652f\u6301\u7684 kubernetes \u7248\u672c\u8303\u56f4 v0.5.2 v1.25.4 - \"v1.27.2\" - \"v1.26.5\" - \"v1.26.4\" - \"v1.26.3\" - \"v1.26.2\" - \"v1.26.1\" - \"v1.26.0\" - \"v1.25.10\" - \"v1.25.9\" - \"v1.25.8\" - \"v1.25.7\" - \"v1.25.6\" - \"v1.25.5\" - \"v1.25.4\" - \"v1.25.3\" - \"v1.25.2\" - \"v1.25.1\" - \"v1.25.0\" \u66f4\u591a\u5347\u7ea7\u64cd\u4f5c\u53c2\u6570\u7684\u8be6\u7ec6\u8bf4\u660e\uff0c\u8bf7\u53c2\u8003 kubespray \u6587\u6863\uff1a\u901a\u8fc7Kubespray \u66f4\u65b0 kubernetes\u3002
"},{"location":"usage/upgrade/#3-upgrade","title":"3.\u5e94\u7528 upgrade
\u6587\u4ef6\u4e0b\u6240\u6709\u7684\u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 ClusterOperation.yml \u548c VarsConfCM.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/upgrade/\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u4f7f\u5b8c\u6210\u4e86\u4e00\u4e2a\u96c6\u7fa4\u7684 kuberntes \u7248\u672c\u7684\u5347\u7ea7\u3002
"}]}
\ No newline at end of file
+{"config":{"lang":["en"],"separator":"[\\s\\u200b\\u3000\\-\u3001\u3002\uff0c\uff0e\uff1f\uff01\uff1b]+","pipeline":["stemmer"]},"docs":[{"location":"","title":"Kubean","text":"Kubean \u662f\u4e00\u6b3e\u51c6\u751f\u4ea7\u7684\u96c6\u7fa4\u751f\u547d\u5468\u671f\u7ba1\u7406\u5de5\u5177\uff0c\u57fa\u4e8e kubespray \u4e0e\u5176\u4ed6\u96c6\u7fa4 LCM \u5f15\u64ce\u3002
"},{"location":"#_1","title":"\u529f\u80fd\u8d85\u8d5e","text":" - \u7b80\u5355\u6613\u7528\uff1a\u901a\u8fc7\u58f0\u660e\u5f0f API \u5b9e\u73b0 Kubean \u548c K8s \u96c6\u7fa4\u5f3a\u52b2\u751f\u547d\u5468\u671f\u7ba1\u7406\u7684\u90e8\u7f72\u3002
- \u652f\u6301\u79bb\u7ebf\uff1a\u6bcf\u4e2a\u7248\u672c\u90fd\u4f1a\u53d1\u5e03\u79bb\u7ebf\u5305\uff08os-pkgs\u3001\u955c\u50cf\u3001\u4e8c\u8fdb\u5236\u5305\uff09\u3002\u4f60\u4e0d\u5fc5\u62c5\u5fc3\u5982\u4f55\u6536\u96c6\u6240\u9700\u7684\u8d44\u6e90\u3002
- \u517c\u5bb9\u6027\uff1a\u652f\u6301\u591a\u67b6\u6784\u4ea4\u4ed8\uff1aAMD\u3001ARM\uff1b\u5e38\u89c1\u7684 Linux \u53d1\u884c\u7248\uff1b\u4ee5\u53ca\u57fa\u4e8e\u9cb2\u9e4f\u6784\u5efa\u7684\u9e92\u9e9f\u64cd\u4f5c\u7cfb\u7edf\u3002
- \u53ef\u6269\u5c55\u6027\uff1a\u5141\u8bb8\u4f7f\u7528\u539f\u751f Kubespray \u81ea\u5b9a\u4e49\u96c6\u7fa4\u3002
"},{"location":"#others","title":"Others","text":"Copyright The Kubean Authors
We are a Cloud Native Computing Foundation sandbox project.
The Linux Foundation\u00ae (TLF) has registered trademarks and uses trademarks. For a list of TLF trademarks, see Trademark Usage.
"},{"location":"concepts/architecture/","title":"Kubean \u57fa\u7840\u67b6\u6784","text":"Kubean \u7684\u6574\u4f53\u67b6\u6784\u5982\u4e0b\u6240\u793a\uff1a
Kubean \u9700\u8981\u8fd0\u884c\u5728\u4e00\u4e2a\u5df2\u5b58\u5728\u7684 Kubernetes \u96c6\u7fa4\uff0c\u901a\u8fc7\u5e94\u7528 Kubean \u63d0\u4f9b\u7684\u6807\u51c6 CRD \u8d44\u6e90\u548c Kubernetes \u5185\u5efa\u8d44\u6e90\u6765\u63a7\u5236\u548c\u7ba1\u7406\u96c6\u7fa4\u7684\u751f\u547d\u5468\u671f\uff08\u5b89\u88c5\u3001\u5378\u8f7d\u3001\u5347\u7ea7\u3001\u6269\u5bb9\u3001\u7f29\u5bb9\u7b49\uff09\u3002 Kubean \u91c7\u7528 Kubespray \u4f5c\u4e3a\u5e95\u5c42\u6280\u672f\u4f9d\u8d56\uff0c\u4e00\u65b9\u9762\u7b80\u5316\u4e86\u96c6\u7fa4\u90e8\u7f72\u7684\u64cd\u4f5c\u6d41\u7a0b\uff0c\u964d\u4f4e\u4e86\u7528\u6237\u7684\u4f7f\u7528\u95e8\u69db\u3002\u53e6\u4e00\u65b9\u9762\u5728 Kubespray \u80fd\u529b\u57fa\u7840\u4e0a\u589e\u52a0\u4e86\u96c6\u7fa4\u64cd\u4f5c\u8bb0\u5f55\u3001\u79bb\u7ebf\u7248\u672c\u8bb0\u5f55\u7b49\u8bf8\u591a\u65b0\u7279\u6027\u3002
Kubean \u8fd0\u884c\u7740\u591a\u4e2a\u63a7\u5236\u5668\uff0c\u8fd9\u4e9b\u63a7\u5236\u5668\u8ddf\u8e2a Kubean CRD \u5bf9\u8c61\u7684\u53d8\u5316\uff0c\u5e76\u4e14\u4e0e\u5e95\u5c42\u96c6\u7fa4\u7684 API \u670d\u52a1\u5668\u8fdb\u884c\u901a\u4fe1\u6765\u521b\u5efa Kubernetes\u539f\u751f\u8d44\u6e90\u5bf9\u8c61\u3002\u7531\u4ee5\u4e0b\u56db\u4e2a\u7ec4\u4ef6\u6784\u6210\uff1a
- Cluster Controller: \u76d1\u89c6
Cluster Objects
\u3002\u552f\u4e00\u6807\u8bc6\u4e00\u4e2a\u96c6\u7fa4\uff0c\u62e5\u6709\u96c6\u7fa4\u8282\u70b9\u7684\u8bbf\u95ee\u4fe1\u606f\u3001\u7c7b\u578b\u4fe1\u606f\u3001\u90e8\u7f72\u53c2\u6570\u4fe1\u606f\uff0c\u5e76\u4e14\u5173\u8054\u6240\u6709\u5bf9\u6b64\u96c6\u7fa4\u7684\u64cd\u4f5c\uff08ClusterOperation Objects
\uff09\uff1b - ClusterOperation Controller: \u76d1\u89c6
ClusterOperation Objects
\u3002\u5f53 ClusterOperation Object
\u88ab\u521b\u5efa\u65f6\uff0c\u63a7\u5236\u5668\u4f1a\u7ec4\u88c5\u4e00\u4e2a Job \u53bb\u6267\u884c CRD \u5bf9\u8c61\u91cc\u5b9a\u4e49\u7684\u64cd\u4f5c\uff1b - Manifest Controller: \u76d1\u89c6
Manifest Objects
\u3002\u7528\u4e8e\u8bb0\u5f55\u548c\u7ef4\u62a4\u5f53\u524d\u7248\u672c\u7684 Kubean \u4f7f\u7528\u548c\u517c\u5bb9\u7684\u7ec4\u4ef6\u3001\u5305\u53ca\u7248\u672c\uff1b - LocalArtifactSet Controller\uff1a\u76d1\u89c6
LocalArtifactSet Objects
\u3002\u7528\u4e8e\u8bb0\u5f55\u79bb\u7ebf\u5305\u652f\u6301\u7684\u7ec4\u4ef6\u53ca\u7248\u672c\u4fe1\u606f\u3002
"},{"location":"concepts/comparisons/","title":"\u5bf9\u6bd4\u53c2\u8003","text":""},{"location":"concepts/comparisons/#kubean-vs-kubespray","title":"Kubean vs Kubespray","text":"Kubespray \u4f7f\u7528 Ansible \u4f5c\u4e3a\u5e95\u5c42\u6765\u914d\u7f6e\u548c\u7f16\u6392\uff0c\u53ef\u4ee5\u8fd0\u884c\u5728\u88f8\u91d1\u5c5e\u673a\u3001\u865a\u62df\u673a\u3001\u5927\u591a\u6570\u4e91\u73af\u5883\u7b49\u3002\u5b83\u652f\u6301\u4f17\u591a Kubernetes \u7248\u672c\u548c\u63d2\u4ef6\uff0c\u53ef\u4ee5\u5b8c\u6210\u96c6\u7fa4\u4ece 0 \u5230 1 \u7684\u642d\u5efa\u548c\u914d\u7f6e\uff0c\u4e5f\u5305\u542b\u96c6\u7fa4\u751f\u547d\u5468\u671f\u7684\u7ef4\u62a4\uff0c\u4f7f\u7528\u65b9\u5f0f\u975e\u5e38\u7075\u6d3b\u3002
Kubean \u57fa\u4e8e Kubespray\uff0c\u62e5\u6709 Kubespray \u6240\u6709\u4f18\u52bf\u3002\u5e76\u4e14 Kubean \u5f15\u7528 Operator \u6982\u5ff5\u4ee5\u5b9e\u73b0\u5b8c\u5168\u4e91\u539f\u751f\u5316\uff0c\u539f\u751f\u4ee5\u5bb9\u5668\u65b9\u5f0f\u8fd0\u884c\uff0c\u63d0\u4f9b Helm Chart \u5305\u8fdb\u884c\u5feb\u901f\u90e8\u7f72\u3002
Kubespray \u4ec5\u5728\u53c2\u6570\u7ea7\u522b\u4e0a\u652f\u6301\u79bb\u7ebf\uff0c\u5e76\u6ca1\u6709\u5305\u542b\u4e00\u4e2a\u5b8c\u6210\u6784\u5efa\u79bb\u7ebf\u5b89\u88c5\u5305\u7684\u8fc7\u7a0b\uff0c\u6240\u4ee5\u5bf9\u4e8e\u6709\u79bb\u7ebf\u573a\u666f\u9700\u6c42\u7684\u4f7f\u7528\u8005\u6765\u8bf4\uff0c\u76f4\u63a5\u4f7f\u7528 Kubespray \u4f1a\u53d8\u5f97\u975e\u5e38\u7e41\u7410\uff0c\u8fd9\u901a\u5e38\u4f1a\u8ba9\u4ed6\u4eec\u5931\u53bb\u8010\u5fc3\u3002
Kubean \u4e0d\u4ec5\u6709\u4e00\u5957\u5b8c\u5584\u7684\u5236\u4f5c\u79bb\u7ebf\u5305\u7684\u5de5\u4f5c\u6d41\uff0c\u8fd8\u9002\u914d\u56fd\u4ea7\u4fe1\u521b\u73af\u5883\uff0c\u7b80\u5316 Kubespray \u7684\u590d\u6742\u914d\u7f6e\uff0c\u80fd\u591f\u5bf9\u96c6\u7fa4\u751f\u547d\u5468\u671f\u4ee5\u4e91\u539f\u751f\u7684\u65b9\u5f0f\u53bb\u7ba1\u7406\u3002
"},{"location":"concepts/crds/","title":"CRD \u6982\u8ff0","text":""},{"location":"concepts/crds/#cluster","title":"Cluster","text":"Kubean \u5141\u8bb8\u901a\u8fc7 custom resource definitions (CRDs) \u6765\u58f0\u660e\uff08\u552f\u4e00\u6807\u8bc6\uff09\u4e00\u4e2a Kubernetes \u96c6\u7fa4\u3002\u6240\u6709\u5bf9\u96c6\u7fa4\u7684\u64cd\u4f5c\u90fd\u57fa\u4e8e\u6b64 CRD \u91cc\u58f0\u660e\u7684\u5185\u5bb9\u3002
\u4e0b\u9762\u662f\u4e00\u4efd\u793a\u4f8b\uff0c\u5e2e\u52a9\u7406\u89e3\u4e0b\u6587\u7684\u914d\u7f6e\u9879\u8bf4\u660e\uff1a
apiVersion: kubean.io/v1alpha1\nkind: Cluster\nmetadata:\n name: cluster1-offline-demo\nspec:\n hostsConfRef:\n namespace: kubean-system\n name: cluster1-offline-demo-hosts-conf\n varsConfRef:\n namespace: kubean-system\n name: cluster1-offline-demo-vars-conf\n
"},{"location":"concepts/crds/#_1","title":"\u914d\u7f6e\u9879","text":""},{"location":"concepts/crds/#_2","title":"\u5143\u6570\u636e","text":" name
\uff1aname \u7528\u4e8e\u58f0\u660e\u4e00\u4e2a\u96c6\u7fa4\uff0c\u5168\u5c40\u552f\u4e00
"},{"location":"concepts/crds/#_3","title":"\u5c5e\u6027\u5173\u8054","text":" hostConfRef
\uff1ahostConfRef \u662f\u4e00\u4e2a ConfigMap \u8d44\u6e90\uff0c\u5b83\u7684\u5185\u5bb9\u5e94\u6ee1\u8db3 ansible inventory \u7684\u683c\u5f0f\uff0c\u5305\u542b\u96c6\u7fa4\u8282\u70b9\u4fe1\u606f\u3001\u7c7b\u578b\u5206\u7ec4\u4fe1\u606f\u3002\u5185\u5bb9\u53ef\u53c2\u8003 demo\u3002 name
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 ConfigMap \u7684\u540d\u79f0 -
namespace
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 ConfigMap \u6240\u5728\u7684\u547d\u540d\u7a7a\u95f4
-
varsConfRef
\uff1avarsConfRef \u662f\u4e00\u4e2a ConfigMap \u8d44\u6e90\uff0c\u7528\u4f5c\u521d\u59cb\u5316\u6216\u8986\u76d6 Kubespray \u4e2d\u58f0\u660e\u7684\u53d8\u91cf\u503c\u3002\u5982\u679c\u6709\u79bb\u7ebf\u9700\u6c42\uff0c\u8fd9\u5c06\u5f88\u6709\u7528\u3002\u5185\u5bb9\u53ef\u53c2\u8003 demo\u3002
name
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 ConfigMap \u7684\u540d\u79f0 -
namespace
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 ConfigMap \u6240\u5728\u7684\u547d\u540d\u7a7a\u95f4
-
sshAuthRef
\uff1asshAuthRef \u662f\u4e00\u4e2a Secret \u8d44\u6e90\uff0c\u4ec5\u5728 SSH \u79c1\u94a5\u6a21\u5f0f\u65f6\u4f7f\u7528\u3002
name
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 Secret \u540d\u79f0 namespace
\uff1a\u8868\u793a\u5176\u5f15\u7528\u7684 Secret \u6240\u5728\u7684\u547d\u540d\u7a7a\u95f4
"},{"location":"concepts/crds/#clusteroperation","title":"ClusterOperation","text":"Kubean \u5141\u8bb8\u901a\u8fc7 custom resource definitions (CRDs) \u6765\u58f0\u660e\u5bf9\u4e00\u4e2a Kubernetes \u96c6\u7fa4\u7684\u64cd\u4f5c\uff08\u90e8\u7f72\u3001\u5347\u7ea7\u7b49\uff09\uff0c\u524d\u63d0\u662f\u6b63\u786e\u5173\u8054\u4e00\u4e2a\u5df2\u7ecf\u5b9a\u4e49\u7684 Cluster CRD\u3002\u5b8c\u6210\u64cd\u4f5c\u6240\u5fc5\u8981\u7684\u4fe1\u606f\u4ece\u5176\u5173\u8054\u7684 Cluster CRD \u4e2d\u83b7\u53d6\u3002
\u4e0b\u9762\u662f\u4e00\u4efd\u793a\u4f8b\uff0c\u5e2e\u52a9\u7406\u89e3\u4e0b\u6587\u7684\u914d\u7f6e\u9879\u8bf4\u660e\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster1-demo-ops-1\nspec:\n cluster: cluster1-demo\n image: ghcr.m.daocloud.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: kubeconfig.yml\n - actionType: playbook\n action: cluster-info.yml\n
"},{"location":"concepts/crds/#_4","title":"\u914d\u7f6e\u9879","text":""},{"location":"concepts/crds/#_5","title":"\u5143\u6570\u636e","text":" name
\uff1aname \u552f\u4e00\u6807\u8bc6\u4e00\u4e2a\u5bf9\u6240\u5173\u8054\u96c6\u7fa4\u7684\u64cd\u4f5c
"},{"location":"concepts/crds/#_6","title":"\u64cd\u4f5c\u5b9a\u4e49","text":" cluster
\uff1a\u4e0e\u6b64\u64cd\u4f5c\u5173\u8054\u7684\u96c6\u7fa4\u540d\u79f0\uff0c\u5176\u503c\u4e3a Cluster CRD \u4e2d\u58f0\u660e\u7684\u540d\u79f0 image
\uff1akubespray \u955c\u50cf\u5730\u5740\uff1b\u53ef\u4ee5\u4f7f\u7528 Kubean \u4ed3\u5e93\u6784\u5efa\u7684\u955c\u50cf\uff0c\u4e5f\u53ef\u4f7f\u7528\u81ea\u884c\u6784\u5efa\u955c\u50cf actionType
\uff1a\u64cd\u4f5c\u7c7b\u578b\uff0c\u76ee\u524d\u652f\u6301\u6307\u5b9a playbook
\u6216 shell
action
\uff1a\u610f\u56fe\u6267\u884c\u7684\u64cd\u4f5c\uff0c\u76ee\u524d\u652f\u6301\u6307\u5b9a playbook \u6587\u4ef6\u7684\u8def\u5f84\u6216 shell \u547d\u4ee4 preHook
\uff1a\u524d\u7f6e\u6267\u884c\u64cd\u4f5c\uff0c\u53ef\u4ee5\u6307\u5b9a\u591a\u4e2a\uff0c\u4f8b\u5982\u53ef\u4ee5\u6d4b\u8bd5\u8282\u70b9\u8fde\u901a\u6027\u7b49 actionType
\uff1a\u540c\u4e0a action
\uff1a\u540c\u4e0a postHook
\uff1a\u540e\u7f6e\u6267\u884c\u64cd\u4f5c\uff0c\u53ef\u4ee5\u6307\u5b9a\u591a\u4e2a\uff0c\u4f8b\u5982\u53ef\u4ee5\u83b7\u53d6\u96c6\u7fa4\u72b6\u6001\u7b49 actionType
\uff1a\u540c\u4e0a action
\uff1a\u540c\u4e0a
"},{"location":"concepts/crds/#manifest","title":"Manifest","text":"Kubean \u5141\u8bb8\u901a\u8fc7 custom resource definitions (CRDs) \u6765\u8bb0\u5f55\u548c\u7ef4\u62a4\u5f53\u524d\u7248\u672c\u7684 Kubean \u4f7f\u7528\u548c\u517c\u5bb9\u7684\u7ec4\u4ef6\u3001\u5305\u53ca\u7248\u672c\uff1b\u4f7f\u7528\u8005\u4e0d\u7528\u624b\u52a8\u7f16\u5199\u6b64\u8d44\u6e90\uff0c\u7531 Kubean \u81ea\u884c\u7ef4\u62a4\u3002
\u4e0b\u9762\u662f\u4e00\u4efd\u793a\u4f8b\uff0c\u5e2e\u52a9\u7406\u89e3\u4e0b\u6587\u7684 spec \u8bf4\u660e\uff1a
apiVersion: kubean.io/v1alpha1\nkind: Manifest\nmetadata:\n name: kubeaninfomanifest-v0-4-0-rc2\nspec:\n components:\n - defaultVersion: v1.1.1\n name: cni\n versionRange:\n - v1.0.1\n - v1.1.1\n - defaultVersion: 1.6.9\n name: containerd\n versionRange:\n .......\n - 1.6.7\n - 1.6.8\n - 1.6.9\n - defaultVersion: \"\"\n name: kube\n versionRange:\n - v1.25.3\n - v1.25.2\n - v1.25.1\n ........\n - defaultVersion: v3.23.3\n name: calico\n versionRange:\n - v3.23.3\n - v3.22.4\n - v3.21.6\n - defaultVersion: v1.12.1\n name: cilium\n versionRange: []\n - defaultVersion: \"null\"\n name: etcd\n versionRange:\n - v3.5.3\n - v3.5.4\n - v3.5.5\n docker:\n - defaultVersion: \"20.10\"\n os: redhat-7\n versionRange:\n - latest\n - \"18.09\"\n - \"19.03\"\n - \"20.10\"\n - stable\n - edge\n - defaultVersion: \"20.10\"\n os: debian\n versionRange:\n - latest\n - \"18.09\"\n - \"19.03\"\n - \"20.10\"\n - stable\n - edge\n - defaultVersion: \"20.10\"\n os: ubuntu\n versionRange:\n - latest\n - \"18.09\"\n - \"19.03\"\n - \"20.10\"\n - stable\n - edge\n kubeanVersion: v0.4.0-rc2\n kubesprayVersion: c788620\n
"},{"location":"concepts/crds/#spec","title":"spec \u8bf4\u660e","text":" components
\uff1a\u955c\u50cf\u6216\u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u7248\u672c\u58f0\u660e name
\uff1a\u7ec4\u4ef6\u540d\u79f0 defaultVersion
\uff1a\u4f7f\u7528\u7684\u9ed8\u8ba4\u7248\u672c versionRange
\uff1a\u53d7\u652f\u6301\u7684\u7248\u672c\u5217\u8868 docker
\uff1aDocker \u7684\u7248\u672c\u7ba1\u7406 os
\uff1a\u53d7\u652f\u6301\u7684\u64cd\u4f5c\u7cfb\u7edf defaultVersion
\uff1a\u4f7f\u7528\u7684\u9ed8\u8ba4\u7248\u672c versionRange
\uff1a\u53d7\u652f\u6301\u7684\u7248\u672c\u5217\u8868 kubeanVersion
\uff1aKubean \u7248\u672c\u53f7 kubesprayVersion
\uff1a\u5f53\u524d Kubean \u4f9d\u8d56\u7684 Kubespray \u7248\u672c\u53f7
"},{"location":"concepts/crds/#localartifact","title":"LocalArtifact","text":"Kubean \u5141\u8bb8\u901a\u8fc7 custom resource definitions (CRDs) \u6765\u8bb0\u5f55\u79bb\u7ebf\u5305\u652f\u6301\u7684\u7ec4\u4ef6\u53ca\u7248\u672c\u4fe1\u606f\uff1b\u4f7f\u7528\u8005\u4e0d\u7528\u624b\u52a8\u7f16\u5199\u6b64\u8d44\u6e90\uff0c\u7531 Kubean \u81ea\u884c\u7ef4\u62a4\u3002
\u4e0b\u9762\u662f\u4e00\u4efd\u793a\u4f8b\uff0c\u5e2e\u52a9\u7406\u89e3\u4e0b\u6587\u7684 spec \u8bf4\u660e\uff1a
apiVersion: kubean.io/v1alpha1\nkind: LocalArtifactSet\nmetadata:\n name: \"localartifactset-1709796014\"\n labels:\n kubean.io/sprayRelease: master\nspec:\n kubespray: \"989ba207e9da2e1364f375450561d08af80c8535\"\n items:\n - name: cilium\n versionRange:\n - \"v1.13.4\"\n - name: flannel\n versionRange:\n - \"v0.22.0\"\n - name: kube_ovn\n versionRange:\n - \"v1.11.5\"\n - name: runc\n versionRange:\n - \"v1.1.12\"\n - name: kube\n versionRange:\n - \"v1.1.12\"\n - name: cni\n versionRange:\n - \"v1.3.0\"\n - name: calico\n versionRange:\n - \"v3.26.4\"\n - name: containerd\n versionRange:\n - \"1.7.13\"\n
"},{"location":"concepts/crds/#spec_1","title":"spec \u8bf4\u660e","text":" arch
\uff1a\u53d7\u652f\u6301\u7684 CPU \u6307\u4ee4\u96c6\u67b6\u6784\u5217\u8868 kubespray
\uff1a\u4f7f\u7528\u7684 Kubespray \u7248\u672c docker
\uff1aDocker \u7248\u672c\u7ba1\u7406 os
\uff1aDocker \u53d7\u652f\u6301\u7684\u64cd\u4f5c\u7cfb\u7edf\u7c7b\u578b versionRange
\uff1a\u53d7\u652f\u6301\u7684 Docker \u7248\u672c\u5217\u8868 items
\uff1a\u5176\u4ed6\u7ec4\u4ef6\u7248\u672c\u7ba1\u7406 name
\uff1a\u7ec4\u4ef6\u540d\u79f0 versionRange
\uff1a\u8be5\u7ec4\u4ef6\u53d7\u652f\u6301\u7684\u7248\u672c\u5217\u8868
"},{"location":"concepts/custom_action/","title":"\u81ea\u5b9a\u4e49 Action","text":""},{"location":"concepts/custom_action/#_1","title":"\u52a8\u673a","text":"\u5bf9\u4e8e\u4f7f\u7528\u8005\u6765\u8bb2\uff0cKubean \u548c Kubesprary \u7684\u4ea7\u7269\u90fd\u662f OCI \u955c\u50cf\u3001Helm Chart \u53ca K8s manifest\u3002 \u5728\u5df2\u62ff\u5230\u8fd9\u4e9b\u4ea7\u7269\u7684\u60c5\u51b5\u4e0b\u8981\u81ea\u5b9a\u4e49\u4e00\u4e9b\u64cd\u4f5c\uff0c\u4e5f\u80fd\u505a\u5230\uff0c\u4f46\u662f\u4f1a\u6bd4\u8f83\u590d\u6742\uff0c\u9700\u8981\u624b\u52a8\u4fee\u6539\u4e0d\u5c11\u7684\u914d\u7f6e\u3002\u5e0c\u671b\u80fd\u591f\u7b80\u5316\u8fd9\u4e00\u8fc7\u7a0b\u3002
"},{"location":"concepts/custom_action/#_2","title":"\u76ee\u6807","text":"\u63d0\u4f9b\u4e00\u79cd\u4fbf\u6377\u7684\u65b9\u5f0f\u80fd\u591f\u8ba9\u4f7f\u7528\u8005\u4f7f\u7528\u4e00\u4e9b\u81ea\u5b9a\u4e49\u7684\u64cd\u4f5c\u6765\u67e5\u770b\u3001\u4fee\u6539\u548c\u63a7\u5236\u96c6\u7fa4\u8282\u70b9\u7684\u72b6\u6001\u3002
"},{"location":"concepts/custom_action/#crd","title":"CRD \u8bbe\u8ba1","text":" -
\u589e\u52a0 ActionSource \u5b57\u6bb5\u4ee5\u58f0\u660e Action \u6765\u6e90\uff0c\u5176\u503c\u76ee\u524d\u652f\u6301\uff1a
-
builtin\uff08\u7f3a\u7701\u503c\uff09
\u8868\u660e\u4f7f\u7528 kubean \u5185\u5efa ansible playbook \u6216\u5728 manifest \u5185\u8054\u7684 shell \u811a\u672c
-
configmap
\u8868\u660e\u9700\u8981\u7684 ansible playbook \u6216 shell \u811a\u672c\u901a\u8fc7 \u5f15\u7528 K8s configmap \u6765\u83b7\u53d6
-
\u589e\u52a0 ActionSourceRef \u5b57\u6bb5\u4ee5\u58f0\u660e\u5f53 ActionSource \u503c\u4e3a configmap \u65f6\u6240\u5f15\u7528\u7684\u8d44\u6e90\u5bf9\u8c61\uff0c\u4e14\u4ec5\u5f53 ActionSource \u4e3a configmap \u65f6\u6b64\u5b57\u6bb5\u624d\u751f\u6548\uff0c\u5176\u683c\u5f0f\u4e3a\uff1a
actionSourceRef:\n name: <configmap name>\n namespace: <namespace of configmap>\n
\u914d\u7f6e\u793a\u4f8b\uff1a
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: cluster1-demo-myaction\n namespace: kubean-system\ndata:\n myplaybook.yml: |\n - hosts: k8s_cluster\n gather_facts: false\n become: yes\n any_errors_fatal: \"{{ any_errors_fatal | default(true) }}\"\n tasks:\n - name: Print inventory hostname\n debug:\n msg: \"inventory_hostname is {{ inventory_hostname }}\"\n hello.sh: |\n echo \"hello world!\"\n---\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster1-demo-ops-1\nspec:\n cluster: cluster1-demo\n image: ghcr.io/kubean-io/spray-job:latest\n actionType: playbook\n action: myplaybook.yml\n actionSource: configmap\n actionSourceRef:\n name: cluster1-demo-myaction\n namespace: kubean-system\n preHook:\n - actionType: shell\n action: hello.sh\n actionSource: configmap\n actionSourceRef:\n name: cluster1-demo-myaction\n namespace: kubean-system\n
"},{"location":"concepts/theory_of_airgapped_package/","title":"\u79bb\u7ebf\u5b89\u88c5\u5305\u7684\u539f\u7406","text":"Kubean CI \u6784\u5efa\u4fbf\u4e8e\u5728\u79bb\u7ebf\u73af\u5883\u4e2d\u5b89\u88c5 Kubernetes \u7684\u79bb\u7ebf\u6587\u4ef6\u3002
\u6ce8\uff1a\u6709\u5173\u5982\u4f55\u4f7f\u7528\u79bb\u7ebf\u6587\u4ef6\uff0c\u8bf7\u53c2\u9605\u79bb\u7ebf\u573a\u666f\u7684\u4f7f\u7528\u3002
\u672c\u9875\u8bf4\u660e\u79bb\u7ebf\u6587\u4ef6\u5305\u7684\u6784\u5efa\u539f\u7406\u3002
- \u53d1\u7248\u9875\u9762\uff1aGithub Releases
- \u4e3b\u8981\u5305\u542b\uff1a
\u6587\u4ef6\u5305 \u63cf\u8ff0 files-*.tar.gz Kubespray \u5b89\u88c5\u6240\u9700\u7684\u4e8c\u8fdb\u5236\u6587\u4ef6\uff1akubeadm\u3001runc images-*.tar.gz K8s \u96c6\u7fa4\u955c\u50cf\u548c CNI \u955c\u50cf os-pkgs-${linux_distribution}-${tag}.tar.gz K8s \u5b89\u88c5\u671f\u95f4\u6240\u9700\u7684 deb/rpm"},{"location":"concepts/theory_of_airgapped_package/#_2","title":"\u5982\u4f55\u6784\u5efa\u79bb\u7ebf\u6587\u4ef6","text":" -
\u955c\u50cf\u548c\u4e8c\u8fdb\u5236\u6587\u4ef6
\u7c7b\u4f3c Kubespray \u79bb\u7ebf\u90e8\u7f72\u6307\u5357\u6240\u8ff0\uff0c Kubespray \u63d0\u4f9b\u4e86\u4e00\u4e9b\u811a\u672c\u6765\u751f\u6210\u955c\u50cf\u548c\u4e8c\u8fdb\u5236\u6587\u4ef6\u5217\u8868\uff08\u611f\u8c22 Kubespray\uff01\uff09
\u5f97\u76ca\u4e8e Kubespray \u751f\u6210\u4e8c\u8fdb\u5236\u548c\u955c\u50cf\u5217\u8868\u7684\u811a\u672c\uff0c \u6211\u4eec\u53ef\u4ee5\u4f7f\u7528 manage-offline-files.sh \u4e0b\u8f7d\u8fd9\u4e9b\u4e8c\u8fdb\u5236\u6587\u4ef6\u548c\u955c\u50cf\u3002 \u968f\u540e Kubean \u63d0\u4f9b\u4e86 call-offline-build.yaml\uff08Github Action \u811a\u672c\uff09 \u5c06\u6240\u6709\u8fd9\u4e9b\u878d\u5408\u4e8e\u4e00\u8d77\u3002
-
os-packages (deb/rpm)
\u5728 K8s \u5b89\u88c5\u671f\u95f4\uff0c\u6709\u4e9b\u6587\u4ef6\u5305\u4e0d\u4f1a\u968f\u4e8c\u8fdb\u5236\u6587\u4ef6\u4e00\u8d77\u5b89\u88c5\uff0c\u56e0\u6b64\u6211\u4eec\u5fc5\u987b\u901a\u8fc7 deb/rpm \u6765\u5b89\u88c5\u8fd9\u4e9b\u6587\u4ef6\u5305\u3002 os packages \u5217\u8868\u5b9a\u4e49\u4e86\u6240\u6d89\u53ca\u7684\u6587\u4ef6\u5305\u3002
Github Action \u5c06\u901a\u8fc7 dnf/apt
\u6784\u5efa\u4e0d\u540c\u64cd\u4f5c\u7cfb\u7edf\u7684\u6587\u4ef6\u5305\uff08\u4f8b\u5982 Qemu\uff09\uff0c\u4fbf\u4e8e\u4e0b\u8f7d\u548c\u5f52\u6863 RPM/DEB \u5305\u3002
-
CI \u6d41\u7a0b
\u79bb\u7ebf\u6587\u4ef6\u5305\u7531 Github Action \u811a\u672c\u751f\u6210\u548c\u7ba1\u7406\u3002
"},{"location":"develop/roadmap/","title":"Kubean \u8def\u7ebf\u56fe","text":"\u5f53\u524d\u7684 Roadmap \u662f\u6682\u65f6\u7684\uff0c\u5177\u4f53\u7684\u65f6\u95f4\u8868\u4ee5\u793e\u533a\u9700\u8981\u800c\u5b9a\u3002
\u5728 Roadmap \u4e2d\u672a\u63d0\u53ca\u7684\u529f\u80fd\u7279\u6027, \u6211\u4eec\u53ef\u4ee5\u5728 issues \u4e2d\u8ba8\u8bba.
"},{"location":"develop/roadmap/#q3-2022","title":"Q3 2022","text":" - \u8bbe\u8ba1 Kubean \u9879\u76ee\u67b6\u6784\u6d41\u7a0b architecture.md
- \u9a8c\u8bc1 Kubean \u7684\u96c6\u7fa4\u751f\u547d\u5468\u671f\u7ba1\u7406\u64cd\u4f5c
- \u6dfb\u52a0\u7cfb\u7edf\u5305\u6784\u5efa CI https://github.com/kubean-io/kubean/pull/62
- \u63d0\u4f9b Kubean API https://github.com/kubean-io/kubean/pull/128
"},{"location":"develop/roadmap/#q4-2022","title":"Q4 2022","text":" - E2E tests kubean test case
- k8s \u955c\u50cf\u53ca\u4e8c\u8fdb\u5236\u5305\u652f\u6301 arm \u67b6\u6784 https://github.com/kubean-io/kubean/pull/200
- \u652f\u6301\u5347\u7ea7\u5305\u6784\u5efa https://github.com/kubean-io/kubean/pull/289
- \u79bb\u7ebf\u573a\u666f RHEL8.4 \u90e8\u7f72\u9002\u914d https://github.com/kubean-io/kubean/pull/325
- \u652f\u6301\u8fd8\u539f\u7cfb\u7edf\u5305\u7ba1\u7406\u914d\u7f6e https://github.com/kubean-io/kubean/pull/298
- \u652f\u6301\u96c6\u7fa4\u90e8\u7f72\u5b8c\u540e\u56de\u4f20 Kubeconfig https://github.com/kubean-io/kubean/pull/192
- \u589e\u52a0 SSH Key \u8ba4\u8bc1\u90e8\u7f72\u65b9\u5f0f https://github.com/kubean-io/kubean/pull/302
"},{"location":"develop/roadmap/#q1-2023","title":"Q1 2023","text":" - \u652f\u6301 apt \u7cfb\u7edf\u5305\u7ba1\u7406\u914d\u7f6e https://github.com/kubean-io/kubean/pull/459
- Cluster Operation CRD \u652f\u6301\u81ea\u5b9a\u4e49 Action https://github.com/kubean-io/kubean/issues/361
- Kubean Chart \u652f\u6301 Charts Syncer https://github.com/kubean-io/kubean/pull/468
- \u652f\u6301 Pre check \u90e8\u7f72\u524d\u7684\u9884\u68c0\u6d4b https://github.com/kubean-io/kubean/pull/555
- \u7edf\u4fe1 UOS 1020a \u7cfb\u7edf\u5305\u9002\u914d https://github.com/kubean-io/kubean/pull/583
"},{"location":"develop/roadmap/#q2-2023","title":"Q2 2023","text":" - \u652f\u6301\u57fa\u4e8e OpenEuler \u79bb\u7ebf\u573a\u666f\u7684\u96c6\u7fa4\u90e8\u7f72 https://github.com/kubean-io/kubean/pull/628
- \u652f\u6301 Other Linux \u901a\u8fc7\u811a\u672c\u81ea\u4e3b\u6784\u5efa\u79bb\u7ebf\u573a\u666f\u4f9d\u8d56\u7684\u7cfb\u7edf\u5305 https://github.com/kubean-io/kubean/pull/627
- \u4f7f\u7528 mkdocs \u66f4\u65b0 kubean \u6587\u6863\u7ad9 https://github.com/kubean-io/kubean/pull/728
- \u4f18\u5316 release \u53d1\u7248 CI https://github.com/kubean-io/kubean/pull/863
- \u65b0\u589e\u5173\u4e8e\u8bc1\u4e66\u66f4\u65b0\u7684 ansible \u5267\u672c https://github.com/kubean-io/kubean/pull/884
- \u66f4\u65b0 release \u53d1\u7248\u6d41\u7a0b https://github.com/kubean-io/kubean/pull/869
"},{"location":"develop/roadmap/#q3-2023","title":"Q3 2023","text":" - \u6dfb\u52a0\u8bc1\u4e66\u66f4\u65b0\u5267\u672c https://github.com/kubean-io/kubean/pull/884
- \u65b0\u589e\u6d41\u6c34\u7ebf\u5bf9\u4e0a\u6e38 kubespray \u6700\u65b0\u7248\u672c\u7684\u6bcf\u65e5\u90e8\u7f72\u9a8c\u8bc1 https://github.com/kubean-io/kubean/pull/870
- \u786e\u4fdd Cluster \u8d44\u6e90\u7684\u7ea7\u8054\u5220\u9664 https://github.com/kubean-io/kubean/pull/918
- \u4e3a ClusterOperation \u8bb0\u5f55\u6dfb\u52a0\u6e05\u9664\u6743\u91cd https://github.com/kubean-io/kubean/pull/983
"},{"location":"develop/roadmap/#q4-2023","title":"Q4 2023","text":" - \u4f18\u5316\u955c\u50cf\u79bb\u7ebf\u5305\u4e3a OCI \u683c\u5f0f https://github.com/kubean-io/kubean/pull/996
- \u4f18\u5316 Operator \u7684\u65e5\u5fd7\u8f93\u5165 https://github.com/kubean-io/kubean/pull/1032
- \u63d0\u9ad8 Manifest \u8d44\u6e90\u7684\u67e5\u8be2\u6548\u7387 https://github.com/kubean-io/kubean/pull/1036
- \u91cd\u6784\u955c\u50cf\u5bfc\u5165\u811a\u672c\uff0c\u4f7f\u5176\u652f\u6301\u591a\u67b6\u6784\u5bfc\u5165 https://github.com/kubean-io/kubean/pull/1040
"},{"location":"develop/roadmap/#q1-2024","title":"Q1 2024","text":" - \u63d0\u9ad8 precheck \u5267\u672c\u7684\u6267\u884c\u6548\u7387 https://github.com/kubean-io/kubean/pull/1076
- \u4f18\u5316 ClusterOperation \u7684\u8c03\u8c10\u6027\u80fd https://github.com/kubean-io/kubean/pull/1082
- \u91cd\u6784\u81ea\u5b9a\u4e49\u8d44\u6e90\u751f\u6210\u811a\u672c\u903b\u8f91 https://github.com/kubean-io/kubean/pull/1152
- \u4fee\u590d ubuntu18.04 \u79bb\u7ebf\u5305\u7248\u672c\u95ee\u9898 https://github.com/kubean-io/kubean/pull/1158
- \u81ea\u52a8\u5316 docker \u9650\u5236\u5355\u5bb9\u5668\u78c1\u76d8\u5360\u7528\u7684\u524d\u7f6e\u6b65\u9aa4 https://github.com/kubean-io/kubean/pull/1179
"},{"location":"develop/roadmap/#q2-2024","title":"Q2 2024","text":" - \u63d0\u4f9b\u5ba2\u6237\u7aef\u547d\u4ee4\u884c\u5de5\u5177\uff0c\u53ca\u4fbf\u6377\u7684\u81ea\u5b9a\u4e49\u8d44\u6e90\u6a21\u5757\u751f\u6210\u65b9\u5f0f
- \u4e0d\u540c\u8282\u70b9\u89c4\u6a21\u96c6\u7fa4\u90e8\u7f72\u7684\u5bb9\u91cf\u89c4\u5212
- \u63d0\u4f9b\u5b8c\u6574\u7684\u79bb\u7ebf\u8d44\u6e90\u7ba1\u7406\u65b9\u6848
- \u652f\u6301\u591a\u79cd\u751f\u547d\u5468\u671f\u7ba1\u7406\u5f15\u64ce\uff0c\u6bd4\u5982kubespray\u3001kubekey
- \u652f\u6301\u57fa\u4e8e ostree \u7684\u96c6\u7fa4\u64cd\u4f5c\u56de\u6eda
"},{"location":"releases/artifacts/","title":"Artifacts","text":""},{"location":"releases/artifacts/#release-224","title":"\u25b6\ufe0f release-2.24","text":"\u2693 kube_version range: [ v1.26.0 ~ v1.29.1 ]
Commit Date Artifacts \ud83d\udcc5 2024-07-29 07:00:34 \ud83d\udcdd manifest-2.24-1688e05.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.24-1688e05
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.24-1688e05
\ud83d\udcc5 2024-06-11 07:55:11 \ud83d\udcdd manifest-2.24-5377247.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.24-5377247
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.24-5377247
\ud83d\udcc5 2024-03-07 15:59:09 \ud83d\udcdd manifest-2.24-bc6bd21.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.24-bc6bd21
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.24-bc6bd21
"},{"location":"releases/artifacts/#release-222","title":"\u25b6\ufe0f release-2.22","text":"\u2693 kube_version range: [ v1.24.0 ~ v1.26.13 ]
Commit Date Artifacts \ud83d\udcc5 2024-02-07 19:59:36 \ud83d\udcdd manifest-2.22-71b6fa1.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.22-71b6fa1
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.22-71b6fa1
\ud83d\udcc5 2024-01-22 16:23:42 \ud83d\udcdd manifest-2.22-d8a8fb0.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.22-d8a8fb0
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.22-d8a8fb0
\ud83d\udcc5 2024-01-11 13:59:56 \ud83d\udcdd manifest-2.22-774d824.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.22-774d824
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.22-774d824
"},{"location":"releases/artifacts/#release-223","title":"\u25b6\ufe0f release-2.23","text":"\u2693 kube_version range: [ v1.25.0 ~ v1.27.10 ]
Commit Date Artifacts \ud83d\udcc5 2024-05-03 09:20:40 \ud83d\udcdd manifest-2.23-e5fc8a9.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.23-e5fc8a9
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.23-e5fc8a9
\ud83d\udcc5 2024-02-06 14:06:16 \ud83d\udcdd manifest-2.23-07e19e5.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.23-07e19e5
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.23-07e19e5
\ud83d\udcc5 2023-12-13 10:30:18 \ud83d\udcdd manifest-2.23-e4be213.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.23-e4be213
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.23-e4be213
"},{"location":"releases/artifacts/#release-221","title":"\u25b6\ufe0f release-2.21","text":"\u2693 kube_version range: [ v1.23.0 ~ v1.25.6 ]
Commit Date Artifacts \ud83d\udcc5 2024-01-22 16:13:31 \ud83d\udcdd manifest-2.21-e86c0cf.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.21-e86c0cf
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.21-e86c0cf
\ud83d\udcc5 2024-01-12 07:28:51 \ud83d\udcdd manifest-2.21-e4ac3ab.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.21-e4ac3ab
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.21-e4ac3ab
"},{"location":"releases/artifacts/#release-225","title":"\u25b6\ufe0f release-2.25","text":"\u2693 kube_version range: [ v1.27.0 ~ v1.29.5 ]
Commit Date Artifacts \ud83d\udcc5 2024-07-15 06:11:10 \ud83d\udcdd manifest-2.25-462e68b.yml
\ud83d\udce6 ghcr.io/kubean-io/spray-job:2.25-462e68b
\ud83d\udce6 ghcr.io/kubean-io/airgap-patch:2.25-462e68b
"},{"location":"releases/v0.10.0/","title":"V0.10.0","text":""},{"location":"releases/v0.10.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.10.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - sync chart to release.daocloud.io by @hangscer8 in https://github.com/kubean-io/kubean/pull/991
- fix upload charts to release.daocloud.io by @hangscer8 in https://github.com/kubean-io/kubean/pull/992
- Change image artifact to OCI format by @tu1h in https://github.com/kubean-io/kubean/pull/996
- Optimize file handle logic by @Rei1010 in https://github.com/kubean-io/kubean/pull/998
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/997
- Optimize file import logic by @Rei1010 in https://github.com/kubean-io/kubean/pull/1000
- Allow etcd hosts in some playbooks by @tu1h in https://github.com/kubean-io/kubean/pull/1001
- Allow etcd hosts in playbook remove-pkgs by @tu1h in https://github.com/kubean-io/kubean/pull/1002
- Bump kubespray by @tu1h in https://github.com/kubean-io/kubean/pull/1003
- spray artifact patch by @tu1h in https://github.com/kubean-io/kubean/pull/1005
- Fix kubespray image build compatibility by @tu1h in https://github.com/kubean-io/kubean/pull/1006
- Update airgap patch by @ErikJiang in https://github.com/kubean-io/kubean/pull/1004
- make kubespray download files compatible by @tu1h in https://github.com/kubean-io/kubean/pull/1007
- Fixing airgap-patch image build issues by @ErikJiang in https://github.com/kubean-io/kubean/pull/1008
- fix upload assets greater than 2 GiB issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/1009
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.9.3...v0.10.0
"},{"location":"releases/v0.11.0/","title":"V0.11.0","text":""},{"location":"releases/v0.11.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.11.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/setup-qemu-action from 2 to 3 by @dependabot in https://github.com/kubean-io/kubean/pull/1019
- Bump mikefarah/yq from 4.33.3 to 4.40.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1018
- Bump docker/build-push-action from 4.1.1 to 5.1.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1017
- Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1016
- Bump docker/login-action from 2 to 3 by @dependabot in https://github.com/kubean-io/kubean/pull/1015
- Bump docker/setup-buildx-action from 2.7.0 to 3.0.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1028
- Bump mikefarah/yq from 4.40.2 to 4.40.4 by @dependabot in https://github.com/kubean-io/kubean/pull/1041
- Bump actions/labeler from 4 to 5 by @dependabot in https://github.com/kubean-io/kubean/pull/1042
- Bump actions/setup-python from 4 to 5 by @dependabot in https://github.com/kubean-io/kubean/pull/1046
- Bump mikefarah/yq from 4.40.4 to 4.40.5 by @dependabot in https://github.com/kubean-io/kubean/pull/1052
- Bump actions/setup-go from 4 to 5 by @dependabot in https://github.com/kubean-io/kubean/pull/1047
"},{"location":"releases/v0.11.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - add kubespray commit timestamp by @ErikJiang in https://github.com/kubean-io/kubean/pull/1010
- clean debug info for manual CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/1011
- update kubespray artifact patch CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/1012
- fix rebuild kubespray image issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/1013
- clean manifest dir by @ErikJiang in https://github.com/kubean-io/kubean/pull/1014
- update artifact patch md by @ErikJiang in https://github.com/kubean-io/kubean/pull/1024
- Revert \"Bump actions/checkout from 3 to 4\" by @ErikJiang in https://github.com/kubean-io/kubean/pull/1026
- Refactor controllers of Manifest and Localartifact by @tu1h in https://github.com/kubean-io/kubean/pull/1025
- update airgap patch docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1029
- fix airgap dockerfile issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/1030
- Enhancement log print by @tu1h in https://github.com/kubean-io/kubean/pull/1032
- Fix bump version failed by @Rei1010 in https://github.com/kubean-io/kubean/pull/1035
- Optimize manifest lookup overhead by @tu1h in https://github.com/kubean-io/kubean/pull/1036
- Add unit test by @tu1h in https://github.com/kubean-io/kubean/pull/1038
- Refactor import images script to support merge multi-platform image by @tu1h in https://github.com/kubean-io/kubean/pull/1040
- Allows using the airgap patch script to generate full offline packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/1033
- refine airgap demo by @ErikJiang in https://github.com/kubean-io/kubean/pull/1043
- Fix e2e failure since incompatible image-importing script by @tu1h in https://github.com/kubean-io/kubean/pull/1044
- Update CNCF image in README by @tu1h in https://github.com/kubean-io/kubean/pull/1048
- Fix nop-copy in code generation by @tu1h in https://github.com/kubean-io/kubean/pull/1051
- Fix upstream breaking-change #10626 by @tu1h in https://github.com/kubean-io/kubean/pull/1050
- Revert \"Bump actions/setup-go from 4 to 5\" by @ErikJiang in https://github.com/kubean-io/kubean/pull/1053
- update kubespray commit by @ErikJiang in https://github.com/kubean-io/kubean/pull/1045
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.10.0...v0.11.0
"},{"location":"releases/v0.11.1/","title":"V0.11.1","text":""},{"location":"releases/v0.11.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.11.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Add unit test cases by @tu1h in https://github.com/kubean-io/kubean/pull/1061
- Adjust support matrix permission by @Rei1010 in https://github.com/kubean-io/kubean/pull/1063
- set default flag for airgap full mode by @ErikJiang in https://github.com/kubean-io/kubean/pull/1064
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.11.0...v0.11.1
"},{"location":"releases/v0.11.2/","title":"V0.11.2","text":""},{"location":"releases/v0.11.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.11.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1065
- Fix e2e when upgrade cluster by @tu1h in https://github.com/kubean-io/kubean/pull/1066
- Restore image address by @ErikJiang in https://github.com/kubean-io/kubean/pull/1067
- update binaries url by @ErikJiang in https://github.com/kubean-io/kubean/pull/1068
- clear old airgap data in dockerfile by @ErikJiang in https://github.com/kubean-io/kubean/pull/1069
- update airgap scripts by @ErikJiang in https://github.com/kubean-io/kubean/pull/1070
- update release latest status by @ErikJiang in https://github.com/kubean-io/kubean/pull/1071
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.11.1...v0.11.2
"},{"location":"releases/v0.12.0/","title":"V0.12.0","text":""},{"location":"releases/v0.12.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.12.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Remove building and uses of kubespray latest tag by @tu1h in https://github.com/kubean-io/kubean/pull/1073
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1072
- Get correct kubespray version in e2e by @tu1h in https://github.com/kubean-io/kubean/pull/1074
- Add playbook for kube-vip configuration by @tu1h in https://github.com/kubean-io/kubean/pull/1075
- Improve execution efficiency for precheck playbook by @tu1h in https://github.com/kubean-io/kubean/pull/1076
- Bump kubespray by @tu1h in https://github.com/kubean-io/kubean/pull/1077
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.11.2...v0.12.0
"},{"location":"releases/v0.12.1/","title":"V0.12.1","text":""},{"location":"releases/v0.12.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.12.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - get pause image tag by @ErikJiang in https://github.com/kubean-io/kubean/pull/1080
- Optimize clusteroperation reconcile by @tu1h in https://github.com/kubean-io/kubean/pull/1082
- Add new playbook into whitelist by @tu1h in https://github.com/kubean-io/kubean/pull/1081
- [zh-cn] update offline build script describe by @my-git9 in https://github.com/kubean-io/kubean/pull/1062
- Patch for #1076 - cancel gather fact in playbook level by @tu1h in https://github.com/kubean-io/kubean/pull/1083
- Fix coredns image version mismatch by @ErikJiang in https://github.com/kubean-io/kubean/pull/1084
- fixed crictl binary version mismatch by @ErikJiang in https://github.com/kubean-io/kubean/pull/1085
- update denpendencies url by @ErikJiang in https://github.com/kubean-io/kubean/pull/1086
- add project for harbor by @ErikJiang in https://github.com/kubean-io/kubean/pull/1087
- Bump kubespray by @tu1h in https://github.com/kubean-io/kubean/pull/1088
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.12.0...v0.12.1
"},{"location":"releases/v0.12.2/","title":"V0.12.2","text":""},{"location":"releases/v0.12.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.12.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Fix verify Kubespray e2e by @tu1h in https://github.com/kubean-io/kubean/pull/1094
- Fix verify Kubespray e2e in cluster reset step by @tu1h in https://github.com/kubean-io/kubean/pull/1095
- migrate old version localArtifactSet by @ErikJiang in https://github.com/kubean-io/kubean/pull/1096
- enhance quick start gif by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1098
- add podman for offline e2e by @ErikJiang in https://github.com/kubean-io/kubean/pull/1099
- fix missing version_lt function by @ErikJiang in https://github.com/kubean-io/kubean/pull/1100
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1078
- Refine kube vip playbook by @tu1h in https://github.com/kubean-io/kubean/pull/1101
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.12.1...v0.12.2
"},{"location":"releases/v0.12.3/","title":"V0.12.3","text":""},{"location":"releases/v0.12.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.12.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [cherry-pick] Add Rockylinux support by @tu1h in https://github.com/kubean-io/kubean/pull/1129
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.12.2...v0.12.3
"},{"location":"releases/v0.13.0/","title":"V0.13.0","text":""},{"location":"releases/v0.13.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Unrestrict kubeproxy mode for kubevip playbook by @tu1h in https://github.com/kubean-io/kubean/pull/1106
- update spray version to 0dbde75 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1107
- remove cd step in release ci and change workflows name by @ErikJiang in https://github.com/kubean-io/kubean/pull/1105
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.12.2...v0.13.0
"},{"location":"releases/v0.13.1/","title":"V0.13.1","text":""},{"location":"releases/v0.13.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.1/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/onsi/gomega from 1.27.6 to 1.31.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1091
- Bump actions/cache from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1089
- Bump actions/upload-artifact from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1057
- Bump actions/download-artifact from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1056
"},{"location":"releases/v0.13.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Add Rockylinux 9 support by @tu1h in https://github.com/kubean-io/kubean/pull/1104
- Bump default E2E Kubernetes version by @Rei1010 in https://github.com/kubean-io/kubean/pull/1108
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1102
- Revert \"Bump github.com/onsi/gomega from 1.27.6 to 1.31.1\" by @tu1h in https://github.com/kubean-io/kubean/pull/1109
- update kubespray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1112
- add concurrency policy for PR CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/1113
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.0...v0.13.1
"},{"location":"releases/v0.13.10/","title":"V0.13.10","text":""},{"location":"releases/v0.13.10/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.10/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/setup-buildx-action from 3.2.0 to 3.3.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1197
- Bump peaceiris/actions-gh-pages from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1200
"},{"location":"releases/v0.13.10/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1193
- Reconstruct the daily e2e test structure and add automatic retry of e2e tests by @FloatXD in https://github.com/kubean-io/kubean/pull/1194
- add panpan0000 as maintainer. by @panpan0000 in https://github.com/kubean-io/kubean/pull/1196
- update roadmap for Q2 2024 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1195
- update sonobouy_e2e CONTAINER_TAG by @FloatXD in https://github.com/kubean-io/kubean/pull/1198
- Update README.md by @wawa0210 in https://github.com/kubean-io/kubean/pull/1199
- rollback kubespray version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1202
"},{"location":"releases/v0.13.10/#new-contributors","title":"New Contributors","text":" - @FloatXD made their first contribution in https://github.com/kubean-io/kubean/pull/1194
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.14.0...v0.13.10
"},{"location":"releases/v0.13.11/","title":"V0.13.11","text":""},{"location":"releases/v0.13.11/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.11/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1203
- Support multi-arch for Ubuntu ospkg by @tu1h in https://github.com/kubean-io/kubean/pull/1204
- Update MAINTAINERS by @tu1h in https://github.com/kubean-io/kubean/pull/1205
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.10...v0.13.11
"},{"location":"releases/v0.13.2/","title":"V0.13.2","text":""},{"location":"releases/v0.13.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1115
- add stale workflow by @ErikJiang in https://github.com/kubean-io/kubean/pull/1116
- Remove kubectl get version option by @Rei1010 in https://github.com/kubean-io/kubean/pull/1117
- Bump offline E2E Kubernetes version by @Rei1010 in https://github.com/kubean-io/kubean/pull/1122
- Bump offline E2E Kubernetes version to 1.27.5 by @Rei1010 in https://github.com/kubean-io/kubean/pull/1128
- Enhance Kubean chart helper template by @tu1h in https://github.com/kubean-io/kubean/pull/1132
- Bump docker-containerd to 1.6.28 for ospkgs by @tu1h in https://github.com/kubean-io/kubean/pull/1131
- Correct the downloads info generation by @tu1h in https://github.com/kubean-io/kubean/pull/1134
- fix kube_version empty by @ErikJiang in https://github.com/kubean-io/kubean/pull/1136
- update verify tag by @ErikJiang in https://github.com/kubean-io/kubean/pull/1137
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.1...v0.13.2
"},{"location":"releases/v0.13.3/","title":"V0.13.3","text":""},{"location":"releases/v0.13.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix empty images list file by @ErikJiang in https://github.com/kubean-io/kubean/pull/1138
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.2...v0.13.3
"},{"location":"releases/v0.13.4/","title":"V0.13.4","text":""},{"location":"releases/v0.13.4/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.4/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.40.5 to 4.42.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1135
- Bump docker/setup-buildx-action from 3.0.0 to 3.1.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1141
"},{"location":"releases/v0.13.4/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - add runc component version info by @ErikJiang in https://github.com/kubean-io/kubean/pull/1139
- add runc key in template by @ErikJiang in https://github.com/kubean-io/kubean/pull/1140
- Bump Offline E2E by @Rei1010 in https://github.com/kubean-io/kubean/pull/1133
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1130
- Fix E2E Failure by @Rei1010 in https://github.com/kubean-io/kubean/pull/1143
- remove pause version function by @ErikJiang in https://github.com/kubean-io/kubean/pull/1144
- Remove etcd from optional component version information by @ErikJiang in https://github.com/kubean-io/kubean/pull/1146
- add docker version 24.0 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1145
- Remove etcd version multi-select information from custom resources by @ErikJiang in https://github.com/kubean-io/kubean/pull/1147
- Fix container-selinux version for redhat8 by @tu1h in https://github.com/kubean-io/kubean/pull/1148
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.3...v0.13.4
"},{"location":"releases/v0.13.5/","title":"V0.13.5","text":""},{"location":"releases/v0.13.5/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.5/#new-features","title":"\u2728 New Features","text":" - refactoring custom resource generate script by @ErikJiang in https://github.com/kubean-io/kubean/pull/1152
"},{"location":"releases/v0.13.5/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump softprops/action-gh-release from 1 to 2 by @dependabot in https://github.com/kubean-io/kubean/pull/1155
- Bump docker/build-push-action from 5.1.0 to 5.2.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1154
- Bump golangci/golangci-lint-action from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/1120
- Bump peter-evans/create-pull-request from 5 to 6 by @dependabot in https://github.com/kubean-io/kubean/pull/1111
"},{"location":"releases/v0.13.5/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix artifacts kube_version_range by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1150
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1149
- clean unused files by @ErikJiang in https://github.com/kubean-io/kubean/pull/1153
- fix docker-ce-cli version in ubuntu2004 by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1157
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.4...v0.13.5
"},{"location":"releases/v0.13.6/","title":"V0.13.6","text":""},{"location":"releases/v0.13.6/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.6/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/build-push-action from 5.2.0 to 5.3.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1162
- Bump docker/setup-buildx-action from 3.1.0 to 3.2.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1161
"},{"location":"releases/v0.13.6/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1159
- fix docker-ce-cli version in ubuntu18.04 by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1158
- fresh package list when build os pkgs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1160
- add debug script by @ErikJiang in https://github.com/kubean-io/kubean/pull/1163
- Precheck if docker is running by @tu1h in https://github.com/kubean-io/kubean/pull/1164
- Add playbook to config insecure registry by @tu1h in https://github.com/kubean-io/kubean/pull/1170
- Add playbook to enable nf_conntrack by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1171
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.5...v0.13.6
"},{"location":"releases/v0.13.7/","title":"V0.13.7","text":""},{"location":"releases/v0.13.7/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.7/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix missing lib file in arm-arch container by @ErikJiang in https://github.com/kubean-io/kubean/pull/1173
- fix kube version rendering error by @ErikJiang in https://github.com/kubean-io/kubean/pull/1174
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.6...v0.13.7
"},{"location":"releases/v0.13.8/","title":"V0.13.8","text":""},{"location":"releases/v0.13.8/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.8/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix build ubuntu os-pkg: lack unzip pkg by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1175
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.7...v0.13.8
"},{"location":"releases/v0.13.9/","title":"V0.13.9","text":""},{"location":"releases/v0.13.9/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.13.9/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Make the python version determined in config-insecure-registry.yml by @tu1h in https://github.com/kubean-io/kubean/pull/1176
- enable live restore for docker by @tu1h in https://github.com/kubean-io/kubean/pull/1178
- fix build os-pkg for ubuntu2004: set containerd to 1.6.28-1 when install docker by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1177
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1172
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.8...v0.13.9
"},{"location":"releases/v0.14.0/","title":"V0.14.0","text":""},{"location":"releases/v0.14.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.14.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.42.1 to 4.43.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1182
"},{"location":"releases/v0.14.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - playbook: mount xfs device with pquota option by @ErikJiang in https://github.com/kubean-io/kubean/pull/1179
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1180
- add ut by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1183
- Chore: update chart readme by @yyzxw in https://github.com/kubean-io/kubean/pull/1186
- clear coverage temp file by @ErikJiang in https://github.com/kubean-io/kubean/pull/1188
- coverage spelling mistake by @ErikJiang in https://github.com/kubean-io/kubean/pull/1189
- add ut by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1187
- add release version 2.24 for artifact doc by @ErikJiang in https://github.com/kubean-io/kubean/pull/1190
- change spray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1191
- Bump python version for offline build github action by @tu1h in https://github.com/kubean-io/kubean/pull/1192
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.9...v0.14.0
"},{"location":"releases/v0.15.0/","title":"V0.15.0","text":""},{"location":"releases/v0.15.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.15.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump golangci/golangci-lint-action from 4 to 5 by @dependabot in https://github.com/kubean-io/kubean/pull/1213
"},{"location":"releases/v0.15.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - load kubeconfig filepath when load rest config fail by @HeavenTonight in https://github.com/kubean-io/kubean/pull/1201
- fix: makefile error by @yyzxw in https://github.com/kubean-io/kubean/pull/1215
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1206
- add other info for docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1219
- Add license scan report and status by @fossabot in https://github.com/kubean-io/kubean/pull/1218
- Update README and GOVERNANCE md by @tu1h in https://github.com/kubean-io/kubean/pull/1220
- Support for Ubuntu jammy by @tu1h in https://github.com/kubean-io/kubean/pull/1221
- [docs] Improve usage/airgap.md by @windsonsea in https://github.com/kubean-io/kubean/pull/1223
- optimized pkg_mgr patch logic by @ErikJiang in https://github.com/kubean-io/kubean/pull/1222
- fix CVE-2023-24538 vulnerabilities in spray image by @ErikJiang in https://github.com/kubean-io/kubean/pull/1225
- update kubespray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1216
"},{"location":"releases/v0.15.0/#new-contributors","title":"New Contributors","text":" - @HeavenTonight made their first contribution in https://github.com/kubean-io/kubean/pull/1201
- @fossabot made their first contribution in https://github.com/kubean-io/kubean/pull/1218
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.13.11...v0.15.0
"},{"location":"releases/v0.15.1/","title":"V0.15.1","text":""},{"location":"releases/v0.15.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.15.1/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump golangci/golangci-lint-action from 5 to 6 by @dependabot in https://github.com/kubean-io/kubean/pull/1226
"},{"location":"releases/v0.15.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1227
- Modify Kubespray CI's rebuild logic for image building by @ErikJiang in https://github.com/kubean-io/kubean/pull/1229
- fix get dockerfile commit is empty by @ErikJiang in https://github.com/kubean-io/kubean/pull/1230
- add dockerfile commit outputs var by @ErikJiang in https://github.com/kubean-io/kubean/pull/1231
- Remove quotes from Dockerfile commit values in image building CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/1232
- Bump Kubespray by @tu1h in https://github.com/kubean-io/kubean/pull/1233
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.15.0...v0.15.1
"},{"location":"releases/v0.15.2/","title":"V0.15.2","text":""},{"location":"releases/v0.15.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.15.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1234
- add sha256sum file to release assets by @ErikJiang in https://github.com/kubean-io/kubean/pull/1236
- update the image: kubean architecture by @windsonsea in https://github.com/kubean-io/kubean/pull/1235
- Update en and zh README by @windsonsea in https://github.com/kubean-io/kubean/pull/1228
- update fossa badge for readme by @ErikJiang in https://github.com/kubean-io/kubean/pull/1238
- Supplement centos in os pkgs matrix by @ErikJiang in https://github.com/kubean-io/kubean/pull/1240
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.15.1...v0.15.2
"},{"location":"releases/v0.15.3/","title":"V0.15.3","text":""},{"location":"releases/v0.15.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.15.3/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.43.1 to 4.44.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1242
- Bump github.com/spf13/cobra from 1.7.0 to 1.8.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1246
- Bump github.com/go-logr/logr from 1.2.4 to 1.4.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1247
"},{"location":"releases/v0.15.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Add checksum in the download script by @FloatXD in https://github.com/kubean-io/kubean/pull/1237
- fix util download_resource_files by @FloatXD in https://github.com/kubean-io/kubean/pull/1248
- Fix invalid use of klog format specifier by @tu1h in https://github.com/kubean-io/kubean/pull/1249
- Fix incorrect e2e assert by @tu1h in https://github.com/kubean-io/kubean/pull/1251
- update default kube_version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1250
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.15.2...v0.15.3
"},{"location":"releases/v0.16.0/","title":"V0.16.0","text":""},{"location":"releases/v0.16.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.16.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/go-logr/logr from 1.4.1 to 1.4.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1263
- Bump docker/build-push-action from 5.3.0 to 5.4.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1266
- Bump github.com/onsi/ginkgo/v2 from 2.9.4 to 2.19.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1267
"},{"location":"releases/v0.16.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1252
- streamlined remote access with ssh key mode for other linux by @ErikJiang in https://github.com/kubean-io/kubean/pull/1253
- update KUBE_VERSION in e2e_test by @FloatXD in https://github.com/kubean-io/kubean/pull/1258
- update offline e2e kube verison by @FloatXD in https://github.com/kubean-io/kubean/pull/1259
- update e2e kube verison by @FloatXD in https://github.com/kubean-io/kubean/pull/1260
- Remove kubectl get version option by @FloatXD in https://github.com/kubean-io/kubean/pull/1262
- bump kube_version to v1.29 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1268
- add docker 26.1 to os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/1269
- update rhel8 os package by @ErikJiang in https://github.com/kubean-io/kubean/pull/1270
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.15.3...v0.16.0
"},{"location":"releases/v0.16.1/","title":"V0.16.1","text":""},{"location":"releases/v0.16.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.16.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1271
- update e2e kube verison to v1.29.0 by @FloatXD in https://github.com/kubean-io/kubean/pull/1272
- Add playbook to set containerd registry mirrors by @tu1h in https://github.com/kubean-io/kubean/pull/1273
- Refine playbook set_containerd_registry_mirror by @tu1h in https://github.com/kubean-io/kubean/pull/1274
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.16.0...v0.16.1
"},{"location":"releases/v0.16.2/","title":"V0.16.2","text":""},{"location":"releases/v0.16.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.16.2/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.44.1 to 4.44.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1282
- Bump docker/build-push-action from 5.4.0 to 6.0.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1281
- Bump k8s.io/klog/v2 from 2.100.1 to 2.130.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1280
- Bump github.com/spf13/cobra from 1.8.0 to 1.8.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1276
"},{"location":"releases/v0.16.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1275
- Support disable kernel unattended upgrades for Ubuntu by @tu1h in https://github.com/kubean-io/kubean/pull/1283
- Fix bug of #1283 by @tu1h in https://github.com/kubean-io/kubean/pull/1284
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.16.1...v0.16.2
"},{"location":"releases/v0.16.3/","title":"V0.16.3","text":""},{"location":"releases/v0.16.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.16.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix kylinv10 containerd version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1286
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.16.2...v0.16.3
"},{"location":"releases/v0.17.0/","title":"V0.17.0","text":""},{"location":"releases/v0.17.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.0/#new-features","title":"\u2728 New Features","text":" - restart components after renew certs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1295
- Add ipset & ipvsadm to os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/1298
- fix CVE-2024-24790 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1300
"},{"location":"releases/v0.17.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/build-push-action from 6.0.0 to 6.1.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1289
- Bump k8s.io/klog/v2 from 2.130.0 to 2.130.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1291
- Bump docker/build-push-action from 6.1.0 to 6.2.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1293
- Bump docker/build-push-action from 6.2.0 to 6.3.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1299
- Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1301
"},{"location":"releases/v0.17.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix config error in e2e upgrade test by @FloatXD in https://github.com/kubean-io/kubean/pull/1287
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1285
- update os-pkg linux list by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1290
- Simplify kubean download_url format by @ErikJiang in https://github.com/kubean-io/kubean/pull/1294
- restart control plane pods after renew certs by @ErikJiang in https://github.com/kubean-io/kubean/pull/1297
- Use orcalelinux7 instead of centos7 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1296
- update kubespray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1302
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.16.3...v0.17.0
"},{"location":"releases/v0.17.1/","title":"V0.17.1","text":""},{"location":"releases/v0.17.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1303
- Clean os pkgs for rhel7 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1304
- Add os pkg for kylin v10 sp3 by @ErikJiang in https://github.com/kubean-io/kubean/pull/1305
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.0...v0.17.1
"},{"location":"releases/v0.17.2/","title":"V0.17.2","text":""},{"location":"releases/v0.17.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - update kylin default docker version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1307
- Change Docker cgroupDriver to cgroupfs in Kylin SP2 by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1308
- bump docker containerd version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1309
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1306
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.1...v0.17.2
"},{"location":"releases/v0.17.3/","title":"V0.17.3","text":""},{"location":"releases/v0.17.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.3/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/build-push-action from 6.3.0 to 6.4.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1311
"},{"location":"releases/v0.17.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1310
- update kylin iso repo urls by @ErikJiang in https://github.com/kubean-io/kubean/pull/1312
- add precheck time info by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1313
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.2...v0.17.3
"},{"location":"releases/v0.17.4/","title":"V0.17.4","text":""},{"location":"releases/v0.17.4/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.4/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [e2e]fix os repo in arm-offline-e2e by @FloatXD in https://github.com/kubean-io/kubean/pull/1323
- Bump kubespray to 2d194af by @tu1h in https://github.com/kubean-io/kubean/pull/1324
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.3...v0.17.4
"},{"location":"releases/v0.17.5/","title":"V0.17.5","text":""},{"location":"releases/v0.17.5/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.17.5/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - update artifact doc script by @ErikJiang in https://github.com/kubean-io/kubean/pull/1316
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1314
- Bump kubespray to 86f9803 by @tu1h in https://github.com/kubean-io/kubean/pull/1329
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.4...v0.17.5
"},{"location":"releases/v0.18.0/","title":"V0.18.0","text":""},{"location":"releases/v0.18.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/setup-buildx-action from 3.4.0 to 3.6.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1328
- Bump github.com/onsi/ginkgo/v2 from 2.19.0 to 2.19.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1327
- Bump docker/build-push-action from 6.4.0 to 6.5.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1318
"},{"location":"releases/v0.18.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [docs] remove $ from only-command to reduce actions by @windsonsea in https://github.com/kubean-io/kubean/pull/1325
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.17.5...v0.18.0
"},{"location":"releases/v0.18.1/","title":"V0.18.1","text":""},{"location":"releases/v0.18.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Fix role privilege by @tu1h in https://github.com/kubean-io/kubean/pull/1336
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.0...v0.18.1
"},{"location":"releases/v0.18.2/","title":"V0.18.2","text":""},{"location":"releases/v0.18.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.2/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/build-push-action from 6.5.0 to 6.7.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1339
"},{"location":"releases/v0.18.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [Test]fix network e2e by @FloatXD in https://github.com/kubean-io/kubean/pull/1338
- Image building enhancement by @tu1h in https://github.com/kubean-io/kubean/pull/1341
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1330
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.1...v0.18.2
"},{"location":"releases/v0.18.3/","title":"V0.18.3","text":""},{"location":"releases/v0.18.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - add SprayJobImageRegistry to kubean-config and update manifest by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1348
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.2...v0.18.3
"},{"location":"releases/v0.18.4/","title":"V0.18.4","text":""},{"location":"releases/v0.18.4/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.4/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - keep current manifest when helm upgrade kubean by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1349
- bump kubespray version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1350
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.3...v0.18.4
"},{"location":"releases/v0.18.5/","title":"V0.18.5","text":""},{"location":"releases/v0.18.5/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.18.5/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix kubean manifest helm keep policy by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1352
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.4...v0.18.5
"},{"location":"releases/v0.19.0/","title":"V0.19.0","text":""},{"location":"releases/v0.19.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.19.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.44.2 to 4.44.3 by @dependabot in https://github.com/kubean-io/kubean/pull/1333
- Bump github.com/onsi/gomega from 1.34.0 to 1.34.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1334
- Bump k8s.io/apiserver from 0.26.4 to 0.31.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1343
- Bump github.com/onsi/ginkgo/v2 from 2.19.1 to 2.20.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1360
- Bump github.com/onsi/gomega from 1.34.1 to 1.34.2 by @dependabot in https://github.com/kubean-io/kubean/pull/1359
- Bump peter-evans/create-pull-request from 6 to 7 by @dependabot in https://github.com/kubean-io/kubean/pull/1361
"},{"location":"releases/v0.19.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix rls version handing in artifacts doc by @ErikJiang in https://github.com/kubean-io/kubean/pull/1351
- Update gen_artifact_doc.py by @ErikJiang in https://github.com/kubean-io/kubean/pull/1353
- Support Rocky Linux 8 by @tu1h in https://github.com/kubean-io/kubean/pull/1354
- Update renew-certs.yml by @ErikJiang in https://github.com/kubean-io/kubean/pull/1355
- [Test]Use ls -l instead of ll by @FloatXD in https://github.com/kubean-io/kubean/pull/1347
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1342
- Revert \"Bump k8s.io/apiserver from 0.26.4 to 0.31.0\" by @ErikJiang in https://github.com/kubean-io/kubean/pull/1357
- add helm hook to add manifest annotation by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1358
- update spray commit & kube version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1362
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.18.5...v0.19.0
"},{"location":"releases/v0.20.0/","title":"V0.20.0","text":""},{"location":"releases/v0.20.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.20.0/#documentation","title":"\ud83d\udcda Documentation","text":" - [test]update Kubean test case by @FloatXD in https://github.com/kubean-io/kubean/pull/1383
"},{"location":"releases/v0.20.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump docker/setup-buildx-action from 3.6.1 to 3.7.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1382
- Bump docker/build-push-action from 6.7.0 to 6.9.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1380
- Bump aquasecurity/trivy-action from 0.20.0 to 0.28.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1385
"},{"location":"releases/v0.20.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [Test]update kube_version in e2e test by @FloatXD in https://github.com/kubean-io/kubean/pull/1364
- [Test]Optimize the retry logic in e2e test by @FloatXD in https://github.com/kubean-io/kubean/pull/1366
- [Test]Remove check for /proc/sys/net/ipv4/tcp_tw_recycle by @FloatXD in https://github.com/kubean-io/kubean/pull/1367
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1363
- [Test]update e2e test for rocky8 by @FloatXD in https://github.com/kubean-io/kubean/pull/1368
- [Test]update e2e test for rocky8 by @FloatXD in https://github.com/kubean-io/kubean/pull/1369
- [Test]update e2e test for import rocky8 os-pkg by @FloatXD in https://github.com/kubean-io/kubean/pull/1374
- [Test]update e2e test for import rocky8 iso_image by @FloatXD in https://github.com/kubean-io/kubean/pull/1375
- Enable gosec in golangci check by @tu1h in https://github.com/kubean-io/kubean/pull/1377
- [Test]update e2e test offline_minio_url by @FloatXD in https://github.com/kubean-io/kubean/pull/1376
- [Test]update offline_e2e kubeanClusterOps.yml by @FloatXD in https://github.com/kubean-io/kubean/pull/1379
- Enable cert scan by @tu1h in https://github.com/kubean-io/kubean/pull/1378
- [e2e] add ca auto_renew check in e2e test by @FloatXD in https://github.com/kubean-io/kubean/pull/1384
- update testcase reference by @emmanuel-ferdman in https://github.com/kubean-io/kubean/pull/1386
- bump kubespray version by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1391
"},{"location":"releases/v0.20.0/#new-contributors","title":"New Contributors","text":" - @emmanuel-ferdman made their first contribution in https://github.com/kubean-io/kubean/pull/1386
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.19.0...v0.20.0
"},{"location":"releases/v0.21.0/","title":"V0.21.0","text":""},{"location":"releases/v0.21.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.21.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/onsi/ginkgo/v2 from 2.20.2 to 2.21.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1395
"},{"location":"releases/v0.21.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [Test] Remove centos7 from the test list by @FloatXD in https://github.com/kubean-io/kubean/pull/1393
- [Test]Replacement check items for rocky8 by @FloatXD in https://github.com/kubean-io/kubean/pull/1394
- [Test] Replace the centos7 test label with rocky8 by @FloatXD in https://github.com/kubean-io/kubean/pull/1396
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1392
- optimize tool scripts for other os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/1398
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.20.0...v0.21.0
"},{"location":"releases/v0.21.1/","title":"V0.21.1","text":""},{"location":"releases/v0.21.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.21.1/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/onsi/gomega from 1.34.2 to 1.35.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1402
"},{"location":"releases/v0.21.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [CI] Add support list in release notes markdown by @FloatXD in https://github.com/kubean-io/kubean/pull/1401
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1399
- [Test] Upgrade k8s version to 1.30.5 by @FloatXD in https://github.com/kubean-io/kubean/pull/1403
- [Test] Fixed the issue that rocky8 cannot select the correct kubeanClusterOps.yml in e2e test by @FloatXD in https://github.com/kubean-io/kubean/pull/1405
- add nfs client tools in os-packages by @san3Xian in https://github.com/kubean-io/kubean/pull/1404
- Update Maintainer by @0ekk in https://github.com/kubean-io/kubean/pull/1406
- Bump Kubespray by @0ekk in https://github.com/kubean-io/kubean/pull/1407
"},{"location":"releases/v0.21.1/#new-contributors","title":"New Contributors","text":" - @san3Xian made their first contribution in https://github.com/kubean-io/kubean/pull/1404
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.21.0...v0.21.1 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | v1.30.5 | \u00a0 'v1.31.2' \u00a0 'v1.31.1' \u00a0 'v1.31.0' \u00a0 'v1.30.6' \u00a0 'v1.30.5' \u00a0 'v1.30.4' \u00a0 'v1.30.3' \u00a0 'v1.30.2' \u00a0 'v1.30.1' \u00a0 'v1.30.0' \u00a0 'v1.29.10' \u00a0 'v1.29.9' \u00a0 'v1.29.8' \u00a0 'v1.29.7' \u00a0 'v1.29.6' \u00a0 'v1.29.5' \u00a0 'v1.29.4' \u00a0 'v1.29.3' \u00a0 'v1.29.2' \u00a0 'v1.29.1' \u00a0 'v1.29.0'|
"},{"location":"releases/v0.22.0/","title":"V0.22.0","text":""},{"location":"releases/v0.22.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.22.0/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump aquasecurity/trivy-action from 0.28.0 to 0.29.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1412
- Bump mikefarah/yq from 4.44.3 to 4.44.5 by @dependabot in https://github.com/kubean-io/kubean/pull/1410
- Bump github.com/onsi/ginkgo/v2 from 2.21.0 to 2.22.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1417
- Bump docker/build-push-action from 6.9.0 to 6.10.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1422
- Bump github.com/onsi/gomega from 1.35.1 to 1.36.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1425
"},{"location":"releases/v0.22.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [CI] Add support list in release notes body by @FloatXD in https://github.com/kubean-io/kubean/pull/1409
- [Test]Optimize the generation method of rocky-kubeanclusterops by @FloatXD in https://github.com/kubean-io/kubean/pull/1413
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1408
- [doc]Fix the incorrect Default Kubernetes Version by @FloatXD in https://github.com/kubean-io/kubean/pull/1414
- [Test]Update the Cluster Type in calicoctl version to v3.28.1 by @FloatXD in https://github.com/kubean-io/kubean/pull/1415
- [Test]Remove redundant operations on kubeanClusterOps.yml by @FloatXD in https://github.com/kubean-io/kubean/pull/1421
- clear redundant log info by @ErikJiang in https://github.com/kubean-io/kubean/pull/1426
- bump kubespray version by @ErikJiang in https://github.com/kubean-io/kubean/pull/1427
- fix set secret OwnerReferences by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1424
- fix latest tag invaild in release action by @ErikJiang in https://github.com/kubean-io/kubean/pull/1428
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.21.1...v0.22.0 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | null | null|
"},{"location":"releases/v0.22.1/","title":"V0.22.1","text":""},{"location":"releases/v0.22.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.22.1/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump mikefarah/yq from 4.44.5 to 4.44.6 by @dependabot in https://github.com/kubean-io/kubean/pull/1431
"},{"location":"releases/v0.22.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - [CI]Added the function of judging whether curl successfully obtains manifest.cr.yaml by @FloatXD in https://github.com/kubean-io/kubean/pull/1430
- fix: airgap package build doesn't exit on error by @ErikJiang in https://github.com/kubean-io/kubean/pull/1435
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.22.0...v0.22.1 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | v1.30.5 | 'v1.31.3' \u00a0 'v1.31.2' \u00a0 'v1.31.1' \u00a0 'v1.31.0' \u00a0 'v1.30.7' \u00a0 'v1.30.6' \u00a0 'v1.30.5' \u00a0 'v1.30.4' \u00a0 'v1.30.3' \u00a0 'v1.30.2' \u00a0 'v1.30.1' \u00a0 'v1.30.0' \u00a0 'v1.29.11' \u00a0 'v1.29.10' \u00a0 'v1.29.9' \u00a0 'v1.29.8' \u00a0 'v1.29.7' \u00a0 'v1.29.6' \u00a0 'v1.29.5' \u00a0 'v1.29.4' \u00a0 'v1.29.3' \u00a0 'v1.29.2' \u00a0 'v1.29.1' \u00a0 'v1.29.0'|
"},{"location":"releases/v0.22.2/","title":"V0.22.2","text":""},{"location":"releases/v0.22.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.22.2/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/onsi/gomega from 1.36.0 to 1.36.1 by @dependabot in https://github.com/kubean-io/kubean/pull/1443
- Bump docker/setup-buildx-action from 3.7.1 to 3.8.0 by @dependabot in https://github.com/kubean-io/kubean/pull/1438
"},{"location":"releases/v0.22.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1436
- Allow run playbook facts.yml in Kubean by @0ekk in https://github.com/kubean-io/kubean/pull/1444
- [Test]Before using --limit run playbook facts.yml in test by @FloatXD in https://github.com/kubean-io/kubean/pull/1433
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.22.1...v0.22.2 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | v1.30.5 | 'v1.31.3' \u00a0 'v1.31.2' \u00a0 'v1.31.1' \u00a0 'v1.31.0' \u00a0 'v1.30.7' \u00a0 'v1.30.6' \u00a0 'v1.30.5' \u00a0 'v1.30.4' \u00a0 'v1.30.3' \u00a0 'v1.30.2' \u00a0 'v1.30.1' \u00a0 'v1.30.0' \u00a0 'v1.29.11' \u00a0 'v1.29.10' \u00a0 'v1.29.9' \u00a0 'v1.29.8' \u00a0 'v1.29.7' \u00a0 'v1.29.6' \u00a0 'v1.29.5' \u00a0 'v1.29.4' \u00a0 'v1.29.3' \u00a0 'v1.29.2' \u00a0 'v1.29.1' \u00a0 'v1.29.0'|
"},{"location":"releases/v0.22.3/","title":"V0.22.3","text":""},{"location":"releases/v0.22.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.22.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - fix set owner-reference by @KubeKyrie in https://github.com/kubean-io/kubean/pull/1446
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/1445
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.22.2...v0.22.3 | Default Kubernetes Version | Supported Kubernetes Version Range | | ---------------------------| ---------------------------------------------------------------------| | v1.30.5 | 'v1.31.3' \u00a0 'v1.31.2' \u00a0 'v1.31.1' \u00a0 'v1.31.0' \u00a0 'v1.30.7' \u00a0 'v1.30.6' \u00a0 'v1.30.5' \u00a0 'v1.30.4' \u00a0 'v1.30.3' \u00a0 'v1.30.2' \u00a0 'v1.30.1' \u00a0 'v1.30.0' \u00a0 'v1.29.11' \u00a0 'v1.29.10' \u00a0 'v1.29.9' \u00a0 'v1.29.8' \u00a0 'v1.29.7' \u00a0 'v1.29.6' \u00a0 'v1.29.5' \u00a0 'v1.29.4' \u00a0 'v1.29.3' \u00a0 'v1.29.2' \u00a0 'v1.29.1' \u00a0 'v1.29.0'|
"},{"location":"releases/v0.4.0/","title":"V0.4.0","text":""},{"location":"releases/v0.4.0/#whats-changed","title":"What's Changed","text":" - update docker os-pkg version by @hangscer8 in https://github.com/kubean-io/kubean/pull/262
- cluster info with more retry time by @hangscer8 in https://github.com/kubean-io/kubean/pull/261
- Manifest crd support multi image repo by @hangscer8 in https://github.com/kubean-io/kubean/pull/266
- update kubespray default version to v1.24.7 by @ErikJiang in https://github.com/kubean-io/kubean/pull/272
- Disable cn proxy sources to improve kubean image build efficiency by @ErikJiang in https://github.com/kubean-io/kubean/pull/273
- fix e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/267
- add dasu23 into approvers by @YunShiHang in https://github.com/kubean-io/kubean/pull/275
- Update offline doc by @ErikJiang in https://github.com/kubean-io/kubean/pull/276
- Fix temporary version tag issues by @YunShiHang in https://github.com/kubean-io/kubean/pull/281
- add version constraints of dependencies in offline case by @tu1h in https://github.com/kubean-io/kubean/pull/274
- [chroe] Improve the install trivy method by @SSmallMonster in https://github.com/kubean-io/kubean/pull/282
- add certificated logo by @wenting-guo in https://github.com/kubean-io/kubean/pull/284
- adjust generate_offline_package to multi harbor projects by @hangscer8 in https://github.com/kubean-io/kubean/pull/285
- Unified k8s version by @ErikJiang in https://github.com/kubean-io/kubean/pull/286
- Update README badge by @ErikJiang in https://github.com/kubean-io/kubean/pull/287
- Add Dockerfile for airgap-patch by @hangscer8 in https://github.com/kubean-io/kubean/pull/289
- Add os package for ubuntu by @ErikJiang in https://github.com/kubean-io/kubean/pull/291
- rename ansible_ssh_pass to ansible_password by @tu1h in https://github.com/kubean-io/kubean/pull/290
- rename doc folder to docs by @tu1h in https://github.com/kubean-io/kubean/pull/293
- Add Doc For Airgap Patch by @hangscer8 in https://github.com/kubean-io/kubean/pull/294
- fix pr e2e fail by @wenting-guo in https://github.com/kubean-io/kubean/pull/288
- Support restore yum repo in enable-repo.yml by @ErikJiang in https://github.com/kubean-io/kubean/pull/298
- update & add some docs by @tu1h in https://github.com/kubean-io/kubean/pull/299
- Add documentation for deploying clusters with ssh secret keys by @ErikJiang in https://github.com/kubean-io/kubean/pull/302
- Update doc for deploy cluster with ssh key by @ErikJiang in https://github.com/kubean-io/kubean/pull/306
- Add auto release notes ci by @YunShiHang in https://github.com/kubean-io/kubean/pull/309
- add os compatibility e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/310
- fix checkout repository bug by @YunShiHang in https://github.com/kubean-io/kubean/pull/311
- add unit test by @hangscer8 in https://github.com/kubean-io/kubean/pull/314
- chore: add ut by @yyzxw in https://github.com/kubean-io/kubean/pull/313
- fix airgap patch mod by @hangscer8 in https://github.com/kubean-io/kubean/pull/315
- import_iso support kylin v10 sp2 by @hangscer8 in https://github.com/kubean-io/kubean/pull/316
- Translation of kubean documents (issue305) by @yulng in https://github.com/kubean-io/kubean/pull/307
- upgrade kind version to 1.25.3 by @wenting-guo in https://github.com/kubean-io/kubean/pull/312
- [CI]add incremental packages by @YunShiHang in https://github.com/kubean-io/kubean/pull/317
- Update os_family for kylin in enable-repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/318
- Add os packages for kylin linux by @ErikJiang in https://github.com/kubean-io/kubean/pull/321
- Update os packages for kylin linux by @ErikJiang in https://github.com/kubean-io/kubean/pull/324
- Update the absolute path of the command in playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/326
- Offline adapation for RHEL 8.4 by @tu1h in https://github.com/kubean-io/kubean/pull/325
- fix Dockerfile.redhat8 by @tu1h in https://github.com/kubean-io/kubean/pull/327
- v0.4.1 Pre-release version by @ErikJiang in https://github.com/kubean-io/kubean/pull/329
"},{"location":"releases/v0.4.0/#new-contributors","title":"New Contributors","text":" - @tu1h made their first contribution in https://github.com/kubean-io/kubean/pull/274
- @SSmallMonster made their first contribution in https://github.com/kubean-io/kubean/pull/282
- @yulng made their first contribution in https://github.com/kubean-io/kubean/pull/307
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.3.7...v0.4.0
"},{"location":"releases/v0.4.1/","title":"V0.4.1","text":""},{"location":"releases/v0.4.1/#whats-changed","title":"What's Changed","text":" - Fix import_iso.sh by @tu1h in https://github.com/kubean-io/kubean/pull/330
- specify k8s version by @ErikJiang in https://github.com/kubean-io/kubean/pull/331
- Fix kylin linux offline deployment python3-libselinux dependency issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/332
- translate sshkey_deploy_cluster.md by @Michelle951 in https://github.com/kubean-io/kubean/pull/323
- translate comparisons.md by @Michelle951 in https://github.com/kubean-io/kubean/pull/322
- translate crds.md to en by @Michelle951 in https://github.com/kubean-io/kubean/pull/320
- update packages.yml for kylin os by @ErikJiang in https://github.com/kubean-io/kubean/pull/335
- fix test by @hangscer8 in https://github.com/kubean-io/kubean/pull/334
- add release-process.md by @hangscer8 in https://github.com/kubean-io/kubean/pull/333
- Fix released image tag overrided by @tu1h in https://github.com/kubean-io/kubean/pull/336
- add offline-e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/341
- fix offline e2e workflow file by @wenting-guo in https://github.com/kubean-io/kubean/pull/342
- chart: namespace should go with release by @weizhoublue in https://github.com/kubean-io/kubean/pull/337
- update case md by @wenting-guo in https://github.com/kubean-io/kubean/pull/343
- Fix template rendering failure by @tu1h in https://github.com/kubean-io/kubean/pull/338
- fix offline workflow by @wenting-guo in https://github.com/kubean-io/kubean/pull/344
- fix offline shell by @wenting-guo in https://github.com/kubean-io/kubean/pull/345
- update airgap_patch image tag in doc by @hangscer8 in https://github.com/kubean-io/kubean/pull/349
- oprimize offline shell by @wenting-guo in https://github.com/kubean-io/kubean/pull/369
- optimize logs output by @hangscer8 in https://github.com/kubean-io/kubean/pull/362
- Optimize kubeanoperation spec.image tag by @hangscer8 in https://github.com/kubean-io/kubean/pull/371
- shihang.yun-fix-cd-bug by @YunShiHang in https://github.com/kubean-io/kubean/pull/374
- shihang.yun-optimize-input by @YunShiHang in https://github.com/kubean-io/kubean/pull/375
- fix cd image tag's bug by @YunShiHang in https://github.com/kubean-io/kubean/pull/376
- use kube-vip first by @hangscer8 in https://github.com/kubean-io/kubean/pull/379
- fix kubeconfig playbook by @hangscer8 in https://github.com/kubean-io/kubean/pull/380
- Reduce kubespray image size by @tu1h in https://github.com/kubean-io/kubean/pull/382
- allow custom kubean image repo in cd by @tu1h in https://github.com/kubean-io/kubean/pull/372
- fix arm image build failure by @tu1h in https://github.com/kubean-io/kubean/pull/384
- fix airgap-patch image build failure by @tu1h in https://github.com/kubean-io/kubean/pull/385
- Remove libselinux from os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/386
- Fix local Service yum repo by @hangscer8 in https://github.com/kubean-io/kubean/pull/387
- optimize offline-e2e environment set by @wenting-guo in https://github.com/kubean-io/kubean/pull/389
- add rhel7 ospkg by @tu1h in https://github.com/kubean-io/kubean/pull/390
- Check if the OS package needs to be rebuilt by @ErikJiang in https://github.com/kubean-io/kubean/pull/391
- Update get latest tag by @ErikJiang in https://github.com/kubean-io/kubean/pull/393
- Ready for release version v0.4.1 by @ErikJiang in https://github.com/kubean-io/kubean/pull/394
"},{"location":"releases/v0.4.1/#new-contributors","title":"New Contributors","text":" - @Michelle951 made their first contribution in https://github.com/kubean-io/kubean/pull/323
- @weizhoublue made their first contribution in https://github.com/kubean-io/kubean/pull/337
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.0...v0.4.1
"},{"location":"releases/v0.4.10/","title":"V0.4.10","text":""},{"location":"releases/v0.4.10/#whats-changed","title":"What's Changed","text":" - update redaht8 related e2e case by @wenting-guo in https://github.com/kubean-io/kubean/pull/654
- fix: ignore actionSourceRef not set by @jonyhy96 in https://github.com/kubean-io/kubean/pull/666
- optimize generate crds by @hangscer8 in https://github.com/kubean-io/kubean/pull/667
- add UT by @hangscer8 in https://github.com/kubean-io/kubean/pull/670
- kubean install on none kubean-system ns e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/672
- fix speedup offline package by @wenting-guo in https://github.com/kubean-io/kubean/pull/676
- [docs] update and translate theory-of-air-gapped-package.md by @windsonsea in https://github.com/kubean-io/kubean/pull/671
- cleanup: replace pkg ioutil with os by @yyzxw in https://github.com/kubean-io/kubean/pull/680
- update e2e case md by @wenting-guo in https://github.com/kubean-io/kubean/pull/683
- fix create job occasionally unsuccessfully from ops by @hangscer8 in https://github.com/kubean-io/kubean/pull/684
- Fix ansible lint by @tu1h in https://github.com/kubean-io/kubean/pull/694
- Add kubean examples by @ErikJiang in https://github.com/kubean-io/kubean/pull/693
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.9...v0.4.10
"},{"location":"releases/v0.4.2/","title":"V0.4.2","text":""},{"location":"releases/v0.4.2/#whats-changed","title":"What's Changed","text":" - Update previous tag by @ErikJiang in https://github.com/kubean-io/kubean/pull/395
- remove preset playbook by @tu1h in https://github.com/kubean-io/kubean/pull/396
- fix enable-repo by @hangscer8 in https://github.com/kubean-io/kubean/pull/397
- Block the update repo from kylin os by @ErikJiang in https://github.com/kubean-io/kubean/pull/399
- Revert \"fix enable-repo\" by @hangscer8 in https://github.com/kubean-io/kubean/pull/400
- Remove unnecessary pkgs by @tu1h in https://github.com/kubean-io/kubean/pull/403
- Improve check_rebuild_pkgs by @tu1h in https://github.com/kubean-io/kubean/pull/404
- Restore os pkg by @tu1h in https://github.com/kubean-io/kubean/pull/411
- Revert \"Restore os pkg\" by @ErikJiang in https://github.com/kubean-io/kubean/pull/412
- Restore os pkg by @tu1h in https://github.com/kubean-io/kubean/pull/413
- add kylin os case by @wenting-guo in https://github.com/kubean-io/kubean/pull/416
- fix offline e2e bug by @wenting-guo in https://github.com/kubean-io/kubean/pull/417
- update pr ci yaml by @wenting-guo in https://github.com/kubean-io/kubean/pull/422
- make pr ci from vagrant to vm by @wenting-guo in https://github.com/kubean-io/kubean/pull/423
- add a parameter to pr ci workflow by @wenting-guo in https://github.com/kubean-io/kubean/pull/435
- add calico case in nightly e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/438
- add secrets for nightly e2e in workflow yaml by @wenting-guo in https://github.com/kubean-io/kubean/pull/445
- Add resources by @ErikJiang in https://github.com/kubean-io/kubean/pull/447
- update case md by @wenting-guo in https://github.com/kubean-io/kubean/pull/448
- update nightly e2e yaml by @wenting-guo in https://github.com/kubean-io/kubean/pull/449
- update kubean logo by @ErikJiang in https://github.com/kubean-io/kubean/pull/450
- update os compatibility e2e to vm by @wenting-guo in https://github.com/kubean-io/kubean/pull/451
- update nightly e2e passwd to secret by @wenting-guo in https://github.com/kubean-io/kubean/pull/455
- add secrets parameter in os compatibility workflow yaml by @wenting-guo in https://github.com/kubean-io/kubean/pull/456
- Remove versions.json by @tu1h in https://github.com/kubean-io/kubean/pull/452
- optimize hardcode namespace by @hangscer8 in https://github.com/kubean-io/kubean/pull/457
- Support import for ubuntu iso by @tu1h in https://github.com/kubean-io/kubean/pull/458
- Add spray job timeout by @hangscer8 in https://github.com/kubean-io/kubean/pull/462
- Remove fuse only in docker mode by @tu1h in https://github.com/kubean-io/kubean/pull/463
- add apt repo in enable-repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/459
- Update the check scripts for building os packages by @ErikJiang in https://github.com/kubean-io/kubean/pull/464
- fix nightly e2e helm version set by @wenting-guo in https://github.com/kubean-io/kubean/pull/466
- support charts syncer by @ErikJiang in https://github.com/kubean-io/kubean/pull/468
- update restore apt condition in enable-repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/471
- Update action version for workflows by @ErikJiang in https://github.com/kubean-io/kubean/pull/474
- add redhat offline e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/475
- update case md by @wenting-guo in https://github.com/kubean-io/kubean/pull/476
- add unit test by @hangscer8 in https://github.com/kubean-io/kubean/pull/478
- set runner2 ip for e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/485
- update e2e k8s version to 1.24.7 by @wenting-guo in https://github.com/kubean-io/kubean/pull/489
- set nightly e2e and online os-compatibility-e2e to the online runner by @wenting-guo in https://github.com/kubean-io/kubean/pull/491
- Add ansible-lint for playbooks in pr gate by @tu1h in https://github.com/kubean-io/kubean/pull/483
- Support import offline resource parallelly by @tu1h in https://github.com/kubean-io/kubean/pull/482
- Fix job creating failure across different namespace by @tu1h in https://github.com/kubean-io/kubean/pull/488
- change upgrade e2e to vm by @wenting-guo in https://github.com/kubean-io/kubean/pull/492
- fix sa error by @cleverhu in https://github.com/kubean-io/kubean/pull/493
- change cluster lcm e2e case to vm by @wenting-guo in https://github.com/kubean-io/kubean/pull/497
- Get serviceaccount name by labelselector by @tu1h in https://github.com/kubean-io/kubean/pull/499
- add calico dual stack e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/500
- update online os compatibility run rate by @wenting-guo in https://github.com/kubean-io/kubean/pull/501
- support imageRepo with password by @hangscer8 in https://github.com/kubean-io/kubean/pull/502
- optimize ClusterRole && set COMMIT_SHA for release by @hangscer8 in https://github.com/kubean-io/kubean/pull/506
- set kubespray commit by @hangscer8 in https://github.com/kubean-io/kubean/pull/507
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.1...v0.4.2
"},{"location":"releases/v0.4.3/","title":"V0.4.3","text":""},{"location":"releases/v0.4.3/#whats-changed","title":"What's Changed","text":" - rollback clusterrole by @hangscer8 in https://github.com/kubean-io/kubean/pull/511
- update minio repo by @wenting-guo in https://github.com/kubean-io/kubean/pull/512
- Fix incomplete ospkg cache judgment by @tu1h in https://github.com/kubean-io/kubean/pull/513
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.2...v0.4.3
"},{"location":"releases/v0.4.4/","title":"V0.4.4","text":""},{"location":"releases/v0.4.4/#whats-changed","title":"What's Changed","text":" - Remove ospkg buiding immediate exit by @tu1h in https://github.com/kubean-io/kubean/pull/514
- Fix import ospkgs script by @tu1h in https://github.com/kubean-io/kubean/pull/515
- Remove audit on rhel8 by @tu1h in https://github.com/kubean-io/kubean/pull/517
- add kubean maintainer by @wawa0210 in https://github.com/kubean-io/kubean/pull/519
- fix release image by @ErikJiang in https://github.com/kubean-io/kubean/pull/520
"},{"location":"releases/v0.4.4/#new-contributors","title":"New Contributors","text":" - @wawa0210 made their first contribution in https://github.com/kubean-io/kubean/pull/519
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.3...v0.4.4
"},{"location":"releases/v0.4.5/","title":"V0.4.5","text":""},{"location":"releases/v0.4.5/#whats-changed","title":"What's Changed","text":" - fix typo hack script for setup by @yanggangtony in https://github.com/kubean-io/kubean/pull/516
- chore: delete unused file #523 by @yyzxw in https://github.com/kubean-io/kubean/pull/526
- Fix offline e2e failure by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/530
- Remove runc on offline rhel8 from playbook by @tu1h in https://github.com/kubean-io/kubean/pull/531
- fix imageRepo field by @panguicai008 in https://github.com/kubean-io/kubean/pull/534
- Update e2e_schedule.yaml by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/536
- fix variable definition by @panguicai008 in https://github.com/kubean-io/kubean/pull/533
- fix spray-job container name by @hangscer8 in https://github.com/kubean-io/kubean/pull/537
- fix cluster status.conditions.startTime and endTime invalid value null by @panguicai008 in https://github.com/kubean-io/kubean/pull/538
- fix clusteroperation multi field invalid value null by @panguicai008 in https://github.com/kubean-io/kubean/pull/539
- Support custom action by @tu1h in https://github.com/kubean-io/kubean/pull/540
- Reduce centos7 package size by @yankay in https://github.com/kubean-io/kubean/pull/543
- Update CD about helm cmd vars by @tu1h in https://github.com/kubean-io/kubean/pull/546
- provide auto ci of k8s version compatibility by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/547
- Support upgrade kubean CRDs by helm by @tu1h in https://github.com/kubean-io/kubean/pull/552
- Fix charts rendering exception by @tu1h in https://github.com/kubean-io/kubean/pull/554
- support pre-check playbook by @hangscer8 in https://github.com/kubean-io/kubean/pull/555
- Fix incorrect rendered template by @tu1h in https://github.com/kubean-io/kubean/pull/556
- optimize pre-check playbook by @hangscer8 in https://github.com/kubean-io/kubean/pull/559
- add ut by @hangscer8 in https://github.com/kubean-io/kubean/pull/560
- Set offline-pkg default k8s version to 1.25.4 by @hangscer8 in https://github.com/kubean-io/kubean/pull/564
- Add Others OS package build method by @ErikJiang in https://github.com/kubean-io/kubean/pull/561
- fix offline e2e and update iptables e2e test by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/557
- fix main branch: auto-kubean-compatibility-schedule.yaml was modified incorrectly by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/563
- fix the wrong image tag when the main ci builds images. by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/558
- Fix image name when push, and update the default k8s version to 1.26.0, fix kube_version of offline e2e by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/566
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/568
- support import iso for uniontech by @ErikJiang in https://github.com/kubean-io/kubean/pull/570
- add node affinity for chart by @ErikJiang in https://github.com/kubean-io/kubean/pull/571
- fix airgap patch image build and push by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/572
- support unionTech for enable repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/575
- update anti affinity for kubean by @ErikJiang in https://github.com/kubean-io/kubean/pull/579
- set helm upgrade timeout and sprayJob tag by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/578
- fix: update offline usage docs by @yyzxw in https://github.com/kubean-io/kubean/pull/577
- add theory-of-air-gapped-package by @panpan0000 in https://github.com/kubean-io/kubean/pull/582
- Update build script for UOS by @ErikJiang in https://github.com/kubean-io/kubean/pull/583
- optimize airgap patch by @hangscer8 in https://github.com/kubean-io/kubean/pull/584
- fix mv no such file in RHEL by @ErikJiang in https://github.com/kubean-io/kubean/pull/586
- optimize airgap patch image by @hangscer8 in https://github.com/kubean-io/kubean/pull/588
- change runner1 e2e ips by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/589
- fix wrong tag of cd when running main ci by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/581
- add call-cd params in main ci and release ci by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/591
- add extra binary for airgap-patch by @hangscer8 in https://github.com/kubean-io/kubean/pull/592
- add create cilium cluster e2e test by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/594
- remove registry.k8s.io/pause:3.4 by @hangscer8 in https://github.com/kubean-io/kubean/pull/595
"},{"location":"releases/v0.4.5/#new-contributors","title":"New Contributors","text":" - @XiuguangHuang made their first contribution in https://github.com/kubean-io/kubean/pull/530
- @panguicai008 made their first contribution in https://github.com/kubean-io/kubean/pull/534
- @panpan0000 made their first contribution in https://github.com/kubean-io/kubean/pull/582
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.4...v0.4.5
"},{"location":"releases/v0.4.6/","title":"V0.4.6","text":""},{"location":"releases/v0.4.6/#whats-changed","title":"What's Changed","text":" - clean unnecessary files by @hangscer8 in https://github.com/kubean-io/kubean/pull/597
- add debugger2 vms and debug cilium cluster by @wenting-guo in https://github.com/kubean-io/kubean/pull/598
- delete unused test case doc by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/599
- Precheck Result Configmap by @hangscer8 in https://github.com/kubean-io/kubean/pull/600
- fix upgrade failed due to hard affinity by @ErikJiang in https://github.com/kubean-io/kubean/pull/601
- add cilium_kube_proxy_replacement by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/605
- download offline files after release ci by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/607
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.5...v0.4.6
"},{"location":"releases/v0.4.7/","title":"V0.4.7","text":""},{"location":"releases/v0.4.7/#whats-changed","title":"What's Changed","text":" - Fix incorrect data type on ActionSource by @tu1h in https://github.com/kubean-io/kubean/pull/613
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.6...v0.4.7
"},{"location":"releases/v0.4.8/","title":"V0.4.8","text":""},{"location":"releases/v0.4.8/#whats-changed","title":"What's Changed","text":" - add multi kubean operator e2e case by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/608
- Update changes imported by pointer type by @tu1h in https://github.com/kubean-io/kubean/pull/618
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.7...v0.4.8
"},{"location":"releases/v0.4.9/","title":"V0.4.9","text":""},{"location":"releases/v0.4.9/#whats-changed","title":"What's Changed","text":" - fix download files job by @XiuguangHuang in https://github.com/kubean-io/kubean/pull/620
- fix remount iso by @hangscer8 in https://github.com/kubean-io/kubean/pull/624
- adding flannel\u3001kube-ovn to manifest cr by @cyclinder in https://github.com/kubean-io/kubean/pull/622
- [docs] add readme_zh.md by @windsonsea in https://github.com/kubean-io/kubean/pull/623
- Add code-of-conduct and CONTRIBUTING documentation by @tu1h in https://github.com/kubean-io/kubean/pull/625
- remove redundant docker os_pkgs by @hangscer8 in https://github.com/kubean-io/kubean/pull/626
- support openEuler by @hangscer8 in https://github.com/kubean-io/kubean/pull/628
- optimize import iso openeuler by @hangscer8 in https://github.com/kubean-io/kubean/pull/629
- support other linux in AirGap scenario by @ErikJiang in https://github.com/kubean-io/kubean/pull/627
- update pkgs.yml by @ErikJiang in https://github.com/kubean-io/kubean/pull/630
- fix unkonwn arch image by @ErikJiang in https://github.com/kubean-io/kubean/pull/631
- add openeuler ospkg by @hangscer8 in https://github.com/kubean-io/kubean/pull/632
- Support import ISO data to local path by @tu1h in https://github.com/kubean-io/kubean/pull/640
- Add Dependabot by @ErikJiang in https://github.com/kubean-io/kubean/pull/641
- Bump mikefarah/yq from 4.30.8 to 4.33.3 by @dependabot in https://github.com/kubean-io/kubean/pull/645
- Bump docker/build-push-action from 3.3.0 to 4.0.0 by @dependabot in https://github.com/kubean-io/kubean/pull/642
- Fix import_iso.sh by @tu1h in https://github.com/kubean-io/kubean/pull/651
- Bump docker/setup-buildx-action from 2.2.1 to 2.5.0 by @dependabot in https://github.com/kubean-io/kubean/pull/644
- Bump actions/setup-go from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/643
- set pr-ci nightly-ci run time-limit to 15h by @wenting-guo in https://github.com/kubean-io/kubean/pull/653
- include dockerfile on ospkg cache judgment include by @tu1h in https://github.com/kubean-io/kubean/pull/655
- doc: fix english doc broken link by @jonyhy96 in https://github.com/kubean-io/kubean/pull/656
- add speedup offline packages by @wenting-guo in https://github.com/kubean-io/kubean/pull/657
- Add Roadmap by @ErikJiang in https://github.com/kubean-io/kubean/pull/661
- generate offline package for flannel by @cyclinder in https://github.com/kubean-io/kubean/pull/662
- add unsafe_show_logs to debug the download failed resource by @wenting-guo in https://github.com/kubean-io/kubean/pull/663
"},{"location":"releases/v0.4.9/#new-contributors","title":"New Contributors","text":" - @cyclinder made their first contribution in https://github.com/kubean-io/kubean/pull/622
- @dependabot made their first contribution in https://github.com/kubean-io/kubean/pull/645
- @jonyhy96 made their first contribution in https://github.com/kubean-io/kubean/pull/656
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.8...v0.4.9
"},{"location":"releases/v0.5.0/","title":"V0.5.0","text":""},{"location":"releases/v0.5.0/#whats-changed","title":"What's Changed","text":" - support oracle linux in offline enviroment by @ErikJiang in https://github.com/kubean-io/kubean/pull/700
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.4.10...v0.5.0
"},{"location":"releases/v0.5.1/","title":"V0.5.1","text":""},{"location":"releases/v0.5.1/#whats-changed","title":"What's Changed","text":" - remove dockerCE from openeuler pkgs by @hangscer8 in https://github.com/kubean-io/kubean/pull/706
- kubean e2e ci follow kubespray structure category by @tukwila in https://github.com/kubean-io/kubean/pull/707
- Fix KUBEAN_E2E_TEST_CI Error: A branch or tag with the name kubean_ci_test could not be found by @tukwila in https://github.com/kubean-io/kubean/pull/709
- fix kubean e2e ci not really run problem by @tukwila in https://github.com/kubean-io/kubean/pull/712
- Rename subdir api mod path by @hangscer8 in https://github.com/kubean-io/kubean/pull/715
- update other linux tool script by @ErikJiang in https://github.com/kubean-io/kubean/pull/716
- fix ci config variables by @tukwila in https://github.com/kubean-io/kubean/pull/718
- Update go mod dep version by @hangscer8 in https://github.com/kubean-io/kubean/pull/719
- add ipvs case by @wenting-guo in https://github.com/kubean-io/kubean/pull/714
- enable trivy security scanning by @hangscer8 in https://github.com/kubean-io/kubean/pull/721
- update enable repo playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/723
- add clean repolist in other linux script by @ErikJiang in https://github.com/kubean-io/kubean/pull/725
- update yum repo config in other linux by @ErikJiang in https://github.com/kubean-io/kubean/pull/726
- add mkdocs by @ErikJiang in https://github.com/kubean-io/kubean/pull/728
- update docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/729
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.0...v0.5.1
"},{"location":"releases/v0.5.2/","title":"V0.5.2","text":""},{"location":"releases/v0.5.2/#whats-changed","title":"What's Changed","text":" - add module repo for yum manager by @ErikJiang in https://github.com/kubean-io/kubean/pull/730
- CI failure:debug vm change to runner vm by @yulng in https://github.com/kubean-io/kubean/pull/734
- update kube download url by @ErikJiang in https://github.com/kubean-io/kubean/pull/735
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.1...v0.5.2
"},{"location":"releases/v0.5.3/","title":"V0.5.3","text":""},{"location":"releases/v0.5.3/#whats-changed","title":"What's Changed","text":" - CI failure :change vm config and update docker rm command by @yulng in https://github.com/kubean-io/kubean/pull/740
- fetch os kernel version in precheck.yml by @hangscer8 in https://github.com/kubean-io/kubean/pull/739
- add ut by @hangscer8 in https://github.com/kubean-io/kubean/pull/741
- add kubean compatibility k8s version 1.27.1 by @wenting-guo in https://github.com/kubean-io/kubean/pull/743
- Update allinone.md by @yanrongshi in https://github.com/kubean-io/kubean/pull/749
- Support script import_iso.sh to load main function by @ErikJiang in https://github.com/kubean-io/kubean/pull/753
- Update README.md by @wawa0210 in https://github.com/kubean-io/kubean/pull/754
- add readme for docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/755
- ignore pull pause 4 image by @ErikJiang in https://github.com/kubean-io/kubean/pull/756
"},{"location":"releases/v0.5.3/#new-contributors","title":"New Contributors","text":" - @yanrongshi made their first contribution in https://github.com/kubean-io/kubean/pull/749
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.2...v0.5.3
"},{"location":"releases/v0.5.4/","title":"V0.5.4","text":""},{"location":"releases/v0.5.4/#whats-changed","title":"What's Changed","text":" - remove alpha_arm by @hangscer8 in https://github.com/kubean-io/kubean/pull/759
- centos_cilium_online should use offline runner by @tukwila in https://github.com/kubean-io/kubean/pull/761
- e2e:update worker cluster k8s version by @yulng in https://github.com/kubean-io/kubean/pull/760
- update import iso by @ErikJiang in https://github.com/kubean-io/kubean/pull/762
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.3...v0.5.4
"},{"location":"releases/v0.6.0/","title":"V0.6.0","text":""},{"location":"releases/v0.6.0/#whats-changed","title":"What's Changed","text":" - add mirror.md by @yanrongshi in https://github.com/kubean-io/kubean/pull/758
- fix-cluster-controllers-reconcile-loop by @learner0810 in https://github.com/kubean-io/kubean/pull/765
- fix:add kubean version in readme by @yulng in https://github.com/kubean-io/kubean/pull/763
- e2e:modify e2e k8s version by @yulng in https://github.com/kubean-io/kubean/pull/767
- fix error: Failed to compile kubean_ipvs_cluster_e2e by @tukwila in https://github.com/kubean-io/kubean/pull/766
- Add scale docs by @yanrongshi in https://github.com/kubean-io/kubean/pull/768
- update scale docs by @ErikJiang in https://github.com/kubean-io/kubean/pull/769
- Update upgrade.md by @yanrongshi in https://github.com/kubean-io/kubean/pull/771
- Translate installation and use documentation by @yanrongshi in https://github.com/kubean-io/kubean/pull/772
- translation en by @yanrongshi in https://github.com/kubean-io/kubean/pull/773
- fix speedup offline package with curl by @yulng in https://github.com/kubean-io/kubean/pull/727
- when pr just changed docs file not run e2e by @wenting-guo in https://github.com/kubean-io/kubean/pull/781
- add kubean support k8s version range by @wenting-guo in https://github.com/kubean-io/kubean/pull/782
- [docs]Fix upgrade.md by @yanrongshi in https://github.com/kubean-io/kubean/pull/774
- add field to identify image repo scheme by @tu1h in https://github.com/kubean-io/kubean/pull/784
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/788
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/789
- check user has sudo_access by @hangscer8 in https://github.com/kubean-io/kubean/pull/793
- support tencentos 3.1 by @ErikJiang in https://github.com/kubean-io/kubean/pull/791
- fix the Chinese in en docs by @my-git9 in https://github.com/kubean-io/kubean/pull/794
- update import iso sh by @ErikJiang in https://github.com/kubean-io/kubean/pull/797
"},{"location":"releases/v0.6.0/#new-contributors","title":"New Contributors","text":" - @learner0810 made their first contribution in https://github.com/kubean-io/kubean/pull/765
- @my-git9 made their first contribution in https://github.com/kubean-io/kubean/pull/794
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.5.4...v0.6.0
"},{"location":"releases/v0.6.1/","title":"V0.6.1","text":""},{"location":"releases/v0.6.1/#whats-changed","title":"What's Changed","text":" - Update os package for tencentos by @ErikJiang in https://github.com/kubean-io/kubean/pull/800
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.0...v0.6.1
"},{"location":"releases/v0.6.2/","title":"V0.6.2","text":""},{"location":"releases/v0.6.2/#whats-changed","title":"What's Changed","text":" - fix trap issue by @ErikJiang in https://github.com/kubean-io/kubean/pull/802
- update kube version to v1.26.5 by @ErikJiang in https://github.com/kubean-io/kubean/pull/803
- detect dual_stack network by @hangscer8 in https://github.com/kubean-io/kubean/pull/805
- Add auto bump pause version by @ErikJiang in https://github.com/kubean-io/kubean/pull/807
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.1...v0.6.2
"},{"location":"releases/v0.6.3/","title":"V0.6.3","text":""},{"location":"releases/v0.6.3/#whats-changed","title":"What's Changed","text":" - optimize check sudo_access by @hangscer8 in https://github.com/kubean-io/kubean/pull/809
- [e2e test] change kindest version to v1.26.4 by @yulng in https://github.com/kubean-io/kubean/pull/816
- optimize accelerate address by @hangscer8 in https://github.com/kubean-io/kubean/pull/822
- chore: update docs i18n by @yyzxw in https://github.com/kubean-io/kubean/pull/819
- add test case to markdown by @yulng in https://github.com/kubean-io/kubean/pull/796
- Bump mikefarah/yq from 4.33.3 to 4.34.1 by @dependabot in https://github.com/kubean-io/kubean/pull/751
- Bump docker/build-push-action from 4.0.0 to 4.1.1 by @dependabot in https://github.com/kubean-io/kubean/pull/818
- Bump docker/setup-buildx-action from 2.5.0 to 2.7.0 by @dependabot in https://github.com/kubean-io/kubean/pull/817
- add import iso script to release assets by @ErikJiang in https://github.com/kubean-io/kubean/pull/825
- Bump cpina/github-action-push-to-another-repository from 1.5.1 to 1.7.2 by @dependabot in https://github.com/kubean-io/kubean/pull/747
- [docs] update en/zh usage files by @windsonsea in https://github.com/kubean-io/kubean/pull/821
- separate resource build from e2e step by @wenting-guo in https://github.com/kubean-io/kubean/pull/827
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.2...v0.6.3
"},{"location":"releases/v0.6.4/","title":"V0.6.4","text":""},{"location":"releases/v0.6.4/#whats-changed","title":"What's Changed","text":" - update the e2e case list by @wenting-guo in https://github.com/kubean-io/kubean/pull/829
- optimize check vip by @hangscer8 in https://github.com/kubean-io/kubean/pull/830
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.3...v0.6.4
"},{"location":"releases/v0.6.5/","title":"V0.6.5","text":""},{"location":"releases/v0.6.5/#whats-changed","title":"What's Changed","text":" - fix spray-job endTime when operator crashed And return pkg_mgr info by @hangscer8 in https://github.com/kubean-io/kubean/pull/831
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.4...v0.6.5
"},{"location":"releases/v0.6.6/","title":"V0.6.6","text":""},{"location":"releases/v0.6.6/#whats-changed","title":"What's Changed","text":" - Update deploy script for main CI by @ErikJiang in https://github.com/kubean-io/kubean/pull/840
- fix helm client-side throttling by @ErikJiang in https://github.com/kubean-io/kubean/pull/842
- apply for a seat to maintain docs by @windsonsea in https://github.com/kubean-io/kubean/pull/841
- [docs] fix a term
\u6a21\u677f
by @windsonsea in https://github.com/kubean-io/kubean/pull/834 - [docs] fix indentations in theory_of_airgapped_package.md by @windsonsea in https://github.com/kubean-io/kubean/pull/833
- [docs] update custom_action by @windsonsea in https://github.com/kubean-io/kubean/pull/832
- fix version parse in manage_version_cr.sh by @ErikJiang in https://github.com/kubean-io/kubean/pull/844
- doc: install with non-root user by @tu1h in https://github.com/kubean-io/kubean/pull/845
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.5...v0.6.6
"},{"location":"releases/v0.7.0/","title":"V0.7.0","text":""},{"location":"releases/v0.7.0/#whats-changed","title":"What's Changed","text":" - [test] release CI auto to update the 'k8s supported version range list' by @yulng in https://github.com/kubean-io/kubean/pull/849
- [CI failure]retry to get pod name and state running by @yulng in https://github.com/kubean-io/kubean/pull/846
- [e2e test] create 3master+vip cluster by @yulng in https://github.com/kubean-io/kubean/pull/848
- docs: update usage/install by @my-git9 in https://github.com/kubean-io/kubean/pull/847
- [e2e case ] add runner vm (vipadd) and fix readme by @yulng in https://github.com/kubean-io/kubean/pull/855
- [docs] resolve documentation issue 824,360,359,250 by @yulng in https://github.com/kubean-io/kubean/pull/850
- fix kubespray package by @hangscer8 in https://github.com/kubean-io/kubean/pull/859
- Optimize Reconcile Requeue by @RuliXu in https://github.com/kubean-io/kubean/pull/860
- refactor network testcase architecture by @tukwila in https://github.com/kubean-io/kubean/pull/861
- Lock kubespray commit sha by @ErikJiang in https://github.com/kubean-io/kubean/pull/863
- Fix release created repeatedly by @ErikJiang in https://github.com/kubean-io/kubean/pull/866
"},{"location":"releases/v0.7.0/#new-contributors","title":"New Contributors","text":" - @RuliXu made their first contribution in https://github.com/kubean-io/kubean/pull/860
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.6.6...v0.7.0
"},{"location":"releases/v0.7.1/","title":"V0.7.1","text":""},{"location":"releases/v0.7.1/#whats-changed","title":"What's Changed","text":" - Update spray image by @ErikJiang in https://github.com/kubean-io/kubean/pull/872
- work with oracle 8 by @hangscer8 in https://github.com/kubean-io/kubean/pull/871
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.0...v0.7.1
"},{"location":"releases/v0.7.2/","title":"V0.7.2","text":""},{"location":"releases/v0.7.2/#whats-changed","title":"What's Changed","text":" - add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/873
- verify kubespray master head commit id sha pipeline by @tukwila in https://github.com/kubean-io/kubean/pull/870
- retry more times to download files in e2e schedule testing by @tukwila in https://github.com/kubean-io/kubean/pull/875
- correct workflow yaml by @tukwila in https://github.com/kubean-io/kubean/pull/876
- correct verify kubespray yaml errors by @tukwila in https://github.com/kubean-io/kubean/pull/877
- correct HELM_CHART_VERSION value in verify_kubespray_e2e_test by @tukwila in https://github.com/kubean-io/kubean/pull/879
- fix some bug in kubespray commit workflow by @tukwila in https://github.com/kubean-io/kubean/pull/882
- Add renew certs playbook by @ErikJiang in https://github.com/kubean-io/kubean/pull/884
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.1...v0.7.2
"},{"location":"releases/v0.7.3/","title":"V0.7.3","text":""},{"location":"releases/v0.7.3/#whats-changed","title":"What's Changed","text":" - Add sshpass for sync ansible module by @ErikJiang in https://github.com/kubean-io/kubean/pull/886
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.2...v0.7.3
"},{"location":"releases/v0.7.4/","title":"V0.7.4","text":""},{"location":"releases/v0.7.4/#whats-changed","title":"What's Changed","text":" - Set ownReference for clusterOperation releated with cluster by @hangscer8 in https://github.com/kubean-io/kubean/pull/889
- Update renew certs groups by @ErikJiang in https://github.com/kubean-io/kubean/pull/891
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.3...v0.7.4
"},{"location":"releases/v0.8.0/","title":"V0.8.0","text":""},{"location":"releases/v0.8.0/#whats-changed","title":"What's Changed","text":" - Update release process by @tu1h in https://github.com/kubean-io/kubean/pull/869
- enable to config max records by @hangscer8 in https://github.com/kubean-io/kubean/pull/893
- Add license info by @ErikJiang in https://github.com/kubean-io/kubean/pull/892
- Bump actions/setup-go from 3 to 4 by @dependabot in https://github.com/kubean-io/kubean/pull/838
- fix static check format by @hangscer8 in https://github.com/kubean-io/kubean/pull/900
- add cncf to readme by @windsonsea in https://github.com/kubean-io/kubean/pull/897
- add kubean v0.7.4 version compatible with k8s version by @tukwila in https://github.com/kubean-io/kubean/pull/901
- docs: add en install_without_root.md by @my-git9 in https://github.com/kubean-io/kubean/pull/902
- Add killercoda to README by @tu1h in https://github.com/kubean-io/kubean/pull/903
- make cache for new repo by @ErikJiang in https://github.com/kubean-io/kubean/pull/906
- Remove backofflimit by @hangscer8 in https://github.com/kubean-io/kubean/pull/905
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.7.4...v0.8.0
"},{"location":"releases/v0.8.1/","title":"V0.8.1","text":""},{"location":"releases/v0.8.1/#whats-changed","title":"What's Changed","text":" - update repo url for tencentos by @ErikJiang in https://github.com/kubean-io/kubean/pull/907
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.0...v0.8.1
"},{"location":"releases/v0.8.2/","title":"V0.8.2","text":""},{"location":"releases/v0.8.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.8.2/#new-features","title":"\u2728 New Features","text":" - update k8s to v1.26.7 by @hangscer8 in https://github.com/kubean-io/kubean/pull/925
"},{"location":"releases/v0.8.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Ensure the job pod never run again by @hangscer8 in https://github.com/kubean-io/kubean/pull/911
- Fix incorrect ansible pkgmgr detection for tencentos by @tu1h in https://github.com/kubean-io/kubean/pull/912
- fix generate release notes content is empty by @ErikJiang in https://github.com/kubean-io/kubean/pull/915
- Add labeler action by @ErikJiang in https://github.com/kubean-io/kubean/pull/916
- add labeler.yml config by @ErikJiang in https://github.com/kubean-io/kubean/pull/919
- update ci bot by @ErikJiang in https://github.com/kubean-io/kubean/pull/922
- Ensure Cascade Deletion with Ownreference by @hangscer8 in https://github.com/kubean-io/kubean/pull/918
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.1...v0.8.2
"},{"location":"releases/v0.8.3/","title":"V0.8.3","text":""},{"location":"releases/v0.8.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.8.3/#documentation","title":"\ud83d\udcda Documentation","text":" - update Q3 roadmap by @ErikJiang in https://github.com/kubean-io/kubean/pull/929
"},{"location":"releases/v0.8.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - disable CI robot by @ErikJiang in https://github.com/kubean-io/kubean/pull/926
- Add governance doc by @ErikJiang in https://github.com/kubean-io/kubean/pull/927
- support rhel9 by @tu1h in https://github.com/kubean-io/kubean/pull/930
- update docs config by @ErikJiang in https://github.com/kubean-io/kubean/pull/931
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.2...v0.8.3
"},{"location":"releases/v0.8.4/","title":"V0.8.4","text":""},{"location":"releases/v0.8.4/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.8.4/#dependencies","title":"\u2b06\ufe0f Dependencies","text":" - Bump github.com/spf13/cobra from 1.6.0 to 1.7.0 by @dependabot in https://github.com/kubean-io/kubean/pull/732
"},{"location":"releases/v0.8.4/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Correct download path by @Rei1010 in https://github.com/kubean-io/kubean/pull/933
- add ISA field to precheck playbook by @tu1h in https://github.com/kubean-io/kubean/pull/934
- Bump Kubespray version by @tu1h in https://github.com/kubean-io/kubean/pull/937
"},{"location":"releases/v0.8.4/#new-contributors","title":"New Contributors","text":" - @Rei1010 made their first contribution in https://github.com/kubean-io/kubean/pull/933
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.3...v0.8.4
"},{"location":"releases/v0.8.5/","title":"V0.8.5","text":""},{"location":"releases/v0.8.5/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.8.5/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - chor: add golanglint --fix flag by @yyzxw in https://github.com/kubean-io/kubean/pull/936
- Revert \"Bump Kubespray version\" by @tu1h in https://github.com/kubean-io/kubean/pull/938
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.4...v0.8.5
"},{"location":"releases/v0.9.0/","title":"V0.9.0","text":""},{"location":"releases/v0.9.0/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.9.0/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Update k8s support version by @Rei1010 in https://github.com/kubean-io/kubean/pull/946
- add ut Test_TrySuspendPod by @KubeKyrie in https://github.com/kubean-io/kubean/pull/944
- Update E2E kube version by @Rei1010 in https://github.com/kubean-io/kubean/pull/955
- webhook for clusterOperations by @hangscer8 in https://github.com/kubean-io/kubean/pull/956
- fix missing latest release note by @ErikJiang in https://github.com/kubean-io/kubean/pull/953
- update kubespray by @hangscer8 in https://github.com/kubean-io/kubean/pull/960
"},{"location":"releases/v0.9.0/#new-contributors","title":"New Contributors","text":" - @KubeKyrie made their first contribution in https://github.com/kubean-io/kubean/pull/944
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.8.6...v0.9.0
"},{"location":"releases/v0.9.1/","title":"V0.9.1","text":""},{"location":"releases/v0.9.1/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.9.1/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Add compability for kubernetes 1.28.0 by @Rei1010 in https://github.com/kubean-io/kubean/pull/957
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/961
- Build admission image during schedule CI by @Rei1010 in https://github.com/kubean-io/kubean/pull/962
- Correct config path by @Rei1010 in https://github.com/kubean-io/kubean/pull/966
- Adjust env conf by @Rei1010 in https://github.com/kubean-io/kubean/pull/967
- Add missing param by @Rei1010 in https://github.com/kubean-io/kubean/pull/969
- Auto bump kubean support kubernetes version with CI by @Rei1010 in https://github.com/kubean-io/kubean/pull/971
- Update Kubean Support Matrix by @github-actions in https://github.com/kubean-io/kubean/pull/972
- Optimize CI trigger logic by @Rei1010 in https://github.com/kubean-io/kubean/pull/974
- update containerd version by @hangscer8 in https://github.com/kubean-io/kubean/pull/977
"},{"location":"releases/v0.9.1/#new-contributors","title":"New Contributors","text":" - @github-actions made their first contribution in https://github.com/kubean-io/kubean/pull/972
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.9.0...v0.9.1
"},{"location":"releases/v0.9.2/","title":"V0.9.2","text":""},{"location":"releases/v0.9.2/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.9.2/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - optimize precheck to avoid losing data by @hangscer8 in https://github.com/kubean-io/kubean/pull/982
- add unit-test by @hangscer8 in https://github.com/kubean-io/kubean/pull/976
- Adjust PR CI by @Rei1010 in https://github.com/kubean-io/kubean/pull/984
- add BackUp Weight for ClusterOperation by @hangscer8 in https://github.com/kubean-io/kubean/pull/983
- update k8s version by @hangscer8 in https://github.com/kubean-io/kubean/pull/986
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.9.1...v0.9.2
"},{"location":"releases/v0.9.3/","title":"V0.9.3","text":""},{"location":"releases/v0.9.3/#whats-changed","title":"What's Changed","text":""},{"location":"releases/v0.9.3/#other-changes","title":"\ud83d\udd28 Other Changes","text":" - Use complete execute path in playbook
renew_certs
by @tu1h in https://github.com/kubean-io/kubean/pull/988
Full Changelog: https://github.com/kubean-io/kubean/compare/v0.9.2...v0.9.3
"},{"location":"usage/airgap/","title":"\u79bb\u7ebf\u573a\u666f\u7684\u4f7f\u7528","text":""},{"location":"usage/airgap/#_2","title":"\u63d0\u9192\u4e8b\u9879","text":" - \u9488\u5bf9 RHEL 8.4 \u7cfb\u5217\uff0c\u7531\u4e8e\u5305\u4f9d\u8d56\u95ee\u9898\uff0c\u6267\u884c\u8fc7\u7a0b\u4e2d\u4f1a\u5378\u8f7d\u7cfb\u7edf\u9884\u88c5\u7684 fuse \u5305
"},{"location":"usage/airgap/#_3","title":"\u51c6\u5907\u4e8b\u9879","text":" -
\u9700\u8981\u9884\u5148\u90e8\u7f72\u7684\u670d\u52a1:
- \u6587\u4ef6\u8d44\u6e90\u670d\u52a1
minio
- \u955c\u50cf\u4ed3\u5e93\u670d\u52a1
docker registry
\uff082.7 \u4ee5\u4e0b\uff09\u6216\u8005 harbor
-
\u9700\u8981\u5b89\u88c5\u7684\u5fc5\u8981\u5de5\u5177:
- \u7528\u4e8e\u5bfc\u5165\u955c\u50cf\u6587\u4ef6\u7684\u5de5\u5177:
skopeo
\uff0c\u9700\u8981 >=1.9.2; podman
, Required >= 4.4.4 - \u7528\u4e8e\u5bfc\u5165\u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u5de5\u5177:
minio client
-
\u901a\u8fc7Helm\u90e8\u7f72kubean
"},{"location":"usage/airgap/#_4","title":"\u4e0b\u8f7d\u79bb\u7ebf\u8d44\u6e90","text":"\u901a\u8fc7 Github Releases \u9875\u9762\u53ef\u4ee5\u4e0b\u8f7d\u6211\u4eec\u60f3\u8981\u7248\u672c\u7684\u79bb\u7ebf\u8d44\u6e90\u3002
\u79bb\u7ebf\u8d44\u6e90\u7684\u57fa\u672c\u8bf4\u660e:
\u251c\u2500\u2500 files.list # \u6587\u4ef6\u5185\u5bb9\u7684\u5217\u8868\n\u251c\u2500\u2500 files-${tag}.tar.gz # \u6587\u4ef6\u538b\u7f29\u5305, \u5185\u542b\u5bfc\u5165\u811a\u672c\n\u251c\u2500\u2500 images.list # \u955c\u50cf\u5185\u5bb9\u7684\u5217\u8868\n\u251c\u2500\u2500 images-${tag}.tar.gz # \u955c\u50cf\u538b\u7f29\u5305, \u5185\u542b\u5bfc\u5165\u811a\u672c\n\u2514\u2500\u2500 os-pkgs-${linux_distribution}-${tag}.tar.gz # \u5404\u7cfb\u7edf\u538b\u7f29\u5305, \u5185\u542b\u5bfc\u5165\u811a\u672c\n
"},{"location":"usage/airgap/#_5","title":"\u5c06\u79bb\u7ebf\u8d44\u6e90\u5bfc\u5165\u5bf9\u5e94\u670d\u52a1","text":""},{"location":"usage/airgap/#binaries","title":"\u5bfc\u5165 Binaries \u8d44\u6e90","text":"\u8bf7\u5148\u89e3\u538b files-${tag}.tar.gz
\u6587\u4ef6, \u5176\u5185\u90e8\u5305\u542b:
files/\n\u251c\u2500\u2500 import_files.sh # \u8be5\u811a\u672c\u7528\u4e8e\u5bfc\u5165\u4e8c\u8fdb\u5236\u6587\u4ef6\u5230 minio \u6587\u4ef6\u670d\u52a1\n\u2514\u2500\u2500 offline-files.tar.gz # \u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u538b\u7f29\u5305\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4, \u5c06\u4e8c\u8fdb\u5236\u6587\u4ef6\u5bfc\u5165\u5230 minio \u670d\u52a1\u4e2d:
MINIO_USER=${username} MINIO_PASS=${password} ./import_files.sh ${minio_address}\n
minio_address
\u662f minio API Server
\u5730\u5740\uff0c\u7aef\u53e3\u4e00\u822c\u4e3a9000\uff0c\u6bd4\u5982 http://1.2.3.4:9000
"},{"location":"usage/airgap/#images","title":"\u5bfc\u5165 Images \u8d44\u6e90","text":"\u9700\u8981\u89e3\u538b images-${tag}.tar.gz
\u6587\u4ef6, \u5176\u5185\u90e8\u5305\u542b:
images/\n\u251c\u2500\u2500 import_images.sh # \u8be5\u811a\u672c\u7528\u4e8e\u5bfc\u5165\u955c\u50cf\u6587\u4ef6\u5230 docker registry \u6216 harbor \u955c\u50cf\u4ed3\u5e93\u670d\u52a1, \u53ef\u7528\u4e8e\u5408\u5e76\u4e0d\u540c\u5e73\u53f0\u955c\u50cf\n\u2514\u2500\u2500 offline-images.tar.gz # \u955c\u50cf\u6587\u4ef6\u7684\u538b\u7f29\u5305\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4, \u5c06\u955c\u50cf\u6587\u4ef6\u5bfc\u5165\u5230 docker registry \u6216 harbor \u955c\u50cf\u4ed3\u5e93\u670d\u52a1\u4e2d:
# \u514d\u5bc6\u6a21\u5f0f\nREGISTRY_SCHEME=http REGISTRY_ADDR=${registry_address} ./import_images.sh\n\n# \u7528\u6237\u540d\u53e3\u4ee4\u6a21\u5f0f\nREGISTRY_SCHEME=https REGISTRY_ADDR=${registry_address} REGISTRY_USER=${username} REGISTRY_PASS=${password} ./import_images.sh\n
REGISTRY_ADDR
\u662f\u955c\u50cf\u4ed3\u5e93\u7684\u5730\u5740\uff0c\u6bd4\u59821.2.3.4:5000
- \u5f53\u955c\u50cf\u4ed3\u5e93\u5b58\u5728\u7528\u6237\u540d\u5bc6\u7801\u9a8c\u8bc1\u65f6\uff0c\u9700\u8981\u8bbe\u7f6e
REGISTRY_USER
\u548c REGISTRY_PASS
"},{"location":"usage/airgap/#os-packages","title":"\u5bfc\u5165 OS packages \u8d44\u6e90","text":"Note
- \u76ee\u524d\u652f\u6301 Centos / Redhat / Kylin / Ubuntu \u7b49\u53d1\u884c\u7248\u7684 OS Packages \u8d44\u6e90
- \u7edf\u4fe1 UnionTech V20 \u7cfb\u5217\u7684 OS Package \u9700\u8981\u624b\u52a8\u6784\u5efa\uff0c\u6784\u5efa\u65b9\u6cd5\u89c1 README
\u9700\u8981\u89e3\u538b os-pkgs-${linux_distribution}-${tag}.tar.gz
\u6587\u4ef6\uff0c\u5176\u5185\u90e8\u5305\u542b:
os-pkgs\n\u251c\u2500\u2500 import_ospkgs.sh # \u8be5\u811a\u672c\u7528\u4e8e\u5bfc\u5165 os packages \u5230 minio \u6587\u4ef6\u670d\u52a1\n\u251c\u2500\u2500 os-pkgs-amd64.tar.gz # amd64 \u67b6\u6784\u7684 os packages \u5305\n\u251c\u2500\u2500 os-pkgs-arm64.tar.gz # arm64 \u67b6\u6784\u7684 os packages \u5305\n\u2514\u2500\u2500 os-pkgs.sha256sum.txt # os packages \u5305\u7684 sha256sum \u6548\u9a8c\u6587\u4ef6\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff0c\u5c06 os packages \u5305\u5230 minio \u6587\u4ef6\u670d\u52a1\u4e2d\uff1a
MINIO_USER=${username} MINIO_PASS=${password} ./import_ospkgs.sh ${minio_address} os-pkgs-${arch}.tar.gz\n
"},{"location":"usage/airgap/#_6","title":"\u5efa\u7acb\u79bb\u7ebf\u6e90","text":"\u4e0b\u9762\u7684\u3010\u5efa\u7acb\u672c\u5730ISO\u955c\u50cf\u6e90\u3011\u4e0e\u3010\u5efa\u7acb\u5728\u7ebfISO\u955c\u50cf\u6e90\u3011\u53ea\u9700\u8981\u6267\u884c\u5176\u4e2d\u4e00\u4e2a\u5373\u53ef\u3002
"},{"location":"usage/airgap/#iso","title":"\u5efa\u7acb ISO \u955c\u50cf\u6e90","text":""},{"location":"usage/airgap/#iso_1","title":"\u5efa\u7acb\u672c\u5730 ISO \u955c\u50cf\u6e90","text":"OS Packages \u4e3b\u8981\u7528\u4e8e\u89e3\u51b3 docker-ce \u7684\u5b89\u88c5\u4f9d\u8d56\uff0c\u4f46\u5728\u5b9e\u9645\u7684\u79bb\u7ebf\u90e8\u7f72\u8fc7\u7a0b\u4e2d\uff0c\u53ef\u80fd\u8fd8\u9700\u8981\u4f7f\u7528\u5230\u53d1\u884c\u7248\u7cfb\u7edf\u7684\u5176\u4ed6\u5305\uff0c\u6b64\u65f6\u9700\u8981\u5efa\u7acb\u672c\u5730 ISO \u955c\u50cf\u6e90\u3002
Note
\u6211\u4eec\u9700\u8981\u63d0\u524d\u4e0b\u8f7d\u4e3b\u673a\u5bf9\u5e94\u7684 ISO \u7cfb\u7edf\u53d1\u884c\u7248\u955c\u50cf, \u5f53\u524d\u652f\u6301 Centos\u3001Redhat\u3001Ubuntu \u53d1\u884c\u7248\u7684 ISO \u955c\u50cf\u6e90\u521b\u5efa\uff1b \u9700\u8981\u5728\u6bcf\u4e2a\u521b\u5efakubernetes\u7684\u96c6\u7fa4\u4e0a\u90fd\u6267\u884c\u672c\u64cd\u4f5c\u3002
\u8fd9\u91cc\u53ef\u4ee5\u4f7f\u7528\u811a\u672c artifacts/gen_repo_conf.sh
, \u6267\u884c\u5982\u4e0b\u547d\u4ee4\u5373\u53ef\u6302\u8f7d ISO \u955c\u50cf\u6587\u4ef6, \u5e76\u521b\u5efa Repo \u914d\u7f6e\u6587\u4ef6:
# \u57fa\u672c\u683c\u5f0f\n./gen_repo_conf.sh --iso-mode ${linux_distribution} ${iso_image_file}\n# linux_distribution \u7684\u503c\u662f centos\u3001redhat\u3001debian \u6216\u8005 ubuntu\n# \u6267\u884c\u811a\u672c\u521b\u5efa ISO \u955c\u50cf\u6e90\n./gen_repo_conf.sh --iso-mode centos CentOS-7-x86_64-Everything-2207-02.iso\n# \u67e5\u770b ISO \u955c\u50cf\u6302\u8f7d\u60c5\u51b5\ndf -h | grep mnt\n/dev/loop0 9.6G 9.6G 0 100% /mnt/centos-iso\n# \u67e5\u770b ISO \u955c\u50cf\u6e90\u914d\u7f6e\ncat /etc/yum.repos.d/Kubean-ISO.repo\n
[kubean-iso]\nname=Kubean ISO Repo\nbaseurl=file:///mnt/centos-iso\nenabled=1\ngpgcheck=0\nsslverify=0\n
"},{"location":"usage/airgap/#iso_2","title":"\u5efa\u7acb\u5728\u7ebf ISO \u955c\u50cf\u6e90","text":""},{"location":"usage/airgap/#minio","title":"\u5bfc\u5165\u81f3 MinIO","text":"\u5c06 ISO \u4e2d\u7684\u955c\u50cf\u6e90\u5bfc\u5165\u5230 minio server\u4e2d\uff0c\u9700\u8981\u4f7f\u7528\u5230\u811a\u672c artifacts/import_iso.sh
\uff0c\u6267\u884c\u5982\u4e0b\u9762\u547d\u4ee4\u5373\u53ef\u5c06 ISO \u955c\u50cf\u4e2d\u8f6f\u4ef6\u6e90\u5bfc\u5165\u5230 minio server \u4e2d\uff1a
MINIO_USER=${username} MINIO_PASS=${password} ./import_iso.sh ${minio_address} Centos-XXXX.ISO\n
\u4e3a\u4e3b\u673a\u65b0\u5efa\u5982\u4e0b\u6587\u4ef6 /etc/yum.repos.d/centos-iso-online.repo
\u5373\u53ef\u4f7f\u7528\u5728\u7ebf ISO \u955c\u50cf\u6e90:
[kubean-iso-online]\nname=Kubean ISO Repo Online\nbaseurl=${minio_address}/kubean/centos-iso/$releasever/os/$basearch\nenabled=1\ngpgcheck=0\nsslverify=0\n
\u6b64\u5916\uff0c\u5982\u679c\u5bfc\u5165\u7684\u662f RHEL ISO\uff0c\u9700\u6ce8\u610f\u6b64 ISO \u63d0\u4f9b\u4e24\u4e2a\u6e90\uff1a
[kubean-iso-online-BaseOS]\nname=Kubean ISO Repo Online BaseOS\nbaseurl=${minio_address}/kubean/redhat-iso/$releasever/os/$basearch/BaseOS\nenabled=1\ngpgcheck=0\nsslverify=0\n\n\n[kubean-iso-online-AppStream]\nname=Kubean ISO Repo Online AppStream\nbaseurl=${minio_address}/kubean/redhat-iso/$releasever/os/$basearch/AppStream\nenabled=1\ngpgcheck=0\nsslverify=0\n
- \u9700\u8981\u5c06
${minio_address}
\u66ff\u6362\u4e3a minio API Server \u5730\u5740
\u8fd9\u4e00\u6b65\u4e5f\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e ClusterOperation \u6587\u4ef6\u4e2d enable-repo.yml \u7684 extraArgs \u7684\u503c\u6765\u5b9e\u73b0\uff0c \u5c06 extraArgs \u7684\u503c\u6dfb\u52a0\u4e3a '{minio_url}/kubean/centos-iso/$releasever/os/$basearch'
\u8fd9\u79cd\u683c\u5f0f\uff0c \u53c2\u9605 ClusterOperation \u7ed3\u5408 playbook \u521b\u5efa\u6e90\u914d\u7f6e\u6587\u4ef6\u4e86\u89e3\u66f4\u591a\u4fe1\u606f\u3002
"},{"location":"usage/airgap/#_7","title":"\u5bfc\u5165\u81f3\u672c\u5730\u76ee\u5f55","text":"\u5c06 ISO \u4e2d\u7684\u955c\u50cf\u6e90\u5bfc\u5165\u5230\u672c\u5730\u76ee\u5f55\u4e2d\uff0c\u9700\u8981\u4f7f\u7528\u5230\u811a\u672c artifacts/import_iso.sh
\uff0c\u6267\u884c\u5982\u4e0b\u9762\u547d\u4ee4\u5373\u53ef\u5c06 ISO \u955c\u50cf\u4e2d\u8f6f\u4ef6\u6e90\u5bfc\u5165\u5230\u6307\u5b9a\u7684\u672c\u5730\u76ee\u5f55\u4e2d
./import_iso.sh ${you_local_path} Centos-XXXX.ISO\n
repo \u914d\u7f6e\u65b9\u5f0f\u7c7b\u4f3c\u5bfc\u5165\u81f3 MinIO
[kubean-iso-online]\nname=Kubean ISO Repo Online\nbaseurl=${your_local_path}/centos-iso/$releasever/os/$basearch\nenabled=1\ngpgcheck=0\nsslverify=0\n
"},{"location":"usage/airgap/#extras","title":"\u5efa\u7acb extras \u8f6f\u4ef6\u6e90","text":"\u5f53\u524d\u652f\u6301 Red Hat Linux \u7cfb\u5217
\u5728\u5b89\u88c5 K8S \u96c6\u7fa4\u65f6, \u8fd8\u4f1a\u4f9d\u8d56\u4e00\u4e9b extras \u8f6f\u4ef6, \u6bd4\u5982 container-selinux
, \u8fd9\u4e9b\u8f6f\u4ef6\u5f80\u5f80\u5728 ISO \u955c\u50cf\u6e90\u4e2d\u5e76\u4e0d\u63d0\u4f9b. \u5bf9\u6b64 OS packages \u79bb\u7ebf\u5305\u5df2\u5bf9\u5176\u8fdb\u884c\u4e86\u8865\u5145, \u5176\u5728\u5bfc\u5165 minio \u4e4b\u540e, \u6211\u4eec\u8fd8\u9700\u8981\u5411\u5404\u4e2a\u8282\u70b9\u521b\u5efa extra repo \u914d\u7f6e\u6587\u4ef6.
\u540c\u6837\u53ef\u4ee5\u4f7f\u7528\u811a\u672c artifacts/gen_repo_conf.sh
, \u6267\u884c\u5982\u4e0b\u547d\u4ee4\u5373\u53ef\u521b\u5efa Extra Repo:
./gen_repo_conf.sh --url-mode ${linux_distribution} ${repo_base_url}\n\n# \u6267\u884c\u811a\u672c\u521b\u5efa URL \u6e90\u914d\u7f6e\u6587\u4ef6\n./gen_repo_conf.sh --url-mode centos ${minio_address}/kubean/centos/\\$releasever/os/\\$basearch\n# \u67e5\u770b URL \u6e90\u914d\u7f6e\u6587\u4ef6\ncat /etc/yum.repos.d/Kubean-URL.repo\n
[kubean-extra]\nname=Kubean Extra Repo\nbaseurl=http://10.20.30.40:9000/kubean/centos/$releasever/os/$basearch\nenabled=1\ngpgcheck=0\nsslverify=0\n
Note
\u82e5 repo_base_url
\u53c2\u6570\u4e2d\u5e26\u6709 $
\u7b26\u53f7\uff0c\u9700\u8981\u5bf9\u5176\u8fdb\u884c\u8f6c\u4e49 \\$
\u3002
\u9700\u8981\u5c06 ${minio_address}
\u66ff\u6362\u4e3a\u5b9e\u9645 minio API Server
\u7684\u5730\u5740\u3002
"},{"location":"usage/airgap/#clusteroperation-playbook","title":"ClusterOperation \u7ed3\u5408 playbook \u521b\u5efa\u6e90\u914d\u7f6e\u6587\u4ef6","text":"\u7531\u4e8e\u521b\u5efa\u6e90\u7684\u8fc7\u7a0b\u6d89\u53ca\u5230\u96c6\u7fa4\u7684\u6240\u6709\u8282\u70b9, \u624b\u52a8\u811a\u672c\u64cd\u4f5c\u76f8\u5bf9\u7e41\u7410, \u8fd9\u91cc\u63d0\u4f9b\u4e86\u4e00\u79cd playbook \u7684\u89e3\u51b3\u65b9\u5f0f.
centos yum repo \u7684\u914d\u7f6e\u793a\u4f8b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-ops-01\nspec:\n cluster: sample\n image: ghcr.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: enable-repo.yml # \u5728\u90e8\u7f72\u96c6\u7fa4\u524d, \u5148\u6267\u884c enable-repo \u7684 playbook, \u4e3a\u6bcf\u4e2a\u8282\u70b9\u521b\u5efa\u6307\u5b9a url \u7684\u6e90\u914d\u7f6e\n extraArgs: |\n -e \"{repo_list: ['http://10.20.30.40:9000/kubean/centos/\\$releasever/os/\\$basearch']}\"\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: cluster-info.yml\n - actionType: playbook\n action: enable-repo.yml # \u5728\u90e8\u7f72\u96c6\u7fa4\u540e, \u8fd8\u539f\u5404\u8282\u70b9 yum repo \u914d\u7f6e. (\u6ce8\uff1a\u6b64\u6b65\u9aa4, \u53ef\u89c6\u60c5\u51b5\u6dfb\u52a0.)\n extraArgs: |\n -e undo=true\n
ubuntu20.04 apt repo \u7684\u914d\u7f6e\u793a\u4f8b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-ops-01\nspec:\n cluster: sample\n image: ghcr.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: enable-repo.yml # \u5728\u90e8\u7f72\u96c6\u7fa4\u524d, \u5148\u6267\u884c enable-repo \u7684 playbook, \u4e3a\u6bcf\u4e2a\u8282\u70b9\u521b\u5efa\u6307\u5b9a url \u7684\u6e90\u914d\u7f6e\n # \u6ce8\uff1aubuntu \u662f os package \u79bb\u7ebf\u8d44\u6e90\uff0cubuntu-iso \u662f iso \u5b89\u88c5\u5305\u8d44\u6e90\n extraArgs: |\n -e \"{repo_list: ['deb [trusted=yes] http://MINIO_ADDR:9000/kubean/ubuntu/amd64 focal/', 'deb [trusted=yes] http://MINIO_ADDR:9000/kubean/ubuntu-iso focal main restricted']}\"\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: cluster-info.yml\n - actionType: playbook\n action: enable-repo.yml # \u5728\u90e8\u7f72\u96c6\u7fa4\u540e, \u8fd8\u539f\u5404\u8282\u70b9 apt repo \u914d\u7f6e. (\u6ce8\uff1a\u6b64\u6b65\u9aa4, \u53ef\u89c6\u60c5\u51b5\u6dfb\u52a0.)\n extraArgs: |\n -e undo=true\n
"},{"location":"usage/airgap/#_8","title":"\u90e8\u7f72\u96c6\u7fa4\u524d\u7684\u914d\u7f6e","text":"\u79bb\u7ebf\u8bbe\u7f6e\u9700\u8981\u53c2\u8003 kubespray
\u4f4d\u4e8e kubespray/inventory/sample/group_vars/all/offline.yml
\u7684\u914d\u7f6e\u6587\u4ef6\uff1a
---\n## \u5168\u5c40\u7684\u79bb\u7ebf\u914d\u7f6e\n### \u914d\u7f6e\u79c1\u6709\u5bb9\u5668\u955c\u50cf\u4ed3\u5e93\u670d\u52a1\u7684\u5730\u5740\nregistry_host: \"{{ registry_address }}\"\n\n### \u914d\u7f6e\u4e8c\u8fdb\u5236\u6587\u4ef6\u670d\u52a1\u7684\u5730\u5740\ngithub_url: https://files.m.daocloud.io/github.com\ndl_k8s_io_url: https://files.m.daocloud.io/dl.k8s.io\nstorage_googleapis_url: https://files.m.daocloud.io/storage.googleapis.com\nget_helm_url: https://files.m.daocloud.io/get.helm.sh\n\n### \u5982\u679c\u4f7f\u7528 CentOS / RedHat / AlmaLinux / Fedora, \u9700\u8981\u914d\u7f6e yum \u6e90\u6587\u4ef6\u670d\u52a1\u5730\u5740:\nyum_repo: \"{{ minio_address }}\"\n\n### \u5982\u679c\u4f7f\u7528 Debian, \u5219\u914d\u7f6e:\ndebian_repo: \"{{ minio_address }}\"\n\n### \u5982\u679c\u4f7f\u7528 Ubuntu, \u5219\u914d\u7f6e:\nubuntu_repo: \"{{ minio_address }}\"\n\n### \u5982\u679c containerd \u91c7\u7528\u975e\u5b89\u5168 HTTP \u514d\u8ba4\u8bc1\u65b9\u5f0f, \u5219\u9700\u8981\u914d\u7f6e:\ncontainerd_registries_mirrors:\n - prefix: \"{{ registry_address }}\"\n mirrors:\n - host: \"http://{{ registry_address }}\"\n capabilities: [\"pull\", \"resolve\"]\n skip_verify: true\n\n### \u5982\u679c docker \u91c7\u7528\u975e\u5b89\u5168 HTTP \u514d\u8ba4\u8bc1\u65b9\u5f0f, \u5219\u9700\u8981\u914d\u7f6e:\ndocker_insecure_registries:\n - {{ registry_address }}\n
\u989d\u5916\u8bf4\u660e\uff1a
\u9488\u5bf9\u4e00\u4e9b\u7279\u6b8a\u7684\u64cd\u4f5c\u7cfb\u7edf\uff0c\u5728\u79bb\u7ebf\u90e8\u7f72\u65f6\uff0c\u8fd8\u9700\u8981\u6dfb\u52a0\u4e00\u4e9b\u989d\u5916\u53c2\u6570\uff1a
\u64cd\u4f5c\u7cfb\u7edf \u989d\u5916\u53c2\u6570 RHEL \u7cfb\u5217 rhel_enable_repos: false
Oracle Linux \u7cfb\u5217 use_oracle_public_repo: false
\u6211\u4eec\u4ee5 examples/install/3.airgap
\u4f5c\u4e3a\u6a21\u677f\u3002
\u5c06\u5982\u4e0a\u79bb\u7ebf\u914d\u7f6e\u6309\u7167\u5177\u4f53\u60c5\u51b5\u8fdb\u884c\u8c03\u6574\uff0c\u7279\u522b\u9700\u8981\u66ff\u6362<registry_address>
\u548c <minio_address>
\u3002
\u6700\u7ec8\u5c06\u914d\u7f6e\u6dfb\u52a0\u66f4\u65b0\u5230 examples/install/3.airgap/VarsConfCM.yml
\u6587\u4ef6\u4e2d\u3002
\u540c\u65f6\u6211\u4eec\u8fd8\u9700\u8981\u4fee\u6539 examples/install/3.airgap/HostsConfCM.yml
\u4e2d\u7684\u96c6\u7fa4\u8282\u70b9 IP \u53ca\u7528\u6237\u540d\u5bc6\u7801\u3002
\u6700\u7ec8\uff0c\u901a\u8fc7 kubectl apply -f examples/install/3.airgap
\u542f\u52a8 ClusterOperation \u4efb\u52a1\u6765\u5b89\u88c5 k8s \u96c6\u7fa4\u3002
"},{"location":"usage/airgap/#_9","title":"\u589e\u91cf\u79bb\u7ebf\u5305\u7684\u751f\u6210\u548c\u4f7f\u7528","text":"\u8be6\u7ec6\u6587\u6863\u89c1 Air gap patch usage\u3002
"},{"location":"usage/airgap_patch_usage/","title":"\u589e\u91cf\u79bb\u7ebf\u5305\u7684\u751f\u6210\u548c\u4f7f\u7528","text":"\u4e3a\u4e86\u6ee1\u8db3\u7528\u6237\u5bf9\u4e8e\u67d0\u4e9b\u8f6f\u4ef6\u7279\u5b9a\u7248\u672c\u7684\u9700\u8981\uff0cKubean \u63d0\u4f9b\u811a\u672c artifacts/airgap_patch.py
\u6839\u636e\u914d\u7f6e\u6587\u4ef6 manifest.yml
\u6765\u751f\u6210\u5bf9\u5e94\u7248\u672c\u7684\u79bb\u7ebf\u5305\u3002
"},{"location":"usage/airgap_patch_usage/#_2","title":"\u751f\u6210\u589e\u91cf\u79bb\u7ebf\u5305","text":" -
\u5728\u5f53\u524d\u6587\u4ef6\u5939\u65b0\u5efa manifest.yml
\u6587\u4ef6\uff0c\u5185\u5bb9\u4e3e\u4f8b\u5982\u4e0b\uff1a
image_arch:\n - \"amd64\"\n - \"arm64\"\nkube_version:\n - \"v1.24.6\"\n - \"v1.24.4\"\ncalico_version:\n - \"v3.23.3\"\ncni_version:\n - \"v1.1.1\"\ncontainerd_version:\n - \"1.6.8\"\ncilium_version:\n - \"v1.12.1\"\netcd_version:\n - \"v3.5.3\"\n
-
\u5728\u5f53\u524d\u6587\u4ef6\u5939\u65b0\u5efa data
\u6587\u4ef6\u5939
-
\u4f7f\u7528\u955c\u50cf\uff0c\u7b49\u5f85\u8fd0\u884c\u9000\u51fa\u540e\uff0c\u5728 data
\u6587\u4ef6\u5939\u4e2d\u751f\u6210\u589e\u91cf\u79bb\u7ebf\u5305
docker run \\\n -v $(pwd)/data:/data \\\n -v $(pwd)/manifest.yml:/manifest.yml \\\n -e ZONE=CN \\\n ghcr.io/kubean-io/airgap-patch:v0.11.1\n
\u73af\u5883\u53d8\u91cf \u53ef\u9009\u503c\u63cf\u8ff0 \uff08 :\u8868\u793a\u9ed8\u8ba4\u503c\uff09 ZONE DEFAULT
: \u91c7\u7528\u9ed8\u8ba4\u539f\u59cb\u5730\u5740\u4e0b\u8f7d\u79bb\u7ebf\u8d44\u6e90 CN
: \u91c7\u7528\u56fd\u5185 DaoCloud \u52a0\u901f\u5668\u5730\u5740\u4e0b\u8f7d\u79bb\u7ebf\u8d44\u6e90 MODE INCR
: \u4ec5\u6784\u5efa\u914d\u7f6e\u4e2d\u6307\u5b9a\u7ec4\u4ef6\u7684\u79bb\u7ebf\u8d44\u6e90\uff08\u5373\uff1a\u589e\u91cf\u5305\uff09 FULL
: \u5c06\u6784\u5efa\u914d\u7f6e\u4e2d\u6307\u5b9a\u7684\u7ec4\u4ef6\u4ee5\u53ca\u96c6\u7fa4\u90e8\u7f72\u5fc5\u8981\u5176\u4ed6\u7ec4\u4ef6\u7684\u79bb\u7ebf\u8d44\u6e90\uff08\u5373\uff1a\u5168\u91cf\u5305\uff09
"},{"location":"usage/airgap_patch_usage/#_3","title":"\u4f7f\u7528\u589e\u91cf\u79bb\u7ebf\u5305","text":"\u589e\u91cf\u5305\u7684\u76ee\u5f55\u7ed3\u6784\u5982\u4e0b:
data\n\u2514\u2500\u2500 airgap_patch\n \u251c\u2500\u2500 amd64\n \u2502\u00a0\u00a0 \u251c\u2500\u2500 files\n \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 import_files.sh\n \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 offline-files.tar.gz\n \u2502\u00a0\u00a0 \u2514\u2500\u2500 images\n \u2502\u00a0\u00a0 \u251c\u2500\u2500 import_images.sh\n \u2502\u00a0\u00a0 \u2514\u2500\u2500 offline-images.tar.gz\n \u251c\u2500\u2500 arm64\n \u2502\u00a0\u00a0 \u251c\u2500\u2500 files\n \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 import_files.sh\n \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 offline-files.tar.gz\n \u2502\u00a0\u00a0 \u2514\u2500\u2500 images\n \u2502\u00a0\u00a0 \u251c\u2500\u2500 import_images.sh\n \u2502\u00a0\u00a0 \u2514\u2500\u2500 offline-images.tar.gz\n \u2514\u2500\u2500 localartifactset.cr.yaml\n
-
\u5411 MinIO \u4e2d\u5199\u5165\u6587\u4ef6\u6570\u636e
cd data/airgap_patch/amd64/files\n\nMINIO_USER=${username} MINIO_PASS=${password} ./import_files.sh ${minio_address}\n
minio_address
\u662f minio API Server
\u5730\u5740\uff0c\u7aef\u53e3\u4e00\u822c\u4e3a 9000\uff0c\u6bd4\u5982 http://1.2.3.4:9000
\u3002
-
\u5411 Docker Registry\uff08\u63a8\u8350\u4f7f\u7528 2.6.2 \u7248\u672c\uff09\u6216\u8005 Harbor \u5199\u5165\u955c\u50cf\u6570\u636e
cd data/airgap_patch/amd64/images\n\n# 1. \u514d\u5bc6\u6a21\u5f0f\nREGISTRY_SCHEME=http REGISTRY_ADDR=${registry_address} ./import_images.sh\n\n# 2. \u7528\u6237\u540d\u53e3\u4ee4\u6a21\u5f0f\nREGISTRY_SCHEME=https REGISTRY_ADDR=${registry_address} REGISTRY_USER=${username} REGISTRY_PASS=${password} ./import_images.sh\n
REGISTRY_ADDR
\u662f\u955c\u50cf\u4ed3\u5e93\u7684\u5730\u5740\uff0c\u6bd4\u59821.2.3.4:5000
- \u5f53\u955c\u50cf\u4ed3\u5e93\u5b58\u5728\u7528\u6237\u540d\u5bc6\u7801\u9a8c\u8bc1\u65f6\uff0c\u9700\u8981\u8bbe\u7f6e
REGISTRY_USER
\u548c REGISTRY_PASS
-
\u5c06 localartifactset.cr.yaml
\u5199\u5165\u5230 K8s \u96c6\u7fa4
cd data/airgap_patch\nkubectl apply -f localartifactset.cr.yaml\n
\u8fd9\u4e00\u6b65\u662f\u4e3a\u4e86\u5c06\u65b0\u7684\u53ef\u79bb\u7ebf\u4f7f\u7528\u7684\u8f6f\u4ef6\u7248\u672c\u4fe1\u606f\u544a\u77e5 kubean-operator\u3002
"},{"location":"usage/all_in_one_install/","title":"\u591a\u5408\u4e00\u6a21\u5f0f\u6700\u5c0f\u5316\u90e8\u7f72\u96c6\u7fa4","text":""},{"location":"usage/all_in_one_install/#_2","title":"\u524d\u7f6e\u6761\u4ef6","text":" - \u60a8\u5df2\u62e5\u6709\u4e00\u4e2a\u6807\u51c6 kubernetes \u96c6\u7fa4\u6216\u4e91\u5382\u5546\u63d0\u4f9b\u7684\u96c6\u7fa4\u3002
- \u96c6\u7fa4\u63a7\u5236\u8282\u70b9\u6216\u4e91\u7ec8\u7aef\u5df2\u5c06\u5b89\u88c5\u4e86 kubectl \u5de5\u5177\u3002
- kubean helm chart \u5df2\u5728\u60a8\u7684\u96c6\u7fa4\u4e0a\u90e8\u7f72\u3002
- kubean \u9879\u76ee\u5df2\u7ecf\u514b\u9686\u81f3\u60a8\u672c\u5730\uff0c\u5982\u679c\u60a8\u8fd8\u672a\u514b\u9686 kubean\uff0c\u53ef\u4ee5\u6267\u884c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u8fdb\u884c\u514b\u9686\uff1a
git clone https://github.com/kubean-io/kubean.git\n
"},{"location":"usage/all_in_one_install/#_3","title":"\u5f00\u59cb\u90e8\u7f72","text":"\u672c\u6559\u7a0b\u5c06\u4f7f\u7528\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example
\u6587\u4ef6\u4f5c\u4e3a\u8303\u4f8b\u6a21\u677f\uff0c\u8fdb\u884c\u96c6\u7fa4\u90e8\u7f72\u6f14\u793a\u3002
\u501f\u52a9\u6848\u4f8b\u6a21\u677f\uff0c\u4ec5\u9700\u4e24\u6b65\u6211\u4eec\u5c31\u80fd\u4f7f\u7528 kubean \u5b8c\u6210\u4e00\u4e2a\u5355\u8282\u70b9\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/all_in_one_install/#1-allinoneyml","title":"1. \u914d\u7f6e AllInOne.yml \u53c2\u6570","text":"\u8fdb\u5165 kubean/examples/install/1.minimal
\u6587\u4ef6\u8def\u5f84\u4e0b\uff0c\u7f16\u8f91\u5355\u8282\u70b9\u6a21\u5f0f\u90e8\u7f72\u6a21\u677f AllInOne.yml\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\u3002
<IP1>
\uff1a\u8282\u70b9 IP\u3002 <USERNAME>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\uff0c\u5efa\u8bae\u4f7f\u7528 root \u6216\u5177\u6709 root \u6743\u9650\u7684\u7528\u6237\u767b\u9646\u3002 <PASSWORD>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\u3002 <TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a AllInOne.yml \u793a\u4f8b\uff1a
AllInOne.yml \u793a\u4f8b ---\napiVersion: v1\nkind: ConfigMap\nmetadata:\nname: mini-hosts-conf\nnamespace: kubean-system\ndata:\nhosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n\n---\napiVersion: v1\nkind: ConfigMap\nmetadata:\nname: mini-vars-conf\nnamespace: kubean-system\ndata:\ngroup_vars.yml: |\n container_manager: containerd\n kube_network_plugin: calico\n etcd_deployment_type: kubeadm\n\n---\napiVersion: kubean.io/v1alpha1\nkind: Cluster\nmetadata:\nname: cluster-mini\nlabels:\n clusterName: cluster-mini\nspec:\nhostsConfRef:\n namespace: kubean-system\n name: mini-hosts-conf\nvarsConfRef:\n namespace: kubean-system\n name: mini-vars-conf\n\n---\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\nname: cluster-mini-install-ops\nspec:\ncluster: cluster-mini\nimage: ghcr.m.daocloud.io/kubean-io/spray-job:v0.5.2 # kubean \u955c\u50cf\u7248\u672c\nactionType: playbook\naction: cluster.yml\npreHook:\n - actionType: playbook\n action: disable-firewalld.yml\npostHook:\n - actionType: playbook\n action: cluster-info.yml\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u7f16\u8f91 AllInOne.yml \u914d\u7f6e\u6a21\u677f\uff1a
vi kubean/examples/install/1.minimal/AllInOne.yml\n
"},{"location":"usage/all_in_one_install/#2-allinoneyml","title":"2. \u5e94\u7528 AllInOne.yml \u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 AllInOne.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
kubectl apply -f examples/install/1.minimal/AllInOne.yml\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u5b8c\u6210\u4e86\u4e00\u4e2a\u7b80\u5355\u7684\u5355\u8282\u70b9\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/helm_install_kubean/","title":"\u5b89\u88c5 kubean helm \u5e94\u7528","text":""},{"location":"usage/helm_install_kubean/#_1","title":"\u524d\u7f6e\u6761\u4ef6","text":" - \u60a8\u5df2\u62e5\u6709\u4e00\u4e2a\u6807\u51c6 kubernetes \u96c6\u7fa4\u6216\u4e91\u5382\u5546\u63d0\u4f9b\u7684\u96c6\u7fa4\u3002
- \u5728\u60a8\u7684\u96c6\u7fa4\u63a7\u5236\u8282\u70b9\u6216\u4e91\u7ec8\u7aef\u4e0a\u5df2\u5b8c\u6210 Helm \u5de5\u5177\u7684\u5b89\u88c5\u3002\u5982\u4f55\u5b89\u88c5 Helm \u5de5\u5177\u3002
"},{"location":"usage/helm_install_kubean/#_2","title":"\u5f00\u59cb\u90e8\u7f72","text":""},{"location":"usage/helm_install_kubean/#1-kubean-helm","title":"1. \u6dfb\u52a0 kubean Helm \u4ed3\u5e93","text":"\u5c06 kubean Helm \u4ed3\u5e93\u6dfb\u52a0\u5230\u672c\u5730 Helm \u4ed3\u5e93\uff0c\u5728\u73b0\u6709\u96c6\u7fa4\u63a7\u5236\u8282\u70b9\u6216\u4e91\u7ec8\u7aef\u4e0a\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u3002
helm repo add kubean-io https://kubean-io.github.io/kubean-helm-chart/\n
\u5b8c\u6210\u4e0a\u4e00\u6b65\u540e\u68c0\u67e5 kubean \u4ed3\u5e93\u662f\u5426\u5df2\u7ecf\u6b63\u786e\u6dfb\u52a0\u81f3\u672c\u5730 Helm \u4ed3\u5e93\u3002
$ helm repo list\n\nNAME URL\nkubean-io https://kubean-io.github.io/kubean-helm-chart/\n
"},{"location":"usage/helm_install_kubean/#2-kubean","title":"2. \u5b89\u88c5 kubean","text":"\u68c0\u67e5 kubean Helm \u4ed3\u5e93\u4e2d\u53ef\u7528\u7684 Chart \u53ca\u5176\u7248\u672c\uff0c\u6267\u884c\u4e0b\u9762\u547d\u4ee4\u5c06\u5217\u51fa kubean Helm \u4ed3\u5e93\u5185\u6240\u6709\u7684 Chart \u5217\u8868\u3002
$ helm search repo kubean\n\nNAME CHART VERSION APP VERSION DESCRIPTION\nkubean-io/kubean v0.5.2 v0.5.2 A Helm chart for kubean\n
\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u540e\uff0c\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u5b89\u88c5 kubean\u3002
helm install kubean kubean-io/kubean --create-namespace -n kubean-system\n
Note
\u60a8\u8fd8\u53ef\u4ee5\u4f7f\u7528 \"--version\" \u53c2\u6570\u6765\u6307\u5b9a kubean \u7684\u7248\u672c\u3002
"},{"location":"usage/helm_install_kubean/#3-kubean-release","title":"3. \u67e5\u770b\u5df2\u5b89\u88c5\u7684 kubean release","text":"\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u5b8c\u6210\u4e86 kubean helm chart \u7684\u90e8\u7f72\uff0c\u60a8\u53ef\u4ee5\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u67e5\u770b kubean-system \u547d\u540d\u7a7a\u95f4\u4e0b\u7684 helm release\u3002
$ helm ls -n kubean-system\n\nNAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION\nkubean kubean-system 1 2023-05-15 00:24:32.719770617 -0400 -0400 deployed kubean-v0.4.9-rc1 v0.4.9-rc1\n
"},{"location":"usage/install/","title":"\u96c6\u7fa4\u90e8\u7f72","text":"\u524d\u7f6e\u6761\u4ef6\uff1a\u901a\u8fc7 helm \u5b89\u88c5 kubean charts\u3002
"},{"location":"usage/install/#_2","title":"\u5355\u8282\u70b9\u96c6\u7fa4\u90e8\u7f72","text":"\u53c2\u8003 minimal
\u6837\u4f8b\u6a21\u677f
\u53c2\u7167\u6a21\u677f\uff0c\u6211\u4eec\u5c06\u521b\u5efa\u4e00\u4e2a\u591a\u5408\u4e00\u7684\u5355\u8282\u70b9\u96c6\u7fa4\uff1a
"},{"location":"usage/install/#1-allinoneyml","title":"1. \u66f4\u65b0 AllInOne.yml
\u4e2d\u7684\u5360\u4f4d\u7b26\u4e3a\u771f\u5b9e\u503c","text":" <IP1>
<USERNAME>
<PASSWORD>
<TAG>
"},{"location":"usage/install/#2-allinoneyml","title":"2. \u5e94\u7528 AllInOne.yml
","text":"$ kubectl apply -f examples/install/1.minimal/\n
"},{"location":"usage/install/#_3","title":"\u52a0\u901f\u5668\u6a21\u5f0f\u90e8\u7f72","text":"\u53c2\u8003 mirror
\u6837\u4f8b\u6a21\u677f
"},{"location":"usage/install/#1-2mirror-yaml","title":"1. \u66f4\u65b0 2.mirror
\u76ee\u5f55\u4e2d yaml \u6e05\u5355\u7684\u5360\u4f4d\u7b26\u4e3a\u771f\u5b9e\u503c","text":" <IP1>
/ <IP2>
... <USERNAME>
<PASSWORD>
<TAG>
"},{"location":"usage/install/#2-2mirror-yaml","title":"2. \u5e94\u7528 2.mirror
\u4e2d\u7684 yaml \u6e05\u5355","text":"$ kubectl apply -f examples/install/2.mirror/\n
"},{"location":"usage/install/#3-varsconfcm","title":"3. \u52a0\u901f\u5668\u955c\u50cf\u8bbe\u7f6e\u8bf7\u89c1 VarsConfCM
","text":"\u672c\u4f8b\u4e2d\u4f7f\u7528\u5230\u7684\u52a0\u901f\u5668: * \u4e8c\u8fdb\u5236\u52a0\u901f\uff1apublic binary files mirror * \u955c\u50cf\u52a0\u901f\uff1apublic image mirror
"},{"location":"usage/install/#_4","title":"\u7eaf\u79bb\u7ebf\u6a21\u5f0f\u90e8\u7f72","text":"\u53c2\u8003 airgap
\u6837\u4f8b\u6a21\u677f
\u8be6\u7ec6\u8bf7\u6d4f\u89c8\u79bb\u7ebf\u573a\u666f\u7684\u4f7f\u7528
"},{"location":"usage/install/#ssh","title":"SSH \u79d8\u94a5\u6a21\u5f0f\u90e8\u7f72","text":"\u8be6\u7ec6\u8bf7\u6d4f\u89c8\u4f7f\u7528 SSH \u79d8\u94a5\u65b9\u5f0f\u90e8\u7f72 K8S \u96c6\u7fa4
"},{"location":"usage/install_without_root/","title":"\u4ee5\u975e root \u7528\u6237\u90e8\u7f72\u96c6\u7fa4","text":""},{"location":"usage/install_without_root/#_1","title":"\u5185\u5bb9","text":" - \u2713 1. sudo \u6743\u9650\u6821\u9a8c
- \u2713 2. \u521b\u5efa\u4e3b\u673a\u6e05\u5355\u914d\u7f6e
- \u2713 3. \u5236\u5907\u90e8\u7f72\u96c6\u7fa4\u7684\u914d\u7f6e\u53c2\u6570
- \u2713 4. \u51c6\u5907 Kubean \u7684\u81ea\u5b9a\u4e49\u8d44\u6e90
- \u2713 5. \u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4
"},{"location":"usage/install_without_root/#sudo","title":"sudo \u6743\u9650\u6821\u9a8c","text":"\u5b89\u88c5\u8fc7\u7a0b\u4e2d\u6d89\u53ca\u7cfb\u7edf\u7279\u6743\u64cd\u4f5c\uff0c\u6545\u7528\u6237\u9700\u8981\u5177\u5907 sudo \u6743\u9650\uff0c\u53ef\u8fdb\u884c\u5982\u4e0b\u68c0\u67e5\uff1a
-
\u4f7f\u7528\u975e root \u7528\u6237\u767b\u5f55\u5230\u76ee\u6807\u8282\u70b9
-
\u68c0\u67e5\u662f\u5426\u5b58\u5728 sudo \u547d\u4ee4\uff0c\u4e0d\u5b58\u5728\u5219\u901a\u8fc7\u7cfb\u7edf\u5305\u7ba1\u7406\u5668\u8fdb\u884c\u5b89\u88c5
which sudo
-
\u5728\u7ec8\u7aef\u6267\u884c echo | sudo -S -v
\u82e5\u7ed3\u679c\u8f93\u51fa xxx is not in the sudoers file. This incident will be reported
\u6216 User xxx do not have sudo privilege
\u7b49\u7c7b\u4f3c\u4fe1\u606f\uff0c\u5373\u8bf4\u660e\u5f53\u524d\u7528\u6237\u4e0d\u5177\u5907 sudo \u6743\u9650\uff0c\u53cd\u4e4b\u8bf4\u660e\u5f53\u524d\u7528\u6237\u5177\u6709 sudo \u6743\u9650\u3002
"},{"location":"usage/install_without_root/#_2","title":"\u914d\u7f6e\u4e3b\u673a\u6e05\u5355","text":"\u793a\u4f8b\uff1a\u4e3b\u673a\u6e05\u5355 HostsConfCM.yml
\u5185\u5bb9\u5927\u81f4\u5982\u4e0b\uff0c\u5c06\u4e0b\u65b9 \u548c \u66ff\u6362\u4e3a\u5b9e\u9645\u7684\u7528\u6237\u540d\u548c\u5bc6\u7801\uff1a
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: sample-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n master:\n ip: 192.168.10.11\n access_ip: 192.168.10.11\n ansible_host: 192.168.10.11\n ansible_connection: ssh\n ansible_user: <USERNAME>\n ansible_password: <PASSWORD>\n ansible_become_password: <PASSWORD>\n worker:\n ip: 192.168.10.12\n access_ip: 192.168.10.12\n ansible_host: 192.168.10.12\n ansible_connection: ssh\n ansible_user: <USERNAME>\n ansible_password: <PASSWORD>\n ansible_become_password: <PASSWORD>\n children:\n kube_control_plane:\n hosts:\n master:\n kube_node:\n hosts:\n master:\n worker:\n etcd:\n hosts:\n master:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u6ce8\uff1a\u5982\u679c\u5728 /etc/sudoers \u6587\u4ef6\u5185\u8be5\u7528\u6237\u914d\u7f6e\u4e3a NOPASSWD\uff08\u5373\u65e0\u5bc6\u7801\u63d0\u6743\uff09\uff0c\u53ef\u5c06 ansible_become_password
\u6240\u5728\u884c\u6ce8\u91ca
"},{"location":"usage/install_without_root/#_3","title":"\u5236\u5907\u90e8\u7f72\u96c6\u7fa4\u7684\u914d\u7f6e\u53c2\u6570","text":"\u96c6\u7fa4\u914d\u7f6e\u53c2\u6570 VarsConfCM.yml
\u7684\u5185\u5bb9\uff0c\u53ef\u4ee5\u53c2\u8003 demo vars conf\u3002
# VarsConfCM.yml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: sample-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n container_manager: containerd\n kube_network_plugin: calico\n kube_network_plugin_multus: false\n kube_proxy_mode: iptables\n enable_nodelocaldns: false\n etcd_deployment_type: kubeadm\n ntp_enabled: true\n ...\n
"},{"location":"usage/install_without_root/#kubean","title":"\u51c6\u5907 Kubean \u7684\u81ea\u5b9a\u4e49\u8d44\u6e90","text":" -
Cluster \u81ea\u5b9a\u4e49\u8d44\u6e90\u5185\u5bb9\u793a\u4f8b
# Cluster.yml\napiVersion: kubean.io/v1alpha1\nkind: Cluster\nmetadata:\n name: sample\nspec:\n hostsConfRef:\n namespace: kubean-system\n name: sample-hosts-conf\n varsConfRef:\n namespace: kubean-system\n name: sample-vars-conf\n sshAuthRef: # \u5173\u952e\u5c5e\u6027\uff0c\u6307\u5b9a\u96c6\u7fa4\u90e8\u7f72\u671f\u95f4\u7684 ssh \u79c1\u94a5 secret\n namespace: kubean-system\n name: sample-ssh-auth\n
-
ClusterOperation \u81ea\u5b9a\u4e49\u8d44\u6e90\u5185\u5bb9\u793a\u4f8b
# ClusterOperation.yml\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: sample-create-cluster\nspec:\n cluster: sample\n image: ghcr.m.daocloud.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: kubeconfig.yml\n - actionType: playbook\n action: cluster-info.yml\n
"},{"location":"usage/install_without_root/#_4","title":"\u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4","text":"\u5047\u8bbe\u6240\u6709 YAML \u6e05\u5355\u90fd\u5b58\u653e\u5728 create_cluster
\u76ee\u5f55\uff1a
$ tree create_cluster/\ncreate_cluster\n\u251c\u2500\u2500 HostsConfCM.yml # \u4e3b\u673a\u6e05\u5355\n\u251c\u2500\u2500 SSHAuthSec.yml # SSH\u79c1\u94a5\n\u251c\u2500\u2500 VarsConfCM.yml # \u96c6\u7fa4\u53c2\u6570\n\u251c\u2500\u2500 Cluster.yml # Cluster CR\n\u2514\u2500\u2500 ClusterOperation.yml # ClusterOperation CR\n
\u901a\u8fc7 kubectl apply
\u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4:
kubectl apply -f create_cluster/\n
"},{"location":"usage/mirror_install/","title":"\u4f7f\u7528\u52a0\u901f\u6a21\u5f0f\u90e8\u7f72\u96c6\u7fa4","text":""},{"location":"usage/mirror_install/#_2","title":"\u524d\u7f6e\u6761\u4ef6","text":" - \u60a8\u5df2\u62e5\u6709\u4e00\u4e2a\u6807\u51c6 kubernetes \u96c6\u7fa4\u6216\u4e91\u5382\u5546\u63d0\u4f9b\u7684\u96c6\u7fa4\u3002
- \u96c6\u7fa4\u63a7\u5236\u8282\u70b9\u6216\u4e91\u7ec8\u7aef\u5df2\u5c06\u5b89\u88c5\u4e86 kubectl \u5de5\u5177\u3002
- kubean helm chart \u5df2\u5728\u60a8\u7684\u96c6\u7fa4\u4e0a\u90e8\u7f72\u3002
- kubean \u9879\u76ee\u5df2\u7ecf\u514b\u9686\u81f3\u60a8\u672c\u5730\uff0c\u5982\u679c\u60a8\u8fd8\u672a\u514b\u9686 kubean\uff0c\u53ef\u4ee5\u6267\u884c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u8fdb\u884c\u514b\u9686\uff1a
$ git clone https://github.com/kubean-io/kubean.git\n
"},{"location":"usage/mirror_install/#_3","title":"\u5f00\u59cb\u90e8\u7f72","text":"\u672c\u6559\u7a0b\u5c06\u4f7f\u7528\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example/2.mirror
\u6587\u4ef6\u4f5c\u4e3a\u8303\u4f8b\u6a21\u677f\uff0c\u8fdb\u884c\u96c6\u7fa4\u52a0\u901f\u90e8\u7f72\u6f14\u793a\u3002
\u5728\u52a0\u901f\u90e8\u7f72\u6a21\u677f 2.mirror
\u5185\u5df2\u7ecf\u5185\u7f6e\u4e86\u52a0\u901f\u53c2\u6570\u914d\u7f6e\uff0c\u60a8\u53ea\u9700\u8981\u5c06 /2.mirror
\u6587\u4ef6\u8def\u5f84\u4e0b\u7684 HostsConfCM.yml
** \u548c ClusterOperation.yml
** \u4e24\u4e2a\u914d\u7f6e\u6a21\u677f\u6587\u4ef6\u5185\u7684\u4e3b\u673a\u7b49\u4fe1\u606f\u6539\u6210\u60a8\u7684\u771f\u5b9e\u53c2\u6570\u3002
2.mirror` \u6587\u4ef6\u5185\u4e3b\u8981\u7684\u914d\u7f6e\u6587\u4ef6\u53ca\u7528\u9014\u5982\u4e0b\uff1a .2.mirror\n \u251c\u2500\u2500 Cluster.yml # \u5f85\u5efa\u96c6\u7fa4\u4fe1\u606f\u7684\u62bd\u8c61\n \u251c\u2500\u2500 ClusterOperation.yml # kubean \u7248\u672c\u53ca\u4efb\u52a1\u914d\u7f6e\n \u251c\u2500\u2500 HostsConfCM.yml # \u5f85\u5efa\u96c6\u7fa4\u7684\u8282\u70b9\u4fe1\u606f\u914d\u7f6e\n \u2514\u2500\u2500 VarsConfCM.yml # \u52a0\u901f\u7b49\u5b83\u7279\u6027\u914d\u7f6e\n
"},{"location":"usage/mirror_install/#1-hostsconfcmyml","title":"1. \u914d\u7f6e\u4e3b\u673a\u914d\u7f6e\u53c2\u6570 HostsConfCM.yml","text":"\u8fdb\u5165 kubean/examples/install/2.mirror/
\u8def\u5f84\uff0c\u7f16\u8f91\u5f85\u5efa\u96c6\u7fa4\u8282\u70b9\u914d\u7f6e\u4fe1\u606f\u6a21\u677f HostsConfCM.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<IP1>
\uff1a\u8282\u70b9 IP\u3002 <USERNAME>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\uff0c\u5efa\u8bae\u4f7f\u7528 root \u6216\u5177\u6709 root \u6743\u9650\u7684\u7528\u6237\u767b\u9646\u3002 <PASSWORD>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\u3002
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a HostsConfCM.yml \u793a\u4f8b\uff1a
HostsConfCM.yml \u793a\u4f8b apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: online-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n node2:\n ip: 10.6.175.20 # \u8282\u70b9 2 \u7684 IP\n access_ip: 10.6.175.20 # \u8282\u70b9 2 IP\n ansible_host: 10.6.175.20 # \u8282\u70b9\u7684 2 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9 2 \u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9 2 \u7684\u5bc6\u7801\n children:\n kube_control_plane: # \u914d\u7f6e\u96c6\u7fa4\u63a7\u5236\u8282\u70b9\n hosts:\n node1:\n kube_node: # \u914d\u7f6e\u96c6\u7fa4\u5de5\u4f5c\u8282\u70b9\n hosts:\n node1:\n node2:\n etcd: # \u914d\u7f6e\u96c6\u7fa4 ETCD \u8282\u70b9\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u7f16\u8f91 HostsConfCM.yml \u914d\u7f6e\u6a21\u677f\uff1a
$ vi kubean/examples/install/2.mirror/HostsConfCM.yml\n
"},{"location":"usage/mirror_install/#2-kubean-clusteroperationyml","title":"2. \u914d\u7f6e kubean \u4efb\u52a1\u914d\u7f6e\u53c2\u6570 ClusterOperation.yml","text":"\u8fdb\u5165 kubean/examples/install/2.mirror/
\u8def\u5f84\uff0c\u7f16\u8f91\u5f85\u5efa\u96c6\u7fa4\u8282\u70b9\u914d\u7f6e\u4fe1\u606f\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a ClusterOperation.yml \u793a\u4f8b\uff1a
ClusterOperation.yml \u793a\u4f8b apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster1-online-install-ops\nspec:\n cluster: cluster1-online\n image: ghcr.m.daocloud.io/kubean-io/spray-job:v0.5.2 # kubean \u955c\u50cf\u7248\u672c\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: kubeconfig.yml\n - actionType: playbook\n action: cluster-info.yml\n
\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u7f16\u8f91 ClusterOperation.yml \u914d\u7f6e\u6a21\u677f\uff1a
$ vi kubean/examples/install/2.mirror/ClusterOperation.yml\n
"},{"location":"usage/mirror_install/#3-2mirror","title":"3.\u5e94\u7528 2.mirror \u6587\u4ef6\u4e0b\u6240\u6709\u7684\u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 HostsConfCM.yml \u548c ClusterOperation.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/install/2.mirror\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u4f7f\u7528\u52a0\u901f\u6a21\u5f0f\u5b8c\u6210\u4e86\u4e00\u4e2a\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/scale_worknode/","title":"\u96c6\u7fa4\u5de5\u4f5c\u8282\u70b9\u6269\u7f29\u5bb9","text":"\u5728\u8f6f\u4ef6\u5f00\u53d1\u8fd0\u7ef4\u7684\u8fc7\u7a0b\u4e2d\uff0c\u4e1a\u52a1\u7684\u53d1\u5c55\u5f80\u5f80\u9700\u8981\u6dfb\u52a0\u96c6\u7fa4\u7684\u5de5\u4f5c\u8282\u70b9\u4ee5\u6ee1\u8db3\u4e1a\u52a1\u589e\u957f\uff0c\u5bf9\u4e8e\u4f7f\u7528 kubean \u90e8\u7f72\u7684\u96c6\u7fa4\uff0c\u5728 kubean \u4e2d\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u58f0\u660e\u5f0f\u7684\u65b9\u5f0f\uff0c\u5feb\u901f\u6269\u7f29\u5bb9\u96c6\u7fa4\u5de5\u4f5c\u8282\u70b9\u3002
\u5728\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example/scale
\u6587\u4ef6\u5185\uff0c\u540c\u6837\u63d0\u4f9b\u4e86\u5de5\u4f5c\u8282\u70b9\u6269\u7f29\u5bb9\u7684\u6837\u4f8b\u6a21\u677f\uff1a
sacle \u6587\u4ef6\u5185\u4e3b\u8981\u7684\u914d\u7f6e\u6587\u4ef6\u53ca\u7528\u9014\u5982\u4e0b\uff1a scale\n \u251c\u2500\u2500 1.addWorkNode # \u589e\u52a0\u5de5\u4f5c\u8282\u70b9\u6a21\u677f\n \u2502 \u251c\u2500\u2500 ClusterOperation.yml # kubean \u7248\u672c\u53ca\u4efb\u52a1\u914d\u7f6e\n \u2502 \u2514\u2500\u2500 HostsConfCM.yml #\u5f53\u524d\u96c6\u7fa4\u7684\u8282\u70b9\u4fe1\u606f\u914d\u7f6e\n \u2514\u2500\u2500 2.delWorkNode # \u5220\u9664\u5de5\u4f5c\u8282\u70b9\u6a21\u677f\n \u2502 \u251c\u2500\u2500 ClusterOperation.yml # kubean \u7248\u672c\u53ca\u4efb\u52a1\u914d\u7f6e\n \u2502 \u2514\u2500\u2500 HostsConfCM.yml #\u5f53\u524d\u96c6\u7fa4\u7684\u8282\u70b9\u4fe1\u606f\u914d\u7f6e\n
\u89c2\u5bdf\u4f38\u7f29\u914d\u7f6e\u6a21\u677f scale
\u6587\u4ef6\u53ef\u4ee5\u53d1\u73b0\uff0c\u5bf9\u96c6\u7fa4\u5de5\u4f5c\u8282\u70b9\u8fdb\u884c\u6269\u7f29\u5bb9\u53ea\u9700\u6267\u884c HostsConfCM.yml
\u548c ClusterOperation.yml
\u4e24\u4e2a\u914d\u7f6e\u6587\u4ef6\uff0c\u5e76\u5c06\u65b0\u589e\u8282\u70b9\u4fe1\u606f\u7b49\u53c2\u6570\u6539\u6210\u66ff\u6362\u6210\u60a8\u7684\u771f\u5b9e\u53c2\u6570\u3002
\u4e0b\u9762\u4ee5\u4f7f\u7528 all-in-one \u6a21\u5f0f\u90e8\u7f72\u7684\u5355\u8282\u70b9\u96c6\u7fa4\u4e3a\u4f8b\uff0c\u6765\u6f14\u793a\u96c6\u7fa4\u8282\u70b9\u7684\u6269\u7f29\u5bb9\u64cd\u4f5c\u3002
\u6ce8\u610f\uff1a\u6267\u884c\u96c6\u7fa4\u6269\u7f29\u5bb9\u524d\uff0c\u60a8\u5fc5\u987b\u5df2\u7ecf\u4f7f\u7528 kubean \u5b8c\u6210\u4e86\u4e00\u5957\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/scale_worknode/#_2","title":"\u6269\u5bb9\u5de5\u4f5c\u8282\u70b9","text":""},{"location":"usage/scale_worknode/#1-hostsconfcmyml","title":"1. \u5411 HostsConfCM.yml \u589e\u52a0\u65b0\u8282\u70b9\u4e3b\u673a\u53c2\u6570","text":"\u6211\u4eec\u8981\u5728\u539f\u6709\u7684 all-in-one \u6a21\u5f0f\u4e2d\uff0c\u5bf9\u540d\u4e3a mini-hosts-conf
\u7684 ConfigMap \u8fdb\u884c\u65b0\u589e\u8282\u70b9\u914d\u7f6e\uff0c\u5728\u539f\u6765 node1
\u4e3b\u8282\u70b9\u7684\u57fa\u7840\u4e0a, \u65b0\u589e node2
\u5de5\u4f5c\u8282\u70b9\uff1b
\u5177\u4f53\u5730\uff0c\u6211\u4eec\u53ef\u4ee5\u8fdb\u5165 kubean/examples/scale/1.addWorkNode/
\u8def\u5f84\uff0c\u7f16\u8f91\u5df2\u51c6\u5907\u597d\u7684\u8282\u70b9\u914d\u7f6e ConfigMap \u6a21\u677f HostsConfCM.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<IP2>
\uff1a\u8282\u70b9 IP\u3002 <USERNAME>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\uff0c\u5efa\u8bae\u4f7f\u7528 root \u6216\u5177\u6709 root \u6743\u9650\u7684\u7528\u6237\u767b\u9646\u3002 <PASSWORD>
\uff1a\u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\u3002
kubean/examples/scale/1.addWorkNode/
\u8def\u5f84\u4e0b HostsConfCM.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
HostsConfCM.yml \u6a21\u677f apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: <IP1>\n access_ip: <IP1>\n ansible_host: <IP1>\n ansible_connection: ssh\n ansible_user: <USERNAME>\n ansible_password: <PASSWORD>\n node2:\n ip: <IP2>\n access_ip: <IP2>\n ansible_host: <IP2>\n ansible_connection: ssh\n ansible_user: <USERNAME>\n ansible_password: <PASSWORD>\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n node2:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u91cd\u8981\u53c2\u6570\uff1a
all.hosts.node1
: \u539f\u96c6\u7fa4\u4e2d\u5df2\u5b58\u5728\u7684\u4e3b\u8282\u70b9 all.hosts.node2
: \u96c6\u7fa4\u6269\u5bb9\u5f85\u65b0\u589e\u7684\u5de5\u4f5c\u8282\u70b9 all.children.kube_node.hosts
: \u96c6\u7fa4\u4e2d\u7684\u5de5\u4f5c\u8282\u70b9\u7ec4
\u65b0\u589e\u5de5\u4f5c\u8282\u70b9\u4e3b\u673a\u53c2\u6570\u7684\u793a\u4f8b
\u65b0\u589e\u8282\u70b9\u524d\u65b0\u589e\u8282\u70b9\u540e apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n node2:\n ip: 10.6.175.20 # \u65b0\u589e\u8282\u70b9 2 \u7684 IP\n access_ip: 10.6.175.20 # \u65b0\u589e\u8282\u70b9 2 \u7684 IP\n ansible_host: 10.6.175.20 # \u65b0\u589e\u8282\u70b9\u7684 2 \u7684 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9 2 \u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9 2 \u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n node2:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
"},{"location":"usage/scale_worknode/#2-clusteroperationyml","title":"2. \u901a\u8fc7 ClusterOperation.yml \u65b0\u589e\u6269\u5bb9\u4efb\u52a1","text":"\u8fdb\u5165 kubean/examples/scale/1.addWorkNode/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
kubean/examples/scale/1.addWorkNode/
\u8def\u5f84\u4e0b ClusterOperation.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-awn-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:<TAG> # Please replace <TAG> with the specified version, such as v0.4.9\n actionType: playbook\n action: scale.yml\n extraArgs: --limit=node2\n
\u91cd\u8981\u53c2\u6570\uff1a spec.cluster
: \u6307\u5b9a\u9700\u8981\u6269\u5bb9\u8282\u70b9\u7684\u96c6\u7fa4\u540d\u79f0\uff0c\u4e0a\u8ff0\u6307\u5b9a\u7684\u662f\u540d\u4e3a cluster-mini
\u7684\u96c6\u7fa4\u4e3a\u6269\u5bb9\u76ee\u6807\u3002 spec.action:
\u6307\u5b9a\u6269\u5bb9\u8282\u70b9\u7684 kubespray \u5267\u672c, \u8fd9\u91cc\u8bbe\u7f6e\u4e3a scale.yml
. spec.extraArgs
: \u6307\u5b9a\u6269\u5bb9\u7684\u8282\u70b9\u9650\u5236\uff0c\u8fd9\u91cc\u901a\u8fc7 --limit=
\u53c2\u6570\u9650\u5b9a\u6269\u5bb9 node2 \u8282\u70b9
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a ClusterOperation.yml \u793a\u4f8b\uff1a
ClusterOperation.yml \u793a\u4f8b ---\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-awn-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:v0.5.2\n actionType: playbook\n action: scale.yml\n extraArgs: --limit=node2\n
"},{"location":"usage/scale_worknode/#3-scale1addworknode","title":"3.\u5e94\u7528 scale/1.addWorkNode
\u6587\u4ef6\u4e0b\u6240\u6709\u7684\u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 HostsConfCM.yml \u548c ClusterOperation.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/install/scale/1.addWorkNode/\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u4f7f\u5b8c\u6210\u4e86\u4e00\u4e2a\u96c6\u7fa4\u7684\u5de5\u4f5c\u8282\u70b9\u6269\u5bb9\u3002
"},{"location":"usage/scale_worknode/#_3","title":"\u7f29\u5bb9\u5de5\u4f5c\u8282\u70b9","text":""},{"location":"usage/scale_worknode/#1-clusteroperationyml","title":"1. \u901a\u8fc7 ClusterOperation.yml \u65b0\u589e\u7f29\u5bb9\u4efb\u52a1","text":"\u8fdb\u5165 kubean/examples/scale/2.delWorkNode/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
kubean/examples/scale/2.delWorkNode/
\u8def\u5f84\u4e0b ClusterOperation.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-dwn-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:<TAG> # Please replace <TAG> with the specified version, such as v0.4.9\n actionType: playbook\n action: remove-node.yml\n extraArgs: -e node=node2\n
\u91cd\u8981\u53c2\u6570\uff1a spec.cluster
: \u6307\u5b9a\u9700\u8981\u7f29\u5bb9\u8282\u70b9\u7684\u96c6\u7fa4\u540d\u79f0, \u4e0a\u8ff0\u6307\u5b9a\u7684\u662f\u540d\u4e3a cluster-mini \u7684\u96c6\u7fa4\u4e3a\u7f29\u5bb9\u76ee\u6807\u3002 spec.action
: \u6307\u5b9a\u7f29\u5bb9\u8282\u70b9\u7684 kubespray \u5267\u672c, \u8fd9\u91cc\u8bbe\u7f6e\u4e3a remove-node.yml\u3002 spec.extraArgs
: \u6307\u5b9a\u7f29\u5bb9\u7684\u8282\u70b9\uff0c\u8fd9\u91cc\u901a\u8fc7 -e \u53c2\u6570\u6307\u5b9a\u7f29\u5bb9 node2 \u8282\u70b9
\u4f8b\u5982\uff0c\u4e0b\u9762\u5c55\u793a\u4e86\u4e00\u4e2a ClusterOperation.yml \u793a\u4f8b\uff1a
ClusterOperation.yml \u793a\u4f8b apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-dwn-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:v0.5.2\n actionType: playbook\n action: remove-node.yml\n extraArgs: -e node=node2\n
"},{"location":"usage/scale_worknode/#2-scale2delworknode-clusteroperation","title":"2.\u5e94\u7528 scale/2.delWorkNode
\u76ee\u5f55\u4e0b\u7684 ClusterOperation \u7f29\u5bb9\u4efb\u52a1\u6e05\u5355","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 ClusterOperation.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/install/scale/2.delWorkNode/ClusterOperation.yml\n
\u9ed8\u8ba4\u8fdb\u5165 kubean-system \u547d\u540d\u7a7a\u95f4\uff0c\u67e5\u770b\u7f29\u5bb9\u4efb\u52a1\u6267\u884c\u72b6\u6001\uff1a
$ kubectl -n kubean-system get pod | grep cluster-mini-dwn-ops\n
\u4e86\u89e3\u7f29\u5bb9\u4efb\u52a1\u6267\u884c\u8fdb\u5ea6\uff0c\u53ef\u67e5\u770b\u8be5 pod \u65e5\u5fd7\uff1b"},{"location":"usage/scale_worknode/#3-hostsconfcmyml","title":"3. \u901a\u8fc7 HostsConfCM.yml \u5220\u9664\u5de5\u4f5c\u8282\u70b9\u4e3b\u673a\u53c2\u6570","text":"\u6211\u4eec\u5df2\u7ecf\u901a\u8fc7\u5982\u4e0a\u4e24\u6b65\u64cd\u4f5c\u6267\u884c\u4e86\u7f29\u5bb9\u4efb\u52a1\uff0c\u5f85\u7f29\u5bb9\u4efb\u52a1\u6267\u884c\u5b8c\u6210\u540e\uff0cnode2
\u5c06\u4ece\u73b0\u6709\u96c6\u7fa4\u4e2d\u6c38\u4e45\u79fb\u9664\uff0c\u5219\u6b64\u65f6\u6211\u4eec\u8fd8\u9700\u8981\u5b8c\u6210\u6700\u540e\u4e00\u6b65\uff0c\u5c06\u8282\u70b9\u914d\u7f6e\u76f8\u5173 Configmap \u4e2d\u7684 node2 \u4fe1\u606f\u79fb\u9664;
\u8fdb\u5165 kubean/examples/scale/2.delWorkNode/
\u8def\u5f84\uff0c\u7f16\u8f91\u5df2\u51c6\u5907\u597d\u7684\u8282\u70b9\u914d\u7f6e\u6a21\u677f HostsConfCM.yml
\uff0c\u5220\u9664\u9700\u8981\u79fb\u9664\u7684\u5de5\u4f5c\u8282\u70b9\u914d\u7f6e\u3002
\u5220\u9664\u53c2\u6570\u5982\u4e0b\uff1a
all.hosts
\u4e0b\u7684 node2 \u8282\u70b9\u63a5\u5165\u53c2\u6570\u3002 all.children.kube_node.hosts
\u5185\u7684\u4e3b\u673a\u540d\u79f0 node2 \u3002
\u79fb\u9664\u5de5\u4f5c\u8282\u70b9\u4e3b\u673a\u53c2\u6570\u7684\u793a\u4f8b
\u79fb\u9664\u8282\u70b9\u524d\u79fb\u9664\u8282\u70b9\u540e apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n node2:\n ip: 10.6.175.20 # \u65b0\u589e\u8282\u70b9 2 \u7684 IP\n access_ip: 10.6.175.20 # \u65b0\u589e\u8282\u70b9 2 IP\n ansible_host: 10.6.175.20 # \u65b0\u589e\u8282\u70b9\u7684 2 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9 2 \u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9 2 \u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n node2:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n node1:\n ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n access_ip: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_host: 10.6.175.10 # \u4f60\u7684\u8282\u70b9 IP\n ansible_connection: ssh\n ansible_user: root # \u767b\u9646\u8282\u70b9\u7684\u7528\u6237\u540d\n ansible_password: password01 # \u767b\u9646\u8282\u70b9\u7684\u5bc6\u7801\n children:\n kube_control_plane:\n hosts:\n node1:\n kube_node:\n hosts:\n node1:\n etcd:\n hosts:\n node1:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 HostsConfCM.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/install/scale/2.delWorkNode/HostsConfCM.yml\n
\u6b64\u65f6\uff0c\u6211\u4eec\u5df2\u5c06 node2 \u5de5\u4f5c\u8282\u70b9\u4ece\u96c6\u7fa4\u4e2d\u79fb\u9664\uff0c\u5e76\u4e14\u6e05\u7406\u6389\u4e86\u6709\u5173 node2 \u7684\u4e3b\u673a\u4fe1\u606f\uff0c\u6574\u4e2a\u7f29\u5bb9\u64cd\u4f5c\u5c31\u6b64\u7ed3\u675f\uff1b
"},{"location":"usage/sshkey_deploy_cluster/","title":"\u4ee5 SSH \u5bc6\u94a5\u65b9\u5f0f\u90e8\u7f72\u96c6\u7fa4","text":""},{"location":"usage/sshkey_deploy_cluster/#_1","title":"\u5185\u5bb9","text":" - \u2713 1. SSH \u5bc6\u94a5\u7684\u751f\u6210\u4e0e\u5206\u53d1
- \u2713 2. \u4f7f\u7528\u79c1\u94a5\u5236\u4f5c Secret
- \u2713 3. \u521b\u5efa\u4e3b\u673a\u6e05\u5355\u914d\u7f6e
- \u2713 4. \u5236\u5907\u90e8\u7f72\u96c6\u7fa4\u7684\u914d\u7f6e\u53c2\u6570
- \u2713 5. \u51c6\u5907 Kubean \u7684\u81ea\u5b9a\u4e49\u8d44\u6e90
- \u2713 6. \u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4
"},{"location":"usage/sshkey_deploy_cluster/#ssh_1","title":"SSH \u5bc6\u94a5\u7684\u751f\u6210\u4e0e\u5206\u53d1","text":" -
\u901a\u8fc7 ssh-keygen
\u547d\u4ee4\u751f\u6210\u516c\u79c1\u94a5\u5bf9\uff0c\u6bd4\u5982\uff1a
$ ssh-keygen -t rsa -b 4096 -C \"your_email@example.com\" -f $HOME/.ssh/id_rsa\nGenerating public/private rsa key pair.\nCreated directory '/root/.ssh'.\nEnter passphrase (empty for no passphrase):\nEnter same passphrase again:\nYour identification has been saved in /root/.ssh/id_rsa.\nYour public key has been saved in /root/.ssh/id_rsa.pub.\nThe key fingerprint is:\nSHA256:oMqlhL8wLuYycOkUNXyiDso62C+ryNYc9k3LMDltQZs your_email@example.com\nThe keys randomart image is:\n+---[RSA 4096]----+\n| . |\n| = .. |\n| o +o o |\n|..o . E |\n|+o.oo o S |\n|o==* = + |\n|*=O o O . |\n|@=++ . + |\n|OBo+. |\n+----[SHA256]-----+\n\n$ ls /root/.ssh/id_rsa* -lh\n-rw-------. 1 root root 1.7K Nov 10 03:47 /root/.ssh/id_rsa # \u79c1\u94a5\n-rw-r--r--. 1 root root 408 Nov 10 03:47 /root/.ssh/id_rsa.pub # \u516c\u94a5\n
-
\u5206\u53d1\u516c\u94a5\u5230\u96c6\u7fa4\u7684\u5404\u4e2a\u8282\u70b9\uff1a
# \u6bd4\u5982\u6307\u5b9a\u5c06\u516c\u94a5\u5206\u53d1\u81f3 `192.168.10.11` `192.168.10.12` \u4e24\u4e2a\u8282\u70b9\n$ declare -a IPS=(192.168.10.11 192.168.10.12)\n\n# \u904d\u5386\u8282\u70b9 IP \u5206\u53d1\u516c\u94a5(/root/.ssh/id_rsa.pub)\uff0c\u5047\u8bbe\u7528\u6237\u540d\u4e3a: root, \u5bc6\u7801\u4e3a: kubean\n$ for ip in ${IPS[@]}; do sshpass -p \"kubean\" ssh-copy-id -i /root/.ssh/id_rsa.pub -o StrictHostKeyChecking=no root@$ip; done\n
"},{"location":"usage/sshkey_deploy_cluster/#secret","title":"\u4f7f\u7528\u79c1\u94a5\u5236\u4f5c Secret","text":"\u901a\u8fc7 kubectl \u547d\u4ee4\u751f\u6210\u79c1\u94a5\u7684 Secret\uff1a
$ kubectl -n kubean-system \\ # \u6307\u5b9a\u547d\u540d\u7a7a\u95f4 kubean-system\n create secret generic sample-ssh-auth \\ # \u6307\u5b9a secret \u540d\u79f0\u4e3a sample-ssh-auth\n --type='kubernetes.io/ssh-auth' \\ # \u6307\u5b9a secret \u7c7b\u578b\u4e3a kubernetes.io/ssh-auth\n --from-file=ssh-privatekey=/root/.ssh/id_rsa \\ # \u6307\u5b9a ssh \u79c1\u94a5\u6587\u4ef6\u8def\u5f84\n --dry-run=client -o yaml > SSHAuthSec.yml # \u6307\u5b9a secret yaml \u6587\u4ef6\u751f\u6210\u8def\u5f84\n
\u751f\u6210\u7684 SSHAuthSec.yml
\u5185\u5bb9\u5927\u81f4\u5982\u4e0b\u6240\u793a\uff1a
# SSHAuthSec.yml\napiVersion: v1\nkind: Secret\nmetadata:\n creationTimestamp: null\n name: sample-ssh-auth\n namespace: kubean-system\ntype: kubernetes.io/ssh-auth\ndata:\n ssh-privatekey: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlKS1FJQkFBS0NBZ0VBdWVDbC8rSng1b0RT...\n
"},{"location":"usage/sshkey_deploy_cluster/#_2","title":"\u521b\u5efa\u4e3b\u673a\u6e05\u5355\u914d\u7f6e","text":"\u793a\u4f8b\uff1a\u4e3b\u673a\u6e05\u5355 HostsConfCM.yml
\u5185\u5bb9\u5927\u81f4\u5982\u4e0b\uff0c\u5e76\u5c06\u4e0b\u65b9 \u66ff\u6362\u4e3a\u5b9e\u9645\u7684\u7528\u6237\u540d\uff1a
# HostsConfCM.yml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: sample-hosts-conf\n namespace: kubean-system\ndata:\n hosts.yml: |\n all:\n hosts:\n master:\n ip: 192.168.10.11\n access_ip: 192.168.10.11\n ansible_host: 192.168.10.11\n ansible_user: <USRENAME>\n worker:\n ip: 192.168.10.12\n access_ip: 192.168.10.12\n ansible_host: 192.168.10.12\n ansible_user: <USRENAME>\n children:\n kube_control_plane:\n hosts:\n master:\n kube_node:\n hosts:\n master:\n worker:\n etcd:\n hosts:\n master:\n k8s_cluster:\n children:\n kube_control_plane:\n kube_node:\n calico_rr:\n hosts: {}\n
\u6ce8\uff1a\u7531\u4e8e\u91c7\u7528\u79c1\u94a5\u767b\u5f55\uff0c\u6240\u4ee5\u4e3b\u673a\u4fe1\u606f\u4e2d\u4e0d\u9700\u8981\u586b\u5199\u5bc6\u7801\uff08\u5373\uff1aansible_password\uff09
"},{"location":"usage/sshkey_deploy_cluster/#_3","title":"\u5236\u5907\u90e8\u7f72\u96c6\u7fa4\u7684\u914d\u7f6e\u53c2\u6570","text":"\u96c6\u7fa4\u914d\u7f6e\u53c2\u6570 VarsConfCM.yml
\u7684\u5185\u5bb9\uff0c\u53ef\u4ee5\u53c2\u8003 demo vars conf\u3002
# VarsConfCM.yml\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: sample-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n container_manager: containerd\n kube_network_plugin: calico\n kube_network_plugin_multus: false\n kube_proxy_mode: iptables\n enable_nodelocaldns: false\n etcd_deployment_type: kubeadm\n ntp_enabled: true\n ...\n
"},{"location":"usage/sshkey_deploy_cluster/#kubean","title":"\u51c6\u5907 Kubean \u7684\u81ea\u5b9a\u4e49\u8d44\u6e90","text":" -
Cluster \u81ea\u5b9a\u4e49\u8d44\u6e90\u5185\u5bb9\u793a\u4f8b
# Cluster.yml\napiVersion: kubean.io/v1alpha1\nkind: Cluster\nmetadata:\n name: sample\nspec:\n hostsConfRef:\n namespace: kubean-system\n name: sample-hosts-conf\n varsConfRef:\n namespace: kubean-system\n name: sample-vars-conf\n sshAuthRef: # \u5173\u952e\u5c5e\u6027\uff0c\u6307\u5b9a\u96c6\u7fa4\u90e8\u7f72\u671f\u95f4\u7684 ssh \u79c1\u94a5 secret\n namespace: kubean-system\n name: sample-ssh-auth\n
-
ClusterOperation \u81ea\u5b9a\u4e49\u8d44\u6e90\u5185\u5bb9\u793a\u4f8b
# ClusterOperation.yml\napiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: sample-create-cluster\nspec:\n cluster: sample\n image: ghcr.m.daocloud.io/kubean-io/spray-job:latest\n actionType: playbook\n action: cluster.yml\n preHook:\n - actionType: playbook\n action: ping.yml\n - actionType: playbook\n action: disable-firewalld.yml\n postHook:\n - actionType: playbook\n action: kubeconfig.yml\n - actionType: playbook\n action: cluster-info.yml\n
"},{"location":"usage/sshkey_deploy_cluster/#_4","title":"\u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4","text":"\u5047\u8bbe\u6240\u6709 YAML \u6e05\u5355\u90fd\u5b58\u653e\u5728 create_cluster
\u76ee\u5f55\uff1a
$ tree create_cluster/\ncreate_cluster\n\u251c\u2500\u2500 HostsConfCM.yml # \u4e3b\u673a\u6e05\u5355\n\u251c\u2500\u2500 SSHAuthSec.yml # SSH\u79c1\u94a5\n\u251c\u2500\u2500 VarsConfCM.yml # \u96c6\u7fa4\u53c2\u6570\n\u251c\u2500\u2500 Cluster.yml # Cluster CR\n\u2514\u2500\u2500 ClusterOperation.yml # ClusterOperation CR\n
\u901a\u8fc7 kubectl apply
\u5f00\u59cb\u90e8\u7f72\u96c6\u7fa4:
kubectl apply -f create_cluster/\n
"},{"location":"usage/support_k8s_version/","title":"Support k8s version","text":"kubean Version Default Kubernetes Version Supported Kubernetes Version Range v0.8.6 v1.26.7 - \"v1.27.4\" - \"v1.27.3\" - \"v1.27.2\" - \"v1.27.1\" - \"v1.27.0\" - \"v1.26.7\" - \"v1.26.6\" - \"v1.26.5\" - \"v1.26.4\" - \"v1.26.3\" - \"v1.26.2\" - \"v1.26.1\" - \"v1.26.0\" - \"v1.25.11\" - \"v1.25.10\" - \"v1.25.9\" - \"v1.25.8\" - \"v1.25.7\" - \"v1.25.6\" - \"v1.25.5\" - \"v1.25.4\" - \"v1.25.3\" - \"v1.25.2\" - \"v1.25.1\" - \"v1.25.0\" - \"v1.24.15\" - \"v1.24.14\" v0.9.0 v1.26.7 - 'v1.28.1' - 'v1.28.0' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' - 'v1.26.8' - 'v1.26.7' - 'v1.26.6' - 'v1.26.5' - 'v1.26.4' - 'v1.26.3' - 'v1.26.2' - 'v1.26.1' - 'v1.26.0' v0.11.1 v1.27.5 - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' - 'v1.26.11' - 'v1.26.10' - 'v1.26.9' - 'v1.26.8' - 'v1.26.7' - 'v1.26.6' - 'v1.26.5' - 'v1.26.4' - 'v1.26.3' - 'v1.26.2' - 'v1.26.1' - 'v1.26.0' v0.11.2 v1.27.5 - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' - 'v1.26.11' - 'v1.26.10' - 'v1.26.9' - 'v1.26.8' - 'v1.26.7' - 'v1.26.6' - 'v1.26.5' - 'v1.26.4' - 'v1.26.3' - 'v1.26.2' - 'v1.26.1' - 'v1.26.0' v0.12.1 v1.27.5 - 'v1.29.0' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' - 'v1.26.12' - 'v1.26.11' - 'v1.26.10' - 'v1.26.9' - 'v1.26.8' - 'v1.26.7' - 'v1.26.6' - 'v1.26.5' - 'v1.26.4' - 'v1.26.3' - 'v1.26.2' - 'v1.26.1' - 'v1.26.0' v0.13.0 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.1 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.3 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.4 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.5 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.8 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.9 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.14.0 v1.27.5 - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.12' - 'v1.27.11' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.10 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.13.11 v1.27.5 - 'v1.29.1' - 'v1.29.0' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.15.0 v1.27.5 - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.12' - 'v1.27.11' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.15.1 v1.27.5 - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.13' - 'v1.27.12' - 'v1.27.11' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.15.3 v1.28.9 - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' - 'v1.27.13' - 'v1.27.12' - 'v1.27.11' - 'v1.27.10' - 'v1.27.9' - 'v1.27.8' - 'v1.27.7' - 'v1.27.6' - 'v1.27.5' - 'v1.27.4' - 'v1.27.3' - 'v1.27.2' - 'v1.27.1' - 'v1.27.0' v0.16.0 v1.29.5 - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.16.1 v1.29.5 - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.16.3 v1.29.5 - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.17.0 v1.29.5 - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.17.1 v1.29.5 - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.17.2 v1.29.5 - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.17.4 v1.29.5 - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.18.1 v1.29.5 - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.18.5 v1.29.5 - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.12' - 'v1.28.11' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.19.0 v1.30.4 - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' - 'v1.28.12' - 'v1.28.11' - 'v1.28.10' - 'v1.28.9' - 'v1.28.8' - 'v1.28.7' - 'v1.28.6' - 'v1.28.5' - 'v1.28.4' - 'v1.28.3' - 'v1.28.2' - 'v1.28.1' - 'v1.28.0' v0.20.0 v1.30.4 - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' v0.21.0 v1.30.5 - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' v0.21.1 v1.30.5 - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' v0.22.1 v1.30.5 - 'v1.31.3' - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.7' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.11' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0' v0.22.2 v1.30.5 - 'v1.31.3' - 'v1.31.2' - 'v1.31.1' - 'v1.31.0' - 'v1.30.7' - 'v1.30.6' - 'v1.30.5' - 'v1.30.4' - 'v1.30.3' - 'v1.30.2' - 'v1.30.1' - 'v1.30.0' - 'v1.29.11' - 'v1.29.10' - 'v1.29.9' - 'v1.29.8' - 'v1.29.7' - 'v1.29.6' - 'v1.29.5' - 'v1.29.4' - 'v1.29.3' - 'v1.29.2' - 'v1.29.1' - 'v1.29.0'"},{"location":"usage/uninstall/","title":"\u96c6\u7fa4\u5378\u8f7d","text":"\u672c\u8282\u5c06\u5411\u60a8\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528 kubean \u5378\u8f7d\u96c6\u7fa4\u3002\u5728\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example/uninstall
\u6587\u4ef6\u5185\uff0c\u540c\u6837\u63d0\u4f9b\u4e86\u5378\u8f7d\u96c6\u7fa4\u7684\u6837\u4f8b\u6a21\u677f\uff1a
uninsatall \u6587\u4ef6\u5185\u4e3b\u8981\u7684\u914d\u7f6e\u6587\u4ef6\u53ca\u7528\u9014\u5982\u4e0b\uff1a uninstall\n \u251c\u2500\u2500 ClusterOperation.yml # \u5378\u8f7d\u96c6\u7fa4\u4efb\u52a1\n
\u4e0b\u9762\u4ee5\u4f7f\u7528 all-in-one \u6a21\u5f0f\u90e8\u7f72\u7684\u5355\u8282\u70b9\u96c6\u7fa4\u4e3a\u4f8b\uff0c\u6765\u6f14\u793a\u96c6\u7fa4\u7248\u672c\u5347\u7ea7\u64cd\u4f5c\u3002
\u6ce8\u610f\uff1a\u6267\u884c\u96c6\u7fa4\u5378\u8f7d\u524d\uff0c\u60a8\u5fc5\u987b\u5df2\u7ecf\u4f7f\u7528 kubean \u5b8c\u6210\u4e86\u4e00\u5957\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/uninstall/#1","title":"1. \u65b0\u589e\u5378\u8f7d\u4efb\u52a1","text":"\u8fdb\u5165 kubean/examples/uninstall/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
kubean/examples/uninstall/
\u8def\u5f84\u4e0b ClusterOperation.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-uninstall-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:<TAG> # Please replace <TAG> with the specified version, such as v0.4.9\n actionType: playbook\n action: reset.yml\n
\u91cd\u8981\u53c2\u6570\uff1a spec.cluster
\uff1a\u6307\u5b9a\u9700\u8981\u5378\u8f7d\u7684\u96c6\u7fa4\u540d\u79f0, \u4e0a\u8ff0\u6307\u5b9a\u7684\u662f\u540d\u4e3a cluster-mini
\u7684\u96c6\u7fa4\u4e3a\u5378\u8f7d\u76ee\u6807\u3002 spec.action:
\uff1a\u6307\u5b9a\u5378\u8f7d\u76f8\u5173\u7684 kubespray \u5267\u672c, \u8fd9\u91cc\u8bbe\u7f6e\u4e3a reset.yml
\u3002
"},{"location":"usage/uninstall/#2-uninstall","title":"2.\u5e94\u7528 uninstall
\u6587\u4ef6\u4e0b\u7684\u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 ClusterOperation.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/uninstall/\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u4f7f\u5b8c\u6210\u4e86\u4e00\u4e2a\u96c6\u7fa4\u7684\u5378\u8f7d\u3002
"},{"location":"usage/upgrade/","title":"\u96c6\u7fa4\u7248\u672c\u5347\u7ea7","text":"\u672c\u8282\u5c06\u5411\u60a8\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528 kubean \u5347\u7ea7\u96c6\u7fa4\u7684 kubernnetes \u7248\u672c\u3002\u5728\u60a8\u514b\u9686\u81f3\u672c\u5730\u7684 kubean/example/upgrade
\u6587\u4ef6\u5185\uff0c\u540c\u6837\u63d0\u4f9b\u4e86\u96c6\u7fa4\u7248\u672c\u5347\u7ea7\u7684\u6837\u4f8b\u6a21\u677f\uff1a
upgrade \u6587\u4ef6\u5185\u4e3b\u8981\u7684\u914d\u7f6e\u6587\u4ef6\u53ca\u7528\u9014\u5982\u4e0b\uff1a upgrade\n \u251c\u2500\u2500 ClusterOperation.yml # \u5347\u7ea7\u96c6\u7fa4\u4efb\u52a1\n \u2514\u2500\u2500 VarsConfCM.yml # \u96c6\u7fa4\u5347\u7ea7\u7248\u672c\u7b49\u53c2\u6570\u914d\u7f6e\n
\u4e0b\u9762\u4ee5\u4f7f\u7528 all-in-one \u6a21\u5f0f\u90e8\u7f72\u7684\u5355\u8282\u70b9\u96c6\u7fa4\u4e3a\u4f8b\uff0c\u6765\u6f14\u793a\u96c6\u7fa4\u7248\u672c\u5347\u7ea7\u64cd\u4f5c\u3002
\u6ce8\u610f\uff1a\u6267\u884c\u96c6\u7fa4\u7248\u672c\u5347\u7ea7\u524d\uff0c\u60a8\u5fc5\u987b\u5df2\u7ecf\u4f7f\u7528 kubean \u5b8c\u6210\u4e86\u4e00\u5957\u96c6\u7fa4\u7684\u90e8\u7f72\u3002
"},{"location":"usage/upgrade/#1","title":"1. \u65b0\u589e\u5347\u7ea7\u4efb\u52a1","text":"\u8fdb\u5165 kubean/examples/upgrade/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f ClusterOperation.yml
\uff0c\u5c06\u4e0b\u5217\u53c2\u6570\u66ff\u6362\u4e3a\u60a8\u7684\u771f\u5b9e\u53c2\u6570\uff1a
<TAG>
\uff1akubean \u955c\u50cf\u7248\u672c\uff0c\u63a8\u8350\u4f7f\u7528\u6700\u65b0\u7248\u672c\uff0c\u53c2\u9605 kubean \u7248\u672c\u5217\u8868\u3002
kubean/examples/upgrade/
\u8def\u5f84\u4e0b ClusterOperation.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: kubean.io/v1alpha1\nkind: ClusterOperation\nmetadata:\n name: cluster-mini-upgrade-ops\nspec:\n cluster: cluster-mini\n image: ghcr.m.daocloud.io/kubean-io/spray-job:<TAG> # Please replace <TAG> with the specified version, such as v0.4.9\n actionType: playbook\n action: upgrade-cluster.yml\n
\u91cd\u8981\u53c2\u6570\uff1a spec.cluster
: \u6307\u5b9a\u9700\u8981\u5347\u7ea7\u7684\u96c6\u7fa4\u540d\u79f0\uff0c\u4e0a\u8ff0\u6307\u5b9a\u7684\u662f\u540d\u4e3a cluster-mini
\u7684\u96c6\u7fa4\u4e3a\u5347\u7ea7\u76ee\u6807\u3002 spec.action:
\u6307\u5b9a\u5347\u7ea7\u76f8\u5173\u7684 kubespray \u5267\u672c, \u8fd9\u91cc\u8bbe\u7f6e\u4e3a upgrade-cluster.yml
\u3002
"},{"location":"usage/upgrade/#2","title":"2. \u6307\u5b9a\u96c6\u7fa4\u5347\u7ea7\u7248\u672c","text":"\u8fdb\u5165 kubean/examples/upgrade/
\u8def\u5f84\uff0c\u7f16\u8f91\u6a21\u677f VarsConfCM.yml
\uff0c\u901a\u8fc7\u914d\u7f6e kube_version
\u53c2\u6570\uff0c\u6307\u5b9a\u96c6\u7fa4\u5347\u7ea7\u7684\u7248\u672c\u3002
kubean/examples/upgrade/
\u8def\u5f84\u4e0b VarsConfCM.yml
\u7684\u6a21\u677f\u5185\u5bb9\u5982\u4e0b\uff1a
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n kube_version: v1.25.8\n # upgrade_cluster_setup: true\n # upgrade_node_confirm: true\n # upgrade_node_pause_seconds: 60\n\n container_manager: containerd\n kube_network_plugin: calico\n etcd_deployment_type: kubeadm\n
\u91cd\u8981\u53c2\u6570\uff1a kube_version
: \u6307\u5b9a\u9700\u8981\u5347\u7ea7\u7684\u96c6\u7fa4\u7248\u672c, \u4e0a\u8ff0\u6307\u5b9a\u4e86\u8981\u5347\u7ea7\u5230 k8s v1.25.8 \u7248\u672c\u3002
\u5347\u7ea7\u96c6\u7fa4\u7248\u672c\u53c2\u6570\u7684\u793a\u4f8b
\u5347\u7ea7\u7248\u672c\u524d\u5347\u7ea7\u7248\u672c\u540e apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n kube_version: v1.25.0\n # upgrade_cluster_setup: true\n # upgrade_node_confirm: true\n # upgrade_node_pause_seconds: 60\n\n container_manager: containerd\n kube_network_plugin: calico\n etcd_deployment_type: kubeadm\n
apiVersion: v1\nkind: ConfigMap\nmetadata:\n name: mini-vars-conf\n namespace: kubean-system\ndata:\n group_vars.yml: |\n kube_version: v1.25.8\n # upgrade_cluster_setup: true\n # upgrade_node_confirm: true\n # upgrade_node_pause_seconds: 60\n\n container_manager: containerd\n kube_network_plugin: calico\n etcd_deployment_type: kubeadm\n
\u9644\uff1akubean \u96c6\u7fa4\u7248\u672c\u652f\u6301\u673a\u5236\uff1a
kubean \u7248\u672c \u63a8\u8350\u7684 kubernetes \u7248\u672c \u652f\u6301\u7684 kubernetes \u7248\u672c\u8303\u56f4 v0.5.2 v1.25.4 - \"v1.27.2\" - \"v1.26.5\" - \"v1.26.4\" - \"v1.26.3\" - \"v1.26.2\" - \"v1.26.1\" - \"v1.26.0\" - \"v1.25.10\" - \"v1.25.9\" - \"v1.25.8\" - \"v1.25.7\" - \"v1.25.6\" - \"v1.25.5\" - \"v1.25.4\" - \"v1.25.3\" - \"v1.25.2\" - \"v1.25.1\" - \"v1.25.0\" \u66f4\u591a\u5347\u7ea7\u64cd\u4f5c\u53c2\u6570\u7684\u8be6\u7ec6\u8bf4\u660e\uff0c\u8bf7\u53c2\u8003 kubespray \u6587\u6863\uff1a\u901a\u8fc7Kubespray \u66f4\u65b0 kubernetes\u3002
"},{"location":"usage/upgrade/#3-upgrade","title":"3.\u5e94\u7528 upgrade
\u6587\u4ef6\u4e0b\u6240\u6709\u7684\u914d\u7f6e","text":"\u5b8c\u6210\u4e0a\u8ff0\u6b65\u9aa4\u5e76\u4fdd\u5b58 ClusterOperation.yml \u548c VarsConfCM.yml \u6587\u4ef6\u540e\uff0c\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a
$ kubectl apply -f examples/upgrade/\n
\u81f3\u6b64\uff0c\u60a8\u5df2\u7ecf\u4f7f\u5b8c\u6210\u4e86\u4e00\u4e2a\u96c6\u7fa4\u7684 kuberntes \u7248\u672c\u7684\u5347\u7ea7\u3002
"}]}
\ No newline at end of file
diff --git a/zh/sitemap.xml b/zh/sitemap.xml
index 4c7a2ac2e..3c2344d8b 100644
--- a/zh/sitemap.xml
+++ b/zh/sitemap.xml
@@ -2,426 +2,430 @@
https://kubean-io.github.io/kubean/zh/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/concepts/architecture/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/concepts/comparisons/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/concepts/crds/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/concepts/custom_action/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/concepts/theory_of_airgapped_package/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/develop/roadmap/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/artifacts/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.10.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.11.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.11.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.11.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.12.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.12.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.12.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.12.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.10/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.11/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.4/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.5/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.6/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.7/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.8/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.13.9/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.14.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.15.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.15.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.15.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.15.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.16.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.16.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.16.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.16.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.17.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.17.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.17.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.17.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.17.4/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.17.5/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.18.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.18.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.18.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.18.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.18.4/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.18.5/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.19.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.20.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.21.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.21.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.22.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.22.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.22.2/
- 2024-12-22
+ 2024-12-23
+
+
+ https://kubean-io.github.io/kubean/zh/releases/v0.22.3/
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.10/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.4/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.5/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.6/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.7/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.8/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.4.9/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.5.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.5.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.5.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.5.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.5.4/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.6.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.6.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.6.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.6.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.6.4/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.6.5/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.6.6/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.7.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.7.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.7.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.7.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.7.4/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.8.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.8.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.8.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.8.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.8.4/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.8.5/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.9.0/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.9.1/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.9.2/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/releases/v0.9.3/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/airgap/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/airgap_patch_usage/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/all_in_one_install/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/helm_install_kubean/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/install/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/install_without_root/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/mirror_install/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/scale_worknode/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/sshkey_deploy_cluster/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/support_k8s_version/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/uninstall/
- 2024-12-22
+ 2024-12-23
https://kubean-io.github.io/kubean/zh/usage/upgrade/
- 2024-12-22
+ 2024-12-23
\ No newline at end of file
diff --git a/zh/sitemap.xml.gz b/zh/sitemap.xml.gz
index 4f71f9a3a..3c36e16cb 100644
Binary files a/zh/sitemap.xml.gz and b/zh/sitemap.xml.gz differ
diff --git a/zh/usage/airgap/index.html b/zh/usage/airgap/index.html
index 633148ebf..a5d095108 100644
--- a/zh/usage/airgap/index.html
+++ b/zh/usage/airgap/index.html
@@ -1067,6 +1067,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/airgap_patch_usage/index.html b/zh/usage/airgap_patch_usage/index.html
index 313e35954..4b746d2c8 100644
--- a/zh/usage/airgap_patch_usage/index.html
+++ b/zh/usage/airgap_patch_usage/index.html
@@ -908,6 +908,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/all_in_one_install/index.html b/zh/usage/all_in_one_install/index.html
index 119cd9f5a..991c71652 100644
--- a/zh/usage/all_in_one_install/index.html
+++ b/zh/usage/all_in_one_install/index.html
@@ -932,6 +932,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/helm_install_kubean/index.html b/zh/usage/helm_install_kubean/index.html
index c7610b3af..f8eb8b14a 100644
--- a/zh/usage/helm_install_kubean/index.html
+++ b/zh/usage/helm_install_kubean/index.html
@@ -941,6 +941,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/install/index.html b/zh/usage/install/index.html
index 63a16bc49..ae4a0eacd 100644
--- a/zh/usage/install/index.html
+++ b/zh/usage/install/index.html
@@ -848,6 +848,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/install_without_root/index.html b/zh/usage/install_without_root/index.html
index b2e7abda7..04625c083 100644
--- a/zh/usage/install_without_root/index.html
+++ b/zh/usage/install_without_root/index.html
@@ -944,6 +944,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/mirror_install/index.html b/zh/usage/mirror_install/index.html
index 6d65b0722..de7cdba16 100644
--- a/zh/usage/mirror_install/index.html
+++ b/zh/usage/mirror_install/index.html
@@ -941,6 +941,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/scale_worknode/index.html b/zh/usage/scale_worknode/index.html
index 75bbc3ba5..13b227afb 100644
--- a/zh/usage/scale_worknode/index.html
+++ b/zh/usage/scale_worknode/index.html
@@ -974,6 +974,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/sshkey_deploy_cluster/index.html b/zh/usage/sshkey_deploy_cluster/index.html
index b6fcba263..98101b023 100644
--- a/zh/usage/sshkey_deploy_cluster/index.html
+++ b/zh/usage/sshkey_deploy_cluster/index.html
@@ -953,6 +953,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/support_k8s_version/index.html b/zh/usage/support_k8s_version/index.html
index ee3c56208..e12af3ad4 100644
--- a/zh/usage/support_k8s_version/index.html
+++ b/zh/usage/support_k8s_version/index.html
@@ -843,6 +843,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/uninstall/index.html b/zh/usage/uninstall/index.html
index 53692acfd..0bef35e37 100644
--- a/zh/usage/uninstall/index.html
+++ b/zh/usage/uninstall/index.html
@@ -908,6 +908,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/zh/usage/upgrade/index.html b/zh/usage/upgrade/index.html
index 80a808282..49d400b77 100644
--- a/zh/usage/upgrade/index.html
+++ b/zh/usage/upgrade/index.html
@@ -917,6 +917,27 @@
+
+
+
+
+
+ V0.22.3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+