Register and View Edge Runtime Information
Learn how to register an edge runtime and its instances.
Learn how to register an edge runtime and its instances.
You are required to register your edge runtime with your tenant first in order for it to be able to connect with IBM webMethods Integration and make use of remote monitoring, control, and syncing capabilities.
However, if you do not want to register an edge runtime, you can use the default cloud runtime that is provided in your cloud tenant.
The basic flow of edge runtime registration is as follows:
Ensure that your IBM webMethods Integration tenant has the Develop anywhere, Deploy anywhere capability enabled. The Integration Runtimes tab appears if the capability is enabled.
Ensure that you have installed a container runtime such as Docker or Rancher on your machine.
For local development, it is recommended that you use Docker instead of a container, to ensure compatibility with any docker commands provided here. However, for production-based deployment, any Open Container Initiative (OCI) compliant container engine is supported and there are no restrictions on which one you use.
Click Integration Runtimes on the IBM webMethods Integration title bar.
Click the (Plus) icon. The Register Edge Runtime wizard appears.
Click Create new Edge Runtime.
You are redirected to the Get Edge Runtime Image page. The page contains a Docker command that retrieves the edge runtime image from the container registry.
To obtain the user name and token details:
a. Click the Container Registry link available under the Sign in to Container Registry section.
You are directed to the login page.
b. Enter your credentials.
c. Click Next. After successful login, the container registry home page appears.
d. Click User Profile > Settings.
The User Profile page appears.
e. Click Generate Password. The Container registry credentials confirmation message appears.
f. Select the I agree to the IBM’s Terms and Conditions checkbox after going through the terms and conditions. The token name and password are generated.
These details are required for logging into the container registry. You can copy the command listed under Docker login and save it for later reference.
g. Close the Container registry credentials dialog box and go to the Register Edge Runtime wizard.
To login to the container registry:
a. Copy the command from the first text box in the Sign in to Container Registry section using the (copy) icon and paste it on your terminal window or command prompt.
b. Replace user name and user token with the values generated in the previous step.
c. Press Enter to run the command. After successful validation, the Login Succeeded message appears.
d. Go to the Register Edge Runtime wizard.
To pull the edge runtime image:
a. Copy the command from the last text box in the Get Edge Runtime Image section using the (copy) icon and paste it on your terminal where you want to run the container.
b. Press Enter to run the command. The latest edge runtime is downloaded.
c. Go to the Register Edge Runtime wizard.
Click Next. The Configure page appears.
Enter a name and description for the new edge runtime, so that you can easily identify it later.
Set the button under Access with one of the following values:
Public: Select this option to make the Integration Runtime public so that all users can access the runtime irrespective of their access privileges.
Private: Select this option to make the Integration Runtime private. The user registering the runtime will become the owner of this runtime.
Click Next. The Connect page appears.
Click Start Pairing. A pairing code including the cloud URL, and a registration token is generated.
Copy the pairing code using the (copy) icon and paste it on your terminal where you want to run the container.
Press Enter to run the command. Upon successful pairing, the edge runtime is registered, and the success message appears.
Click Done and try to register again.
The newly registered edge runtime is displayed on the Integration Runtimes page. The runtimes you have registered or have access to appears in the Integration Runtimes page. Only administrators can see all runtimes. For more information about access privileges, see Integration Runtimes Access Privileges.
Once the edge runtime transitions into the Running state, you can use the newly registered edge runtime to deploy and run services from your tenant. The runtime card displays the following details:
If the runtime is private, then the icon appears on the runtime card instead of the icon.
You can create multiple instances for an edge runtime.
An instance is a runtime engine that is associated with the logical runtime that you have registered with the control plane. It allows you to spin up more than one runtime instance with the same logical identity. This means that any invocations from your IBM webMethods Integration tenant will be distributed across these instances, giving you both high availability and the ability to scale as throughput requires. If an instance crashes or is shutdown, then another instance can take over the workload. It is important to remember that starting or stopping instances is controlled by you and not by the control plane and that you must use a long-term pairing token in the runtime startup command. The runtimes must be identically setup and the best way to do that is create a prebuilt image for the runtime.
Having instances provide several benefits, including:
Scalability: You can easily create, clone, or terminate instances to scale your infrastructure up or down based on demand.
High availability: You can ensure the reliable operation of your applications on server instances because of capabilities such as load balancing, auto-scaling, and fault tolerance to guarantee the high availability of your applications hosted.
By leveraging instances, you can rapidly deploy and scale your applications, avoid upfront infrastructure costs, and focus on your core business objectives.
You can create up to 20 instances for an edge runtime by default. If you want to create more instances, contact IBM Support.
You cannot create any additional instances for the default cloud runtime.
Each instance is a separate runtime that could be running in different data centers or private clouds. However, they represent the same logical runtime and you cannot reference an instance individually, all invocations are distributed across the available instances.
An edge runtime having one or more instances is displayed as a stack of cards on the Integration Runtimes home page.
You can add instances to an edge runtime in one of the following methods:
Manual: In this method, you can add a single instance by either using the Start command or Add Instance option in the Instance Listing page. Upon the instance’s creation, you can subsequently add another instance. However, you need to wait until the instance is created and displayed in the Instance Listing page.
Auomatic: In this method, you can add one or more instances programmatically by running the Docker command from your container terminal. You need not wait until the instance is created. For this method, you must have a valid long-term access token.
Starting instances manually from the control plane is not recommended. Instead, you must leverage the auto-creation of instances through a container management system such as Kubernetes, where you configure a deployment set that allows you to programmatically define the number of instances and even implement auto-scaling. In which case, the number of instances are entirely automated based on load. Refer to the section on automating runtime startup.
Click the vertical ellipsis icon on the edge runtime card for which you want to add instances on the Integration Runtimes page. A menu appears.
Click Add Instance from the displayed menu.
The Add Instance dialog appears.
Copy the pairing code using the (copy) icon and paste the command in a text editor.
Update the port number on which the instance must communicate. The port number must be unique.
Copy the updated command and paste it on the terminal where you want to run the container.
Press Enter to run the command. Upon successful pairing, the edge runtime is registered, and the success message appears.
Click Done. A new instance is created, and the edge runtime card appears as a stack of cards. You can click the edge runtime card to view the details of an instance. For more information about instance details, see View Edge Runtime Information.
The Manual Runtime Instance Startup section demonstrated how to use a generated Docker command to initiate multiple instances of the same runtime. While this approach involves manual steps and is not practical for production environments, you can instead use a script or Kubernetes auto-scaling (DeploymentSet) to dynamically manage instances or pods as needed. However, note that the pairing token generated by the register and start commands is valid for one-time use only and is time-limited, making it unsuitable for this purpose. You need to generate a long-term pairing token for this purpose.
You need the following details:
Long-term access token. For more information about long term access tokens, see Generating Pairing Tokens.
Edge runtime pairing command. The command is available on the Add Instance dialog box. For more information about getting the pairing command, see Manual Runtime Instance Startup.
Open a text editor and paste the Docker command that you copied from the Add Instance dialog box.
Update the following values:
p: Port number on which the runtime instance must communicate. Ensure that each instance port number is unique on the system you are running. Otherwise, docker command fails with port conflict errors.
SAG_IS_CLOUD_REGISTER_TOKEN: Replace with a valid long-term access token.
name: Name of the runtime instance. Ensure that each runtime instance name is unique.
For example, the following sample image contains four commands to create four new instances.
Open a container runtime such as Docker or Rancher on your machine.
Copy an instance command from the text editor and paste the command on the container terminal.
Press Enter to run the command. After the command runs successfully, an ID appears.
Repeat steps 4 and 5 to create other instances.
Close the container terminal and go to Integration Runtimes page. The new instances are created, and the edge runtime card appears as a stack of cards.
You can click the edge runtime card to view the details of an instance. For more information about instance details, see View Edge Runtime Information.
The pairing tokens are used during edge registration, especially when you want to register multiple instances for an edge runtime using the automatic approach. For more information about automatic approach, see Automate Runtime Instance Startup.
You can generate pairing tokens using the Add New Token option in OAuth 2.0. The Add New Token option is visible in tenants with Develop Anywhere, Deploy Anywhere enabled. You cannot use the Add New Token option for generating tokens for other clients communicating with IBM webMethods Integration, for that, see Generating Tokens.
Go to User Profile > Settings > OAuth 2.0 > Token Management. All available tokens are listed.
Click Add New Token. The Add New Token dialog box appears.
Select the client for which the token must be generated from the Client drop-down list.
Specify the number of days for which the token is valid from the Expiry Time drop-down list. The default value is 30 days.
Click Generate Token. The token is generated and listed.
Copy the access token and save it in your local system for future reference.
Click Close to exit the Add New Token dialog box. The Token Management page appears and the newly added access token is listed in the Tokens table.
An edge runtime and its instances transition through different states from the moment you launch it until they are terminated. The various transition states of an edge runtime instance are as follows:
Status | State | Edge Runtime (Status of edge runtime card on the Integration Runtimes page) |
Edge Runtime Instances (Status of each instance on the Instances Listing page) |
---|---|---|---|
Disabled | No status is displayed. | No status is displayed. | |
Running Or X Running Or X/Y Running |
Enabled | Edge runtime can be used to deploy integrations. | All instances can be used to deploy integrations. If some instances are only running, then the status is displayed as X/Y Running, where X is the number of instances that are running, and Y is the total number of instances. |
Offline | Enabled | Edge runtime has no instances. In case of a single instance, if the instance is either in Provisioning, Starting, Restarting, Created, Unknown, or Stopped states. In case of multiple instances, none of the instances are running. |
–Not Applicable– |
Deregistering | Enabled/Disabled | Edge runtime deregistration is in progress. You can no longer use it. If the edge runtime has multiple instances, then all instances are also deregistered. |
–Not Applicable– |
Failed | Enabled/Disabled | Edge runtime deregistration is unsuccessful. | –Not Applicable– |
Provisioning | Enabled | –Not Applicable– | Pairing is successful and instance is being set up. |
Created | Enabled | –Not Applicable– | Instance is set up. |
Starting | Enabled | –Not Applicable– | Instance is being initialized and is not yet available for performing operations. |
Removing | Enabled | –Not Applicable– | Instance is being deleted. |
Syncing | Enabled | Edge runtime is syncing. | Instance is being synchronized to retrieve the latest information of all assets. |
Unknown | Enabled | –Not Applicable– | Instance whose status is not known due to exceptions such as connectivity loss. Any instance that is in unknown state does not participate in anytime runtime operations. |
You can view the details of an edge runtime instance by clicking the corresponding edge runtime card in the Integration Runtimes page. The runtimes are displayed based on your access privileges. For more information about access privileges, see Integration Runtimes Access Privileges.
You can view the details of an edge runtime having a single instance in the Dashboard. For more information about runtime details, see Dashboard.
You can view the details of an edge runtime having multiple instances in the Instance Listing page.
Click an edge runtime card that has more than one instance on the Integration Runtimes page. The Instance Listing page appears listing all instances created for that edge runtime.
The following details are listed for each instance:
Container ID: Unique identification number of the Docker container created during an edge runtime registration. Use this ID to identify an edge runtime instance from the running Docker containers on your local system.
Status: Status of an edge runtime instance. For more information about the complete list of edge runtime instance statuses, see Edge Runtime Lifecycle States.
Actions: Lists the various tasks you can perform on an edge runtime instance. You can either stop or restart a specific instance using the options in the Actions column.
The Ellipsis icon on the edge runtime card is visible to all and the actions listed in the ellipsis menu can be performed by all.
Edge runtime exclusively functions in a stateless manner without local data persistence. Furthermore, it does not support features reliant on an internal database, including cross-referencing, service auditing, business processing management, document history, central user management, and guaranteed inbound adapter notifications.