### Example Installation Verification Output (Shell) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=client-secure-deployment-ova This snippet provides an example of the expected output after running `kubectl get pods` to verify the Turbonomic Secure Client installation. It lists sample pods that should be in a 'Running' state. Note that some probes may take time to become ready. ```shell mediation-netapp-9f67f74cf-gplsk 0/1 Running 0 16m mediation-pure-6ddc54f645-6s72b 1/1 Running 0 16m mediation-ucs-54586b7889-5lrxd 0/1 Running 0 16m ... ``` -------------------------------- ### Confirm Network Setup (Shell) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=client-secure-deployment-ova This snippet represents the interactive prompt encountered during the Turbonomic Secure Client installation, specifically asking to confirm network setup. Responding with 'y' indicates that the ipsetup script has been run. ```shell ############################################################### Initializing Kubernetes ############################################################### Have you run the ipsetup script to setup networking yet? [y/n] y ``` -------------------------------- ### Install Ops Agent for Linux Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=cloud-google-monitored-resources This script installs and configures the Ops Agent on Linux instances. It fetches the repository setup script and then executes it with the '--also-install' flag. This is recommended for collecting memory metrics on MIGs. ```bash curl -sSO https://dl.google.com/cloudagents/add-google-cloud-ops-agent-repo.sh sudo bash add-google-cloud-ops-agent-repo.sh --also-install ``` -------------------------------- ### Kubeturbo Pod Running Example Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=clusters-deploying-kubeturbo-through-operator Example output of the `kubectl get pods -n turbo` command, indicating a successfully deployed and running Kubeturbo pod. The `READY` and `STATUS` columns should show `1/1` and `Running`, respectively. ```bash NAME READY STATUS RESTARTS AGE kubeturbo-asdf1234asd3 1/1 Running 0 37m ``` -------------------------------- ### Example Kubeturbo Pod Status Output Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=ckc-deploying-kubeturbo-through-helm-chart-in-helm-chart-repository This is an example of the output from 'kubectl get pods -n turbo'. It confirms that the Kubeturbo pod is deployed and in a 'Running' state. ```text NAME READY STATUS RESTARTS AGEkubeturbo-asdf1234asd3 1/1 Running 0 37m ``` -------------------------------- ### MySQL Server Initialization File Example Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=mysql-enabling-user-permissions-server This example demonstrates how to configure MySQL to automatically apply SQL statements on server startup. By placing the desired SQL commands in a file (e.g., `MyInit.txt`), you can ensure that settings like performance schema configurations are applied consistently after each server restart. ```shell --init-file=MyInit.txt ``` -------------------------------- ### Response DTO Example - GET /api/v3/users Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=reference-getting-started-turbonomic-rest-api This section illustrates a typical Data Transfer Object (DTO) returned by the Turbonomic REST API when retrieving user information. DTOs are arrays of key-value pairs describing the requested data. ```APIDOC ## GET /api/v3/users ### Description Retrieves a list of users defined in the Turbonomic installation. ### Method GET ### Endpoint /api/v3/users ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **links** (array) - Contains a link to the user account. - **uuid** (string) - The unique identifier for the user. - **displayName** (string) - The display name of the user. - **username** (string) - The username for login. - **roleUuid** (string) - The unique identifier for the user's role. - **roleName** (string) - The name of the user's role. - **loginProvider** (string) - The method used for login (e.g., 'Local'). - **type** (string) - The type of user account. - **showSharedUserSC** (boolean) - Indicates if shared user settings should be shown. #### Response Example ```json [ { "links": [ { "rel": "self", "href": "https://10.10.10.10/api/v3/users/_4T_7kwY-Ed-WUKbEYSVIDw" } ], "uuid": "_4T_7kwY-Ed-WUKbEYSVIDw", "displayName": "Administrator User", "username": "administrator", "roleUuid": "_4UAioQY-Ed-WUKbEYSVIDw", "roleName": "administrator", "loginProvider": "Local", "type": "DedicatedCustomer", "showSharedUserSC": false } ] ``` ``` -------------------------------- ### POST Microsoft.Sql/managedInstances/start/action Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=azure-reference-permissions Starts (resumes) a SQL Managed Instance. ```APIDOC ## POST Microsoft.Sql/managedInstances/start/action ### Description Starts (resumes) a SQL Managed Instance. ### Method POST ### Endpoint /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/start ### Parameters #### Path Parameters - **subscriptionId** (string) - Required - The ID of the target subscription. - **resourceGroupName** (string) - Required - The name of the resource group. - **managedInstanceName** (string) - Required - The name of the managed instance. ### Request Example ```json { "example": "N/A" } ``` ### Response #### Success Response (200) - No content #### Response Example ```json { "example": "N/A" } ``` ``` -------------------------------- ### Turbonomic REST API - URI Structure Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=reference-getting-started-turbonomic-rest-api Explains the base structure of URIs for accessing Turbonomic REST API resources and provides an example for listing users. ```APIDOC ## URI structure To use the Turbonomic REST API, your client will make HTTP requests to specific REST resources. The Turbonomic REST API supports the standard HTTP methods: * `GET`: Get lists of entities or data objects, get individual items. * `POST`: Create new objects in the Turbonomic environment, or specify filters for certain queries. * `PUT`: Incrementally modify existing entities or objects. * `DELETE`: Delete entities or objects. The base URI structure for a Turbonomic REST API resource is: ``` https:///api// ``` For example, to list the users in your installation: ``` https://111.222.33.44/api/v3/users ``` ``` -------------------------------- ### Get Entity Constraints (API Request Example) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=endpoint-entities-requests This is an example API GET request to retrieve placement constraints for a specific entity. It targets the /api/v3/entities/{entityId}/constraints endpoint. ```shell GET https://10.10.10.10/api/v3/entities/420b1eeb-6190-a9d2-6436-4327ad3ac073/constraints ``` -------------------------------- ### Execute Client Installation Script (Shell) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=client-secure-deployment-ova This snippet shows the command to execute the client installation script. It is a prerequisite for both OLM and non-OLM installation methods. Ensure you have SSH access to your secure client instance to run this command. ```shell /opt/local/bin/t8cClientInstall.sh ``` -------------------------------- ### Making an authenticated API request with Python Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=reference-getting-started-turbonomic-rest-api This Python snippet demonstrates how to make an authenticated GET request to the Turbonomic API. It utilizes the `requests` library, passing the authentication token obtained from a previous login as a cookie in the request headers. The `verify=False` parameter is used for simplicity in this example, but should be handled securely in production. ```python import requests token = "your_auth_token_here" headers = {'cookie': token} r = requests.get('https://10.10.123.456/api/v3/targets/specs', headers=headers, verify=False, stream=True) ``` -------------------------------- ### Example of Retrieving Specific Kubeturbo Pod Logs Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=ckc-deploying-kubeturbo-through-helm-chart-in-helm-chart-repository This is an example of how to retrieve logs for a specific Kubeturbo pod by providing its ID. This command is useful for troubleshooting deployment issues. ```bash kubectl logs kubeturbo-asdf1234asd3 -n turbo ``` -------------------------------- ### Get Scenarios API Request Example Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=endpoint-scenarios-requests Example of how to make a GET request to the /scenarios endpoint of the Turbonomic API. This request retrieves scenario data, with the 'show_all' parameter controlling the scope of the returned information. ```text GET https://10.10.10.10/api/v3/scenarios?show_all=false ``` -------------------------------- ### Instance Management Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=cloud-reference-google-permissions APIs for starting and stopping virtual machine instances. ```APIDOC ## compute.instances.start ### Description Restarts a virtual machine as part of cleanup operations during resize actions. ### Method POST ### Endpoint /compute/instances/{instanceName}/start ### Parameters #### Path Parameters - **instanceName** (string) - Required - The name of the virtual machine instance. #### Query Parameters None #### Request Body None ### Request Example (No request body for POST requests) ### Response #### Success Response (200) - **status** (string) - Indicates the status of the start operation. #### Response Example ```json { "status": "starting" } ``` --- ## compute.instances.stop ### Description Stops a virtual machine before resizing a disk. ### Method POST ### Endpoint /compute/instances/{instanceName}/stop ### Parameters #### Path Parameters - **instanceName** (string) - Required - The name of the virtual machine instance. #### Query Parameters None #### Request Body None ### Request Example (No request body for POST requests) ### Response #### Success Response (200) - **status** (string) - Indicates the status of the stop operation. #### Response Example ```json { "status": "stopping" } ``` ``` -------------------------------- ### Run ipsetup Script for Static IP Configuration Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=client-secure-deployment-ova This command executes the `ipsetup` script to configure a static IP address for the Turbonomic VM. The script prompts for hostname, IP address, network mask, gateway, DNS servers, and proxy configuration. Ensure all required fields are provided to avoid installation failures or reachability issues. ```shell sudo /opt/local/bin/ipsetup ``` -------------------------------- ### Get a Single Action for an Entity (REST API Example) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=endpoint-entities-requests This example shows how to retrieve a specific action for an entity by including the action UUID in the GET request to the /api/v3/entities/{entity_Uuid}/actions/{action_Uuid} endpoint. The response is a single ActionApiDTO object. ```HTTP GET https://10.10.10.10/api/v3/entities/420b1eeb-6190-a9d2-6436-4327ad3ac073/actions/9223304219064809841 ``` -------------------------------- ### Get Actions for an Entity (REST API Example) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=endpoint-entities-requests This example demonstrates how to fetch a list of actions for a given entity using a GET request to the /api/v3/entities/{entity_Uuid}/actions endpoint. It shows how to specify sorting and ordering parameters. The response is a JSON array of ActionApiDTO objects. ```HTTP GET https://10.10.10.10/api/v3/entities/420b1eeb-6190-a9d2-6436-4327ad3ac073/actions?order_by=severity&ascending=true ``` -------------------------------- ### Turbonomic REST API Base URI Structure Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=reference-getting-started-turbonomic-rest-api This is the base URI structure for accessing resources via the Turbonomic REST API. It follows a standard pattern of protocol, hostname, API version, and the specific resource name. An example is provided for listing users. ```http https:///api// ``` ```http https://111.222.33.44/api/v3/users ``` -------------------------------- ### Run Turbonomic Installation Script (Bash) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=turbonomic-reference-migrating-from-centos-rocky-linux-ova Executes the Turbonomic installation script `t8cInstall.sh` to begin the installation process. ```bash t8cInstall.sh ``` -------------------------------- ### Get Entity Supply Chain API Request Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=endpoint-entities-requests This is an example of an HTTP GET request to retrieve the supply chain for a specific entity. It demonstrates how to use query parameters to filter the results by entity types, detail level, and health information. The example assumes a Turbonomic API endpoint and a specific entity UUID. ```HTTP GET https://10.10.10.10/api/v3/entities/420b1eeb-6190-a9d2-6436-4327ad3ac073/supplychains?types=VirtualMachine&types=Storage&types=DiskArray&detail_type=compact&health=true ``` -------------------------------- ### Example Turbonomic User DTO (JSON) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=reference-getting-started-turbonomic-rest-api This JSON object represents a typical Data Transfer Object (DTO) returned by the Turbonomic REST API when querying user data. It includes details such as user links, UUID, display name, username, role information, login provider, and user type. ```json [ { "links": [ { "rel": "self", "href": "https://10.10.10.10/api/v3/users/_4T_7kwY-Ed-WUKbEYSVIDw" } ], "uuid": "_4T_7kwY-Ed-WUKbEYSVIDw", "displayName": "Administrator User", "username": "administrator", "roleUuid": "_4UAioQY-Ed-WUKbEYSVIDw", "roleName": "administrator", "loginProvider": "Local", "type": "DedicatedCustomer", "showSharedUserSC": false } ] ``` -------------------------------- ### GET /targets and GET /probes - JBoss Target Removal Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=reference-api-change-history The JBoss target is no longer supported in API responses for the `/targets` and `/probes` endpoints starting from version 8.15.4. ```APIDOC ## GET /targets and GET /probes - JBoss Target Removal ### Description Starting with version 8.15.4, API responses for the `/targets` and `/probes` endpoints no longer include JBoss target information. ### Method GET ### Endpoint /targets /probes ### Response #### Success Response (200) - The response will not contain any information related to JBoss targets. ### Response Example (showing absence of JBoss target) ```json { "targetUuid": "some-target-uuid", "name": "TargetName" } ``` ``` -------------------------------- ### Verify Successful Installation (Shell) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=client-secure-deployment-ova This snippet demonstrates the command used to verify the Turbonomic Secure Client installation by listing running pods. A successful installation should show various 'mediation' pods in a running state. ```shell kubectl get pods ``` -------------------------------- ### Create Test File (Bash) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=turbonomic-reference-migrating-from-centos-rocky-linux-ova Creates an empty file named `x` within the `/opt/backup` directory to test file permissions. ```bash touch /opt/backup/x ``` -------------------------------- ### GET Request for Market Supply Chain (API Example) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=endpoint-markets-requests This snippet demonstrates an example GET request to the Turbonomic API for fetching supply chain data. It utilizes query parameters to filter results by entity types, states, environment type, detail level, and health. ```HTTP GET https://10.10.10.10/api/v3/markets/Market/supplychains?types=VirtualMachine&entity_states=RESOURCE_ALLOCATION&entity_states=ACTIVE&environment_type=ONPREM&detail_type=aspects&health=true ``` -------------------------------- ### Install Kubeturbo Helm Chart Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=ckc-deploying-kubeturbo-through-helm-chart-in-helm-chart-repository Installs the Kubeturbo chart from the turbonomic repository. It specifies the release name ('my-kubeturbo'), version, namespace, and allows for configuration via a values.yaml file. ```bash helm install my-kubeturbo turbonomic/kubeturbo --version 8.18.0 --namespace {KUBETURBO_NAMESPACE} --create-namespace -f {path to your values.yaml file} ``` -------------------------------- ### GET Microsoft.Sql/locations/startManagedInstanceOperationResults/read Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=azure-reference-permissions Reads the result of a completed start operation for a SQL Managed Instance. ```APIDOC ## GET Microsoft.Sql/locations/startManagedInstanceOperationResults/read ### Description Reads the result of a completed start operation for a SQL Managed Instance. ### Method GET ### Endpoint /subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/startManagedInstanceOperationResults/{operationId} ### Parameters #### Path Parameters - **subscriptionId** (string) - Required - The ID of the target subscription. - **locationName** (string) - Required - The name of the location. - **operationId** (string) - Required - The operation ID. ### Request Example ```json { "example": "N/A" } ``` ### Response #### Success Response (200) - **properties** (object) - The managed instance properties. #### Response Example ```json { "properties": { "administratorLogin": "admin", "state": "Ready" } } ``` ``` -------------------------------- ### Format New Partition Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=turbonomic-reference-migrating-from-centos-rocky-linux-ova This command formats the newly created partition (`/dev/sdc1`) with the ext4 filesystem. This prepares the partition to store data, making it ready for mounting as the backup destination. ```bash mkfs.ext4 /dev/sdc1 ``` -------------------------------- ### GET Microsoft.Sql/locations/startManagedInstanceAzureAsyncOperation/read Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=azure-reference-permissions Reads the status of an asynchronous start operation for a SQL Managed Instance. ```APIDOC ## GET Microsoft.Sql/locations/startManagedInstanceAzureAsyncOperation/read ### Description Reads the status of an asynchronous start operation for a SQL Managed Instance. ### Method GET ### Endpoint /subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/startManagedInstanceAzureAsyncOperation/{operationId} ### Parameters #### Path Parameters - **subscriptionId** (string) - Required - The ID of the target subscription. - **locationName** (string) - Required - The name of the location. - **operationId** (string) - Required - The operation ID. ### Request Example ```json { "example": "N/A" } ``` ### Response #### Success Response (200) - **status** (string) - Operation status (e.g., Succeeded, Failed, InProgress) #### Response Example ```json { "status": "Succeeded" } ``` ``` -------------------------------- ### Get Leaf Entities from Supply Chain (API Example) Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=endpoint-supplychains-requests This example demonstrates how to call the Turbonomic API to get leaf entities from a supply chain. It shows how to specify seed UUIDs and filter out certain entity types to refine the results. The response is a JSON array of leaf entities. ```http GET https://10.10.168.102/api/v3/supplychains/leafEntities?uuids=74626820647952&filterEntityTypes=Service ``` -------------------------------- ### POST Microsoft.Compute/disks/beginGetAccess/action Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=azure-reference-permissions This API is only required when resizing volumes that are linked or created from disk snapshots. It initiates getting access to a disk. ```APIDOC ## POST Microsoft.Compute/disks/beginGetAccess/action ### Description Only required when resizing volumes that are linked or created from disk snapshots. ### Method POST ### Endpoint /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess ### Parameters #### Path Parameters - **subscriptionId** (string) - Required - The ID of the target subscription. - **resourceGroupName** (string) - Required - The name of the resource group. - **diskName** (string) - Required - The name of the disk. #### Request Body - **access** (string) - Required - Access level (Read, Write) - **durationInSeconds** (integer) - Required - Access duration ### Request Example ```json { "access": "Read", "durationInSeconds": 3600 } ``` ### Response #### Success Response (200) - **properties** (object) - Properties of the disk access #### Response Example ```json { "properties": { "access": "Read", "expirationTime": "2023-10-27T13:00:00Z" } } ``` ``` -------------------------------- ### Install Azure CLI and Velero CLI Source: https://www.ibm.com/docs/en/tarm/8.18.0/index_topic=turbonomic-backing-up-restoring-azure-aks-deployment Installs the Azure Command-Line Interface (CLI) and the Velero command-line interface (CLI) using Homebrew. Ensure Homebrew is installed before running these commands. ```bash brew install azure-cli brew install velero ```