构建定制映像以安装 ODBC 驱动程序

您可以根据以下条件构建自定义图像SPSS Modeler运行时图像可用IBMWatson Studio。 您可以使用自定义镜像来优化SPSS Modeler满足您的应用程序需求的运行时。 例如,您可以使用定制映像来安装定制 ODBC 驱动程序。

准备工作

集群管理员集群管理员必须执行此任务。

笔记:如果您使用自定义映像,则您有责任使用对可用运行时映像所做的所有最新更新来更新您的自定义映像Watson Studio。 您有责任安装新的修复包、安全更新或任何其他更新。 当新版本的Cloud Pak for Data发布后,重建所有自定义图像是保持其更新的最佳方法。

关于本任务

完成以下步骤来设置您的自定义图像:

  • 下载图片SPSS Modeler您想要自定义的运行时
  • 通过添加来构建新的自定义映像ODBC驱动程序
  • 注册自定义镜像
  • 更新您在项目中创建的环境定义以使用新的自定义图像。

自定义图像也可以在隔离环境中使用,这种环境中要求禁止将任何操作暴露给互联网。

过程

  1. 准备树立新的形象。
    1. 获取可以在 Docker 命令和脚本中使用的注册表 URL。
      SPSS Modeler运行时图像存储在Docker图像注册表。 在Cloud Pak for Data,您只能使用外部注册表之外的Red Hat OpenShift簇。 要使用该注册表,您需要将 URL 添加到安装过程中使用的外部注册表 Cloud Pak for Data。 在您运行的所有命令和脚本中使用相同的 URL。
    2. 下载配置文件SPSS Modeler您想要自定义的运行时图像。
      有关详细信息,请参阅For more information, see下载配置文件
    3. 下载该配置中的映像。
      有关详细信息,请参阅For more information, see下载图像
  2. 如果您想对 Snowflake 使用密钥对认证,则需要创建自定义镜像。 也准备好这些文件。
    1. 从 Snowflake ODBC 下载 Snowflake 的 snowflake_linux_x8664_odbc-3.3.1.tgz ODBC 驱动程序。
    2. 创建名为DockerfileSnowflake
    3. 将这些文件复制到你的机器的根路径:
      • DockerfileSnowflake
      • snowflake_linux_x8664_odbc-3.3.1.tgz
      • rsa_key.p8(加密密钥)
  3. 使用您下载的文件创建自定义图像。

    有关详细信息,请参阅For more information, see创建自定义图像

    用于安装 Snowflake 驱动程序以使用密钥对认证的Dockerfile示例
    将此代码添加到DockerfileSnowflake文件:
    FROM <modeler_runtime image> as custom-snowflake-runtime
    USER root
    # Update package list and install unixODBC
    RUN yum install -y unixODBC.x86_64
    # Install perl
    Run yum install -y perl
    # Install snowflake
    ADD snowflake_linux_x8664_odbc-3.3.1.tgz /opt
    RUN cd /opt/snowflake_odbc && \
        ./iodbc_setup.sh
    COPY rsa_key.p8 /opt/snowflake_odbc/lib
    RUN chmod 644 /opt/snowflake_odbc/lib/rsa_key.p8
    # enable snowflake
    RUN sed -i '2iSnowflake ODBC Driver=Installed' ${SDAPDRIVER_HOME}/odbcinst.ini
    RUN sed -i -e '$a\[Snowflake ODBC Driver]' -e '$a\Driver=/opt/snowflake_odbc/lib/libSnowflake.so' -e '$a\Setup=/opt/snowflake_odbc/lib/libSnowflake.so' ${SDAPDRIVER_HOME}/odbcinst.ini
    RUN sed -i 's/DriverManagerEncoding=UTF-32/DriverManagerEncoding=UTF-8/g' /opt/snowflake_odbc/lib/simba.snowflake.ini
    USER modeler-user
    用于安装的示例 DockerfileExasol司机。
    FROM <modeler_runtime image> as custom-exasol-runtime
    USER root
    # Install Exasol driver
    RUN mkdir -p /opt/exasol
    ADD EXASOL_ODBC-7.1.4.tar.gz /opt/exasol
    RUN mv /opt/exasol/EXASOL_ODBC-7.1.4/* /opt/exasol && \
        rm -rf /opt/exasol/EXASOL_ODBC-7.1.4
    # enable Exasol
    RUN sed -i '2iEXASolution Driver=Installed' ${SDAPDRIVER_HOME}/odbcinst.ini
    USER modeler-user
    用于安装的示例 DockerfileSAP花司机
    FROM <modeler_runtime image> as custom-hana-runtime
    USER root
    # Install SAP Hana driver
    RUN mkdir -p /opt/sap
    ADD hanaclient-2.7.26-linux-x64.tar.gz /opt/sap
    RUN /opt/sap/client/hdbinst --path=/opt/sap/hdbclient
    # enable SAP Hana
    RUN sed -i '2iSAP HANA Client=Installed' ${SDAPDRIVER_HOME}/odbcinst.ini
    USER modeler-user
    用于安装的示例 Dockerfile Teradata司机
    FROM <modeler_runtime image> as custom-teradata-runtime
    USER root
    # Install Teradata Tools & Utilities
    ADD TeradataToolsAndUtilitiesBase__linux_x8664.17.20.05.00-1.tar.gz /opt
    RUN cd /opt/TeradataToolsAndUtilitiesBase && \
        ./setup.sh a && \
        cd /opt && \
        rm -rf /opt/TeradataToolsAndUtilitiesBase*
    # enable Teradata
    RUN sed -i '2iTeradata ODBC Driver=Installed' ${SDAPDRIVER_HOME}/odbcinst.ini
    USER modeler-user
    笔记:文件夹名称根据您使用的驱动程序包的版本而有所不同。
  4. 构建自定义图像。
  5. 将自定义镜像推送到容器服务器。
    有关详细信息,请参阅For more information, see注册自定义镜像
  6. 更改并上传配置文件。
    编辑spec字段deployment在Red Hat OpenShift集群指向新的自定义图像。

    有关更改和上传配置文件的更多信息,请参阅上传更改的配置