Installing the Event Manager Gateway
Learn how to install the Event Manager Gateway.
Prerequisites
- Ensure that you have installed IBM Cloud Pak® for WatsonAIOps AI Manager. For more information, see Installing IBM Cloud Pak for Watson AIOps AI Manager .
- Ensure that you have installed Netcool® Operations Insight® on Red Hat® OpenShift® in a fully containerized or hybrid deployment. For more information, see Installing.
- Create an outgoing connection in AI Manager. Connections with Slack, ServiceNow, and Microsoft Teams are optional, but if you are planning to have an outgoing Slack, ServiceNow, or Microsoft Teams connection, then you must create it before you install the Event Manager Gateway. For more information, see: Outgoing connections
- Set up a Kafka connection in AI Manager. Configure the Kafka connection with Events as
the data source and NOI as the mapping type. Make a note of the Kafka topic name, which is
required when you configure the Event Manager Gateway. For more information, see: Creating Kafka connections
Note: Do not enable data flow for the Kafka connection until after the Event Manager Gateway is installed.
You can install the Event Manager Gateway with the Red Hat OpenShift console, or with the OpenShift CLI.
Installing the Event Manager Gateway with the Red Hat OpenShift console
Complete the following steps to create the Event Manager Gateway in the AI Manager namespace:
- Log in to your OpenShift cluster's console.
- Select the Project where AI Manager is installed.
- Go to .
- Select IBM Watson AIOps AI Manager from the list of Installed Operators.
- Select Event Manager Gateway, and then click Create EventManagerGateway.
- Switch to the YAML View, and input YAML with the contents that are specified in step 1 of Installing the Event Manager Gateway with the OpenShift CLI.
- Click Create.
- To verify that your newly created Event Manager Gateway is successfully installed, select the Event Manager Gateway instance with the name of the Event Manager Gateway instance that you created, and then select Resources. The status of each of the rows is either Created or Running.
Installing the Event Manager Gateway with the OpenShift CLI
You can connect to an ObjectServer in another namespace within the same cluster as AI Manager or
in an external cluster. Complete the following steps to create the Event Manager Gateway in the AI
Manager namespace:
- Create a YAML file, as in the following example
configuration:
apiVersion: ai-manager.watson-aiops.ibm.com/v1beta1 kind: EventManagerGateway metadata: name: <gw_instance_name> spec: filter: Severity=5 kafka: clusterName: iaf-system topicName: <topic> userName: cp4waiops-cartridge-kafka-auth namespace: "" license: accept: true logLevel: WARN objectServerPrimaryHost: <instance>-proxy.<namespace>.svc objectServerPrimaryPort: 6001 objectServerPrimaryIducHost: <instance>-objserv-agg-primary objectServerPrimaryIP: <objectServerPrimaryIP> objectServerBackupHost: <instance>-proxy.<namespace>.svc objectServerBackupPort: 6002 objectServerBackupIP: <objectServerBackupIP> objectServerBackupIducHost: <instance>-objserv-agg-backup objectServerCAConfigmapName: "" omniSecretName: <instance>-omni-secret overrideProps: "" enableTransportDebugLog: false replicationTypes: - INSERTS - UPDATES serviceAccountName: "" imagePullSecret: "ibm-entitlement-key" virtualPairName: AGG_V
The Event Manager Gateway automatically creates a service account and binds to the required Security Context Constraint (SCC).
Where:- <gw_instance_name> is what you want your instance of the Event Manager
Gateway to be called, for example,
emgateway
. - <topic> is the topic name that you provided when
you set up the Kafka connection. For example,
cp4waiops-cartridge-alerts-noi-1000-1000
. - <instance> is the release name of your Event
Manager deployment, as specified by the value used for name (OLM UI Form view), or
name in the metadata section of the noi.ibm.com_noihybrids_cr.yaml or
noi.ibm.com_nois_cr.yaml files (YAML view). If you completed a starter installation of Event Manager, then the value is
evtmanager
. - <namespace> is the project (namespace) that your
Event Manager installation is deployed in. If you completed a starter installation of Event Manager, then the value is
cp4waiops-emgr
. - <objectServerPrimaryIP> and <objectServerBackupIP>: The primary and backup cluster proxy node IP addresses. If you configured a load balancer service to expose the ObjectServer services, by Exposing ObjectServer ClusterIP services, set these values to the cluster proxy node IP address. For more information, see Identifying the proxy listening port. If you did not configure a load balancer service to expose the ObjectServer services, leave these values empty.
- objectServerPrimaryPort is the primary ObjectServer Tivoli Directory Server (TDS) port. For more information, see Connecting with the ObjectServer service. If using NodePort, set to the primary TLS Proxy NodePort number. For more information, see: Connecting with the proxy service
- objectServerBackupPort is the backup ObjectServer TDS port. If using NodePort, set to the backup TLS Proxy NodePort number.
- objectServerPrimaryHost and objectServerBackupHost are the
Common Names (CNs) of the primary and backup ObjectServer TLS certificates, for example:
<instance>-proxy.<namespace>.svc
. For more information, see: Configuring TLS encryption with Red Hat OpenShift - objectServerPrimaryIducHost and objectServerBackupIducHost are the primary and backup ObjectServer service names.
To display summary information on the ObjectServer services, run the following command:
Where <instance> is the release name of your Event Manager deployment.oc get svc <instance>-objserv-agg-primary <instance>-objserv-agg-backup <instance>-proxy
For example:$ oc get svc eventmanager-objserv-agg-primary eventmanager-objserv-agg-backup eventmanager-proxy NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE eventmanager-objserv-agg-primary ClusterIP 192.0.2.138 <none> 4100/TCP,4101/TCP 28m eventmanager-objserv-agg-backup ClusterIP 192.0.2.204 <none> 4100/TCP,4300/TCP,4101/TCP 28m eventmanager-proxy ClusterIP 192.0.2.111 <none> 6001/TCP,6002/TCP 28m
Where
eventmanager
is the name of your Event Manager deployment, as specified by the value used for name in the Operator Lifecycle Manager UI Form view, or in the metadata section of the noi.ibm.com_noihybrids_cr.yaml or noi.ibm.com_nois_cr.yaml files (YAML view). For more information, see: Connecting event sources to Netcool Operations Insight on a cloud deploymentNote: Due to the limitation in the ObjectServer, where the IDUC connection uses the internal namespace-scoped service name, the Event Manager Gateway must use the IP address of the proxy node (infrastructure node) to resolve the IDUC hostname provided by the ObjectServer. This resolution is achieved by adding ahostAliases
in the Event Manager Gateway pod configuration. There is a possibility that if there's a change in any of the IP addresses, then the Event Manager Gateway might not be able to communicate with the Event Manager ObjectServer. In this case, users must update their Event Manager Gateway custom resource. - <gw_instance_name> is what you want your instance of the Event Manager
Gateway to be called, for example,
- Run the following command to apply the contents of your YAML file to your AI Manager deployment:
Where:oc apply -f <emg.yaml> -n <namespace>
- <emg.yaml> is the YAML file that you created in the previous step.
<namespace>
is the namespace that your AI Manager installation is deployed in.
- Verify that the Event Manager Gateway is installed successfully by running the
oc get eventmanagergateway -n <namespace>
command and checking that your newly created gateway is listed in the command output.
Note: You can alter the granularity of the Event Manager Gateway logging. For more information, see:
Configuring the Event Manager Gateway logging level
Note: The default network policy for a Netcool Operations Insight on Red Hat OpenShift deployment prohibits
all network traffic from other namespaces. If you are not able to establish a connection between the
Event Manager Gateway and the ObjectServer in another namespace within the same cluster, update the
network policy. For more information, see Configuring network policy for ObjectServer ingress.