Chapter 23. Using the Skupper console


You can use the Skupper console to monitor and troubleshoot your application network. The console provides a visual overview of the sites, links, services, and communication metrics.

Prerequisites

  • Access to an Kubernetes cluster with Network Observer installed.
  • A site is created in a namespace

Procedure

  1. Change context to the site namespace.
  2. If you are using the OpenShift console:

    1. Navigate to Operators Installed Operators.
    2. Choose Red Hat Service Interconnect Network Observer Operator from the list of available Operators, and then click Create Instance.
  3. If you are not using the OpenShift console:

    1. Create a file named network-observer.yaml with the following CR:

      apiVersion: observability.skupper.io/v2alpha1
      kind: NetworkObserver
      metadata:
        name: networkobserver-sample
        namespace: west
      spec: {}

      Change the namespace value to match the site namespace.

  4. Apply the CR YAML:

    $ kubectl apply -f network-observer.yaml
  5. Determine the console URL:

    kubectl get --namespace west -o jsonpath="{.spec.host}" route networkobserver-sample-network-observer
  6. Navigate to the console.

23.1. Configuring the Network observer

Currently the primary purpose of the Network Observer is to provide a console for monitoring your application network. This section describes advanced configuration.

  1. Change context to a site namespace.
  2. Apply a CR to create the Network Observer instance, for example:

    apiVersion: observability.skupper.io/v2alpha1
    kind: NetworkObserver
    metadata:
      name: networkobserver-sample
      namespace: west
    spec:
      # OpenShift Route for external access
      route:
        enabled: true
        annotations:
          haproxy.router.openshift.io/timeout: 5m
    
      # OpenShift OAuth authentication
      auth:
        strategy: openshift
        openshift:
          createCookieSecret: true
          serviceAccount:
            create: true
    
      # OpenShift Service CA for TLS
      tls:
        openshiftIssued: true
    
      # Resource limits for production
      containerResources:
        networkObserver:
          requests:
            cpu: 200m
            memory: 512Mi
          limits:
            cpu: 1000m
            memory: 1Gi
        prometheus:
          requests:
            cpu: 500m
            memory: 1Gi
          limits:
            cpu: 2000m
            memory: 4Gi
    
      # Enable persistent storage for metrics
      prometheus:
        persistence:
          enabled: true
          size: 8Gi

Troubleshooting

If you are concerned about Network Observer resources, consider using standard techniques to monitor those resources. The following example demonstrates how to configure a Prometheus alert that triggers when memory usage exceeds 90% of the defined limit.

apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule
metadata:
  name: network-observer-memory-alert
  namespace: west
spec:
  groups:
  - name: network-observer.rules
    rules:
    - alert: NetworkObserverHighMemory
      expr: |
        (container_memory_working_set_bytes{namespace="west", container="network-observer"}
        /
        kube_pod_container_resource_limits{namespace="west", container="network-observer", resource="memory"}) > 0.9
      for: 5m
      labels:
        severity: warning
      annotations:
        summary: "Network Observer pod in namespace {{ $labels.namespace }} is using > 90% of its memory limit."
        description: "Pod {{ $labels.pod }} is currently using {{ $value | humanizePercentage }} of its memory limit."
Red Hat logoGithubredditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat Documentation

Legal Notice

Theme

© 2026 Red Hat
Back to top