C Migrating UIM_CNTK to COMMON_CNTK

From the UIM 8.0.0.0 release, UIM_CNTK is merged with COMMON_CNTK. For all operations on the UIM cloud native instance, use COMMON-CNTK.

The reasons for merging UIM cloud native toolkit with Common cloud native toolkit are as follows:

  1. To converge all deployment scripts in a single place, that is in COMMON_CNTK.
  2. To simplify the deployment process, UI-based deployment and configuration management tool (DCMT) are provided. These are delivered with Common cloud native toolkit.
  3. Common configurations such as Ingress Controller, SSL configuration, and so on, can be managed at a single location instead of duplicating them in both UIM_CNTK and COMMON_CNTK.
  4. To reduce the maintenance overhead of both artifacts.

Changes Due to Migration

This section lists the changes due to this migration.

Changes in Artifacts

The changes in artifacts are as follows:

  • UIM_CNTK is now removed.
  • Use COMMON_CNTK for all actions on UIM cloud native instance such as create, delete, upgrade, schema create, schema delete, schema upgrade, and so on.

Changes in Specification Files

The changes in specification files are as follows:

  • The contents of project.yaml and instance.yaml are now available in applications-base.yaml, app-uim.yaml and database.yaml.
  • $SPEC_PATH/project.yaml and $SPEC_PATH/instance.yaml are now placed at $SPEC_PATH/project/instance/ <applications-base.yaml, app-uim.yaml, database.yaml>.
  • The locations of sample, logging, shape, and configuration files are changed as follows:

Table C-1 Changes in Specification Files

File/Directory Old Location New Location
loggingconfig.xml uim-cntk/charts/uim/config/logging $SPEC_PATH/project/instance/config/uim/logging
  • custom-config.properties,
  • affinity-config.properties
uim-cntk/charts/uim/config/system-config $SPEC_PATH/project/instance/config/uim /system-config
topologyMapping uim-cntk/charts/uim/topologyMapping $SPEC_PATH/project/instance/config/uim /topologyMapping
All samples file uim-cntk/samples common-cntk/samples
All Shape files uim-cntk/charts/uim/shapes $SPEC_PATH/project/instance/shapes/<shape>/uim.yaml

Note:

Run the assemble-specification script to use COMMON_CNTK. See "Assembling the Specifications" for information.

Changes in WLSKO Helper Operations

All the commands used to perform any operation on registration of namespace are now impacted because of this migration. Refer the following old and new commands to understand better.

Register Namespace

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/register-namespace.sh -p project -t wlsko -l wlsko=enabled
  • New:
    $COMMON_CNTK/scripts/register-namespace.sh -p project -t wlsko -l wlsko=enabled

Unregister Namespace

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/unregister-namespace.sh -p project -t wlsko -l wlsko=enabled
  • New:
    $COMMON_CNTK/scripts/unregister-namespace.sh -p project -t wlsko -l wlsko=enabled

Changes in Secrets

The command to create, delete, or update secrets is changed as follows.

Make sure you explicitly provide the following:

  • Provide application name with -a uim option.
  • Update applications-base.yaml by uncommenting applications name as uim and comment all other values.

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/manage-instance-credentials.sh -p project -i instance <create/update/delete/verify> wlsadmin,opssWP,wlsRTE,rcudb,uimdb
  • New:
    $COMMON_CNTK/scripts/manage-app-credentials.sh -p project -i instance -s $SPEC_PATH -a uim <create/update/delete/verify> wlsadmin,opssWP,wlsRTE,rcudb,uimdb

Note:

  • In case of SSL communications, create one more commonTrust secret.
  • Do not mention the trust.name in the specification files. If the secret is available, it will be mounted to pods.

The following secret is common for all services with same namespace and instance name:

$COMMON_CNTK/scripts/manage-app-credentials.sh -p project -i instance -s $SPEC_PATH create commonTrust

Changes in Embedded LDAP

All utility scripts and related files to manage LDAP users are moved under COMMON_CNTK/samples/credentials directory. To create an embedded LDAP user, perform the following command changes and update the uim.inventoryUsers with users list field in the app-uim.yaml specification file.

The changes are as follows:

  • Old:
    $UIM_CNTK/samples/credentials/manage-uim-credentials.sh  -p project -i instance -c <create/update/delete/verify> -f <text file>
  • New:
    $COMMON_CNTK/samples/credentials/manage-uim-credentials.sh  -p project -i instance -c <create/update/delete/verify> -f <text file>

Changes in Schema Operations

All schema operations will use install-database.sh script. This script reads the database.yaml present at $SPEC_PATH/project/instance/database.yaml.

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/install-uimdb.sh -p project -i instance -s $SPEC_PATH -c <1/2/…./9>
  • New:
    $COMMON_CNTK/scripts/install-database.sh  -p project -i instance -s $SPEC_PATH -a uim  -c <1/2/…./9>

Changes in Instance Operations

Instance operations commands copy the configuration files from $SPEC_PATH/project/instance/config directory to the corresponding locations in $COMMON_CNTK before running the command. Therefore, only the application configurations that are present at $SPEC_PATH/project/instance/config are applied. Any direct changes under the $COMMON_CNTK/charts directory overrides the previous ones.

Creation

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/create-instance.sh -p project -i instance -s $SPEC_PATH
  • New:
    $COMMON_CNTK/scripts/create-applications.sh -p project -i instance -s $SPEC_PATH -a uim

Deletion

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/delete-instance.sh -p project -i instance
  • New:
    $COMMON_CNTK/scripts/delete-applications.sh -p project -i instance -s $SPEC_PATH -a uim

Upgrade

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/upgrade-instance.sh -p project -i instance -s $SPEC_PATH
  • New:
    $COMMON_CNTK/scripts/upgrade-applications.sh -p project -i instance -s $SPEC_PATH -a uim

Ingress

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/create-ingress.sh -p project -i instance -s $SPEC_PATH
  • New:
    $COMMON_CNTK/scripts/create-ingress.sh -p project -i instance -s $SPEC_PATH -a uim

Changes in Customizations

Use COMMON_CNTK for all customizations. The scripts and samples related to customizations such as dump-merged-mode.sh, customExtensions, are moved to the corresponding COMMON_CNTK/scripts and COMMON_CNTK/samples/uim directories.

The changes are as follows:

  • Old:
    $UIM_CNTK/scripts/create-instance.sh -p project -i instance -s $SPEC_PATH -m <CUSTOMIZATION_LOCATION>
  • New:
    $COMMON_CNTK/scripts/create-instance.sh -p project -i instance -s $SPEC_PATH -m <CUSTOMIZATION_LOCATION> -a uim

Note:

In the customization WDT files, if you refer to any values from the applications specification files, Oracle recommends you place these values under uim.custom tag and not anywhere else.

Changes in Post-Deployment Operations

This section includes the changes in post-deployment operations.

Assign Roles

The changes are as follows:

  • Old:
    $UIM_CNTK/samples/credentials/assign-role.sh -p project -I instance -f uim-user-roles.txt
  • New:
    $COMMON_CNTK/samples/credentials/assign-role.sh -p project -I instance -f uim-user-roles.txt

Migrating from the Existing Files

This section provides the details about migration from the existing files.

Mapping the Existing Specification Files to New

Update database.yaml, applications-base.yaml, and app-uim.yaml at $SPEC_PATH/project/instance by copying the relevant configurations from your existing $SPEC_PATH project.yaml and instance.yaml files.

Following are the examples of mappings:

Table C-2 Examples of Specification File Mappings

UIM CNTK - $SPEC_PATH COMMON CNTK - $SPEC_PATH
#project.yaml

image: "uim-cn-base:latest"
#app-uim.yaml

uim:
    image: 
       name: "uim-cn-base”
       tag: “latest"
# project.yaml

dbinstaller:
  image: "uim-cn-db-installer:latest"
#database.yaml

uim-dbinstaller:
    dbinstaller:
        image: 
           name: "uim-cn-db-installer”
            tag: “latest"
#project.yaml

custom:
    enabled: true
    application: false
    jdbc: false
    jms: false
    saf: false
    wdtFiles: 
     - _custom-domain-model.tpl
#app-uim.yaml

uim:
    custom:
        enabled: true
        application: false
        jdbc: false
        jms: false
        saf: false
        wdtFiles:
       - _custom-domain-model.tpl
#instance.yaml

db:
    datasourcesPrimary:
        port: 1521
        rcuPort: 1521
    defaultTablespace: "SYSTEM"
    tempTablespace: "TEMP"
  
    purge:
        enabled: false
        purgeCommand: ./ldPurge.sh report -ldid 450003,450005
#database.yaml

uim-dbinstaller:
   db:
        datasourcesPrimary:
            port: 1521
            rcuPort: 1521
        defaultTablespace: "SYSTEM"
        tempTablespace: "TEMP"
  
        purge:
           enabled: false
           purgeCommand: ./ldPurge.sh report -ldid 450003,450005
#instance.yaml

ssl:
  incoming: true
  strategy: TERMINATE 
   trust: 
    name: truststore
#applications-base.yaml

tls:
  enabled: true

(trust it will read from commonTrust secret, make sure you create it with all certificates using manage-credentials.sh script)

Copying the Configuration Files

Copy the configurations such as logging, system-config, topologyMapping, siaMapping, and so on to the specification path location as follows:

  • From the existing: $UIM_CNTK/charts/uim/config/*
  • To a new: $SPEC_PATH/project/instance/config/uim/*

Performing the Operations

Use the updated commands from "Changes in Schema Operations" and "Changes in Instance Operations" to perform any operation on schema or instance using COMMON_CNTK.