ubuntu-20.04系统搭建k8s-1.24版本集群

节点分配:

master

192.168.139.12

node-1

192.168.139.13

node-2

192.168.139.14

基本配置:

传密钥

时间同步

修改时区

修改主机名

hosts解析

安装:

apt-get update 
apt install -y apt-transport-https  gnupg gnupg2 gnupg1 curl lsb-release
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add - 
cat </etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
apt-get update
apt-get install -y kubelet=1.24.1-00 kubeadm=1.24.1-00 kubectl=1.24.1-00

关闭防火墙

service iptables stop
systemctl stop firewalld.service
ufw disable
iptables -F

关闭swap

swapoff -a
sed -ri 's/.*swap.*/#&/' /etc/fstab

桥接的ipv4流量转到iptables:

cat <

安装containerd

apt install containerd -y
systemctl start containerd
systemctl enable containerd
mkdir -p /etc/containerd/
containerd config default > /etc/containerd/config.toml
sed -i 's/SystemdCgroup \= false/SystemdCgroup \= true/g' /etc/containerd/config.toml
systemctl restart containerd

拉取镜像

kubeadm config images pull --kubernetes-version=v1.24.1 --image-repository=registry.aliyuncs.com/google_containers

初始化集群

kubeadm init  --image-repository=registry.aliyuncs.com/google_containers \
    --pod-network-cidr=10.244.0.0/16
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
export KUBECONFIG=/etc/kubernetes/admin.conf

安装Calico:

kubectl create -f https://docs.projectcalico.org/manifests/tigera-operator.yaml
wget https://docs.projectcalico.org/manifests/custom-resources.yaml
修改文件第13行,修改为使用kubeadm init ----pod-network-cidr对应的IP地址段
# vim custom-resources.yaml
......
 11     ipPools:
 12     - blockSize: 26
 13       cidr: 10.244.0.0/16   #把这里Ip复制过去
 14       encapsulation: VXLANCrossSubnet
kubectl apply -f custom-resources.yaml
监视calico-sysem命名空间中pod运行情况
# watch kubectl get pods -n calico-system
删除 master 上的 taint(取消污点)
# kubectl taint nodes --all node-role.kubernetes.io/master-
kubectl get pods -n calico-system
kubectl get pods -n kube-system

ubuntu-20.04系统搭建k8s-1.24版本集群_第1张图片

 安装calicoctl客户端(还是在master操作)

注意这里的版本要和上面一样
curl -L https://github.com/projectcalico/calico/releases/download/v3.24.5/calicoctl-linux-amd64 -o calicoctl
安装calicoctl
# mv calicoctl /usr/bin/

为calicoctl添加可执行权限
# chmod +x /usr/bin/calicoctl

查看添加权限后文件
# ls /usr/bin/calicoctl
/usr/bin/calicoctl

查看calicoctl版本
# calicoctl  version
Client Version:    v3.24.5
Git commit:        220d04c94
Cluster Version:   v3.24.5
Cluster Type:      typha,kdd,k8s,operator,bgp,kubeadm
DATASTORE_TYPE=kubernetes KUBECONFIG=~/.kube/config calicoctl get nodes

 ubuntu-20.04系统搭建k8s-1.24版本集群_第2张图片

 加入worker节点

kubeadm join 192.168.139.12:6443 --token ae9hzw.8gttophscszpqxc2 \
    --discovery-token-ca-cert-hash sha256:db3ed5ff517e8d7c33fdbbd5acee068f56b42376c339da441e614df690ef0ee0

ubuntu-20.04系统搭建k8s-1.24版本集群_第3张图片

 

你可能感兴趣的:(linux,运维,服务器)