Using bindings
Use bindings to connect Event Streams resources to App Connect resources.
For example, you can connect a Configuration
or DesignerAuthoring
Kubernetes resource from App Connect to a KafkaUser
Kubernetes resource from Event Streams. This binding enables the integration flows that are inside Integration runtimes to use Kafka topics that the Kafka user has access to.
The IntegrationBinding
Kubernetes resource is managed by the Cloud Pak for Integration operator. This operator handles all the underlying changes that are required to make the connection specified in YAML Kubernetes objects.
You can create a binding by using the IBM Cloud Pak Platform UI or the CLI.
Creating a binding by using the canvas in the Platform UI
In the canvas, you can easily add IntegrationRuntimes
, Configurations
, KafkaUsers
, and KafkaTopics
. Then you can bind these resources together by using the Binding node in the same canvas.
Log in to the Platform UI.
On the home page, click Build with assembly canvas. The canvas opens.
In the palette, click to expand the list of Independent instances (instance types).
Do one of the following:
To create a new integration runtime for this canvas, drag and drop an Integration runtime node from the palette to the canvas.
To import an existing integration runtime to the canvas, click the Import existing instances button and select a pre-existing integration runtime.
Drag and drop the Kafka users and Kafka topics nodes that you want to create for the flow inside this integration runtime. You can also import existing Kafka users and Kafka topics by cliking the Import existing instances button.
In the palette, expand Resources to find the binding and configuration instance types.
Drag and drop the Binding and Configurations nodes.
Draw a line from the Configuration node to the Binding node, and draw a line from the Binding node to the Kafka user node, to bind these resources together.
For each node, double-click and configure it.
(Optional) If you're not ready to deploy yours instances, save a draft version of this canvas. Click the overflow menu (three-dot icon), then click Save as draft. The canvas is stored in the Platform UI. You can continue editing the draft version until you are ready to create the instances from it.
When all the instances are configured, click Create to initiate deployment. You are redirected to the home page. The instances begin deployment and are initially in the Pending state. Click Pending to confirm the progress of the deployment.
The following example canvas has a binding that is used to connect an integration runtime to the Kafka resource. The binding includes the Kafka topics that the user has access to.

Creating a binding by using the UI Form in the Platform UI
Follow these steps to create bindings using the UI Form.
Log in to Platform UI.
Click Create an instance.
Click the Binding tile, then click Next.
Click the tile for the template that you want, then click Next. You can customize the template in the next step.
To deploy by using a template from Automation assets, click Select a template from Automation assets.
On the Create page, enter values in the UI Form or YAML views to configure the binding. For more information, see Binding custom resource values.
(Optional) If you're not ready to deploy your instance, save a draft version. Click the overflow menu (three-dot icon), then click Save as draft. The configuration for the instance is stored in the Platform UI. You can continue editing the draft version until you are ready to create the instance.
Click Create to initiate deployment. You are redirected to the home page. The binding begins creating and is initially in the Pending state. Click Pending to get status details. When the creation completes, the status changes to Ready (you can click the refresh button next to Create to refresh the status column).
Custom resource values
The following table lists the configurable parameters and default values for the Kubernetes resource.
Parameter | Description | Default |
---|---|---|
apiVersion |
The API version that specifies which schema is used for the IntegrationBinding resource |
integration.ibm.com/v1beta1 |
kind |
The resource type | IntegrationBinding |
metadata.name |
A name by which the binding can be identified | |
metadata.namespace |
The namespace where you create the binding | |
spec.from.kind |
The kind of the resource to bind from. KafkaUser is the only valid value. |
|
spec.from.name |
The name of the resource to bind from | |
spec.from.namespace |
(Optional) The namespace of the resource to bind from. If omitted, the namespace of the binding is used | |
spec.from.listenerName |
(Optional) Only used if spec.from.kind is set to KafkaUser . This value is the name of the Kafka listener to use, from the Kafka cluster referenced by the Kafka user. If omitted, a listener that matches the authentication type specified in the Kafka user is chosen, with priority given to internal listeners rather than route based listeners. |
|
spec.to |
The list of resources to bind to | |
spec.to[].kind |
The kind of the resource to bind to. Valid values are Configuration and DesignerAuthoring . |
|
spec.to[].name |
The name of the resource to bind to | |
spec.to[].namespace |
(Optional) The namespace of the resource to bind to. If omitted, the namespace of the binding is used | |
spec.to[].accountName |
(Optional) When binding to a Configuration resource, specify the account name to use in the Configuration . If omitted, defaults to the name of this Integration binding |
|
spec.to[].clientId |
(Optional) When binding to a Configuration or DesignerAuthoring resource, specify the client ID to use in the Configuration |
Empty string |
status.conditions |
Returns information on the current condition of the biding |