Table of Contents generated with DocToc
- Deploy Cloud Pak for Watson AIOps demo environment in one click
- About x-small profile
- Prepare environment
- Install Cloud Pak for Watson AIOps Demo Environment
- Access Environment
Deploy Cloud Pak for Watson AIOps demo environment in one click¶
Learn how to deploy an IBM Cloud Pak for Watson AIOps demo environment using GitOps in one click.
- Deploy Cloud Pak for Watson AIOps using custom profile
x-small
in a sandbox with restricted resources. - Set up an integration with Humio, Kafka, Kubernetes, and more as postinstallation steps automatically.
- Deploy Robot Shop as a sample application, and other dependencies on the same cluster where Cloud Pak for Watson AIOps runs.
This installation scenario is tested and verified against Cloud Pak for Watson AIOps 3.2 and 3.3.
About x-small profile¶
The x-small
profile is not an official profile that is supported by Cloud Pak for Watson AIOps at the momentm as it only covers AI Manager and does not include Event Manager. As an experimental feature, you can use it to set up demonstrations, proof-of-concept deployments, or development environments.
Although in this installation scenario the x-small
profile is used, this approach also supports a Cloud Pak for Watson AIOps installation in a production environment using official profiles such as small
or large
.
Prepare environment¶
Prepare a Red Hat Red Hat OpenShift cluster as your demonstration environment. If you use the x-small
profile, it is recommended to set up a cluster with three worker nodes where each node has 16 cores CPU and 32 GB memory.
Before you start to install the demonstration environment, make sure that you have installed Red Hat Red Hat OpenShift GitOps (Argo CD) on the cluster. To install Red Hat OpenShift GitOps, refer to Installing OpenShift GitOps.
These instructions use Argo CD to install the following applications in one go:
Application | Required | Description |
---|---|---|
Ceph | No | The storage that is used by Cloud Pak for Watson AIOps and other applications. It can be skipped if you already have storage solution available on your target cluster. |
Cloud Pak for Watson AIOps | Yes | IBM Cloud Pak for Watson AIOps. |
Robot Shop | No | The sample application used to demonstrate Cloud Pak for Watson AIOps features. |
Humio & Fluent Bit | No | The log collector that is used by Cloud Pak for Watson AIOps for log anomaly detecting. |
Istio | No | The service mesh used by sample application for fault injection. |
NOTE: This example uses Ceph storage for demonstration purpose. You must use a supported storage. For more information about supported storage, see Storage Considerations.
Install Cloud Pak for Watson AIOps Demo Environment¶
Log in to Argo CD, then start the installation by clicking the NEW APP
button on upper left to create an Argo CD App.
Complete the form using the suggested field values listed in following table:
Field | Value |
---|---|
Application Name | cp4waiops-demo |
Project | default |
Sync Policy | Automatic |
Repository URL | https://github.com/IBM/cp4waiops-gitops |
Revision | HEAD |
Path | config/all-in-one |
Cluster URL | https://kubernetes.default.svc |
Namespace | openshift-gitops |
NOTE:
NOTE: If you use a repository that is forked from the official Cloud Pak for Watson AIOps GitOps repository or a different branch, then you must update the values of the Repository URL
and Revision
parameters to match your repository and branch. For example, if you use https://github.com/<myaccount>/cp4waiops-gitops
and dev
branch, then these two parameters must be changed.
You can also update the following parameters to customize the installation.
Parameter | Type | Default Value | Description |
---|---|---|---|
argocd.cluster | string | openshift | The type of the cluster that Argo CD runs on, valid values include: openshift, kubernetes. |
argocd.allowLocalDeploy | bool | true | Allow apps to be deployed on the same cluster where Argo CD runs. |
rookceph.enabled | bool | true | Specify whether or not to install Ceph as storage used by Cloud Pak for Watson AIOps. |
cp4waiops.version | string | v3.3 | Specify the version of Cloud Pak for Watson AIOps, e.g.: v3.2, v3.3. |
cp4waiops.profile | string | small | The Cloud Pak for Watson AIOps deployment profile, for example: x-small, small, large. |
cp4waiops.dockerUsername | string | cp | The username of image registry used to pull images. |
cp4waiops.dockerPassword | string | REPLACE_IT | The password of image registry used to pull images. |
cp4waiops.aiManager.enabled | bool | true | Specify whether to install AI Manager. |
cp4waiops.aiManager.namespace | string | cp4waiops | The namespace where AI Manager is installed. |
cp4waiops.aiManager.instanceName | string | aiops-installation | The instance name of AI Manager. |
cp4waiops.eventManager.enabled | bool | true | Specify whether to install Event Manager. |
cp4waiops.eventManager.namespace | string | noi | The namespace where Event Manager is installed. |
cp4waiops.eventManager.clusterDomain | string | REPLACE_IT | The domain name of the cluster where Event Manager is installed. |
NOTE:
cp4waiops.dockerPassword
This is the entitlement key that you can copy from My IBM Container Software Library.cp4waiops.profile
The profilex-small
is only suitable for demonstrations and proof-of-concept deployments. Production environments must use asmall
orlarge
profile.cp4waiops.eventManager.enabled
This must be false if you have a value ofx-small
forcp4waiops.profile
, as this profile size is only suitable for deployments of AI Manager, and not for deployments of AI Manager and Event Manager.cp4waiops.eventManager.clusterDomain
This is the domain name of the cluster where Event Manager is installed. Use a fully qualified domain name (FQDN). For example,apps.clustername.abc.xyz.com
.
The following installation parameters are not commonly used, so they are invisible when you create the Argo CD App from UI. But you can add them when completing the form in HELM
> VALUES
field.
Parameter | Type | Default Value | Description |
---|---|---|---|
cp4waiops.setup.enabled | bool | false | Set up Cloud Pak for Watson AIOps after it is installed. |
cp4waiops.setup.humio.enabled | bool | true | Setup Humio integration. |
cp4waiops.setup.kafka.enabled | bool | true | Setup Kafka integration. |
cp4waiops.setup.kubernetes.enabled | bool | true | Setup Kubernetes integration. |
robotshop.enabled | bool | false | Specify whether to install Robot Shop. |
humio.enabled | bool | false | Specify whether to install Humio. |
istio.enabled | bool | false | Specify whether to install Istio. |
For example, adding the following YAML snippet to HELM
> VALUES
field enables Robot Shop, Humio, and Istio:
robotshop:
enabled: true
humio:
enabled: true
istio:
enabled: true
When the form is completed, click CREATE
to start the installation. Whilst waiting for the install to complete, you will see more Apps being rolled out gradually from the Argo CD UI. Each App represents a specific application to be deployed and is managed by the root level App.
Depending on the installation parameters that you specified, it usually takes one hour to finish the installation of Cloud Pak for Watson AIOps, and ten minutes to finish all other application deployments, including Ceph, Robot Shop, Humio, Istio, and more. When the Argo CD Apps turn green, (Synced
and Healthy
) then the installation of the Cloud Pak for Watson AIOps demonstration environment is finished.
Access Environment¶
Cloud Pak for Watson AIOps¶
To access Cloud Pak for Watson AIOps, you can run following command to get the URL. Here aiops-installation
is the Cloud Pak for Watson AIOps instance name that you specified using the installation parameter cp4waiops.instanceName
when creating the Argo CD App.
kubectl -n cp4waiops get installation aiops-installation -o jsonpath='{.status.locations.cloudPakUiUrl}{"\n"}'
To get the password for user admin
, run following command:
kubectl -n ibm-common-services get secret platform-auth-idp-credentials -o jsonpath='{.data.admin_password}' | base64 -d
Use this information to log in to the Cloud Pak for Watson AIOps UI.
If you set the installation parameter cp4waiops.setup
to true
, then you have pre-configured an integration with Humio, Kafka, and Kubernetes in. To verify this, go to Define
> Data and tool connections
to see these integrations displayed as follows:
Robot Shop¶
To access Robot Shop, run the following command to get the URL:
kubectl -n istio-system get route istio-ingressgateway -o jsonpath='{"http://"}{.spec.host}{"\n"}'
Humio¶
To access Humio, run the following command to get the URL:
kubectl -n humio-logging get route humio-humio-core -o jsonpath='{"http://"}{.spec.host}{"\n"}'
To get the password for user developer
, run following command:
kubectl -n humio-logging get secret developer-user-password -o jsonpath="{.data.password}" | base64 -d
Use this information to log in to the Humio UI. After logging in, you can see a pre-defined repository named robot-shop
for Robot Shop:
Click the repository to see the live logs captured by Humio from Robot Shop: