文档首页/ 云容器引擎 CCE/ 常见问题/ 节点/ 节点运行/ 如何解决yum update升级操作系统导致的容器网络不可用问题?
更新时间:2024-07-02 GMT+08:00

如何解决yum update升级操作系统导致的容器网络不可用问题?

CCE控制台不提供针对节点的操作系统升级,也不建议您通过yum方式进行升级。

如果您在节点上通过yum update升级了操作系统,会导致容器网络的组件不可用。

您可以通过如下方式手动恢复:

当前该恢复方式仅针对EulerOS 2.2有效。

  1. root下执行如下脚本:

    #!/bin/bash
    function upgrade_kmod()
    {
        openvswicth_mod_path=$(rpm -qal openvswitch-kmod)
        rpm_version=$(rpm -qal openvswitch-kmod|grep -w openvswitch|head -1|awk -F "/" '{print $4}')
        sys_version=`cat /boot/grub2/grub.cfg | grep EulerOS|awk 'NR==1{print $3}' | sed 's/[()]//g'`
    
        if [[ "${rpm_version}" != "${sys_version}" ]];then
            mkdir -p /lib/modules/"${sys_version}"/extra/openvswitch
            for path in ${openvswicth_mod_path[@]};do
                name=$(echo "$path" | awk -F "/" '{print $NF}')
                rm -f /lib/modules/"${sys_version}"/updates/"${name}"
    			rm -f /lib/modules/"${sys_version}"/extra/openvswitch/"${name}"
                ln -s "${path}" /lib/modules/"${sys_version}"/extra/openvswitch/"${name}"
            done
        fi
    	depmod ${sys_version}
    }
    upgrade_kmod
    

  2. 执行完成后,重启虚拟机。