Set up FlashSystem.ai container
The FlashSystem.ai container enables the FlashSystem.ai assistant to interpret natural‑language queries and perform supported administrative tasks on IBM FlashSystem storage. The container runs entirely on customer-managed, on‑premises Kubernetes or OpenShift environment, and integrates securely with both IBM FlashSystem systems and IBM Storage Insights.
FlashSystem.ai requires an active IBM Storage Insights connection, using a Storage Insights API key and tenant ID. The container uses a secure proxy service through Storage Insights for language processing.
Environment requirements
- Secure communication
-
To ensure secure interaction between FlashSystem systems and the container:
- Use TLS‑protected communication end to end.
- Install certificates trusted by both the FlashSystem and the FlashSystem.ai container.
- Enable only the network paths necessary for FlashSystem.ai.
- The Kubernetes ingress controller must expose a valid TLS endpoint and support WebSocket connections.
- Deployment characteristics
-
- Deploy the container in a customer-managed, on‑premises Kubernetes or OpenShift environment.
- GPUs not required.
- A single container instance can support multiple FlashSystem systems.
- One container per grid is recommended.
- Connectivity
-
FlashSystem.ai uses REST API and WebSocket protocols. Your environment must allow the following connections:
Table 1. Connectivity requirements Direction Protocol Requirement FlashSystem ↔ Container - HTTPS 443
- WSS 443
- Outbound to ingress endpoint
- FlashSystem REST API
- Bi-directional communication
Container → IBM Storage Insights HTTPS - Required for AI processing
- Unidirectional communication
FlashSystem.ai does not connect to IBM Cloud services directly.
- Required credentials
-
Configure the container with the following credentials:
- From IBM Storage Insights
-
- Storage Insights API key
- Storage Insights tenant ID
For more information, see IBM Storage Insights User Access Management
- From IBM FlashSystems
-
- One administrator service account per FlashSystem
- From IBM Cloud
-
- IBM Cloud login credentials
TLS certificate configuration modes
This deployment uses two TLS layers:
- Frontend TLS: The certificate that the Kubernetes Ingress or OpenShift Route presents to external clients.
- Backend TLS: The certificate that enables TLS re-encryption between the ingress controller (or OpenShift router) and the application pod.
- Quick selection guide
-
- Choose wildcard if you already have a default frontend ingress/router certificate that covers your hostname via wildcard or explicit CN/SAN naming.
- Choose custom if you need to either create or can provide a certificate for frontend TLS.
- Choose cert-manager if you want automated front and back end certificate issuance and cert-manager is available in your target cluster.
- Wildcard
- Use Wildcard mode when your ingress controller or OpenShift router already provides a default
TLS certificate that covers the application hostname. Examples:
- A wildcard certificate such as
*.example.com - A certificate whose CN or SAN includes the exact hostname that you will use
- What happens in this mode
-
- The ingress or router default certificate is used for frontend TLS.
- You create the backend TLS secret before you install the chart.
- You must do before installation
- Create the backend TLS secret in the target namespace.
- A wildcard certificate such as
- Custom
-
Use Custom mode when you want to provide a dedicated front-end certificate for this application, or when the ingress controller does not have a suitable default certificate.
- What happens in this mode
-
- You create the frontend TLS secret.
- You create the backend TLS secret.
- Both secrets must exist before you run helm install.
- You must do before installation
-
- Create the frontend TLS secret in the target namespace.
- Create the backend TLS secret in the target namespace.
- cert-manager
-
Use cert-manager mode when your cluster uses cert-manager to issue and renew certificates automatically.
- What happens in this mode
-
- cert-manager issues the frontend certificate by using your configured Issuer or ClusterIssuer.
- The chart creates a self-signed Issuer for the backend certificate.
- You do not create TLS secrets manually before installation.
- After installation, you must wait until the certificates are ready.
- OpenShift requirement
- On OpenShift, after cert-manager issues the certificate, run
so the Route is updated with the generated certificate content.helm upgrade
Common setup
Complete these steps once before you follow any of the six installation paths.
-
- Create an IBM Cloud API key
- You need an IBM Cloud API key to authenticate to IBM Container Registry (
icr.io).- Sign in to https://cloud.ibm.com.
- Go to .
- Select Create, enter a name for the key, and save the key value immediately. IBM Cloud shows the
key only once and you cannot retrieve it later. Note:
- You use this API key in the registry login and image pull secret steps. Treat the API key like a password. Do not store it in source control or share it in tickets or chat.
- IBM Cloud requires a credit card to verify your account during account creation. FlashSystem.ai does not require payment.
-
- Pull and unpack the Helm chart
- Use
iamapikeyas the literal username. Do not replace it with your API key.
Run the remaining commands from the extracted chart directory.helm registry login icr.io --username iamapikey --password <YOUR_IBM_CLOUD_API_KEY> helm pull oci://icr.io/flashsystem-ai-release/flashsystem-ai:1.1.0 --untar cd flashsystem-ai
-
- Create the namespace or project
- Create the target namespace (Kubernetes) or project (OpenShift).
- Kubernetes
-
kubectl create namespace flashsystem-app - OpenShift
-
oc new-project flashsystem-app
-
- Create the image pull secret
- Use
iamapikeyas the literal username. Do not replace it.- Kubernetes
-
kubectl create secret docker-registry icr-io \ --docker-server=icr.io \ --docker-username=iamapikey \ --docker-password=<YOUR_IBM_CLOUD_API_KEY> \ - OpenShift
-
oc create secret docker-registry icr-io \ --docker-server=icr.io \ --docker-username=iamapikey \ --docker-password=<YOUR_IBM_CLOUD_API_KEY> \
Choose an installation path
After you select your platform and TLS certificate mode, and you complete the common setup for that platform, follow one installation section only.
Post-installation configuration
- In a browser, go to the following
URL:
https://<APPLICATION_DNS_NAME>/setup - Provide IBM Storage Insights tenant ID and API key
- Generate a management GUI key
- Register FlashSystem systems for management
Register each FlashSystem
svctask chaicontainerinfo -key <GUI_KEY> -url <APPLICATION_DNS_NAME>:443
svcinfo lsaicontainerinfo
where:- <GUI_KEY> comes from the setup page.
- <APPLICATION_DNS_NAME> is a fully qualified DNS name that resolves to the external ingress endpoint.
Using FlashSystem.ai in the management GUI
- The FlashSystem.ai icon appears in the management GUI.
- Selecting the icon opens the AI assistant panel.
- Each interaction creates a session that is associated with the logged‑in user.
- Sessions end when the page is refreshed or when the user logs out.