目前这个问题只出现centos7上,因为centos7带的glic库版本较低导致
程序升级以后,POD启动时报错。
容器运行时是我们自己的,看到直接执行该文件直接报错
/usr/bin/orion-container-runtime: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20` not found(required by /lib64/libcndev.so) /usr/bin/orion-container-runtime: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21` not found(required by /lib64/libcndev.so)
然后找到以下解决办法
首先查看当前glib版本
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
根据上述报错,确实没有报错提示的两个glib版本,我们进行安装
yum provides libstdc++.so.6 cd /usr/local/lib64 wget http://www.vuln.cn/wp-content/uploads/2019/08/libstdc.so_.6.0.26.zip unzip libstdc.so_.6.0.26.zip cp libstdc++.so.6.0.26 /usr/lib64 cd /usr/lib64 ls -l | grep libstdc++ #移走/usr/lib64原来的软连接libstdc++.so.6 mv libstdc++.so.6 libstdc++.so.6_bak #链接一个新的版本过去 ln -s libstdc++.so.6.0.26 libstdc++.so.6 #再次查看版本列表 strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
发现已经支持GLIBCXX_3.4.20和GLIBCXX_3.4.21版本了。
再次重启我的POD都正常了,直接运行我们runtime文件返回正常。