Observability

Container Storage Modules (CSM) for Observability Operator deployment
  1. Verify the Cert-Manager is deployed and configured on the OpenShift Cluster. Please review the Red Hat documentation for the procedure.

  1. Verify the user workload monitoring is enabled and configured on the OpenShift Cluster. Please review Red Hat documentation for the procedure to configure user workload monitoring on the OpenShift Cluster.

  1. Create a Project for deploying Observability Module

    Use this command to create new project. You must use the project name as karavi

    oc new-project karavi 
    
  2. Enable Observability module in the CSM

    Use this command to create the ContainerStorageModule custom resource with Observability enabled.

    oc create -f csm-isilon.yaml
    

    Example:

    cat <<EOF> csm-isilon.yaml
    apiVersion: storage.dell.com/v1
    kind: ContainerStorageModule
    metadata:
      name: isilon
      namespace: isilon
    spec:
      driver:
        csiDriverType: "powerscale"
        configVersion: Default text if no valid parameter is passed.
      module:
      - name: observability
        enabled: true
        components:
        - name: topology
          enabled: true
        - name: otel-collector
          enabled: true
        - name: metrics-powerscale
          enabled: true
    EOF
    

    Verify the Observability Pods are created.

    oc get pod -n karavi
    
    NAME                                         READY   STATUS    RESTARTS   AGE
    karavi-metrics-powerscale-69855dbdd5-5mshq   1/1     Running   0          2m54s
    karavi-topology-b7c9f6fc7-zk7l8              1/1     Running   0          2m55s
    otel-collector-b496d8c4d-gp6zz               2/2     Running   0          2m55s 
    

    Verify the Observability Services.

    oc get svc -n karavi
    NAME                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
    karavi-metrics-powerscale      ClusterIP   172.30.169.86    <none>        2222/TCP             3m29s
    karavi-topology                ClusterIP   172.30.66.155    <none>        8443/TCP             3m29s
    otel-collector                 ClusterIP   172.30.127.237   <none>        55680/TCP,8443/TCP   3m29s 
    

  1. Create Service Monitor to scrap the Observability module by the OpenShift Observability.

    Use this command to create the ServiceMonitor.

    oc apply -f smon-otel-collector.yaml
    

    Example:

    cat <<EOF> smon-otel-collector.yaml
    apiVersion: monitoring.coreos.com/v1
    kind: ServiceMonitor
    metadata:
      name: otel-collector
      namespace: karavi
    spec:
      endpoints:
      - path: /metrics
        port: exporter-https
        scheme: https
        tlsConfig:
          insecureSkipVerify: true
      selector:
        matchLabels:
          app.kubernetes.io/instance: karavi-observability
          app.kubernetes.io/name: otel-collector 
     EOF
    

    Verify the ServiceMonitor is created.

    oc get smon -n karavi
    NAME             AGE
    otel-collector   44h 
    
  2. Verify the PowerFlex metrics are visible in the OpenShift Console.

    On the OpenShift Console, navigate to Observer and then Metrics, search for PowerFlex metric.