Upgrading your instances

Use these instructions if you need to manually upgrade existing instances of the App Connect Dashboard, App Connect Designer Authoring, App Connect Switch Server, and App Connect Integration Server custom resources. You can upgrade by using the Red Hat® OpenShift® web console or CLI, or from the IBM® Cloud Pak for Integration Platform Navigator.

Before you begin

About this task

After the IBM App Connect Operator is upgraded, you must manually upgrade your existing instances if you want to apply custom resources from the latest Operator version. To allow the upgrade to proceed, you must update the spec.version value to a channel or fully qualified version that is suffixed with -eus, and update the spec.license.licence value to an appropriate licence for the Operator version.

If you have existing instances of App Connect Dashboard, App Connect Designer, integration servers, and switch servers, you can upgrade any of them by using the Red Hat OpenShift web console or CLI. From the Platform Navigator, you can directly upgrade only App Connect Dashboard and App Connect Designer instances.


Upgrading from the Red Hat OpenShift CLI

Procedure

To upgrade your instances, complete the following steps:

  1. From the command line, log in to your Red Hat OpenShift cluster by using the oc login command.
  2. If necessary, switch to the namespace (or project) that contains the instances:
    oc project namespace
  3. Use your preferred method to update the spec.version and spec.license.licence values for each instance that you want to upgrade. The oc patch command is used in these steps to apply a patch with some bash shell features, but you can also use oc edit, or oc apply with the appropriate YAML.
    1. Use your preferred text editor to create a YAML file that contains the updated values. To help you choose the correct values, see spec.version values and Licensing reference for IBM App Connect Operator.

      For example, if you wanted to upgrade from a fully qualified version ( such as 11.0.0.9-r2) to the latest version, you can update spec.version to use the 11.0.0-eus channel. And to switch to a license that is valid for the latest release, you can update spec.license.licence to L-APEH-CEKET7.

      spec:
        version: 11.0.0-eus
        license:
          license: L-APEH-CEKET7
      
    2. Save this file with a .yaml extension; for example, newversion.yaml.
    3. Run the following command to update the values for an instance, where:
      • kind represents the value of the kind parameter for the instance, which can be Dashboard, DesignerAuthoring, SwitchServer, or IntegrationServer. (These values are not case sensitive.)
      • instanceName is the name of the instance, which is shown as the metadata.name value.

      (Use the name of the .yaml file that you created.)

      oc patch kind instanceName --type='merge' --patch "$(cat filename.yaml)"

      For example:

      oc patch dashboard db-prod --type='merge' --patch "$(cat newversion.yaml)"
      Tip:

      Other possible oc patch commands for updating the spec.version or spec.license.licence value are as follows. (These commands might show an Invalid JSON Patch message on certain operating systems.)

      oc patch kind instanceName -p '{"spec":{"version":"11.0.0-eus"}}' --type=merge
      oc patch kind instanceName -p '{"spec":{"license":{"license":"licenseValue"}}}' --type=merge
      oc patch kind instanceName -p '{"spec":{"version":"11.0.0-eus", "license":{"license":"licenseValue"}}}' --type=merge

      The oc edit command will automatically open the default text editor for your operating system (for example, Notepad on Windows) or another configured editor. Update and save the YAML definition, and then close the text editor to apply the command.

      oc edit kind instanceName -n namespace

Upgrading from the Red Hat OpenShift web console

Procedure

To upgrade your instances, complete the following steps:

  1. Applicable to IBM Cloud Pak for Integration only:
    1. If not already logged in, log in to the Platform Navigator for your cluster.
    2. From the IBM Cloud Pak menu IBM Cloud Pak menu, click OpenShift Console and log in if prompted.
  2. Applicable to an IBM App Connect Operator deployment only: From a browser window, log in to the OpenShift web console for your cluster.
  3. From the navigation, click Operators > Installed Operators to display all the installed Operators in the current namespace.
  4. If necessary, select a specific namespace where your IBM App Connect Operator is installed.
  5. Locate and click IBM App Connect in the table to open the Operator Details view.
  6. Click the All instances tab.
  7. Complete the following steps to update the spec.version and spec.license.licence values for each instance that you want to upgrade.
    1. Click the name of the instance.
    2. Go to the YAML tab.
    3. Update the spec.version value to a channel or fully qualified version that is suffixed with -eus, and update the spec.license.licence value to an appropriate licence for the Operator version. To help you choose the correct values, see spec.version values and Licensing reference for IBM App Connect Operator.
    4. Click Save.

Upgrading from the IBM Cloud Pak for Integration Platform Navigator

Procedure

To upgrade your App Connect Dashboard and App Connect Designer instances, complete the following steps:

  1. From a browser window, log in to the Platform Navigator.
    Any existing instances of App Connect Dashboard and App Connect Designer are displayed on the Capabilities tab. In the capabilities table, the entries in the Version column are annotated with information icons (i) if new versions are available. The Status should also be shown as Ready.
    Platform Navigator with Dashboard and Designer instances annotated with an (i) icon
  2. Click the options icon Options icon for an instance that you want to upgrade, and then click Edit from the menu.
    The Edit page for the Designer or Dashboard instance opens.
  3. From the UI form or YAML view, update the License LI field or spec.license.licence value to an appropriate licence for the Operator version. Also update the Channel or version field or spec.version value to a channel or fully qualified version that is suffixed with -eus. To help you choose the correct values, see spec.version values and Licensing reference for IBM App Connect Operator.
  4. Click Update to save your changes and start the upgrade.
    You are redirected to the Capabilities tab. In the capabilities table, the entry in the Version column shows the updated version.

Useful commands for checking or verifying your versions and license values

Use these commands to check your versions and license values if required before upgrading, or to verify that your intended values have been applied after the upgrade.

Example

In these commands, the value of kind can be any of: Dashboard, DesignerAuthoring, SwitchServer, or IntegrationServer. (These values are not case sensitive.) The instanceName variable denotes the name of the instance that is specified as the metadata.name value.

If necessary, include the -n namespace setting.

  • This command lists existing instances of a specific kind and shows which App Connect versions are running.

    The output displays the running App Connect versions in the RESOLVEDVERSION column.

    oc get kind

    For example:

    oc get IntegrationServer
    NAME                        RESOLVEDVERSION   REPLICAS   AVAILABLEREPLICAS   CUSTOMIMAGES   STATUS   AGE
    demo-designer-designer      11.0.0.10-r1      1          1                   false          Ready    8d
    des-ma-johndoe-designer     11.0.0.10-r1      1          1                   false          Ready    5d4h
    des-leemajor-designer       11.0.0.10-r1      1          1                   false          Ready    2d1h
    designer-josie-designer     11.0.0.10-r1      1          1                   false          Ready    7d3h
    baton-test-upgrade-server   11.0.0.9-r3       1          1                   false          Ready    24m
  • This command lists the spec and status settings of an existing instance and shows what versions can be chosen, and which one is active:
    oc get kind instanceName -o yaml

    In the output, status.versions.available identifies the available channels and fully qualified versions, and status.reconciled identifies the App Connect version that is running.

    Example 1:

    oc get IntegrationServer baton-test-upgrade-server -o yaml
    ...
    spec:
      adminServerSecure: false
      barURL: ""
      designerFlowsOperationMode: disabled
      license:
        accept: true
        license: L-AMYG-BQ2E4U
        use: AppConnectEnterpriseProduction
      replicas: 1
      router:
        timeout: 120s
      service:
        endpointType: http
      useCommonServices: false
      version: 11.0.0.9
    status:
      availableReplicas: 1
      conditions:
      - lastTransitionTime: "2020-09-23T15:41:03Z"
        message: integrationserver is ready
        reason: Deployed
        status: "True"
        type: Ready
      customImages: false
      endpoints:
      - name: http endpoint
        type: api
        uri: http://baton-test-upgrade-server-http-ace-demo.apps.acecc-demo.abc.com
      - name: https endpoint
        type: api
        uri: https://baton-test-upgrade-server-https-ace-demo.apps.acecc-demo.abc.com
      phase: Ready
      replicas: 1
      versions:
        available:
          channels:
          - name: 11.0.0
          - name: 11.0.0.10
          - name: 11.0.0.9
          versions:
          - name: 11.0.0.10-r1
          - name: 11.0.0.9-r3
          - name: 11.0.0.9-r2
          - name: 11.0.0.9-r1
        reconciled: 11.0.0.9-r3

    Example 2:

    oc get IntegrationServer des-quickstart-cs-sx-designer -o yaml
    ...
    spec:
      license:
        accept: true
        license: L-APEH-BTHFYQ
        use: AppConnectEnterpriseProduction
      tracing: {}
    ...
      adminServerSecure: true
      router:
        timeout: 120s
      customContentServer: true
      defaultAppName: DefaultApplication
      useCommonServices: true
      designerFlowsOperationMode: local
      disableRoutes: false
      designerFlowsType: event-driven-or-api-flows
      service:
        endpointType: http
      version: 11.0.0-eus
      logFormat: basic
      replicas: 1
      configurations:
        - des-quickstart-cs-sx-designer-pp
        - des-quickstart-cs-sx-designer-sc
        - des-quickstart-cs-sx-designer-sdbp
        - des-quickstart-cs-sx-designer-ks
        - des-quickstart-cs-sx-designer-acc
        - des-quickstart-cs-sx-designer-ssl
    status:
      availableReplicas: 1
      conditions:
        - lastTransitionTime: '2020-11-16T14:41:34Z'
          message: integrationserver is ready
          reason: Deployed
          status: 'True'
          type: Ready
      customImages: false
      endpoints:
        - name: http endpoint
          type: api
          uri: >-
            http://des-quickstart-cs-sx-designer-http-ace-shanna.apps.acecc-staging.icp4i.com
        - name: https endpoint
          type: api
          uri: >-
            https://des-quickstart-cs-sx-designer-https-ace-shanna.apps.acecc-staging.icp4i.com
      labelSelector: release=des-quickstart-cs-sx-designer
      phase: Ready
      replicas: 1
      versions:
        available:
          channels:
            - name: 11.0.0
            - name: 11.0.0.10
            - name: 11.0.0.9
          versions:
            - name: 11.0.0.10-r3-eus
            - name: 11.0.0.10-r2
            - name: 11.0.0.10-r1
            - name: 11.0.0.9-r3
            - name: 11.0.0.9-r2
            - name: 11.0.0.9-r1
        reconciled: 11.0.0.10-r3-eus