第四章 K8s部署安裝


一、kube-proxy開啟ipvs的前置條件

//1、加載netfilter模塊

modprobe br_netfilter  

//2、添加配置文件

cat  >  /etc/sysconfig/modules/ipvs.modules  <<EOF

#!/bin/bash

modprobe  --  ip_vs

modprobe  --  ip_vs_rr

modprobe  --  ip_vs_wrr

modprobe  --  ip_vs_sh

modprobe  --  nf_conntrack_ipv4

EOF

//3、賦予權限並引導

chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules &&lsmod | grep -e ip_vs -e nf_conntrack_ipv4

二、安裝docker軟件

//1、docker依賴

yum install -y yum-utils device-mapper-persistent-data lvm2


//2、導入阿里雲的docker-ce倉庫

yum-config-manager  \

--add-repo  \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo


//3、更新系統安裝docker-ce

yum update -y && yum install -y docker-ce

 

//4、uname -r  檢測版本,再設置版本,后又重啟reboot

grub2-set-default "CentOS Linux (4.4.182-1.el7.elrepo.x86_64) 7 (Core)"

//5、啟動

systemctl start docker

//6、開機自啟

systemctl enable docker

//7、配置deamon

 

cat > /etc/docker/daemon.json <<EOF

{

"exec-opts": ["native.cgroupdriver=systemd"],

"log-driver": "json-file",

"log-opts": {

"max-size": "100m"

}

}

EOF

//8、創建目錄存放docker配置文件

mkdir -p  /etc/systemd/system/docker.service.d   

//9、重啟docker

systemctl daemon-reload && systemctl restart docker && systemctl enable docker

 

三、安裝Kubeadm(主從配置)

//1、導入阿里雲的YUM倉庫

cat  <<EOF >  /etc/yum.repos.d/kubernetes.repo

[kubernetes]

name=Kubernetes

baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64

enabled=1

gpgcheck=0

repo_gpgcheck=0

gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg

http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

EOF

 

//2、在每個節點安裝kubeadm(初始化工具)、kubectl(命令行管理工具)、kubelet(與docker的cri交互創建容器)

yum -y install kubeadm-1.15.1 kubectl-1.15.1 kubelet-1.15.1  

 

// 3、k8s開機自啟.kubelet需要與容器接口進行交互啟動容器,而k8s通過Kubeadm安裝出來以后都是以pod方式存在,也就是底層以容器的方式運行,所以一定要開機自啟

systemctl enable kubelet.service 

四、初始化主節點(master

1、導入鏡像

Xshell  rz命令

kubeadm-basic.images.tar.gz

2、解壓

tar -zxvf kubeadm-basic.images.tar.gz

3、導入,創建文件load-images.sh

 

4、編輯load-images.sh

 

5、賦予權限並執行

 

6、復制到其他節點

scp -r kubeadm-basic.images load-images.sh  root@k8s-node01:/root/

 

節點導入  ./load-images.sh

 

7、初始化節點

//顯示init默認的初始化文件,並打印出來到kubeadm-config.yaml文件中

kubeadm config print init-defaults > kubeadm-config.yaml 

8、獲得了kubeadm的初始化模板,並修改

8.1 ip地址修改,不知道自己的ifconfig

 

 

 

 

 

 

 

8.2版本號修改

 

 

 

 

 

 

 

 

8.3、添加pod網段:podSubnet: "10.244.0.0/16"

 

8.4、修改默認的調度方式

---

apiVersion: kubeproxy.config.k8s.io/v1alpha1

kind: KubeProxyConfiguration

featureGates:

SupportIPVSProxyMode: true

mode: ipvs 

9、指定從那個yaml文件進行初始化安裝,自動頒發證書,並將所有信息寫入到kubeadm-init.log

kubeadm init --config=kubeadm-config.yaml --experimental-upload-certs | tee kubeadm-init.log

10、查看kubeadm-init.log

 

11、查看證書

 

12、成功后根據日志提示操作

13、查看節點

 

五、部署網絡

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 其他隨筆:

拷貝鏡像到其他文件

scp -r kubeadm-basic.images load-images.sh root@k8s-node01:/root/

wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
 節點加入集群

kubeadm join 192.168.100.179:6443 --token abcdef.0123456789abcdef \

--discovery-token-ca-cert-hash sha256:2bb6e02e45b59bdba86e0478b60d984730995924379c2973a4049a601316689f
 

//查看日志

vim kubeadm-init.log

//查看節點信息

kubectl get pod -n kube-system   

kubectl get pod -n kube-system -w   //監視

kubectl get pod -n kube-system -o wide   // 詳細信息

//存放文件

mv install-k8s  / /usr/local/



nmtui命令調出修改窗口

 

 

鏈接:https://www.bilibili.com/video/av66617940/?p=7

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM