Installing ibm-lh-client

The ibm-lh-client package includes convenient utilities and pre-packaged libraries to access the IBM® watsonx.data, and to develop applications that work with the watsonx.data.

Before you begin

  • Ensure that you have your entitlement key to access the IBM Entitled Registry. After you obtain the entitlement key from the container software library, you can log in to the registry with the key and pull the runtime images to your local system.
  • Ensure to meet the following system requirements and install the most recent version of Docker or Podman on your system.
    Operating system x86-64 Docker / Podman / Colima installation instructions
    Linux

    Docker

    Podman

    Windows

    Docker

    Podman

    Mac OS x86

    Docker

    Podman

    Mac with Apple Silicon with Rosetta Emulation  

    Docker

    Colima

    Note: Ensure to meet the prerequisites for installing the watsonx.data client package on Mac with Apple Silicon with Rosetta Emulation.
  • Ensure to add the podman-plugins for the DNS server of the Podman network to work properly.
    yum install -y podman-plugins
    If you add the podman-plugins after you start the watsonx.data service, delete the Podman network ibm-lh-network and restart the watsonx.data service.
    Tip: Podman provides a Docker-compatible command-line front end. You can alias the Docker CLI with the alias docker=podman shell command.
Important: It is highly recommended to set up and run the client utilities as a non-root user. For more information about granting access to non-root users to work with the container engines, see Manage Docker as a non-root user and Rootless containers using Podman.

Procedure

  1. Set up the installation directory and environment variables
    1. Set up the work directory.
      mkdir <install_directory>
      cd <install_directory>
    2. Set the environment variables:
      export LH_ROOT_DIR=<install_directory>
      export LH_RELEASE_TAG=latest
      export IBM_LH_TOOLBOX=cp.icr.io/cpopen/watsonx-data/ibm-lakehouse-toolbox:$LH_RELEASE_TAG
      export LH_REGISTRY=cp.icr.io/cp/watsonx-data
      export PROD_USER=cp
      export IBM_ENTITLEMENT_KEY=<ibm_entitlement_key> 
      export IBM_ICR_IO=cp.icr.io
      Note: Image tags available for watsonx.data releases are latest, v1.0.0, v1.0.1, v1.0.2, and v1.0.3.
      If you are using Docker, run the following command:
      export DOCKER_EXE=docker
      If you are using Podman, run the following command:
      export DOCKER_EXE=podman
  2. Pull the watsonx.data client package and copy it to the host system:
    $DOCKER_EXE pull $IBM_LH_TOOLBOX
    id=$($DOCKER_EXE create $IBM_LH_TOOLBOX)
    $DOCKER_EXE cp $id:/opt - > /tmp/pkg.tar
    $DOCKER_EXE rm $id
    id=
  3. Extract the watsonx.dataclient pkg.tar file in to the /tmp directory. Verify that the checksum is correct by comparing the checksum in bom.txt and the cksum command output. For example, run the following command:
    tar -xf /tmp/pkg.tar -C /tmp
    cat /tmp/opt/bom.txt
    cksum /tmp/opt/*/*
    tar -xf /tmp/opt/client/ibm-lh-client-*.tgz -C $LH_ROOT_DIR
  4. Authenticate with the registry:
    $DOCKER_EXE login ${IBM_ICR_IO} \
    --username=${PROD_USER} \
    --password=${IBM_ENTITLEMENT_KEY}
  5. Run the setup script.
    $LH_ROOT_DIR/ibm-lh-client/bin/setup --license_acceptance=y --runtime=$DOCKER_EXE