Customizing the container deployment

This section describes how to customize your HCL Portal deployment.

About this task

Follow this procedure to deploy or update your HCL Portal deployment.

DX 9.5 containerization is focused on deployment and it uses an operator-based deployment. The goals were: (a) to introduce a supported containerized deployment that HCL can continually extend, to provide customers with the best possible experience; and (b) to provide a high level of customization in the deployment and continue to expand on that, along with increased automation.

Customers need to follow the recommended deployment model to ensure the availability of future functions and prevent potential conflicts.

  • To customize the solution, customers are required to update the deploy/crds/git_v1_dxdeployment_cr.yaml file located in the hcl-dx-openshift-scripts_.zip located in the hcl-dx-openshift package downloaded from the HCL Software License Portal page. Once modified, the deployDx.sh and the updateDx.sh scripts should be run to perform (or update) the deployment.
    Note: All modifications should be made to the custom resource instance and not the individual parts of the deployment.

Optional customizations

Procedure

  1. Create a backup file.
  2. Open the file in edit mode.
  3. Find the line with the text labeled, # Add fields here. Customizations should be done below this line.
  4. Add the following customizations as applicable:
    • Volume Size. By default, the volume size is 100 GB. This can be modified in the following:
      Figure 1: Custom volume size
      Note: The volume name and storageClassName should not be modified here.
    • Resources. By default, the resource requests are set at 2 CPU and 7G RAM. Both these values can be changed. It is recommended to adjust the server heap size before changing these values.
      Figure 2: Custom resources
      Note: Limits are not yet enforced in the initial 9.5 release.
      Starting with Version 9.5 CF171+
      • Limits are enforced.
      • Auto-scaling based on average CPU and memory utilization can be configured.
        Figure 3: Custom resource allocation in Version 9.5 CF171+
    • Routes. /Ingress Version 9.5 CF171+. By default in Version 9.5, base routes are created for the deployment. Version 9.5 CF171+ allows a customer to configure the available routes.
      Figure 4: Custom DX Routes

      You can enable or disable any route and change the name of the secret to be used in the TLS context. The Configuration Wizard is still impacted by the number of running instances.

    • Probes. The default readiness and liveness probes run against the ../ibm/console. This can and should be overridden.
      Figure 5: Custom probes
      Note: There are two types of checks: command runs a command against the server; http hits either an http or an https URL. The syntax and required fields are shown in the above image.
    • Logging. By default, logging is done on the shared profile so all instances are writing to a single set of logs, with the volume set for each instance at 1G. For diagnosing production issues this is not ideal. This option allows each instance to write the log to its own log directory.
      Figure 6: Custom logging
      Note: The environment must have a self-provisioning storage class provisioner. Enabled must be set to true. By default, the volume for each instance is 1GB which can be adjusted as necessary. Ensure that the log settings are adjust to avoid running out of disk storage.
    • Ports. By default, the deployment uses the default DX ports. The routes in these ports expose Portal through http and https.
      Figure 7: Custom ports
      Note: If there is a need to configure the containerized Portal to use different ports, the defaults can be overridden in the custom resource yamls.
  5. Once modified, the deployDx.sh and the updateDx.sh scripts should be run to create (or update) the target deployment.
    See the following sections for additional information: