在生产环境迁徙至Kubernetes的过程中,有一个服务和其余服务不太一样,该服务次要用于和底层SAP零碎做数据交换和同步,SAP提供了SAP Java Connector(SAP JCo)的开发库来连贯SAP零碎。
非容器环境下Linux
Jco实质上是基于RFC的ABAP和JAVA过程间通信组件,和其余组件不同,并不是引入一个Jar包就解决问题,从官网下载的包里蕴含2个文件,Jar包和本地Native库:
- libsapjco3.so
- sapjco3.jar
必须要在零碎环境变量加载Native库能力驱动Jar包
echo "export LD_LIBRARY_PATH=/你的目录" >> /etc/profile# 失效source /etc/profile
如此Java利用运行后便可能胜利连贯SAP零碎。
容器环境下
因为须要迁徙至Kubernetes环境下,所以剖析后须要做到如下三点:
定义volume把jco文件夹做hostpath挂载至Pod内
在宿主机上传jco文件夹后,做挂载
这里为了方便使用的是Kuboard工具,并没有间接编辑yaml资源文件。如果不是业余Kubernetes运维,其实集体倡议应用一些图形管理工具会更加高效一点。
配置环境变量LD_LIBRARY_PATH
因为并不想把所有机器都上传jco文件夹,所以思考还是选出2-3台机器加标签后,把此利用限度一下调度主机范畴
做完上述三点后,于是启动,sap连贯失常,就这样。