Configuring the container runtime on your z/OS system
Configuration of the container runtime on your system is performed through a z/OSMF workflow.
The goal of this section is to configure a system so that you can build and run containers using Podman for IBM® z/OS® (Podman). Some networking and security setup is required, as well as configuring z/OS itself. These steps are outlined in the z/OSMF workflow to help guide you through the process.
- z/OS system programmer Roadmap: z/OS system programmer
- z/OS security administrator Roadmap: z/OS security administrator
What does the container runtime configuration workflow do?
Performs the setup of IBM z/OS Container Platform (zOSCP) on the specified z/OS system. The workflow ensures that you have set up the appropriate userid, file systems, mount points, and networking to begin using zOSCP.
When zOSCP is installed, the workflow XML files are placed in the following directory:
| XML file name | Location | Purpose |
|---|---|---|
| zoscp_general.xml | /usr/lpp/IBM/zoscp/workflows | Workflow definition file for container runtime configuration |
Workflow definition file for container runtime configuration
The workflow definition file contains the logical structure of the workflow and identifies the various system objects, actions, and rules to perform a set of tasks.
The zoscp_general.xml contains the guided set of steps and JCL that helps you to prepare for running the zOSCP runtime. The XML file includes the variable definitions and file templates.
Workflow variable input file for container runtime configuration
z/OSMF allows a workflow variable input file to be provided when creating a workflow. The workflow variable input file contains the variables and the corresponding values that will be populated to provision the worker node instance.
A sample input properties file that contains variables for the zcpa_provision.xml workflow is provided in the sample workflow properties file directory and named workflow_variables.properties.
Variables used in the general workflow
| Variable | Description | Validation type | Default |
|---|---|---|---|
|
required containers_run_filesystem_size |
The size of the file system in MB for the /var/run/containers temporary file system. Either specify a size in MB or leave the default size for the run temporary file system that is created in this step. | INTEGER (1 - 2048) | 256 |
|
required containers_runc_filesystem_size |
The size of the file system in MB for the var/run/runc temporary file system. Either specify a size in MB or leave the default size for the runC temporary file system that is created in this step. | INTEGER (1 - 2048) | 100 |
|
required
ipv |
The IP (Internet Protocol) version used for container networking. Select the IP version to enable in the Container Network Interface for IBM z/OS (IBM z/OS CNI) configuration file. This can be either IPv4 or IPv6. | IPv4 or IPv6 | IPv4 |
|
requireduser_runtime_filesystem_size
|
The size of the filesystem in MB for the /var/run/user temporary file system. | INTEGER | 512 |
|
requiredtmpdir
|
A temporary directory used for running Podman commands. Specify a temporary directory that exists. This step will create files needed by Podman for validation from this directory. | STRING | /tmp |
|
required podman_lib_volser |
Volume used to allocate the file system for container images and artifacts. Specify a VOLSER to be used in the JCL to allocate a permanent file system. The file system is used for container images and other artifacts created by the container runtime with Podman. This is required if your z/OS system does not use SMS-managed storage. | VOLSER | |
|
required podman_lib_filesystem |
The name of the file system to create for the Podman lib file system. Either specify a name or leave the default name for the lib file system that is created in this step. This file system stores container images and other artifacts that the container runtime creates. | DSNAME | BCZ.PODLIB |
|
required podman_lib_filesystem_primary |
Primary size of the Podman lib file system in MB. Either specify a primary size in MB or leave the default size for the Podman lib file system that is created in this step. | INTEGER (1 - 16777215) | 4096 |
|
required podman_lib_filesystem_secondary |
Secondary size of the Podman lib file system in MB. Either specify a secondary size in MB or leave the default size for the Podman lib file system that is created in this step. | INTEGER (1 - 16777215) | 2048 |
|
podman_lib_MGMTCLAS |
The MGMTCLAS to use if the zFS filesystem for the Podman lib is using SMS managed storage. This input
variable may be required if the SMS ACS routines are not selecting a management class. Note: If SMS
managed storage is being used, check with your storage administrator to determine what MGMTCLAS to
use and whether the MGMTCLAS specification is required.
|
STRING | |
|
podman_lib_STORCLAS |
The STORCLAS to use if the zFS filesystem for the Podman lib is using SMS managed storage. This input
variable may be required if the SMS ACS routines are not selecting a storage class. Note: If SMS
managed storage is being used, check with your storage administrator to determine what STORCLAS to
use and whether the STORCLAS specification is required.
|
STRING | |
|
podman_lib_DATACLAS |
The DATACLAS to use if the zFS filesystem for the Podman lib is using SMS managed storage. This input
variable may be required if the SMS ACS routines are not selecting a data class. Note: If SMS managed
storage is being used, check with your storage administrator to determine what DATACLAS to use and
whether the DATACLAS specification is required.
|
STRING |