五分钟带你玩转k8sk8s傻瓜式安装搭建nodes
Posted 小黄鸡1992
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了五分钟带你玩转k8sk8s傻瓜式安装搭建nodes相关的知识,希望对你有一定的参考价值。
1.更改linux环境,关闭selinux等
swapoff -a //关闭swap
setenforce 0 //临时关闭selinux
每台机器的以下内容不能相同
sudo cat /sys/class/dmi/id/product_uuid //每台机器的uuid不能相同
ifconfig -a //ip不能相同
端口不能占用 且需要开启 10250,8080,8443端口
sudo netstat -ntlp |grep -E '6443|23[79,80]|1025[0,1,2]'
如果你执行上述命令时,提示 command not found
,请执行 sudo yum install net-tools
2.下载安装
首页可以来到github上查询自己想要的版本 官网地址;https://github.com/kubernetes/kubernetes/releases
这里楼主选择
//选择一个文件夹下载包
wget -q https://dl.k8s.io/v1.21.0/kubernetes-server-linux-amd64.tar.gz
//解压上面下载gz包
tar -zxf kubernetes-server-linux-amd64.tar.gz
ls kubernetes
ls kubernetes/server/bin/ | grep -E 'kubeadm|kubelet|kubectl'
//将kubeadm kubectl kubelet 移动至 /usr/bin
mv kubernetes/server/bin/kube{adm,ctl,let} /usr/bin/
//查看文件
ls /usr/bin/kube*
//查看是否安装成功
kubeadm version
kubectl version --client
kubelet --version
3.新增配置
//新增kubelet.service文件并写入以下配置 直接复制粘贴即可
cat <<'EOF' > /etc/systemd/system/kubelet.service
[Unit]
Description=kubelet: The Kubernetes Agent
Documentation=http://kubernetes.io/docs/
[Service]
ExecStart=/usr/bin/kubelet
Restart=always
StartLimitInterval=0
RestartSec=10
[Install]
WantedBy=multi-user.target
EOF
//新增文件夹并新增文件
mkdir -p /etc/systemd/system/kubelet.service.d
cat <<'EOF' > /etc/systemd/system/kubelet.service.d/kubeadm.conf
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env
EnvironmentFile=-/etc/default/kubelet
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS
EOF
4.kubelet开机启动
systemctl enable kubelet
5.修改启动组
修改docker启动组为systemd
cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOF
systemctl restart docker
6.加入master
执行 以下命令是master init时候提供的
kubeadm join 192.168.18.15:6443 --token ry0rwa.oly8kisb7ruceenx --discovery-token-ca-cert-hash sha256:16928607989901f182d2f835fb12f450de6bd9e7571b84bf7a93408af917d5e3
修改kubelet启动组为systemd
vi /var/lib/kubelet/config.yaml
如果卡住情况为token失效
获取新token
kubeadm token create
执行以下命令
export KUBECONFIG=/etc/kubernetes/kubelet.conf
7.安装flannel
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
如果出现Connecting to raw.githubusercontent.com refused,可以执行vi /etc/hosts 在后面添加199.232.96.133 raw.githubusercontent.com
这里楼主没有成功 出现以下错误
楼主的办法是将master的/opt/cni/bin/文件复制过来 放在nodes里面
如果看日志还有出现以下问题
楼主的办法是在此文件夹建立一个空的文件夹 就不会出现这个错误了
7.成功
执行
kubectl get nodes
出现
备注:如果systemctl启动失败可以使用以下命令查询错误信息
journalctl -xefu kubelet
以上是关于五分钟带你玩转k8sk8s傻瓜式安装搭建nodes的主要内容,如果未能解决你的问题,请参考以下文章
五分钟带你玩转k8s可视化界面Dashboard创建傻瓜式安装
五分钟带你玩转k8s全网最全最新安装nodes方式,楼主亲测好用
五分钟带你玩转docker实战elk环境——kibana搭建