Skip to content

IBM Turbonomic Evaluation Edition and CP4Data: Custom Resources for Setup

Eva Tuczai edited this page Aug 26, 2024 · 9 revisions

IBM Turbonomic For OpenShift and Cloud Pak for Data: Custom Resources for setup

This wiki page contains supporting information for IBM Cloud Pak for Data customers who wish to take advantage of an Evaluation Edition of IBM Turbonomic. These custom resource examples in this article are to be used along with the setup guide located here.

Turbonomic Server Installation Resources

Follow the steps to deploy the server here.

Important: Please use v8.11.6 or higher. If you are upgrading, please upgrade your operator first, then upgrade. Version 8.11.6 uses operator 42.52. Refer to IBM Documentation here for latest product and operator version. If you are upgrading, then you must modify your CR to get embedded reporting to properly work. Use the CR below.

For the XL Custom Resource, copy the contents here, and apply in the YAML portion of the Turbonomic Server Instance (aka XL CR):

apiVersion: charts.helm.k8s.io/v1
kind: Xl
metadata:
  name: cp4d-evaluation
  namespace: turbonomic
spec:
  global:
    customImageNames: false
    # Supply private repo is needed
    repository: icr.io/cpopen/turbonomic
    # Obtain the "YOUR-NS-UID" from the Namespace's sa.scc.uid-range - numerator
    securityContext:
      fsGroup: YOUR-NS-UID
    # Provide a storage class name that provides the capabilities required
    storageClassName: YOUR-SC
    # Provide the latest product version tag.  Refer to documentation here 
    # for operator and product version compatibility 
    # https://www.ibm.com/docs/en/tarm/latest?topic=notes-configuration-requirements
    tag: 8.13.3
    telemetry:
      automatic:
        enabled: false

  nginx:
    httpsRedirect: false
    nginxIsPrimaryIngress: false
  nginxingress:
    enabled: true
  openshiftingress:
    enabled: true
  suspend:
    enabled: false
  server-power-modeler:
    enabled: false
  prometheus:
    enabled: false
  aws:
    enabled: true
  azure:
    enabled: true
  gcp:
    enabled: true
  vcenter:
    enabled: true
  vcenter-browsing:
    enabled: false
  instana:
    enabled: true

  grafana:
    adminPassword: turbo123
    enabled: true
    grafana.ini:
      database:
        password: turbo123
        type: postgres
  extractor:
    enabled: true
  reporting:
    enabled: true
  properties:
    extractor:
      grafanaAdminPassword: turbo123
  postgresql:
    persistence:
      size: 1000Gi
    securityContext:
      runAsUser: YOUR-NS-UID
    volumePermissions:
      enabled: false
      securityContext:
        runAsUser: YOUR-NS-UID
  timescaledb:
    enabled: true

Kubeturbo Client Installation Resources

Follow the steps to deploy the client here. For the Kubeturbo Custom Resource, copy the contents here, and apply in the YAML portion of the Kubeturbo Instance (aka Kubeturbo CR):

apiVersion: charts.helm.k8s.io/v1
kind: Kubeturbo
metadata:
  name: kubeturbo-cp4d-evaluation
spec:

  # Supply your Turbo server version and address, same as UI URL
  serverMeta:
    version: "8.10"
    turboServer: https://Turbo_server_URL

  # URL format for Authenticated and Non-Authenticated
  #   proxy: "http://username:password@proxyserver:proxyport or http://proxyserver:proxyport"  

  # Turbo server user and password can be provided via an opaque type secret created separately 
  # or optionally specify username and password below
  # The opsManagerUserName requires Turbo administrator or site administrator role
  # For a secret, the default secret name KT looks for first is turbonomic-credentials
  # Recommendation is to use the k8s secret method
  #restAPIConfig:
  #  turbonomicCredentialsSecretName: "turbonomic-credentials"
  #  opsManagerUserName: Turbo_username
  #  opsManagerPassword: Turbo_password

  # Configurations to register probe with Turbo Server
  #sdkProtocolConfig:
  #  registrationTimeoutSec: 300
  #  restartOnRegistrationTimeout: false

  # Uncomment out lines to configure HA Node to ESX policies by node role. Default is master
  # Add more roles using format "\"foo\"\,\"bar\""
  HANodeConfig:
    nodeRoles: "\"master\""

  # Supply a targetName for user friendly identification of the k8s cluster
  targetConfig:
    targetName: CP4D-Cluster

  # Uncomment next lines to use dynamic logging level
  # Changing this value does not require restart of Kubeturbo but takes about 1 minute to take effect
  # logging:
  #   level: 2

  # Uncomment next 3 lines If needed specify your private repository and image tag for kubeturbo and cpu job
  #image:
  #  repository: docker.artifactory.repo.com/cpopen/turbonomic/kubeturbo
  #  cpufreqgetterRepository: docker.artifactory.repo.com/ubi8/ubi-minimal
  # Uncomment to specify a pull secret for the kubeturbo and cpufreqgetter container images 
  #  imagePullSecret: default-generated-pull-secret
  # Uncomment if you want to use a specific Kubeturbo version
  # Recommend that you stay with the default version of the Kubeturbo Operator.
  #  tag: 8.11.6

  # Uncomment next lines to use dynamic logging level
  # Changing this value does not require restart of Kubeturbo but takes about 1 minute to take effect
  # logging:
  #   level: 2
   nodePoolSize:
     min: 1
     max: 100

  # Allow move execution in OCP environments
  args:
    sccsupport: "*"
  # Uncomment line below if you do not want to run job   
  #  busyboxExcludeNodeLabels: "kubernetes.io/os=linux"

  # Uncomment out to specify kubeturbo container specifications when needed (quotas set on ns)
  #resources:
  #  limits:
  #    memory: 4Gi
  #    cpu: "2"
  #  requests:
  #    memory: 512Mi
  #    cpu: "1"

Contact and Support

As a user of this free evaluation edition, you can leverage the following resources for you:

  1. IBM Turbonomic Community
  2. Release Notes from the latest edition available from the online documentation link

Kubeturbo

Introduction
  1. What's new
  2. Supported Platforms
Kubeturbo Use Cases
  1. Overview
  2. Getting Started
  3. Full Stack Management
  4. Optimized Vertical Scaling
  5. Effective Cluster Management
  6. Intelligent SLO Scaling
  7. Proactive Rescheduling
  8. Better Cost Management
  9. GitOps Integration
  10. Observability and Reporting
Kubeturbo Deployment
  1. Deployment Options Overview
  2. Prerequisites
  3. Turbonomic Server Credentials
  4. Deployment by Helm Chart
    a. Updating Kubeturbo image
  5. Deployment by Yaml
    a. Updating Kubeturbo image
  6. Deployment by Operator
    a. Updating Kubeturbo image
  7. Deployment by Red Hat OpenShift OperatorHub
    a. Updating Kubeturbo image
Kubeturbo Config Details and Custom Configurations
  1. Turbonomic Server Credentials
  2. Working with a Private Repo
  3. Node Roles: Control Suspend and HA Placement
  4. CPU Frequency Getter Job Details
  5. Logging
  6. Actions and Special Cases
Actions and how to leverage them
  1. Overview
  2. Resizing or Vertical Scaling of Containerized Workloads
    a. DeploymentConfigs with manual triggers in OpenShift Environments
  3. Node Provision and Suspend (Cluster Scaling)
  4. SLO Horizontal Scaling
  5. Turbonomic Pod Moves (continuous rescheduling)
  6. Pod move action technical details
    a. Red Hat Openshift Environments
    b. Pods with PVs
IBM Cloud Pak for Data & Kubeturbo:Evaluation Edition
Troubleshooting
  1. Startup and Connectivity Issues
  2. KubeTurbo Health Notification
  3. Logging: kubeturbo log collection and configuration options
  4. Startup or Validation Issues
  5. Stitching Issues
  6. Data Collection Issues
  7. Collect data for investigating Kubernetes deployment issue
  8. Changes to Cluster Role Names and Cluster Role Binding Names
Kubeturbo and Server version mapping
  1. Turbonomic - Kubeturbo version mappings
Clone this wiki locally