检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
解决方案 CCE基于以下几点原因,可能会暂时限制该集群的升级功能: 基于用户提供的信息,该集群被识别为核心重点保障的生产集群。 正在或即将进行其他运维任务,例如Master节点3AZ改造等。
由于运营商网络原因,拉取Docker Hub镜像可能需要很长时间,甚至可能因超时而下载失败,建议参考设置镜像加速器解决。 操作步骤 以root用户登录到安装有Docker的服务器上。 编写Dockerfile文件。
依赖docker程序,docker daemon对pull/push的并发数进行了严格的限制,没法进行高并发同步。 一些功能只能经过HTTP api进行操作,单纯使用docker cli 没法做到,使脚本变得复杂。
Dockerfile:用于制作Docker镜像。 index.html:用于替换nginx的index页面。 k8s.yaml:用于部署nginx应用,会创建一个名为nginx-test的Deployment,和一个名为nginx-test的Service。
修改容器最大文件句柄数将会重启docker/containerd进程,请知悉。
wget https://dl.k8s.io/release/v*.*.*/bin/linux/amd64/kubectl // v*.*.*为集群版本 将kubectl复制到Jenkins容器内。
apiVersion: v1 kind: Pod metadata: name: foo namespace: default spec: containers: - name: foo image: www.3rdregistry.com/janedoe
另外由于占用主机端口,使用Deployment部署hostNetwork类型Pod时,要注意Pod的副本数不要超过节点数量,否则会导致一个节点上调度了多个Pod,Pod启动时端口冲突无法创建。
CCE中使用x86和ARM双架构镜像 应用现状 CCE支持在同一集群下创建x86节点及ARM架构节点。由于ARM和x86底层架构不同,通常ARM架构的镜像(也就是应用程序)无法在x86架构节点上运行,反之亦然。这就容易造成工作负载在拥有x86与ARM节点的集群上部署失败。
表2 CCE Turbo集群节点操作系统与容器引擎对应关系 操作系统 容器存储Rootfs 自定义Pod容器空间(basesize) CentOS 7.x OverlayFS 不支持自定义Pod容器空间。
准备工作 在创建容器工作负载前,您需要购买一个可用集群(集群至少包含1个4核8G的节点,避免资源不足),详情请参照购买CCE集群创建。 本实践需要使用Docker in Docker场景,即在容器中运行Docker命令,节点需要选择Docker容器引擎。
启动参数配置 - /opt/cloud/cce/kubernetes/kube-proxy/kube-proxy kube-proxy命令行启动参数 - /etc/sysconfig/docker docker配置文件 containerd运行时或Debain-Group机器不检查
远程登录原集群中任意一个节点,使用docker pull命令拉取所有镜像到本地。 登录SWR控制台,单击页面右上角的“登录指令”并复制。 在节点上执行上一步复制的登录指令。 登录成功会显示“Login Succeeded”。 为所有本地镜像打上标签。
问题场景二:特殊版本镜像存在缺陷 检查到本次升级涉及1.17 欧拉2.8 Arm镜像,该版本镜像存在缺陷,其上docker重启后将影响"docker exec"命令,升级集群版本时将触发docker版本更新,触发docker重启,因此存在建议: 建议您提前排空、隔离该节点后进行集群升级
kubectl drain 192.168.1.xx --ignore-daemonsets=true --delete-emptydir-data 参数详情请参见如何驱逐节点上的所有Pod。
工作负载异常:实例拉取镜像失败 问题定位 当工作负载状态显示“实例未就绪:Back-off pulling image "xxxxx"”,该状态下工作负载实例K8s事件名称为“实例拉取镜像失败”或“重新拉取镜像失败”。查看K8s事件的方法请参见Pod事件查看方法。
ID:可以自定义,此处设置为k8s-test-cert。 父主题: 实施步骤
以上 kubelet /opt/cloud/cce/kubernetes/kubelet/kubelet_config.yaml maxPods v1.19以上 kubelet /opt/cloud/cce/kubernetes/kubelet/kubelet_config.yaml
CVE-2024-1086) OpenSSH远程代码执行漏洞公告(CVE-2024-6387) Fluent Bit内存崩溃漏洞公告(CVE-2024-4323) runc systemd属性注入漏洞公告(CVE-2024-3154) runc漏洞(CVE-2024-21626)对CCE
为什么Pod调度不到某个节点上? 请排查节点和docker是否正常,排查方法请参见排查项七:内部组件是否正常。 如果节点和docker正常,而pod调度不到节点上,请确认pod是否做了亲和,排查方法请参见排查项三:检查工作负载的亲和性配置。