One click fast installation of highly available kubernetes cluster, as well as addition of kubernetes node, deletion of kubernetes node, destruction of kubernetes master, rebuild of kubernetes master, and uninstallation of cluster in later operation and maintenance stage.
Compatibility matrix:
kube-install Version | Supported Kubernetes Version | Supported OS Version |
kube-install v0.6.* | kubernetes v1.22 , kubernetes v1.21 , kubernetes v1.20 , kubernetes v1.19 , kubernetes v1.18 , kubernetes v1.17 , kubernetes v1.16 , kubernetes v1.15 , kubernetes v1.14 | CentOS 7 , RHEL 7 , CentOS 8 , RHEL 8 , SUSE Linux 15 |
kube-install v0.5.* | kubernetes v1.21 , kubernetes v1.20 , kubernetes v1.19 , kubernetes v1.18 , kubernetes v1.17 , kubernetes v1.16 , kubernetes v1.15 , kubernetes v1.14 | CentOS 7 , RHEL 7 |
kube-install v0.4.* | kubernetes v1.21 , kubernetes v1.20 , kubernetes v1.19 , kubernetes v1.18 , kubernetes v1.17 , kubernetes v1.16 , kubernetes v1.15 , kubernetes v1.14 | CentOS 7 , RHEL 7 |
kube-install v0.3.* | kubernetes v1.18 , kubernetes v1.17 , kubernetes v1.16 , kubernetes v1.15 , kubernetes v1.14 | CentOS 7 |
kube-install v0.2.* | kubernetes v1.14 | CentOS 7 |
kube-install v0.1.* | kubernetes v1.14 | CentOS 7 |
Notice: kube-install supports CentOS 7, CentOS 8, SUSE 15, RHEL 7 and RHEL 8 operating system environments. For a list of supported operating system distributions, please refer to OS support list.
If you have four servers,kubernetes master software is installed on the three servers (192.168.1.11, 192.168.1.12, 192.168.1.13), and kubernetes node software is installed on the four servers (192.168.1.11, 192.168.1.12, 192.168.1.13, 192.168.1.14). The operating system of the server is pure CentOS Linux or RHEL(Red Hat Enterprise Linux). It's like this:
IP Address | Role | OS Version | Root Password |
192.168.1.11 | k8s-master,k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
192.168.1.12 | k8s-master,k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
192.168.1.13 | k8s-master,k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
192.168.1.14 | k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
You can download the kube-install-*.tgz
package from https://github.com/cloudnativer/kube-install/releases.
If you want to install version 1.18 of kubernetes, download the kube-install-for-k8s1.18-*.tgz
package file.If you want to install version 1.15 of kubernetes, download the kube-install-for-k8s1.15-*.tgz
package file...In the same way, you can download the version you want.
For example, we are now installing kubernetes v1.21, and we have downloaded the kube-install-for-k8s1.21-v0.6.2.tgz
package.
# cd /root/
# wget https://github.com/cloudnativer/kube-install/releases/download/v0.6.2/kube-install-for-k8s1.21-v0.6.2.tgz
# tar -zxvf kube-install-for-k8s1.21-v0.6.2.tgz
# cd /root/kube-install/
Please operate in the root user environment. Perform the system environment initialization operation on the k8s-master selected above:
# cd /root/kube-install/
# ./kube-install -opt init -ostype "centos7"
Notice: Please make sure that the -ostype
flag you entered is correct, only support rhel7
, rhel8
, centos7
, centos8
, suse15
these types of "ostype".
Please operate in the root user environment. Execute on the k8s-master selected above:
# cd /root/kube-install/
# ./kube-install -opt install -master "192.168.1.11,192.168.1.12,192.168.1.13" -node "192.168.1.11,192.168.1.12,192.168.1.13,192.168.1.14" -sshpwd "cloudnativer" -ostype "centos7"
Notice: Please make sure that the -ostype
flag you entered is correct, only support rhel7
, rhel8
, centos7
, centos8
, suse15
these types of "ostype".
Execute the following command on the k8s-master you selected to view the kube-dashboard console URL and key:
# cat /opt/kube-install/loginkey.txt
Login to the kube-dashboard console UI using the URL and key in the /opt/kube-install/loginkey.txt
document.Here are the relevant screenshots:
After kube-install is installed, you can directly execute kube-install
command in any directory of any k8s-master server.Kube-install can not only quickly install the highly available kubernetes cluster, but also add k8s-node, delete k8s-node, delete k8s-master and rebuild k8s-master.
Suppose you expect to install two servers (192.168.1.15 and 192.168.1.16) as k8s-nodes and join the kubernetets cluster in Chapter [2].
IP Address | Role | OS Version | Root Password |
192.168.1.11 | k8s-master,k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
192.168.1.12 | k8s-master,k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
192.168.1.13 | k8s-master,k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
192.168.1.14 | k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
192.168.1.15 | k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
192.168.1.16 | k8s-node | CentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7 | cloudnativer |
Select any k8s-master server, and execute the following command on it:
# kube-install -opt addnode -node "192.168.1.15,192.168.1.16" -sshpwd "cloudnativer" -ostype "centos7"
Notice: Please make sure that the -ostype
flag you entered is correct, only support rhel7
, rhel8
, centos7
, centos8
, suse15
these types of "ostype".
The architecture after installation is shown in the following figure:
You can click here to view more operation documents about add k8s-node, delete k8s-node, delete k8s-master, rebuild k8s-master, and uninstall cluster.
The parameters about kube-install can be viewed using the kube-install help
command. You can also see more detailed parameter introduction here.
The build can be completed automatically by executing the make
command. You can also see more detailed build instructions here.