K8S实战之环境部署1,2024年最新附架构师必备技术详解

26 阅读4分钟

setenforce 0 swapoff -a #临时关闭,永久关闭需要写入fatab


1.3 修改主机名,并写入三台服务器的host中



hostnamectl set-hostname K8S-master 102 hostnamectl set-hostname K8S-node01 103 hostnamectl set-hostname K8S-mast02 104 cat >> /etc/hosts << EOF 192.168.106.102 K8S-master 192.168.106.103 K8S-node01 192.168.106.104 K8S-mast02


1.4 将桥接的IPV4流量传递到iptables的链:



cat > /etc/sysctl.d/k8s.conf << EOF net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF sysctl --system #配置生效


1.5 同步时间



ntpdate time.windows.com #如果时区不对执行下面命令,然后在同步 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


1.6 配置阿里源,下载相应的软件包



cat < /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=mirrors.aliyun.com/kubernetes/… enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=mirrors.aliyun.com/kubernetes/… mirrors.aliyun.com/kubernetes/… EOF yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0 #kubectl-1.18.0命令行管理工具,kubeadm-1.18.0是引导K8S集群,kubelet-1.18.0管理容器 systemctl enable kubelet


**2.0部署kubernetes Master节点(master节点上执行)**



kubeadm init
--apiserver-advertise-address=192.168.106.102 \ #指定master监听的地址 --image-repository registry.aliyuncs.com/google_containers \ #指定下载源 --kubernetes-version v1.18.0 \ #指定kubernetes版本 --service-cidr=10.96.0.0/12 #设置集群内部的网络 --pod-network-cidr=10.244.0.0/16 #设置pod的网络


![在这里插入图片描述](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/b27b5fd48c804c9a8e080f7190aed954~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3MzIxMjA3NDIwNDUy:q75.awebp?rk3s=f64ab15b&x-expires=1771139888&x-signature=aV0GnltDi4P7Sh6Ah34GKNFMwp4%3D)  
 以下命令是加入master的命令需要复制出来



kubeadm join 192.168.106.102:6443 --token 7w0oxu.drdkjuzirow3dvj7
--discovery-token-ca-cert-hash sha256:e30452be8217affa2f11229e45cb2ed9dfa4424c82d5f354d9813ce789f58fdb`

mkdir -p $HOME/.kube
cp -i  /etc/kubernetes/admin.conf  $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

 kubectl get node   #查看版本

在这里插入图片描述

kubectl  get pods -n kube-system  #查看所有组件

在这里插入图片描述
2.1 安装Pod网络插件

 wget http://120.78.77.38/file/kube-flannel.yaml #下载镜像,国外源,我已经下载到本地
 kubectl apply  -f  kube-flannel.yaml #原始镜像有问题改成如下图所示的镜像名称

在这里插入图片描述
启动镜像,启动完查看镜像,会增加一个flannel镜像。支持多主机容器网络通信的

docker pull lizhenliang/flannel:v0.11.0-amd64  #建议先下载镜像
kubectl apply  -f  kube-flannel.yaml
kubectl  get   pods  -n  kube-system

在这里插入图片描述
如图所示说明K8Spod正常启动
如果之前的环境配置有问题,执行下面命令清理K8S环境

kubectl log  kube-flannel-ds-sjs4p -n   kube-system     -f  启动有问题查看日志详细信息`
`kubectl delete -f kube-flannel.yaml #删除pod`
```bash
kubeadm reset -f
modprobe -r ipip
lsmod
rm -rf ~/.kube/
rm -rf /etc/kubernetes/
rm -rf /etc/systemd/system/kubelet.service.d
rm -rf /etc/systemd/system/kubelet.service
rm -rf /usr/bin/kube\*
rm -rf /etc/cni
rm -rf /opt/cni
rm -rf /var/lib/etcd
rm -rf /var/etcd

  1. k8s-node节点加入master节点(两台主机分别执行)
kubeadm join 192.168.106.102:6443 --token 7w0oxu.drdkjuzirow3dvj7 \
    --discovery-token-ca-cert-hash sha256:e30452be8217affa2f11229e45cb2ed9dfa4424c82d5f354d9813ce789f58fdb

在这里插入图片描述

 kubectl get nodes     #master节点运行

在这里插入图片描述
至此K8S集群部署完成

4. master节点安装管理页面dashboard

wget   http://120.78.77.38/file/kubernetes-dashboard.yaml
kubectl apply -f  kubernetes-dashboard.yaml
 kubectl get  pods  -n  k![在这里插入图片描述](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/74602d7b00074510a44bf14e92826a92~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3MzIxMjA3NDIwNDUy:q75.awebp?rk3s=f64ab15b&x-expires=1771139888&x-signature=FElHfsRWWyKRw7Hd9cg9%2F93A%2BEc%3D)
ubernetes-dashboard
 #下图位置需要修改

在这里插入图片描述

kubectl get pod -n kubernetes-dashboard  -o wide  #查看pod在哪个节点



![img](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/09819aad4ffb4c63879c89eb84450c78~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3MzIxMjA3NDIwNDUy:q75.awebp?rk3s=f64ab15b&x-expires=1771139888&x-signature=EHfHWyRmRlAfWi58AzbFZfrnJCk%3D)
![img](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/003de0a2a7374f419ffabfab0673e104~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3MzIxMjA3NDIwNDUy:q75.awebp?rk3s=f64ab15b&x-expires=1771139888&x-signature=1R%2BF3146BA4pedBZNvpzggGlxkY%3D)
![img](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/bfe1bd5b1a48481ebb17eec954c3d737~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3MzIxMjA3NDIwNDUy:q75.awebp?rk3s=f64ab15b&x-expires=1771139888&x-signature=reB1ShnyWBiVe0HQn%2FhvS42oFAg%3D)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**

**开源项目:docs.qq.com/doc/DSlVlZExWQ0FRSE9H**