docker方式部署OCP失败问题

生产环境OBD集群部署方式默认安装的ocp express简洁版 缺失告警 备份等功能,需安装完整版OCP

安装docker,还原ocp镜像,进入OCP安装页面

yum install -y docker

wget https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/download-center/opensource/ocp/4.0.3/ocp-4.0.3-ce-x86_64.tar.gz
gunzip ocp-4.0.3-ce-x86_64.tar.gz
tar -xf ocp-4.0.3-ce-x86_64.tar

./ocp_installer.sh launch
launch installer
check docker on host
load installer docker image
c5974558e919: Loading layer 298.7 MB/298.7 MB
bc0173edd44e: Loading layer 2.048 kB/2.048 kB
9404c0abbe4a: Loading layer 3.584 kB/3.584 kB
70c5fe16b48b: Loading layer 2.048 kB/2.048 kB
95f91fc1c877: Loading layer  2.56 kB/2.56 kB
.....

0a6f6c77a607: Loading layer 1.612 MB/1.612 MB
Loaded image: reg.docker.alibaba-inc.com/ocp2/ocp-installer:4.0.3-ce-x86_64
make log dir
make task dir
make obd dir
f63c3d8cf920807a7322df7deffb6f13cdff910d7105486e3b3b07dc8e05397e
open http://10.xxx.109:3000 in browser

部署 OCP-OceanBase 云平台 -OceanBase文档中心-分布式数据库使用文档

完整版OCP安装失败,安装页面无日志,通过docker logs查日志

!445 # docker ps -a 
CONTAINER ID        IMAGE                                                           COMMAND          
bffea9af623b        reg.docker.alibaba-inc.com/ocp2/ocp-installer:4.0.3-ce-x86_64   "bash start.sh"  

docker logs bffea9af623b

分析python源码,该步骤疑似通过ssh命令把 docker中./scripts/precheck.sh 拷贝到/tmp/precheck-{0}.sh


手动执行该命令,docker中是失败,该步骤无法在docker跑,docker中是无法ssh连接 宿主机 ,docker网络是单独虚拟隔离的

宿主机 中执行 成功

docker的网络具体是有什么特殊配置吗,一般来讲从docker访问宿主机应该是可以的,看截图里只是没有ssh命令,可以确认下配置的认证方式是什么,是账号密码还是用key的方式,如果是key的方式的话需要增加-k参数传入可用的key文件路径

没有特殊配置,都是默认,ssh单独从宿主机拷贝到docker里也是不行的,有其它依赖;认证方式账号密码方式

[root@bffea9af623b installer]# ssh
ssh: error while loading shared libraries: libfipscheck.so.1: cannot open shared object file: No such file or directory
[root@bffea9af623b installer]#
[root@bffea9af623b installer]#
(reverse-i-search)`ssh ': ^Ch
[root@bffea9af623b installer]#
[root@bffea9af623b installer]#
[root@bffea9af623b installer]# ldd ssh
ldd: ./ssh: No such file or directory
[root@bffea9af623b installer]#
[root@bffea9af623b installer]# ldd /usr/bin/ssh
linux-vdso.so.1 => (0x00007ffc233f6000)
libfipscheck.so.1 => not found
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007ff237cc5000)
libcrypto.so.10 => /lib64/libcrypto.so.10 (0x00007ff237862000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007ff23765e000)


验证的时候镜像是ocp的镜像吗,我本地起来看镜像中应该默认有ssh的

docker run -it --entrypoint=/bin/bash reg.docker.alibaba-inc.com/oceanbase/ocp-all-in-one:4.0.3-community_release_x86_64

installer镜像里应该没带,可以用ocp的验证下

这好像是内网的域名,访问不了

要先docker load < ocp.tar.gz

大佬你的md5和我这一样吗

docker load < ocp.tar.gz
./ocp_installer.sh launch 交互式部署,账号密码方式还是一样报错

md5sum ocp.tar.gz
972f5d6c5f1a3232ea06228df28cae07  ocp.tar.gz

md5sum ocp-installer.tar.gz
ca2e5fe85c5876339141659bcb9e9672  ocp-installer.tar.gz

md5值没有问题,看上面的描述,我们的宿主机和容器ssh不通,是有什么网络限制吗