Migrating Python 3.6 and Python 3.7 environments from Cloud Pak for Data 3.5

Refresh 9 of Cloud Pak for Data 4.0.0 and later versions no longer supports Python environments with Python version 3.6 or 3.7. To use Python 3.6 and Python 3.7 environments in Cloud Pak for Data 4.0.x, you need to create a custom image with libraries from Python 3.6 and Python 3.7, and custom environment definitions that use this image.

Important: You need to create this custom image while still on Cloud Pak for Data 3.5, as Cloud Pak for Data 4.0.x doesn't include these images.

What does this mean for existing Python 3.6 and Python 3.7 notebooks and jobs?

If you want to upgrade from Cloud Pak for Data 3.5 to 4.0.x and continue running existing notebooks and jobs, you must consider the following before you upgrade to 4.0.x.

If you're using Default Python 3.6 and Python 3.7 environments, or custom environment definitions with Default Python 3.6 and Python 3.7 as software version, your existing notebooks and jobs will not run because Default Python 3.6 and Python 3.7 is not supported in Cloud Pak for Data 4.0.x.

Action required before you upgrade:

  1. Evaluate the library differences between Python 3.6 and Python 3.7 and the IBM Runtime 22.1 on Python 3.9 and the implications for notebook code changes that you would need to make. See Environments (Watson Studio and Watson Knowledge Catalog).
  2. If you want to keep the Python 3.6 and Python 3.7 environment:

    1. Create a new configuration file that uses the Python 3.6 and Python 3.7 based image. You don't need to create and upload a custom image. You can use the existing image that is part of Cloud Pak for Data 3.5. You only need to create a new runtime configuration, as follows:

      1. Download the runtime configuration. For Notebooks, use jupyter-py36-server.json. For JupyterLab, use juypter-lab-server.json (See Downloading the runtime configuration).
        • jupyter-py36-server.json
        • jupyter-lab-server.json
        • py37-legacy-server.json
        • lab-py37-legacy-server.json
        • jupyter-py37-server.json
        • jupyter-lab-py37-server.json
      2. Rename the runtime configuration, for example to py36-cpd35-server.json
      3. Upload the file to the Cloud Pak for Data cluster. See Step 7.
    2. Create a new environment definition that uses the Python 3.6 and Python 3.7 based image.
    3. Switch to using this environment definition in your notebooks and jobs.
    4. Test run the notebooks and jobs.
    5. If they run successfully, you can upgrade to Cloud Pak for Data 4.0.x. Your newly created environments will be migrated.
  3. If the IBM Runtime 22.1 on Python 3.9 libraries work for you in your existing notebooks and jobs:

    1. Upgrade to Cloud Pak for Data Version 4.0.x.
    2. Change your custom environments from using Default Python 3.6 and Python 3.7 to IBM Runtime 22.1 on Python 3.9.
    3. Go to your existing notebooks and jobs, and select the IBM Runtime 22.1 on Python 3.9 environment or your custom environment.

Parent topic: Environments