在生产环境迁徙至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环境下,所以剖析后须要做到如下三点:

  1. 定义volume把jco文件夹做hostpath挂载至Pod内

    在宿主机上传jco文件夹后,做挂载

这里为了方便使用的是Kuboard工具,并没有间接编辑yaml资源文件。如果不是业余Kubernetes运维,其实集体倡议应用一些图形管理工具会更加高效一点。

  1. 配置环境变量LD_LIBRARY_PATH

  2. 因为并不想把所有机器都上传jco文件夹,所以思考还是选出2-3台机器加标签后,把此利用限度一下调度主机范畴

做完上述三点后,于是启动,sap连贯失常,就这样。