Stopping and starting the applications in a deployed integration runtime

From your App Connect Dashboard instance, you can stop or start individual applications that are running in an integration runtime. The stop or start action is applied to all replica pods that are provisioned for the integration runtime to ensure that a consistent state is maintained across the pods. This function might be useful for scaling or resource management, to force a restart, or to switch off problematic applications.

The term application includes applications, REST APIs, and services.

Availability: The ability to stop and start an integration runtime's applications from an App Connect Dashboard instance is available only for Dashboard instances with a spec.version value that resolves to 13.0.1.1-r1 or later. (The integration runtimes do not need to be running at this version in order to use this feature.)

About this task

A configuration object of type WorkdirOverride is generated, which the integration runtime can use to determine the state of its applications. The WorkdirOverride configuration type uses a TXT file to specify override values that can be applied to one or more BAR files in the integration work directory before an integration is started. These overrides are used to run ibmint apply overrides commands against the integration work directory to replace configurable values in the BAR deployment descriptor (broker.xml) with the new values in the TXT file. For more information about this configuration type, see WorkdirOverride type.

By default, the configuration object is named integrationRuntimeName-start-mode and it applies overrides for the startMode configurable property, which is typically specified as follows in a broker.xml file:

<ConfigurableProperty uri="startMode"/>

The following override is automatically applied to configure an application's run state when you stop an application:

applicationName/startMode=Manual

When you select the Stop option for an application in the Dashboard UI, the integrationRuntimeName-start-mode configuration object is generated with the override details. This configuration object is then automatically referenced in the spec.configurations setting in the integration runtime CR. The CR update results in an update of the integration runtime deployment, which in turn causes all the integration runtime replica pods to restart with the new integrationRuntimeName-start-mode configuration applied. When the new pods are running, the application is then stopped as requested. If you later select the Start option for this application in the Dashboard UI, the configuration object and its CR reference are deleted, and the change is rolled out across all the replica pods.

Although multiple configuration objects of type WorkdirOverride are allowed per integration runtime, avoid using an additional WorkdirOverride configuration object to change the state of the same application that you are starting or stopping from the Dashboard UI, because the final state will depend on which override is applied last.

Procedure

To stop or start an integration runtime's applications, complete the following steps:

  1. From the Runtimes page of the App Connect Dashboard, click the tile for a running integration runtime that is in a Ready state.
    Tile for an integration runtime on the Runtimes page

    Details about the deployed applications are displayed in a set of tabs. In the area preceding the tabs, the integration runtime name is displayed as the default value in a drop-down list, which also contains the name of each individual pod that is deployed to run the applications.

    Tabs for a deployed integration for viewing properties, policy projects, data, credentials, and resource managers, and for configuring basic authentication
    Note: The stop or start action is supported at an integration-runtime level rather than a pod level, so in the drop-down list that you use to display integration or pod-specific details, ensure that the name of the integration runtime is selected rather than the name of a replica pod. (The integration runtime name indicates that the details relate to all the replica pods where the applications run.)
    Drop-down list that displays the integration runtime and replica pod names
  2. From the Contents tab, stop and start an application as follows.
    1. To stop an application that is in a Started state, open the options menu on the tile and then click Stop.
      Stop option for an application

      To confirm, click Stop application or Stop REST API.

      A new configuration object named integrationRuntimeName-start-mode and of type WorkdirOverride is generated with details of the override for the stop action; for example:
      Customer_API/startMode=Manual

      The integration runtime CR is also updated to reference the configuration object, which in turn triggers an update of the integration runtime deployment and replica pods.

      Wait for a short while for the configuration change to be reconciled across all replica pods, and then refresh or reload the page to see the change in state on the application tile. By default, a rolling update of the pods occurs to avoid downtime and the length of time it takes depends on factors such as the speed of the cluster, the number of pods, and the CPU resources that are allocated to the integration runtime. During this time, the integration runtime is in an Updating state. When all the new pods are ready, the application tile displays a Stopped state. (If you return to the Runtimes page, the state of the integration runtime should still be shown as Ready.)

      Stopped state on an application tile
      Note:
      • You can see the integrationRuntimeName-start-mode configuration object on the Configuration page in the Dashboard.
      • If you edit the integration runtime CR to manually remove the reference to the integrationRuntimeName-start-mode configuration object from the CR, the Stopped state of the application is changed back to Started because the state is provided through the configuration. However, the configuration object itself isn't deleted. Stopping the application will cause the integration runtime CR is again be updated with a reference to the configuration object.
      • The Stopped state is retained for the application even if you upgrade the integration runtime to a new version, or if you update other values in the integration runtime CR. You can change this state by using the Start option in the Dashboard.
      • If an integration-runtime is running multiple applications as shown in the following example, you can separately stop or start them. For each individual application that you stop, an override entry is added to the integrationRuntimeName-start-mode configuration object.
        Multiple running applications depicted for an integration runtime
    2. To start an application that is in a Stopped state, open the options menu on the tile and then click Start.
      Start option for an application

      To confirm, click Start application or Start REST API.

      The integration runtime CR is updated to remove the reference to the integrationRuntimeName-start-mode configuration object of type WorkdirOverride and the configuration object is deleted.

      Wait for a short while for the start request to be reconciled across all replica pods, and then refresh or reload the page to see the change in state on the application tile. By default, a rolling update of the pods occurs to avoid downtime and the length of time it takes depends on factors such as the speed of the cluster, the number of pods, and the CPU resources that are allocated to the integration runtime. When all the new pods are ready, the application tile displays a Started state.

      Started state on an application tile
      Note: If multiple applications for an integration-runtime are in a Stopped state, the relevant override entry is removed from the integrationRuntimeName-start-mode configuration object for each application that is started, and the reference is removed from the CR. The configuration object is deleted only after the last application is started.