日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

在ubuntu上用kubeadm部署kubernetes (k8s) 集群

發布時間:2023/12/8 Ubuntu 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在ubuntu上用kubeadm部署kubernetes (k8s) 集群 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
參考: https://www.jianshu.com/p/f2d4dd4d1fb1 https://www.cnblogs.com/wangxu01/articles/11660199.html#autoid-4-0-0
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? 步驟詳情
一、k8s安裝
1.在已安裝docker的情況下install kubeadm、kubelet、kubectl #打開sources.list并加入國內鏡像源,直接在/etc/apt/sources.list里添加https://mirrors.aliyun.com/kubernetes/apt/是不行的,因為這個阿里鏡像站使用的ssl進行傳輸的,所以要先安裝apt-transport-https并下載鏡像站的密鑰才可以進行下載。 cat <<EOF >>/etc/apt/sources.list # kubeadm及kubernetes組件安裝源 deb https://mirrors.aliyun.com/kubernetes/apt kubernetes-xenial main EOF #若上一條permission denied,換下面的語句試試 sudo sh -c 'echo "deb https://mirrors.aliyun.com/kubernetes/apt kubernetes-xenial main">/etc/apt/sources.list' # 列出所有可升級版本 sudo apt-cache madison kubeadm sudo apt-cache madison kubelet #安裝1.15.3版本 sudo apt-get update && apt-get install kubelet=1.15.3-00 kubeadm=1.15.3-00 kubectl=1.15.3-00 --allow-unauthenticated 2.拉取核心組件鏡像 # 獲取需要的鏡像 sudo kubeadm config images list --kubernetes-version=v1.15.3 # 下載鏡像 sudo docker pull registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/pause:3.1 sudo docker pull registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/coredns:1.3.1 sudo docker pull registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/etcd:3.3.10 sudo docker pull mirrorgooglecontainers/kube-apiserver:v1.15.3-beta.0 sudo docker pull mirrorgooglecontainers/kube-controller-manager:v1.15.3 sudo docker pull mirrorgooglecontainers/kube-scheduler:v1.15.3 sudo docker pull mirrorgooglecontainers/kube-proxy:v1.15.3 sudo docker pull mirrorgooglecontainers/etcd:3.3.10 sudo docker pull coredns/coredns:1.3.1 #打標簽(kubeadm默認使用的是k8s.io下面的鏡像,從國內鏡像站下載完之后打成k8s.io的tag sudo docker tag registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/pause:3.1 k8s.gcr.io/pause:3.1 sudo docker tag registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/etcd:3.3.10 k8s.gcr.io/etcd:3.3.10 sudo docker tag registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/coredns:1.3.1 k8s.gcr.io/coredns:1.3.1 sudo docker tag mirrorgooglecontainers/kube-apiserver:v1.15.3-beta.0??k8s.gcr.io/kube-apiserver:v1.15.3 sudo docker tag mirrorgooglecontainers/kube-controller-manager:v1.15.3 k8s.gcr.io/kube-controller-manager:v1.15.3 sudo docker tag mirrorgooglecontainers/kube-scheduler:v1.15.3 k8s.gcr.io/kube-scheduler:v1.15.3 sudo docker tag mirrorgooglecontainers/kube-proxy:v1.15.3 k8s.gcr.io/kube-proxy:v1.15.3 sudo docker tag mirrorgooglecontainers/etcd:3.3.10 k8s.gcr.io/etcd:3.3.10 sudo docker tag coredns/coredns:1.3.1 k8s.gcr.io/coredns:1.3.1 #刪除原來的標簽 sudo docker rmi registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/coredns:1.3.1 sudo docker rmi registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/etcd:3.3.10 sudo docker rmi registry.cn-beijing.aliyuncs.com/enzhige-kubeadm/pause:3.1 sudo docker rmi mirrorgooglecontainers/kube-apiserver:v1.15.3-beta.0 sudo docker rmi mirrorgooglecontainers/kube-controller-manager:v1.15.3 sudo docker rmi mirrorgooglecontainers/kube-scheduler:v1.15.3 sudo docker rmi mirrorgooglecontainers/kube-proxy:v1.15.3 sudo docker rmi mirrorgooglecontainers/etcd:3.3.10 sudo docker rmi coredns/coredns:1.3.1 #查看鏡像 sudo docker images | grep k8s
二、master節點安裝
1.環境準備 # 禁用selinux sudo vim /etc/selinux/config SELINUX=disabled #禁用防火墻 setenforce 0 sudo ufw disable #驗證 getenforce Disabled # 關閉swap sudo swapoff -a #確認swap已經關閉 free -m # 添加內核配置 sudo sh -c 'echo "net.bridge.bridge-nf-call-ip6tables = 1\nnet.bridge.bridge-nf-call-iptables = 1\nnet.ipv4.ip_forward = 1">/etc/sysctl.d/k8s.conf' #執行命令讓修改生效 modprobe br_netfilter sudo sysctl -p /etc/sysctl.d/k8s.conf # 配置IPVS模塊 vim /etc/modules ip_vs_rr ip_vs_wrr ip_vs_sh ip_vs sudo iptables -P FORWARD ACCEPT modprobe -- ip_vs modprobe -- ip_vs_rr modprobe -- ip_vs_wrr modprobe -- ip_vs_sh modprobe -- nf_conntrack_ipv4 #查看是否已經正確加載所需的內核模塊 lsmod | grep -e ip_vs -e nf_conntrack_ipv4 2.使用kubeadm初始化k8s的master節點 sudo kubeadm init --kubernetes-version v1.15.3 --apiserver-advertise-address 192.168.113.39 --pod-network-cidr=10.244.0.0/16
  • --apiserver-advertise-address: k8s 中的主要服務apiserver的部署地址,填自己的管理節點 ip
  • --image-repository: 拉取的 docker 鏡像源
  • --pod-network-cidr: 這個是 k8s 采用的節點網絡,對flannel而言填10.244.0.0/16
  • --kubernetes-version: 用來指定要部署的 k8s 版本
  • --ignore-preflight-errors: 忽略初始化時遇到的錯誤,比如要忽略 cpu 數量不夠 2 核引起的錯誤,就可以用--ignore-preflight-errors=CpuNum。錯誤名稱在初始化錯誤時會給出來。
  • 如果在初始化過程中出現了任何Error導致初始化終止了,使用kubeadm reset重置之后再重新進行初始化
? ? 加入worker節點的命令要記下來,如果忘了可以master節點上使用kubeadm token create --print-join-command命令重新生成一條 You should now deploy a pod network to the cluster. Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at: https://kubernetes.io/docs/concepts/cluster-administration/addons/ Then you can join any number of worker nodes by running the following on each as root: sudo kubeadm join 192.168.113.39:6443 --token cqv8ow.o0m6l2w9g4jgcdna \ ????--discovery-token-ca-cert-hash sha256:fdf7857e1995d91665de1e1b623416de20360785e30b315323bac8770e1f3993 3.配置kubectl工具 mkdir -p $HOME/.kube && \ sudo cp /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config #驗證一下kubectl是否配置好了 # 查看已加入的節點 kubectl get nodes # 查看集群狀態,no-ready因為沒有配置網卡 kubectl get cs 4.部署flannel網絡 flannel是一個專門為 k8s 設置的網絡規劃服務,可以讓集群中的不同節點主機創建的 docker 容器都具有全集群唯一的虛擬IP地址。 kubectl apply -f?https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml 若出錯,可將yaml文件從網頁上復制下來。 # 查看 Pod 運行狀態 kubectl get pods -n kube-system | grep kube-flannel
三、配置英偉達顯卡插件
kubectl apply -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/master/nvidia-device-plugin.yml 若出錯,可將yaml文件從網頁上復制下來。

總結

以上是生活随笔為你收集整理的在ubuntu上用kubeadm部署kubernetes (k8s) 集群的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。