1 部署kubekey
下载 kk rpm 安装包
https://github.com/kubesphere/kubekey/releases
[root@master ~]# rpm -ivh kubekey-v2.1.1-linux-64bit.rpmPreparing... ################################# [100%]Updating / installing...1:kubekey-0:2.1.1-1 ################################# [100%][root@master ~]# kk versionversion.BuildInfo{Version:"2.1.1", GitCommit:"b19724c7", GitTreeState:"", GoVersion:"go1.17.10"}[root@master ~]#
声明环境变量
export KKZONE=cn
2 创建集群配置文件
[root@master ~]# kk create config[root@master ~]# ls -ltotal 9769020-rw-------. 1 root root 1405 Jul 8 2021 anaconda-ks.cfg-rw-r--r--. 1 root root 1036 Jun 6 10:59 config-sample.yaml-rw-r--r--. 1 root root 17716475 Jun 6 10:50 kubekey-v2.1.1-linux-64bit.rpm-rw-r--r--. 1 root root 9985745698 Dec 17 15:46 kubesphere-all-v3.1.0-offline-linux-amd64.tar.gz[root@master ~]# cat config-sample.yamlapiVersion: kubekey.kubesphere.io/v1alpha2kind: Clustermetadata:name: samplespec:hosts:- {name: node1, address: 172.16.0.2, internalAddress: 172.16.0.2, user: ubuntu, password: "Qcloud@123"}- {name: node2, address: 172.16.0.3, internalAddress: 172.16.0.3, user: ubuntu, password: "Qcloud@123"}roleGroups:etcd:- node1control-plane:- node1worker:- node1- node2controlPlaneEndpoint:## Internal loadbalancer for apiservers# internalLoadbalancer: haproxydomain: lb.kubesphere.localaddress: ""port: 6443kubernetes:version: v1.21.5clusterName: cluster.localautoRenewCerts: trueetcd:type: kubekeynetwork:plugin: calicokubePodsCIDR: 10.233.64.0/18kubeServiceCIDR: 10.233.0.0/18## multus support. https://github.com/k8snetworkplumbingwg/multus-cnimultusCNI:enabled: falseregistry:privateRegistry: ""namespaceOverride: ""registryMirrors: []insecureRegistries: []addons: [][root@master ~]#
集群配置文件
apiVersion: kubekey.kubesphere.io/v1alpha2kind: Clustermetadata:name: riyimeispec:hosts:- {name: master, address: 192.168.31.130, internalAddress: 192.168.31.130, user:root, password: "!Q2w3e4r"}- {name: node1, address: 192.168.31.131, internalAddress: 192.168.31.131, user:root, password: "!Q2w3e4r"}- {name: node2, address: 192.168.31.132, internalAddress: 192.168.31.132, user: root, password: "!Q2w3e4r"}roleGroups:etcd:- mastercontrol-plane:- masterworker:- node1- node2controlPlaneEndpoint:## Internal loadbalancer for apiservers# internalLoadbalancer: haproxydomain: lb.kubesphere.localaddress: ""port: 6443kubernetes:version: v1.21.5imageRepo: kubespheremasqueradeAll: falsemaxPods: 180nodeCidrMaskSize: 24proxyMode: ipvsclusterName: cluster.localautoRenewCerts: trueetcd:type: kubekeynetwork:plugin: calicokubePodsCIDR: 10.233.64.0/18kubeServiceCIDR: 10.233.0.0/18## multus support. https://github.com/k8snetworkplumbingwg/multus-cnimultusCNI:enabled: falseregistry:privateRegistry: ""namespaceOverride: ""registryMirrors: []insecureRegistries: []addons: []
