企业的网站建设策划书,万网域名解析,网站文章上传时间,做360网站优化快1 K8S 是什么 
Kubernetes 是一款容器的编排调度工具#xff0c;来源于 Google 开源的 Brog 系统。Kubernetes简称K8S#xff0c;是用8代替8个字符 “ubernete” 而成的缩写#xff0c;用于管理云平台中多个主机上的容器化的应用#xff0c;Kubernetes 的目标是让部署容器化…1 K8S 是什么 
Kubernetes 是一款容器的编排调度工具来源于 Google 开源的 Brog 系统。Kubernetes简称K8S是用8代替8个字符 “ubernete” 而成的缩写用于管理云平台中多个主机上的容器化的应用Kubernetes 的目标是让部署容器化的应用简单并且高效Kubernetes提供了应用部署规划更新维护的一种机制。 集群中的各种角色  apiserver 所有服务访问的唯一入口提供认证、授权、访问控制、API 注册和发现等机制 controller manager 负责维护集群的状态比如副本期望数量、故障检测、自动扩展、滚动更新等 scheduler 负责资源的调度按照预定的调度策略将 Pod 调度到相应的机器上 etcd 键值对数据库保存了整个集群的状态 kubelet 负责维护容器的生命周期同时也负责 Volume 和网络的管理 kube-proxy 负责为 Service 提供 cluster 内部的服务发现和负载均衡 Container runtime 负责镜像管理以及 Pod 和容器的真正运行 
nginx 要调度到哪个工作节点呢由scheduler监听API server发现有新的创建应用通过API server 到 etcd 拿数据然后 controller manager 确定哪个Node合适 最后由API server指挥远程工作节点中的一个组件 Kubelet 由 Kubelet 创建 podKubelet 通过 cri-dockerd 操作 docker 创建 pod。  首先将一个 K8s 比作一个集团集团要做不同的项目集群的各个角色就担任了不同的任务。 
Node就是各个负责工作的地方也就是工厂。Kubelet每一个工厂的负责人。k-proxy每一个工厂的门卫当总部的人要来巡视工厂了可以通过它来询问当前的项目是不是在这开展不管有没有在它这开展它都能告诉领导该去哪里查看。controller manager决策者决定项目由哪一个工厂来开展。API server秘书部决策者的决策不会直接告诉工厂而是通过它来进行转达同样地工厂的情况也是通过它来转给决策者。scheduler调度者调度项目的执行。etcd资料库用于存放集团的资料。 每一个服务器中要有一个监工kubelet由它来负责监控整个服务器里面容器的监控状况所有的沟通都是通过秘书api-server所有的服务器都要装上运行时环境可以是docker。可以通过命令的形式来进行部署 2 环境部署 
1 ip规划 
vim /etc/hosts192.168.21.20 kubernetes-master.inspur.com kubernetes-master 192.168.21.21 kubernetes-node1.inspur.com kubernetes-node1 192.168.21.22 kubernetes-node2.inspur.com kubernetes-node2 192.168.21.23 kubernetes-node3.inspur.com kubernetes-node3 192.168.21.24 kubernetes-register.inspur.com kubernetes-register 
[rootinspur ~]# ssh-keygen -t rsa
[rootinspur ~]# ls .ssh/
id_rsa  id_rsa.pub[rootinspur ~]# for i in 20 21 22 23 24dossh-copy-id root192.168.21.$idone[rootinspur ~]# for i in 20 21 22 23 24; do ssh root192.168.21.$i hostname; done
inspur
inspur
inspur
inspur
inspur[rootinspur ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.110.35.201 registrylibrary.com.cn
192.168.21.20 kubernetes-master.inspur.com kubernetes-master
192.168.21.21 kubernetes-node1.inspur.com kubernetes-node1
192.168.21.22 kubernetes-node2.inspur.com kubernetes-node2
192.168.21.23 kubernetes-node3.inspur.com kubernetes-node3
192.168.21.24 kubernetes-register.inspur.com kubernetes-register
[rootinspur ~]# hostnamectl set-hostname  kubernetes-master
[rootinspur ~]# exec /bin/bash
[rootkubernetes-master ~]# hostname
kubernetes-master[rootkubernetes-master ~]# ssh root192.168.21.21 hostnamectl set-hostname  kubernetes-node1
[rootkubernetes-master ~]# ssh root192.168.21.22 hostnamectl set-hostname  kubernetes-node2
[rootkubernetes-master ~]# ssh root192.168.21.23 hostnamectl set-hostname  kubernetes-node3
[rootkubernetes-master ~]# ssh root192.168.21.24 hostnamectl set-hostname  kubernetes-register 
[rootkubernetes-master ~]# for i in 20 21 22 23 24; do ssh root192.168.21.$i hostname; done
kubernetes-master
kubernetes-node1
kubernetes-node2
kubernetes-node3
kubernetes-register2 不重启电脑禁用启用swap立刻生效 
# 禁用命令sudo swapoff -a
# 启用命令sudo swapon -a
# 查看交换分区的状态sudo free -m[rootkubernetes-master ~]# vim  /etc/sysctl.d/k8s.conf
[rootkubernetes-master ~]# cat /etc/sysctl.d/k8s.conf
vm.swappiness03 网络参数调整 
配置iptables参数使得流经网桥的流量也经过iptables/netfilter防火墙 
[rootkubernetes-master ~]# vim /etc/sysctl.d/k8s.conf
[rootkubernetes-master ~]# cat /etc/sysctl.d/k8s.conf
vm.swappiness0
net.bridge.bridge-nf-call-iptables   1
net.bridge.bridge-nf-call-ip6tables  1
net.ipv4.ip_forward                  1配置生效 
[rootkubernetes-master ~]# sudo modprobe overlay
[rootkubernetes-master ~]# sudo modprobe br_netfilter
[rootinspur ~]# sysctl -p /etc/sysctl.d/k8s.conf4 容器环境配置 
https://developer.aliyun.com/mirror/docker-ce?spma2c6h.13651102.0.0.3e221b11ixbXRM dokcer的安装见之前的文章 
systemctl enable docker配置docker镜像加速器 
[rootkubernetes-master docker]# pwd
/etc/docker
[rootkubernetes-master docker]# cat daemon.json
{registry-mirrors: [https://4zmn196h.mirror.aliyuncs.com,http://74f21445.m.daocloud.io,https://registry.docker-cn.com,http://hub-mirror.c.163.com,https://docker.mirrors.ustc.edu.cn],dns: [8.8.8.8, 114.114.114.114],insecure-registries: [kubernetes-register.inspur.com],exec-opts:[ native.cgroupdriversystemd]
}
[rootkubernetes-master docker]# 
5 cri环境操作 
[rootkubernetes-master softs]# pwd
/data/softs
[rootkubernetes-master softs]# ll
total 0
[rootkubernetes-master softs]# 
下载软件 
[rootkubernetes-master softs]# wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.2/cri-dockerd-0.3.2.amd64.tgz解压软件 
[rootkubernetes-master softs]# tar -zxvf cri-dockerd-0.3.2.amd64.tgz[rootkubernetes-master system]# cd /usr/lib/systemd/system/
[rootkubernetes-master system]# chmod 777 cri-dockerd配置启动文件 /etc/systemd/system 
[Unit]
DescriptionCRI Interface for Docker Application Container Engine
Documentationhttps://docs.mirantis.com
Afternetwork-online.target firewalld.service docker.service
Wantsnetwork-online.target
[Service]
Typenotify
ExecStart/usr/local/bin/cri-dockerd --pod-infra-container-imageregistry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.9
--network-plugincni --cni-conf-dir/etc/cni/net.d --cni-bin-dir/opt/cni/bin --container-runtime-endpointunix:///var/run/cri-dockerd.sock --cri-dockerd-root-directory/var/lib/dockershim --docker-endpointunix:///var/run/docker.sock --cri-dockerd-root-directory/var/lib/docker
ExecReload/bin/kill -s HUP $MAINPID
TimeoutSec0
RestartSec2
Restartalways
StartLimitBurst3
StartLimitInterval60s 
LimitNOFILEinfinity
LimitNPROCinfinity
LimitCOREinfinity
TasksMaxinfinity
Delegateyes
KillModeprocess
[Install]
WantedBymulti-user.target生成socket文件 /etc/systemd/system 
[Unit]
DescriptionCRI Docker socket for the API
PartOfcri-docker.service
[Socket]
ListenStream/var/run/cri-dockerd.sock
SocketMode0660
SocketUserroot
SocketGroupdocker
[Install]
WantedBysockets.target[rootkubernetes-master system]# cd /etc/systemd/system/检查效果 
[rootkubernetes-master bin]# systemctl status cri-dockerdsystemctl is-active cri-dockerd设置服务开机自启动 
[rootkubernetes-master bin]# systemctl daemon-reload
[rootkubernetes-master bin]# systemctl enable cri-dockerd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/cri-dockerd.service to /etc/systemd/system/cri-dockerd.service.
[rootkubernetes-master bin]# systemctl restart cri-dockerd.service
[rootkubernetes-master bin]#6 harbor仓库操作 
下载软件700M左右 
wget https://github.com/goharbor/harbor/releases/download/v2.5.0/harbor-offline-installer-v2.5.0.tgzcurl -SL https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-composemv docker-compose-linux-x86_64 /usr/local/bin/docker-composechmod x docker-composesudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-composedocker-compose --version[rootkubernetes-register softs]# tar -zxvf docker-compose-linux-x86_64[rootkubernetes-register server]# pwd
/data/server
[rootkubernetes-register server]# ll
total 0
drwxr-xr-x. 2 root root 122 Aug  7 15:57 harbor
[rootkubernetes-register server]# cd harbor/
[rootkubernetes-register harbor]# ll
total 647720
-rw-r--r--. 1 root root      3361 Apr  7  2022 common.sh
-rw-r--r--. 1 root root 663227387 Apr  7  2022 harbor.v2.5.0.tar.gz
-rw-r--r--. 1 root root      9917 Apr  7  2022 harbor.yml.tmpl
-rwxr-xr-x. 1 root root      2500 Apr  7  2022 install.sh
-rw-r--r--. 1 root root     11347 Apr  7  2022 LICENSE
-rwxr-xr-x. 1 root root      1881 Apr  7  2022 prepare
[rootkubernetes-register harbor]# 
[rootkubernetes-register harbor]# docker load  harbor.v2.5.0.tar.gz修改配置文件 
[rootkubernetes-register harbor]# cp harbor.yml.tmpl harbor.yml
[rootkubernetes-register harbor]# vim harbor.ymlhostname: kubernetes-register.inspur.com禁用https: 
#https:# https port for harbor, default is 443# port: 443# The path of cert and key files for nginx#certificate: /your/certificate/path#private_key: /your/private/key/pathharbor_admin_password: 123456data_volume: /data/server/harbor/data生成配置文件 
[rootkubernetes-register harbor]# ./prepare
prepare base dir is set to /data/server/harbor
WARNING:root:WARNING: HTTP protocol is insecure. Harbor will deprecate http protocol in the future. Please make sure to upgrade to https
Generated configuration file: /config/portal/nginx.conf
Generated configuration file: /config/log/logrotate.conf
Generated configuration file: /config/log/rsyslog_docker.conf
Generated configuration file: /config/nginx/nginx.conf
Generated configuration file: /config/core/env
Generated configuration file: /config/core/app.conf
Generated configuration file: /config/registry/config.yml
Generated configuration file: /config/registryctl/env
Generated configuration file: /config/registryctl/config.yml
Generated configuration file: /config/db/env
Generated configuration file: /config/jobservice/env
Generated configuration file: /config/jobservice/config.yml
Generated and saved secret to file: /data/secret/keys/secretkey
Successfully called func: create_root_cert
Generated configuration file: /compose_location/docker-compose.yml
Clean up the input dir 
启动安装 
[rootkubernetes-register harbor]# ./install.sh[rootkubernetes-register harbor]# docker compose ps
NAME                IMAGE                                COMMAND                  SERVICE             CREATED             STATUS                             PORTS
harbor-core         goharbor/harbor-core:v2.5.0          /harbor/entrypoint.…   core                5 minutes ago       Up 31 seconds (healthy)
harbor-db           goharbor/harbor-db:v2.5.0            /docker-entrypoint.…   postgresql          5 minutes ago       Up 32 seconds (healthy)
harbor-jobservice   goharbor/harbor-jobservice:v2.5.0    /harbor/entrypoint.…   jobservice          5 minutes ago       Up 29 seconds (health: starting)
harbor-log          goharbor/harbor-log:v2.5.0           /bin/sh -c /usr/loc…   log                 5 minutes ago       Up 4 minutes (healthy)             127.0.0.1:1514-10514/tcp
harbor-portal       goharbor/harbor-portal:v2.5.0        nginx -g daemon of…   portal              5 minutes ago       Up 32 seconds (healthy)
nginx               goharbor/nginx-photon:v2.5.0         nginx -g daemon of…   proxy               5 minutes ago       Up 29 seconds (health: starting)   0.0.0.0:80-8080/tcp, :::80-8080/tcp
redis               goharbor/redis-photon:v2.5.0         redis-server /etc/r…   redis               5 minutes ago       Up 32 seconds (healthy)
registry            goharbor/registry-photon:v2.5.0      /home/harbor/entryp…   registry            5 minutes ago       Up 32 seconds (healthy)
registryctl         goharbor/harbor-registryctl:v2.5.0   /home/harbor/start.…   registryctl         5 minutes ago       Up 32 seconds (healthy)
[rootkubernetes-register harbor]# 
有一个问题  下线处理 
[rootkubernetes-register harbor]# docker-compose down
[] Running 10/10✔ Container harbor-jobservice  Removed                                                                                                                                                      2.1s✔ Container nginx              Removed                                                                                                                                                      2.1s✔ Container registryctl        Removed                                                                                                                                                     10.4s✔ Container harbor-portal      Removed                                                                                                                                                      0.6s✔ Container harbor-core        Removed                                                                                                                                                      0.6s✔ Container registry           Removed                                                                                                                                                      0.4s✔ Container redis              Removed                                                                                                                                                      0.5s✔ Container harbor-db          Removed                                                                                                                                                      0.5s✔ Container harbor-log         Removed                                                                                                                                                     10.1s✔ Network harbor_harbor        Removed 定制服务启动文件 
[rootkubernetes-register system]# pwd
/etc/systemd/system[Unit]
DescriptionHarbor
Afterdocker.service systemd-networkd.service systemd-resolved.service
Requiresdocker.service
Documentationhttp://github.com/vmware/harbor
[Service]
Typesimple
Restarton-failure
RestartSec5
ExecStart/usr/bin/docker-compose --file /data/server/harbor/docker-compose.yml upExecStop/usr/bin/docker-compose --file /data/server/harbor/docker-compose.yml down
[Install]
WantedBymulti-user.target[rootkubernetes-register ~]# cd /data/server/harbor/
[rootkubernetes-register harbor]# docker-compose ps
NAME                IMAGE                                COMMAND                  SERVICE             CREATED             STATUS                   PORTS
harbor-core         goharbor/harbor-core:v2.5.0          /harbor/entrypoint.…   core                2 minutes ago       Up 2 minutes (healthy)
harbor-db           goharbor/harbor-db:v2.5.0            /docker-entrypoint.…   postgresql          2 minutes ago       Up 2 minutes (healthy)
harbor-jobservice   goharbor/harbor-jobservice:v2.5.0    /harbor/entrypoint.…   jobservice          2 minutes ago       Up 2 minutes (healthy)
harbor-log          goharbor/harbor-log:v2.5.0           /bin/sh -c /usr/loc…   log                 2 minutes ago       Up 2 minutes (healthy)   127.0.0.1:1514-10514/tcp
harbor-portal       goharbor/harbor-portal:v2.5.0        nginx -g daemon of…   portal              2 minutes ago       Up 2 minutes (healthy)
nginx               goharbor/nginx-photon:v2.5.0         nginx -g daemon of…   proxy               2 minutes ago       Up 2 minutes (healthy)   0.0.0.0:80-8080/tcp, :::80-8080/tcp
redis               goharbor/redis-photon:v2.5.0         redis-server /etc/r…   redis               2 minutes ago       Up 2 minutes (healthy)
registry            goharbor/registry-photon:v2.5.0      /home/harbor/entryp…   registry            2 minutes ago       Up 2 minutes (healthy)
registryctl         goharbor/harbor-registryctl:v2.5.0   /home/harbor/start.…   registryctl         2 minutes ago       Up 2 minutes (healthy)
[rootkubernetes-register harbor]# 
创建一个用户 
Inspur930312043qq.com用自己的账号登录并创建一个项目   
[rootkubernetes-master ~]# docker tag  nginx:latest kubernetes-register.inspur.com/inspur/nginx:2.22.01[rootkubernetes-master ~]# docker tag  tomcat:latest kubernetes-register.inspur.com/inspur/tomcat:11.1.01上传镜像到私有仓库 
[rootkubernetes-master ~]# docker images
REPOSITORY                                     TAG       IMAGE ID       CREATED         SIZE
nginx                                          latest    605c77e624dd   19 months ago   141MB
kubernetes-register.inspur.com/inspur/nginx    2.22.01   605c77e624dd   19 months ago   141MB
tomcat                                         latest    fb5657adc892   19 months ago   680MB
kubernetes-register.inspur.com/inspur/tomcat   11.1.01   fb5657adc892   19 months ago   680MB
[rootkubernetes-master ~]# docker login kubernetes-register.inspur.com
Username: inspur
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded
[rootkubernetes-master ~]# docker push kubernetes-register.inspur.com/inspur/tomcat:11.1.01
The push refers to repository [kubernetes-register.inspur.com/inspur/tomcat]
3e2ed6847c7a: Pushed
bd2befca2f7e: Pushed
59c516e5b6fa: Pushed
3bb5258f46d2: Pushed
832e177bb500: Pushed
f9e18e59a565: Pushed
26a504e63be4: Pushed
8bf42db0de72: Pushed
31892cc314cb: Pushed
11936051f93b: Pushed
11.1.01: digest: sha256:e6d65986e3b0320bebd85733be1195179dbce481201a6b3c1ed27510cfa18351 size: 2422
[rootkubernetes-master ~]# docker push kubernetes-register.inspur.com/inspur/nginx:2.22.01
The push refers to repository [kubernetes-register.inspur.com/inspur/nginx]
d874fd2bc83b: Pushed
32ce5f6a5106: Pushed
f1db227348d0: Pushed
b8d6e692a25e: Pushed
e379e8aedd4d: Pushed
2edcec3590a4: Pushed
2.22.01: digest: sha256:ee89b00528ff4f02f2405e4ee221743ebc3f8e8dd0bfd5c4c20a2fa2aaa7ede3 size: 1570
[rootkubernetes-master ~]# 
拉取镜像 
[rootkubernetes-register harbor]# docker pull kubernetes-register.inspur.com/inspur/tomcatsha256:e6d65986e3b0320bebd85733be1195179dbce481201a6b3c1ed27510cfa18351
kubernetes-register.inspur.com/inspur/tomcatsha256:e6d65986e3b0320bebd85733be1195179dbce481201a6b3c1ed27510cfa18351: Pulling from inspur/tomcat
Digest: sha256:e6d65986e3b0320bebd85733be1195179dbce481201a6b3c1ed27510cfa18351
Status: Image is up to date for kubernetes-register.inspur.com/inspur/tomcatsha256:e6d65986e3b0320bebd85733be1195179dbce481201a6b3c1ed27510cfa18351
kubernetes-register.inspur.com/inspur/tomcatsha256:e6d65986e3b0320bebd85733be1195179dbce481201a6b3c1ed27510cfa18351
[rootkubernetes-register harbor]# docker images
REPOSITORY                                     TAG       IMAGE ID       CREATED         SIZE
goharbor/harbor-exporter                       v2.5.0    36396f138dfb   16 months ago   86.7MB
goharbor/chartmuseum-photon                    v2.5.0    eaedcf1f700b   16 months ago   225MB
goharbor/redis-photon                          v2.5.0    1e00fcc9ae63   16 months ago   156MB
goharbor/trivy-adapter-photon                  v2.5.0    4e24a6327c97   16 months ago   164MB
goharbor/notary-server-photon                  v2.5.0    6d5fe726af7f   16 months ago   112MB
goharbor/notary-signer-photon                  v2.5.0    932eed8b6e8d   16 months ago   109MB
goharbor/harbor-registryctl                    v2.5.0    90ef6b10ab31   16 months ago   136MB
goharbor/registry-photon                       v2.5.0    30e130148067   16 months ago   77.5MB
goharbor/nginx-photon                          v2.5.0    5041274b8b8a   16 months ago   44MB
goharbor/harbor-log                            v2.5.0    89fd73f9714d   16 months ago   160MB
goharbor/harbor-jobservice                     v2.5.0    1d097e877be4   16 months ago   226MB
goharbor/harbor-core                           v2.5.0    42a54bc05b02   16 months ago   202MB
goharbor/harbor-portal                         v2.5.0    c206e936f4f9   16 months ago   52.3MB
goharbor/harbor-db                             v2.5.0    d40a1ae87646   16 months ago   223MB
goharbor/prepare                               v2.5.0    36539574668f   16 months ago   268MB
tomcat                                         latest    fb5657adc892   19 months ago   680MB
kubernetes-register.inspur.com/inspur/tomcat   11.1.01   fb5657adc892   19 months ago   680MB7 K8s集群初始化 配置阿里云镜像 
cat EOF  /etc/yum.repos.d/kubernetes.repo
[kubernetes]
nameKubernetes
baseurlhttps://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled1
gpgcheck1
repo_gpgcheck1
gpgkeyhttps://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
setenforce 0软件安装 
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet  systemctl start kubelet[rootkubernetes-master ~]# kubeadm version
kubeadm version: version.Info{Major:1, Minor:27, GitVersion:v1.27.4, GitCommit:fa3d7990104d7c1f16943a67f11b154b71f6a132, GitTreeState:clean, BuildDate:2023-07-19T12:19:40Z, GoVersion:go1.20.6, Compiler:gc, Platform:linux/amd64}
[rootkubernetes-master ~]# kubeadm config images list
registry.k8s.io/kube-apiserver:v1.27.4
registry.k8s.io/kube-controller-manager:v1.27.4
registry.k8s.io/kube-scheduler:v1.27.4
registry.k8s.io/kube-proxy:v1.27.4
registry.k8s.io/pause:3.9
registry.k8s.io/etcd:3.5.7-0
registry.k8s.io/coredns/coredns:v1.10.1
[rootkubernetes-master ~]# kubeadm config list | awk -F / {print $NF}
invalid subcommand list
See kubeadm config -h for help and examples
[rootkubernetes-master ~]# kubeadm config images list | awk -F / {print $NF}
kube-apiserver:v1.27.4
kube-controller-manager:v1.27.4
kube-scheduler:v1.27.4
kube-proxy:v1.27.4
pause:3.9
etcd:3.5.7-0
coredns:v1.10.1 
images$(kubeadm config images list --kubernetes-version1.27.4 | awk -F / {print $NF})
for i in ${images}
do
docker pull registry.aliyuncs.com/google_containers/$i
docker tag registry.aliyuncs.com/google_containers/$i kubernetes-register.inspur.com/google_containers/$i
docker push kubernetes-register.inspur.com/google_containers/$i
docker rmi registry.aliyuncs.com/google_containers/$i
done环境初始化  
[rootkubernetes-master ~]# kubeadm init --kubernetes-version1.27.4 --apiserver-advertise-address192.168.21.20 --image-repositorykubernetes-register.inspur.com/google_containers --pod-network-cidr172.17.1.0/16 --service-cidr10.96.0.0/12 --ignore-preflight-errorsSwap --cri-socketunix:///var/run/cri-dockerd.sock 
分别在node1 node2 node3 执行 
kubeadm join 192.168.21.20:6443 --token ymlg0w.xkl1z4pr7dwg39yr --discovery-token-ca-cert-hash sha256:ec15cba4c2e6bf2291ff1217f4e9bd41ee28aa02139e6fc86e614a5b8c6f4b96 --cri-socketunix:///var/run/cri-dockerd.sock但是现在还是有一个问题  运行如下命令 
[rootkubernetes-master ~]#   mkdir -p $HOME/.kube
[rootkubernetes-master ~]#   sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[rootkubernetes-master ~]#   sudo chown $(id -u):$(id -g) $HOME/.kube/config 
[rootkubernetes-master ~]# kubectl get nodes
NAME                STATUS     ROLES           AGE     VERSION
kubernetes-master   NotReady   control-plane   5m8s    v1.27.4
kubernetes-node1    NotReady   none          2m56s   v1.27.4
kubernetes-node2    NotReady   none          2m46s   v1.27.4
kubernetes-node3    NotReady   none          2m44s   v1.27.4
[rootkubernetes-master ~]#命令补全 
source (kubectl completion bash)
source (kubeadm completion bash)[rootkubernetes-master ~]# vim .bashrc
[rootkubernetes-master ~]# cat .bashrc
# .bashrc# User specific aliases and functionsalias rmrm -i
alias cpcp -i
alias mvmv -i# Source global definitions
if [ -f /etc/bashrc ]; then. /etc/bashrc
fi
source (kubectl completion bash)
source (kubeadm completion bash)
[rootkubernetes-master ~]# source .bashrc
[rootkubernetes-master ~]# kubectl get n
namespaces                         networkpolicies.networking.k8s.io  nodes
[rootkubernetes-master ~]# kubectl get n
namespaces                         networkpolicies.networking.k8s.io  nodes
[rootkubernetes-master ~]# kubectl get n网络配置 https://kubernetes.io/docs/concepts/cluster-administration/addons/[rootkubernetes-master flannel]# pwd
/data/kubernetes/network/flannel
[rootkubernetes-master flannel]# ll
total 16
-rw-r--r--. 1 root root 4459 Aug  8 09:42 kube-flannel.yml
-rw-r--r--. 1 root root 4459 Aug  8 09:42 kube-flannel.ymlBK
[rootkubernetes-master flannel]# 需要下载一下三个镜像文件 
[rootkubernetes-master flannel]# grep image: kube-flannel.ymlimage: docker.io/flannel/flannel:v0.22.1image: docker.io/flannel/flannel-cni-plugin:v1.2.0image: docker.io/flannel/flannel:v0.22.1 
[rootkubernetes-master flannel]# docker tag flannel/flannel:v0.22.1 kubernetes-register.inspur.com/inspur/flannel/flannel:v0.22.1
[rootkubernetes-master flannel]# docker tag flannel/flannel-cni-plugin:v1.2.0 kubernetes-register.inspur.com/inspur/flannel/flannel-cni-plugin:v1.2.0 
推送到远程私有仓库 
[rootkubernetes-master flannel]# docker push  kubernetes-register.inspur.com/inspur/flannel/flannel:v0.22.1
The push refers to repository [kubernetes-register.inspur.com/inspur/flannel/flannel]
c120dc707e2b: Pushed
92e727b491c6: Pushed
23d8410e16ff: Pushed
9726974aad9b: Pushed
117eda391951: Pushed
40afc0fa6094: Pushed
d8ddfa4843bd: Pushed
f1417ff83b31: Pushed
v0.22.1: digest: sha256:02cb1205742b0d087f89d654cbe5fa8f815e97e4e5cc86c7f39bd7933d1a04cb size: 1996
[rootkubernetes-master flannel]# docker push kubernetes-register.inspur.com/inspur/flannel/flannel-cni-plugin:v1.2.0
The push refers to repository [kubernetes-register.inspur.com/inspur/flannel/flannel-cni-plugin]
9332f71f5f3d: Pushed
7df5bd7bd262: Pushed
v1.2.0: digest: sha256:2180bb74f60bea56da2e9be2004271baa6dccc0960b7aeaf43a97fc4de9b1ae0 size: 739
[rootkubernetes-master flannel]# 
修改yml文件  
[rootkubernetes-master flannel]# kubectl apply -f kube-flannel.yml
namespace/kube-flannel created
serviceaccount/flannel created
clusterrole.rbac.authorization.k8s.io/flannel created
clusterrolebinding.rbac.authorization.k8s.io/flannel created
configmap/kube-flannel-cfg created
daemonset.apps/kube-flannel-ds created
[rootkubernetes-master flannel]#查看namespace 
[rootkubernetes-master flannel]# kubectl get ns
NAME              STATUS   AGE
default           Active   34m
kube-flannel      Active   53s
kube-node-lease   Active   34m
kube-public       Active   34m
kube-system       Active   34m
[rootkubernetes-master flannel]# 
[rootkubernetes-master flannel]# kubectl get pod -n kube-flannel
NAME                    READY   STATUS             RESTARTS      AGE
kube-flannel-ds-mdpkb   0/1     CrashLoopBackOff   4 (29s ago)   2m33s
kube-flannel-ds-pg4x6   0/1     CrashLoopBackOff   4 (44s ago)   2m33s
kube-flannel-ds-vjw5j   0/1     CrashLoopBackOff   4 (40s ago)   2m33s
kube-flannel-ds-wzwx9   0/1     CrashLoopBackOff   4 (41s ago)   2m33s
[rootkubernetes-master flannel]# kubectl get nodes
NAME                STATUS   ROLES           AGE   VERSION
kubernetes-master   Ready    control-plane   36m   v1.27.4
kubernetes-node1    Ready    none          34m   v1.27.4
kubernetes-node2    Ready    none          34m   v1.27.4
kubernetes-node3    Ready    none          34m   v1.27.4
[rootkubernetes-master flannel]# [rootkubernetes-master flannel]# systemctl is-active kubelet cri-dockerd docker
active
active
active
[rootkubernetes-master flannel]# systemctl enable  kubelet cri-dockerd docker 
8 应用部署