Page tree

This page describes how to install the Infraviz (Machine Agent and Network Agent) using Splunk AppDynamics Openshift Operatorhub Bundle which is an alternative to Install Infrastructure Visibility with Kubernetes CLI.

Splunk AppDynamics OpenShift OperatorHub Bundle is available at RedHat Catalog

Requirements

Before you begin, verify that you have:

  • Openshift Cluster environment

  • Met these requirements: Cluster Agent Requirements and Supported Environments.
  • If Server Visibility is required, sufficient Server Visibility licenses based on the number of worker nodes in your cluster. 
  • Permissions to view servers in the Splunk AppDynamics Controller.

Installation Procedure

  1. Create a namespace for appdynamics in your cluster:

    kubectl create namespace appdynamics
  2. Install Splunk AppDynamics Operator:

    1. Go to your openshift cluster console
    2. Go to Operators > OperatorHub 

    3. Search with the appdynamics filter

    4. Click Install

  3. Update the infraviz.yaml file to set the controllerUrlaccount, and globalAccount values based on the information from the Controller's License page.
    To enable Server Visibility, set enableServerViz to true (shown in the infraviz.yaml configuration example).
    To deploy a Machine Agent without Server Visibility enabled, set enableServerViz to false.

    infraviz.yaml Configuration File with Server Visibility Enabled
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: appdynamics-infraviz
      namespace: appdynamics
    ---
    apiVersion: cluster.appdynamics.com/v1alpha1
    kind: InfraViz
    metadata:
      name: appdynamics-infraviz
      namespace: appdynamics
    spec:
      controllerUrl: "https://mycontroller.saas.appdynamics.com"
      image: "docker.io/appdynamics/machine-agent:latest"
      account: "<your-account-name>"
      globalAccount: "<your-global-account-name>"
      enableContainerHostId: true
      enableServerViz: true
      resources:
        limits:
          cpu: 500m
          memory: "1G"
        requests:
          cpu: 200m
          memory: "800M"

    The infraviz.yaml configuration file example deploys a daemonset that runs a single pod per node in the cluster. Each pod runs a single container from where the Machine Agent, or Server Visibility Agent runs. 

  4. To enable the Network Visibility Agent to run in a second container in the same pod, add the netVizImage and netVizPort keys and values as shown in this configuration file example:

    infraviz.yaml Configuration File with Second Container in a Single Pod
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: appdynamics-infraviz
      namespace: appdynamics
    ---
    apiVersion: cluster.appdynamics.com/v1alpha1
    kind: InfraViz
    metadata:
      name: appdynamics-infraviz
      namespace: appdynamics
    spec:
      controllerUrl: "https://mycontroller.saas.appdynamics.com"
      image: "docker.io/appdynamics/machine-agent:latest"
      account: "<your-account-name>"
      enableContainerHostId: true
      enableServerViz: true
      netVizImage: appdynamics/machine-agent-netviz:latest
      netVizPort: 3892
      resources:
        limits:
          cpu: 500m
          memory: "1G"
        requests:
          cpu: 200m
          memory: "800M"
  5. Use kubectl to deploy infraviz.yaml 

    For environments where Kubernetes PodSecurityPolicies block certain pod security context configuration, such as privileged pods, you must deploy the infraviz-pod-security-policy.yaml before editing the infraviz.yaml file.

    For environments where OpenShift SecurityContextConstraints block certain pod security context configuration, such as privileged pods, you must deploy the infraviz-security-context-constraint-openshift.yaml before editing the infraviz.yaml file.

    kubectl create -f infraviz.yaml
    kubectl create -f infraviz-pod-security-policy.yaml
    kubectl create -f infraviz.yaml
    kubectl create -f infraviz-security-context-constraint-openshift.yaml
    kubectl create -f infraviz.yaml
  6. Check that the operator and infraviz pods are running. Also, Check Catalogsource, Subscription and Clusterserviceversion are created:

    # Cisco AppDynamics Operator pod status
    kubectl get pods -n appdynamics
    
    # Infraviz pod status
    kubectl get pods -n appdynamics
    
    # catalogsources should be created
    kubectl get catalogsources -n appdynamics
    
    # subscriptions should be created
    kubectl get subscriptions -n appdynamics
    
    # ClusterServiceVersion should be created
    kubectl get clusterserviceversion -n appdynamics
  7. To uninstall Infraviz and Splunk AppDynamics Operator:

    1. Delete the Infraviz:

      kubectl delete -f infraviz.yaml
    2. Delete Splunk AppDynamics Operator:

      1. Go to your OpenShift cluster console

      2. Go to Operators > Installed Operators 

      3. Click Splunk AppDynamics Operator for Kubernetes > Actions > Uninstall Operator 

Check Infraviz Configuration Settings here.

  • No labels