当前位置: 首页 > news >正文

微网站建设86215wordpress 引用 样式表

微网站建设86215,wordpress 引用 样式表,建筑工人招工网,成都建设监理协会网站文章目录1. 开启节点维护1.1 将节点设置成不可调度1.2 驱逐节点上的 Pod1.3 停止相关服务2. 升级到 containerd2.1 安装 containerd2.2 调整 containerd 配置2.3 修改 kubelet 启动配置参数3. 重启节点服务4. 验证升级后的节点5. 容器管理工具5.1 容器管理命令行工具对比5.2 cr…

文章目录

  • 1. 开启节点维护
    • 1.1 将节点设置成不可调度
    • 1.2 驱逐节点上的 Pod
    • 1.3 停止相关服务
  • 2. 升级到 containerd
    • 2.1 安装 containerd
    • 2.2 调整 containerd 配置
    • 2.3 修改 kubelet 启动配置参数
  • 3. 重启节点服务
  • 4. 验证升级后的节点
  • 5. 容器管理工具
    • 5.1 容器管理命令行工具对比
    • 5.2 crictl 命令行工具安装
  • 6. 总结

1. 开启节点维护

  开启节点维护,目的是将待维护节点上通过 Deployment 部署的 Pod 驱离该节点,使其在另外的正常节点上运行,从而保障服务的连续性。但是如果我们服务的实例个数是1时,当服务被驱离时,服务将会中断,服务的连续性将无法得到保障,需要等待服务在另外的节点上运行启动后,服务才能恢复。所以,生产环境为了不影响正常的业务运行,最好能够将服务的实例数最小设置2个实例。

1.1 将节点设置成不可调度

kubectl cordon k8s-node1

  查看节点的状态是否被设置成了不可调度状态
在这里插入图片描述
  如上图 k8s-node1 节点已经被设置成了不可调度状态。

1.2 驱逐节点上的 Pod

kubectl drain k8s-node1 --ignore-daemonsets 

在这里插入图片描述
  执行完上述命令后,k8s-node1 节点上除了 daemon set 启动的 Pod 外,通过 deployment 启动的 Pod 都会被驱离到其他可调度的节点上重新启动。

  通过将待升级的节点设置成维护模式,从而保障业务服务能够在集群升级过程中正常的提供服务。

1.3 停止相关服务

systemctl stop kubelet
systemctl stop containerd
systemctl disable docker
systemctl stop docker
systemctl disable cri-docker
systemctl stop cri-docker

2. 升级到 containerd

2.1 安装 containerd

  • 卸载 docker 相关功能
yum remove docker docker-client ocker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine docker-ce
  • 安装或升级 containerd 服务
yum install containerd

2.2 调整 containerd 配置

  • 导出默认配置
containerd config default > /etc/containerd/config.toml
  • 编辑 /etc/containerd/config.toml 文件
    sandbox_image = "registry.k8s.io/pause:3.6"替换成sandbox_image = "registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.6"
	[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]SystemdCgroup = false替换成[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]SystemdCgroup = true

添加国内镜像仓库,这个非常关键,否则将会导致镜像下载失败,Pod中服务无法启动。

    [plugins."io.containerd.grpc.v1.cri".registry]......[plugins."io.containerd.grpc.v1.cri".registry.mirrors]在containerd 配置文件中找到上边内容,并在此处添加下边两行, 注意缩进,下边两行内容与上边一行有2个空格的缩进,下边两行内容之间也存在2个空格的缩进。[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]endpoint = ["http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn","https://registry.docker-cn.com"]

2.3 修改 kubelet 启动配置参数

  在 kubelet 启动文件中添加或修改下边两个变量的参数值

--container-runtime=remote 
--container-runtime-endpoint=unix:///run/containerd/containerd.sock

3. 重启节点服务

  • 重启 containerd 服务
systemctl daemon-reload 
systemctl enable containerd
systemctl start containerd
  • 查看 containerd 服务启动状态
systemctl status containerd

在这里插入图片描述

  • 重新启动 kubelet
systemctl start kubelet
  • 查看 kubelet 服务状态
systemctl status kubelet

在这里插入图片描述

  • 取消节点维护状态
kubectl uncordon k8s-node1
  • 查看节点信息
kubectl get nodes -o wide

在这里插入图片描述
  如上图中 k8s-node1 节点已经变成 Ready 状态,并且 CONTAINER-RUNTIME 已经变成了 containerd://1.6.18。表示 k8s-node1 节点已经从 docker 容器切换成 containerd 容器。

4. 验证升级后的节点

  如果 calico-node 采用 daemon set 的方式部署,那么当k8s节点升级 containerd 容器运行时后,重启 containerd 和 kubelet 之后,calico-node 将会在升级后的节点上重新运行,可通过查看升级后节点是否成功启动 calico-node 的Pod来判断节点是否升级成功。
在这里插入图片描述

  如上图所示,k8s-node1 节点上的 calico cni Pod 正在自动部署。如下图所示,k8s-node1 节点上的 calico-node Pod已经成功运行起来。

在这里插入图片描述

5. 容器管理工具

5.1 容器管理命令行工具对比

功能dockerctrcrictl
查看容器列表docker psctr -n k8s.io c lscrictl ps
容器内执行命令docker exec-crictl exec
挂载容器docker attach-crictl attach
拉取镜像docker pullctr -n k8s.io i pullcrictl pull
推送镜像docker pushctr -n k8s.io i push-
删除镜像docker rmi-crictl rmi

  使用 containerd 替代 docker 作为 k8s 的容器运行时之后,docker 命令行工具需要通过 ctrcrictl 来替换。ctr 是 containerd 提供的容器管理命令行工具,但是 ctr 相较于 crictl 功能相对较弱,所以,当 docker 切换到 containerd 之后,建议使用 crictl 命令行工具来管理容器,使用 crictl 命令行工具需要另行安装。

  containerd 存储 k8s 相关的数据在 k8s.io 空间中,默认情况下使用 ctr 操作的是 default 空间的数据。所以,如果想要在 k8s 中使用 containerd default 空间的数据,可以将 default 空间中的镜像导出,然后导入到 k8s.io 空间。

  • 导出 default 空间中的镜像,例如导出 calico cni 镜像
ctr -n default images export --platform=linux/amd64 cni.tar.gz docker.io/calico/cni:v3.24.5
  • 导入 calico cni 镜像到 k8s.io 空间
ctr -n k8s.io i import cni.tar.gz

5.2 crictl 命令行工具安装

  • crictl 源码地址
https://github.com/kubernetes-sigs/cri-tools/releases
  • 下载 Linux x64 版本工具
wget https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.26.0/crictl-v1.26.0-linux-amd64.tar.gz
  • 解压并安装
tar -zxvf crictl-v1.26.0-linux-amd64.tar.gz -C /usr/local/bin
  • 配置crictl参数
crictl config runtime-endpoint unix:///run/containerd/containerd.sock
crictl config image-endpoint unix:///run/containerd/containerd.sock

  将会生成 /etc/crictl.yaml 配置文件。到此 crictl 命令行工具安装完成,以前通过 docker 命令操作的指令,后续可以使用 crictl 执行。

6. 总结

  • 将 docker 容器运行时替换成 containerd 时,可以逐个节点进行替换,这样能够保证服务的连续性。
  • 使用 containerd 替换 docker 后,对于 k8s 1.20 以后的版本,不再需要 cri-docker 服务对 docker 容器运行时进行中转。
  • k8s 集群相关组件,只需要修改 kubelet 启动参数,不需要调整 kube-apiserver,kube-scheduler,kube-controller-manager,kube-proxy等组件。
http://www.yayakq.cn/news/391693/

相关文章:

  • 佛山公司建网站门户网站建设 报告
  • 山西省住房和城乡建设厅网站网站建设课程设计百度文库
  • 襄阳做网站电商行业的8种运营模式
  • 建设网站需要提前准备的条件处方药可以做网站吗
  • 郑州做网站哪家公司好wordpress淘宝客主题制作视频教程
  • 公司做网站的费用记到哪个科目网站功能调研
  • 花市小说网站那里进什么平台可以发广告引流
  • wordpress更改了连接打不开高端网站优化公司
  • 做自媒体可利用的国外网站平台网站怎么做的
  • 数据查询网站东莞便宜做网站
  • 学校网站的平台用途及建设规划包头市网站建设公司
  • 河北利用关键词优化网页江门网站优化快速排名
  • wordpress点餐哈尔滨做网站优化
  • html网站建设代码汉中软件开发公司
  • 广元网站建设工作室灯具设计网站推荐
  • 深圳入户申请网站官网论坛推广案例
  • 站长统计工具上海做软件
  • 做动漫图片的网站2022适合小学生的简短新闻
  • 菏泽网站建设公司排名ui培训心得体会总结
  • 网站建设维护实训总结佛山乐从网站建设
  • 企业网站推广外包南宁网站建设设计
  • 网站活动怎么做响应式网站模板html5
  • 网站上papi酱做的音频外贸怎么做站外推广
  • 深圳南山做网站wordpress anspress
  • 关于网站运营的问题给城市建设提议献策的网站
  • 长沙网站优化方案网页浏览器主要通过ftp协议同网页服务器
  • 做网站的是如何赚钱的在线制作论坛网站
  • 网站建设及制作教程快闪视频制作软件app
  • 网站内容页显示不出来怎样做门窗网站
  • 做民宿哪家网站最好wordpress 企业门户