Only this pageAll pages
Powered by GitBook
Couldn't generate the PDF for 182 pages, generation stopped at 100.
Extend with 50 more pages.
1 of 100

OpenAPI - R4.8.1 - EN

Loading...

API INFORMATION

Loading...

Loading...

Loading...

API Reference

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Common

Get volume types

API call

API call refers to the process of requesting a specific action from the Cocktail server.

API call

Set the Authorization header with the previously issued token

## CURL Command Sample
curl -X POST http://${API-GATEWAY}/api/pl/list/service/2 \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer [token]
  1. curl -X POST http://${API-GATEWAY}/api/pl/list/service/2 \
    • ${API-GATEWAY} : Enter the domain or IP:port information to access the API gateway.

  2. -H 'Content-Type: application/json' \
  3. -H 'Authorization: Bearer [token]
    • [token] : Enter "Bearer" followed by a space, then paste the issued token.

API response

The API response is the data received from the server as a result of the requested Cocktail operation

  • The response may include the success of the requested task, data, error messages, etc

  • Below is an example of a simple JSON-formatted API response.

Response for successful task completion.

You can determine the success of the task based on the status.

Response for failed task execution

API REFERENCE

The API REFERENCE document below contains only the content regarding the "result" value in case of successful task execution.

Item
Data type
Content
Item
Data type
Content
Item
Data type
Content
// An example of cluster list retrieval
{
    "code": "200",
    "result": [
        {
            "apiUrl": "https://0.0.0.0:0",
            "authType": "CERT",
            "clusterId": "thingcluster",
            "clusterName": "thingcluster",
            "clusterSeq": 1,
            "clusterState": "RUNNING",
            "created": "2023-12-19 09:27:00",
            "cubeType": "MANAGED",
            "description": "thingcluster",
            "ingressSupported": "Y",
            "k8sVersion": "1.26.1",
            "loadbalancerSupported": "N",
            "nodePortRange": "30000-32767",
            "nodePortSupported": "Y",
            "nodePortUrl": "0.0.0.0",
            "persistentVolumeSupported": "Y",
            "providerAccountSeq": 1,
            "regionCode": "Acornsoft",
            "updated": "2023-12-20 04:09:29",
            "useYn": "Y"
        }
    ],
    "status": "ok"
}

code

string

  • Internal Response Status Codes

  • Successful case: 200

result

The type varies depending on the requested task

Contents of the query

status

string

Internal response status

// Example of partial monitoring (V1)
{
    "code": "",
    "message": "",
    "metadata": null,
    "result": [
        {
            "metrics": {
                "cluster": "thingcluster",
                "controller_class": "k8s.io/ingress-nginx"
            },
            "timestamp": 1706597820,
            "value": 0.16666666666666669
        }
    ],
    "status": "ok"
}

code

string

Value: ""

message

string

Value: ""

metadata

string

Value: null

result

The type varies depending on the requested task

Contents of the query

status

string

  • Internal response status

  • Value: "ok"

{
    "code": "CCCM1044000",
    "message": "Not Authorized."
    "status: "error"
}

code

string

Internal Response Status Code

message

string

Internal Response Status Message

status

string

Internal Response Status

API Token Issuance

Issue Token

  1. Access [External APIs] - [APIs], then click on the "Issued" button.

  1. Fill in the [Issue Token] window, fill in the required information, and then click the "Save" button.

  • The information to be filled in is as follows

Items(*is required)
Content

Name*

  • Token name (non-editable)

Description

Description of the token

Expiration Date

Indefinite or specific date designation

Allow IP

  • - List of allowed IP addresses - CIDR notation is allowed - Allow all IPs if left blank

Block IP

  • Blocked IP list

  • Enter the IP address and press Enter to complete the input

  • CIDR notation allowed

  • If the same IP is listed in the allowed IP list, it will be blocked instead

Request Limit

  • No input or 0 indicates unlimited

  • Unlimited cannot be modified.

Range*

Click the checkbox to set the permission scope

  1. Click [OK] in the "Save?" popup window, then please check the issued token

Copy Token

Click on the icon to copy the token.

Get volume types

What is Cocktail Open API?

Cocktail Open API is a management service for external access to the Cocktail service API, including features such as user authentication, restrictions, and statistics

Introduction

  • This document explains all available API calls and the properties of the returned objects

Getting Started

The operation of API authentication tokens

  • This is how the Gateway and Cocktail API operate using JWT tokens

Anyone with the API token can use the Cocktail API.

Be careful not to expose the token!

Get platform

Platform

Get platform
Get platform service maps

Get clusters list

Cluster

Get clusters status list

Get clusters list
Get clusters status list
Get cluster details
Get cluster nodes list
Get cluster node details
Get cluster node events list
Get cluster storage list
Get cluster storage details
Get cluster ingress list
Get cluster service exposures list
Get cluster configuration list
Get cluster workloads list
Get cluster pods list
Get cluster PVC list
Get cluster CRD list
Get cluster addon list
Get cluster package list
Get cluster namespace list
Get cluster namespace details
Get cluster namespace ingress list
Get cluster namespace ingress details
Get cluster namespace service exposure list
Get cluster namespace service exposure details
Get cluster namespace configmap list
Get cluster namespace configmap details
Get cluster namespace secret list
Get cluster namespace secret details
Get cluster namespace PVC list
Get cluster namespace PVC details
Get cluster namespace Cronjobs list
Get cluster namespace Cronjob details
Get cluster namespace DaemonSets list
Get cluster namespace DaemonSet details
Get cluster namespace Deployments list
Get cluster namespace Deployment details
Get cluster namespace HAPs list
Get cluster namespace Jobs list
Get cluster namespace Job details
Get cluster namespace ReplicaSets list
Get cluster namespace StatefulSets list
Get cluster namespace StatefulSet details
Get cluster namespace pods logs
Get cluster namespace Container log

Get platform service maps

Get cluster nodes list

Get cluster node details

Get cluster node events list

Get cluster storage list

Get cluster details

Get cluster storage details

Get cluster ingress list

Get cluster service exposures list

Get cluster workloads list

Get cluster configuration list

Get cluster pods list

Get cluster PVC list

Get cluster addon list

Get cluster CRD list

Get cluster package list

Get cluster namespace list

Get cluster namespace details

Get cluster namespace ingress list

Get cluster namespace ingress details

Get cluster namespace service exposure list

Get cluster namespace configmap list

Get cluster namespace service exposure details

Get cluster namespace secret list

Get cluster namespace Cronjobs list

Get cluster namespace PVC details

Get cluster namespace configmap details

Get cluster namespace PVC list

Get cluster namespace Cronjob details

Get cluster namespace DaemonSets list

Get cluster namespace DaemonSet details

Get cluster namespace secret details

Get cluster namespace Deployments list

Get cluster namespace Deployment details

Get cluster namespace Job details

Get cluster namespace ReplicaSets list

Get cluster namespace StatefulSets list

Get cluster namespace Jobs list

Get cluster namespace StatefulSet details

Get cluster namespace HAPs list

Get cluster namespace pods logs

Get cluster namespace Container log

workspaces

Get workspaces list
Get workspace details

Get workspace details

service map

Get workspaces list

Get workspace service maps list
Get workspace service map details
Get service map workloads list
Get service map workload details
Get service map groups list

Get workspace service maps list

Get workspace service map details

pipeline

Get pipeline list
Run pipeline
Get pipeline Execution Details

Get pipeline list

Get service map groups list

Run pipeline

Get service map workloads list

Monitoring variables

Parameters

The parameters related to monitoring are as follows

Parameter
Description

clusterIds

  • Cluster ID

  • Enter multiple cluster IDs separated by commas(,)

namespaces

  • Namespace name

  • Enter multiple namespace names separated by commas(,)

workloadIds

  • Workload ID

  • Enter multiple workload IDs separated by commas(,)

nodeIds

  • Node ID

  • Input method (2 options)

    • Enter multiple node IDs separated by commas(,)

    • @each : Enter all IDs within the cluster

start

  • Start date for the query

  • timezone : UTC

  • format : yyyymmddhhmmss

end

  • End date for the query

  • timezone : UTC

  • format : yyyymmddhhmmss

Monitoring

Monitoring variables
Monitoring Cluster
Monitoring Node
Monitoring Ingress
Monitoring ETCD
Monitoring Namespace
Monitoring Workload

Get pipeline Execution Details

Monitoring Cluster

Get cluster CPU usage trend (Core)
Get cluster Memory usage trend (Byte)
Get cluster CPU/Memory request trend (Core/Byte)
Get cluster network usage trend (Mbps)
Get cluster kube API server request
Get cluster kube API server average response time
Get cluster restart pod list
Get cluster restart pod growth rate
Get cluster pod count trend by status
Get cluster pod CPU usage Top 5 trend (Core)
Get cluster pod Memory usage Top 5 trend (Byte)

Get service map workload details

Get cluster Memory usage trend (Byte)

Get cluster CPU usage trend (Core)

Get cluster CPU/Memory request trend (Core/Byte)

Get cluster kube API server request

Get cluster network usage trend (Mbps)

Get cluster restart pod growth rate

Get cluster restart pod list

Get cluster kube API server average response time

Get cluster pod count trend by status

Get cluster pod CPU usage Top 5 trend (Core)

Get cluster pod Memory usage Top 5 trend (Byte)

Get cluster node CPU load trend (Average Core)

Get cluster node CPU current load (Core Average)

Monitoring Node

Get cluster node CPU usage trend (%)

Get cluster node CPU usage trend by status (%)

Get cluster node CPU usage trend (%)
Get cluster node CPU usage trend by status (%)
Get cluster node CPU load trend (Average Core)
Get cluster node CPU current load (Core Average)
Get cluster node Memory usage trend (Byte)
Get cluster node disk free space trend
Get cluster node disk I/O rate change trend
Get cluster node disk detailed usage rate
Get cluster node network usage trend by device
Get cluster node uptime
Get cluster node availability

Get cluster node Memory usage trend (Byte)

Get cluster node disk detailed usage rate

Get cluster node disk free space trend

Get cluster node network usage (bps)

Get cluster node network usage trend by device

Get cluster node disk I/O rate change trend

Get cluster node uptime

Get cluster node availability

Get ingress controller average request rate trend (ReqPS)

Monitoring Ingress

Get ingress controller average request rate trend (ReqPS)
Get ingress controller request success rate trend
Get ingress controller CPU usage trend (Core)
Get ingress controller Memory usage trend (MiB)
Get ingress controller network usage trend (kBs)
Get ingress controller config reload count
Get ingress controller config reload success status
Get ingress controller request rate trend per ingress
Get ingress controller success rate trend per ingress
Get ingress controller percentile response time and throughput per ingress

Get ingress controller average connection count trend

Get ingress controller CPU usage trend (Core)

Get ingress controller request success rate trend

Get clusters list

get

Get the list of clusters.

Responses
200
OK
*/*
get
GET /v1/clusters HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "apiUrl": "https://0.0.0.0:0",
    "authType": "CERT",
    "clusterId": "thingcluster",
    "clusterName": "devops cluster",
    "clusterSeq": 1,
    "clusterState": "RUNNING",
    "created": "2022-12-16 08:16:50",
    "cubeType": "MANAGED",
    "description": "",
    "ingressSupported": "Y",
    "k8sVersion": "1.23.14",
    "loadbalancerSupported": "N",
    "nodePortRange": "30000-32767",
    "nodePortSupported": "Y",
    "nodePortUrl": "0.0.0.0",
    "persistentVolumeSupported": "Y",
    "providerAccountSeq": 1,
    "regionCode": "Default",
    "updated": "2023-06-13 09:34:39",
    "useYn": "Y"
  }
]

Get volume types

get

Get the list of volume types.

Responses
200
OK
*/*
get
200

OK

Get platform service maps

get

Get the list of platform service maps.

Responses
200
OK
*/*
get
200

OK

Get clusters status list

get

Get the status of all clusters.

Responses
200
OK
*/*
get
200

OK

Get platform

get

Get platform details.

Responses
200
OK
*/*
get
200

OK

GET /v1/code/group/volumetype HTTP/1.1
Host: 
Accept: */*
[
  {
    "code": "AZUREFILE_CSI",
    "description": "Azure File CSI",
    "groupId": "VOLUME_PLUGIN",
    "value": "azureFile"
  }
]
GET /v1/accounts/servicemaps HTTP/1.1
Host: 
Accept: */*
[
  {
    "clusterId": "thingcluster",
    "clusterName": "devops cluster",
    "clusterSeq": 1,
    "clusterState": "RUNNING",
    "clusterType": "CUBE",
    "cubeType": "MANAGED",
    "namespaceName": "cocktail-system",
    "providerCode": "IDC",
    "providerName": "Datacenter",
    "regionCode": "Default",
    "servicemapName": "cocktail-system",
    "servicemapSeq": 2,
    "useYn": "Y",
    "workloadGroups": [
      {
        "columnCount": 1,
        "servicemapSeq": 2,
        "sortOrder": 3,
        "useYn": "Y",
        "workloadGroupName": "Api",
        "workloadGroupSeq": 11
      }
    ]
  }
]
GET /v1/clusters/conditions HTTP/1.1
Host: 
Accept: */*
[
  {
    "account": {
      "accountCode": "DEVOPS",
      "accountName": "DEVOPS",
      "accountSeq": 1,
      "accountType": "ENT",
      "baseLanguage": "ko",
      "concurrentSessionYn": "Y",
      "description": "",
      "organizationName": "DEVOPS",
      "userAuthType": "PLAIN"
    },
    "apiUrl": "https://0.0.0.0:0",
    "authType": "CERT",
    "clusterId": "thingcluster",
    "clusterName": "devops cluster",
    "clusterSeq": 1,
    "clusterState": "RUNNING",
    "created": "2022-12-16 08:16:50",
    "cubeType": "MANAGED",
    "description": "",
    "ingressSupported": "Y",
    "k8sVersion": "1.23.14",
    "loadbalancerSupported": "N",
    "nodePortRange": "30000-32767",
    "nodePortSupported": "Y",
    "nodePortUrl": "0.0.0.0",
    "persistentVolumeSupported": "Y",
    "providerAccount": {
      "description": "",
      "providerCode": "IDC",
      "providerCodeName": "Datacenter",
      "providerName": "thingcluster",
      "seq": 1,
      "useType": "USER"
    },
    "regionCode": "Default",
    "updated": "2023-06-13 09:34:39",
    "useYn": "Y"
  }
]
GET /v1/accounts HTTP/1.1
Host: 
Accept: */*
[
  {
    "accountCode": "DEVOPS",
    "accountConfig": {
      "internalBuildServerUseYn": "N"
    },
    "accountName": "DEVOPS",
    "accountSeq": 1,
    "accountType": "ENT",
    "accountUsers": [
      {
        "description": "",
        "inactiveYn": "N",
        "initPasswordYn": "N",
        "lastLogin": "2022-12-23 02:14:15",
        "loginFailCount": 1,
        "resetPasswordYn": "N",
        "useYn": "Y",
        "userId": "abcd@acornsoft.io",
        "userLanguage": "ko",
        "userName": "DEVOPS",
        "userRole": "SYSTEM",
        "userSeq": 1
      }
    ],
    "baseLanguage": "ko",
    "concurrentSessionYn": "Y",
    "customerAddress": "DEVOPS",
    "customerEmail": "abcd@acornsoft.io",
    "customerName": "DEVOPS",
    "description": "DEVOPS",
    "licenseKey": "ENTERPRISE-KR-ACORN-20221216",
    "organizationName": "DEVOPS",
    "projects": [
      {
        "buildCount": 1,
        "created": "2022-12-16",
        "description": "",
        "projectId": 1,
        "projectName": "ops",
        "projectType": "SERVICE",
        "workspaceSeq": 1
      }
    ],
    "userAuthType": "PLAIN",
    "users": [
      {
        "description": "",
        "inactiveYn": "N",
        "initPasswordYn": "N",
        "lastLogin": "2022-12-23 02:14:15",
        "loginFailCount": 1,
        "resetPasswordYn": "N",
        "useYn": "Y",
        "userId": "abcd@acornsoft.io",
        "userLanguage": "ko",
        "userName": "홍길동",
        "userRole": "SYSTEM",
        "userSeq": 1
      }
    ]
  }
]

Get cluster node events list

get

Return the cluster node event list.

Path parameters
clusterIdstringRequired
nodeNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/nodes/{nodeName}/event HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "count": 1,
    "deployment": "",
    "deploymentYaml": "",
    "firstTime": "2023-04-29 05:54:51",
    "involvedObject": {
      "apiVersion": "",
      "fieldPath": "",
      "kind": "",
      "name": "",
      "namespace": "cocktail-system",
      "resourceVersion": "",
      "uid": ""
    },
    "kind": "",
    "lastTime": "2023-04-29 05:54:53",
    "message": "",
    "name": "",
    "namespace": "cocktail-system",
    "related": {
      "apiVersion": "",
      "fieldPath": "",
      "kind": "",
      "name": "",
      "namespace": "cocktail-system",
      "resourceVersion": "",
      "uid": ""
    },
    "source": "",
    "subObject": ""
  }
]

Get cluster node details

get

Return the cluster node event list.

Path parameters
clusterIdstringRequired
nodeNamestringRequired
Responses
200
OK
*/*
get
200

OK

Get cluster nodes list

get

Get the list of cluster nodes.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
200

OK

Get cluster storage list

get

Get the storage list of the cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
200

OK

Get cluster details

get

Get the cluster details.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
200

OK

GET /v1/clusters/{clusterId}/nodes/{nodeName} HTTP/1.1
Host: 
Accept: */*
{
  "allocatable": {
    "cpu": {
      "format": "DECIMAL_SI",
      "number": 48
    },
    "ephemeral-storage": {
      "format": "DECIMAL_SI",
      "number": 48294789041
    },
    "hugepages-1Gi": {
      "format": "DECIMAL_SI",
      "number": 0
    },
    "hugepages-2Mi": {
      "format": "DECIMAL_SI",
      "number": 0
    },
    "memory": {
      "format": "BINARY_SI",
      "number": 200903610368
    },
    "pods": {
      "format": "DECIMAL_SI",
      "number": 110
    }
  },
  "capacity": {
    "cpu": {
      "format": "DECIMAL_SI",
      "number": 48
    },
    "ephemeral-storage": {
      "format": "BINARY_SI",
      "number": 53660876800
    },
    "hugepages-1Gi": {
      "format": "DECIMAL_SI",
      "number": 0
    },
    "hugepages-2Mi": {
      "format": "DECIMAL_SI",
      "number": 0
    },
    "memory": {
      "format": "BINARY_SI",
      "number": 201008467968
    },
    "pods": {
      "format": "DECIMAL_SI",
      "number": 110
    }
  },
  "conditions": [
    {
      "lastHeartbeatTime": "2023-06-12 01:18:50",
      "lastTransitionTime": "2023-06-12 01:18:50",
      "message": "Cilium is running on this node",
      "reason": "CalicoIsUp",
      "status": "False",
      "type": "NetworkUnavailable"
    }
  ],
  "creationTimestamp": "2023-06-12 01:17:47",
  "detail": {
    "addresses": {
      "Hostname": "apps-gpu-v100",
      "InternalIP": "0.0.0.0"
    },
    "annotations": {
      "csi.volume.kubernetes.io/nodeid": "{\"nfs.csi.k8s.io\":\"apps-gpu-v100\"}",
      "kubeadm.alpha.kubernetes.io/cri-socket": "unix:///run/containerd/containerd.sock",
      "nfd.node.kubernetes.io/extended-resources": ""
    },
    "architecture": "amd64",
    "bootID": "36955d45-9257-4ef8-815a-c3e2b142180e",
    "containerRuntimeVersion": "containerd://1.6.10",
    "creationTime": "2022-12-02 02:33:48",
    "kernelVersion": "3.10.0-1160.24.1.el7.x86_64",
    "kubeProxyVersion": "v1.23.14",
    "kubeletVersion": "v1.23.14",
    "labels": {
      "beta.kubernetes.io/arch": "amd64",
      "beta.kubernetes.io/os": "linux",
      "cube.acornsoft.io/clusterid": "cube"
    },
    "machineID": "14b02ba119194cb3980cd859ae208204",
    "name": "apps-gpu-v100",
    "operatingSystem": "linux",
    "osImage": "CentOS Linux 7 (Core)",
    "podCIDR": "0.0.0.0/0",
    "systemUUID": "4C4C4544-004A-4E10-8032-B4C04F383233",
    "unschedulable": "false"
  },
  "labels": {
    "beta.kubernetes.io/arch": "amd64",
    "beta.kubernetes.io/os": "linux",
    "cube.acornsoft.io/clusterid": "cube"
  },
  "name": "apps-gpu-v100",
  "ready": "True"
}
GET /v1/clusters/{clusterId}/nodes HTTP/1.1
Host: 
Accept: */*
[
  {
    "allocatedCpu": 48,
    "allocatedEphemeralStorage": 0,
    "allocatedMemory": 200903610368,
    "allocatedPods": "110",
    "cpuCapacity": 48,
    "creationTimestamp": "2022-12-02 02:33:48",
    "ephemeralStorageCapacity": 48294789041,
    "gpuCapacity": 2,
    "memoryCapacity": 201008467968,
    "name": "apps-gpu-v100",
    "podCapacity": 110,
    "ready": "True"
  }
]
GET /v1/clusters/{clusterId}/storages HTTP/1.1
Host: 
Accept: */*
[
  {
    "annotations": {
      "cocktail-user-description": "bmZzLWNzaQ==",
      "meta.helm.sh/release-name": "default-storage",
      "meta.helm.sh/release-namespace": "kube-system"
    },
    "baseStorageYn": "Y",
    "description": "",
    "labels": {
      "acornsoft.io/provisioner-type": "NFS_CSI",
      "acornsoft.io/total-capacity": "1024",
      "acornsoft.io/type": "NETWORK"
    },
    "mountOptions": [
      "hard",
      "nfsvers=4.1"
    ],
    "name": "nfs-csi",
    "parameters": [
      {
        "name": "server",
        "value": "0.0.0.0"
      }
    ],
    "phase": "AVAILABLE",
    "plugin": "NFS_CSI",
    "provisionerName": "nfs.csi.k8s.io",
    "readOnlyManyYn": "Y",
    "readWriteManyYn": "Y",
    "readWriteOnceYn": "Y",
    "reclaimPolicy": "RETAIN",
    "storageType": "NETWORK",
    "totalCapacity": 1024,
    "type": "PERSISTENT_VOLUME",
    "volumeBindingMode": "IMMEDIATE"
  }
]
GET /v1/clusters/{clusterId} HTTP/1.1
Host: 
Accept: */*
{
  "apiUrl": "https://0.0.0.0:0",
  "authType": "CERT",
  "clusterId": "thingcluster",
  "clusterName": "devops cluster",
  "clusterSeq": 1,
  "clusterState": "RUNNING",
  "countOfNamespace": 22,
  "countOfNode": 7,
  "countOfStaticVolume": 0,
  "countOfStorageClass": 2,
  "countOfVolume": 48,
  "created": "2022-12-16 08:16:50",
  "cubeType": "MANAGED",
  "description": "",
  "ingressSupported": "Y",
  "k8sVersion": "1.23.14",
  "loadbalancerSupported": "Y",
  "nodePortRange": "30000-32767",
  "nodePortSupported": "Y",
  "nodePortUrl": "0.0.0.0",
  "persistentVolumeSupported": "Y",
  "providerAccount": {
    "description": "",
    "providerCode": "IDC",
    "providerCodeName": "Datacenter",
    "providerName": "thingcluster",
    "seq": 1,
    "useType": "USER"
  },
  "regionCode": "KR",
  "updated": "2023-06-13 09:34:39",
  "useYn": "Y"
}

Get cluster storage details

get

Get the storage details of the cluster.

Path parameters
clusterIdstringRequired
storagesNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/storages/{storageName} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "annotations": {
    "cocktail-user-description": "bmZzLWNzaQ==",
    "meta.helm.sh/release-name": "default-storage",
    "meta.helm.sh/release-namespace": "kube-system"
  },
  "baseStorageYn": "Y",
  "description": "",
  "labes": {
    "acornsoft.io/provisioner-type": "NFS_CSI",
    "acornsoft.io/total-capacity": "1024",
    "acornsoft.io/type": "NETWORK"
  },
  "mountOptions": [
    "hard",
    "nfsvers=4.1"
  ],
  "name": "nfs-csi",
  "parameters": [
    {
      "name": "server",
      "value": "0.0.0.0"
    }
  ],
  "phase": "AVAILABLE",
  "plugin": "NFS_CSI",
  "provisionerName": "nfs.csi.k8s.io",
  "readOnlyManyYn": "Y",
  "readWriteManyYn": "Y",
  "readWriteOnceYn": "Y",
  "reclaimPolicy": "RETAIN",
  "storageClass": {
    "creationTimestamp": "2022-12-02 02:16:03",
    "deployment": "{\"apiVersion\":\"storage.k8s.io/v1\",\"kind\":\"StorageClass\"...",
    "deploymentYaml": "apiVersion: storage.k8s.io/v1\nkind: StorageClass\n...",
    "detail": {
      "annotations": {
        "cocktail-user-description": "bmZzLWNzaQ==",
        "meta.helm.sh/release-name": "default-storage",
        "meta.helm.sh/release-namespace": "kube-system"
      },
      "creationTime": "2022-12-02 02:16:03",
      "labels": {
        "acornsoft.io/provisioner-type": "NFS_CSI",
        "acornsoft.io/total-capacity": "1024",
        "acornsoft.io/type": "NETWORK"
      },
      "mountOptions": [
        "hard",
        "nfsvers=4.1"
      ],
      "name": "nfs-csi",
      "parameters": {
        "server": "0.0.0.0",
        "share": "/thingcluster"
      },
      "provisioner": "nfs.csi.k8s.io",
      "reclaimPolicy": "Retain",
      "volumeBindingMode": "Immediate"
    },
    "labes": {
      "acornsoft.io/provisioner-type": "NFS_CSI",
      "acornsoft.io/total-capacity": "1024",
      "acornsoft.io/type": "NETWORK"
    },
    "name": "nfs-csi",
    "parameters": [
      {
        "name": "server",
        "value": "0.0.0.0"
      }
    ],
    "provisioner": "nfs.csi.k8s.io"
  },
  "storageType": "NETWORK",
  "totalCapacity": 1024,
  "type": "PERSISTENT_VOLUME",
  "volumeBindingMode": "IMMEDIATE"
}

Get cluster ingress list

get

Get the ingress list of the cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/ingresses HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "annotations": {
      "nginx.ingress.kubernetes.io/ssl-redirect": "false"
    },
    "creationTimestamp": "2023-01-12 08:33:06",
    "endpoints": [
      "0.0.0.0"
    ],
    "ingressControllerName": "nginx",
    "labes": {
      "app": "api"
    },
    "name": "api",
    "namespace": "cocktail-system"
  }
]

Get cluster service exposures list

get

Get the list of service exposures for that cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/services HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "annotations": {
      "meta.helm.sh/release-name": "cocktail",
      "meta.helm.sh/release-namespace": "cocktail-system"
    },
    "clusterIP": "0.0.0.0",
    "creationTimestamp": "2023-04-29 05:54:51",
    "internalLBFlag": false,
    "labels": {
      "app": "cocktail-api-cmdb",
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm"
    },
    "namespace": "cocktail-system",
    "serviceName": "api-cmd",
    "servicePorts": [
      {
        "port": "0",
        "protocol": "TCP",
        "serviceUrl": "0.0.0.0:0",
        "targetPort": "0"
      }
    ],
    "sessionAffinity": "None",
    "type": "ClusterIP"
  }
]

Get cluster PVC list

get

Get the list of volume request list of the cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
200

OK

GET /v1/clusters/{clusterId}/persistentvolumeclaims HTTP/1.1
Host: 
Accept: */*
[
  {
    "accessModes": [
      "ReadWriteOnce"
    ],
    "annotations": {
      "meta.helm.sh/release-name": "cocktail",
      "meta.helm.sh/release-namespace": "cocktail-system",
      "pv.kubernetes.io/bind-completed": "yes"
    },
    "capacity": {
      "storage": "20Gi"
    },
    "creationTimestamp": "2023-04-29 05:54:54",
    "labels": {
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "api-cmdb"
    },
    "name": "cocktail-api-cmdb-logdata",
    "namespace": "cocktail-system",
    "persistentVolumeType": "SHARED",
    "status": "Bound",
    "storageClassName": "nfs-csi",
    "volumeName": "pvc-1eaa501f-b51a-42a0-8304-9e3b5c151482"
  }
]

Get cluster configuration list

get

Get the list of settings for that cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/settings HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "creationTimestamp": "2023-06-12 01:16:43",
    "name": "cocktail-api-cmdb",
    "namespaceName": "cocktail-system",
    "type": "ConfigMap"
  }
]

Get cluster pods list

get

Get the list of the cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
200

OK

GET /v1/clusters/{clusterId}/pods HTTP/1.1
Host: 
Accept: */*
[
  {
    "annotations": {
      "cni.projectcalico.org/containerID": "2869a9d6ccd7a53fc8fdccda05168581a99115ffacd7beb834d816e2ab2ee6e7",
      "cni.projectcalico.org/podIP": "0.0.0.0/0",
      "cni.projectcalico.org/podIPs": "0.0.0.0/0"
    },
    "labes": {
      "app": "api-cmdb",
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm"
    },
    "namespace": "cocktail-system",
    "nodeName": "apps-gpu-v100",
    "podName": "cocktail-api-cmdb-0",
    "podStatus": "Running",
    "restartCnt": 0,
    "startTime": "2023-05-01 09:20:09"
  }
]

Get cluster addon list

get

Get the list of Addons for that cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/addons HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "annotations": {
      "cocktail-user-description": ""
    },
    "creationTimestamp": "2023-06-20 04:08:00",
    "data": {
      "addon.yaml": "kubelet:\n  enabled: true\n  namespace: cocktail-system\nkubeControllerManager...",
      "appVersion": "4.7.3",
      "autoUpdate": "Y",
      "error": "",
      "registeredCocktails": "[\"zgq0ng\"]",
      "releaseNamespace": "cocktail-addon",
      "repository": "cocktail-addon",
      "update_at": "2023-06-20T04:08:23Z",
      "useYn": "Y",
      "version": "1.6.9"
    },
    "description": "",
    "labels": {
      "agent": "agent",
      "chart": "addon-manager",
      "release-id": "addon-manager",
      "status": "deployed"
    },
    "name": "addon-manager",
    "namespace": "cocktail-addon"
  }
]

Get cluster CRD list

get

Get the CRD list of the cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/crds HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "acceptedNames": {
      "categories": [
        "istio-io",
        "networking-istio-io"
      ],
      "kind": "Gateway",
      "listKind": "GatewayList",
      "plural": "gateways",
      "shortNames": [
        "gw"
      ],
      "singular": "gateway"
    },
    "annotations": {
      "helm.sh/resource-policy": "keep"
    },
    "creationTimestamp": "2022-12-02 08:42:46",
    "fullName": "gateways.networking.istio.io",
    "group": "networking.istio.io",
    "labes": {
      "app": "istio-pilot",
      "chart": "istio",
      "heritage": "Tiller",
      "release": "istio"
    },
    "name": "gateways",
    "scope": "Namespaced",
    "storedVersion": "v1alpha3",
    "versions": [
      {
        "name": "v1alpha3",
        "served": true,
        "storage": true
      }
    ]
  }
]

Get cluster namespace list

get

Get the namespace list for that cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
200

OK

Get cluster package list

get

Get the list of packages in the cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
200

OK

GET /v1/clusters/{clusterId}/namespaces HTTP/1.1
Host: 
Accept: */*
[
  {
    "annotations": {
      "meta.helm.sh/release-name": "cocktail",
      "meta.helm.sh/release-namespace": "cocktail-system"
    },
    "creationTimestamp": "2022-12-02 06:21:35",
    "labels": {
      "istio-injection": "disabled",
      "kubernetes.io/metadata.name": "cocktail-system"
    },
    "name": "cocktail-system",
    "status": "Active"
  }
]
GET /v1/clusters/{clusterId}/packages HTTP/1.1
Host: 
Accept: */*
[
  {
    "appVersion": "4.7.3",
    "chartName": "cocktail",
    "chartVersion": "4.7.4",
    "info": {
      "deleted": "0001-01-01 00:00:00 +0000 UTC",
      "description": "",
      "firstDeployed": "2023-04-29 05:54:50.086853557 +0000 UTC",
      "icon": "",
      "lastDeployed": "2023-04-29 06:04:37.924985116 +0000 UTC",
      "notes": "",
      "readme": "",
      "status": "deployed"
    },
    "name": "cocktail",
    "namespace": "cocktail-system",
    "revision": "2"
  }
]

Get cluster namespace details

get

Get the namespace details of the cluster.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "annotations": {
    "meta.helm.sh/release-name": "cocktail",
    "meta.helm.sh/release-namespace": "cocktail-system"
  },
  "creationTimestamp": "2022-12-02 06:21:35",
  "deployment": "{\"apiVersion\":\"v1\",\"kind\":\"Namespace\"...",
  "deploymentYaml": "apiVersion: v1\nkind: Node\nmetadata...",
  "detail": {
    "annotations": {
      "meta.helm.sh/release-name": "cocktail",
      "meta.helm.sh/release-namespace": "cocktail-system"
    },
    "creationTimestamp": "2022-12-02 06:21:35",
    "labels": {
      "istio-injection": "disabled",
      "kubernetes.io/metadata.name": "cocktail-system"
    },
    "name": "cocktail-system",
    "status": "Active"
  },
  "labels": {
    "istio-injection": "disabled",
    "kubernetes.io/metadata.name": "cocktail-system"
  },
  "name": "cocktail-system",
  "status": "Active"
}

Get cluster namespace ingress list

get

Get the list of Ingresses in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/ingresses HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "annotations": {
      "nginx.ingress.kubernetes.io/ssl-redirect": "false"
    },
    "creationTimestamp": "2023-01-12 08:33:06",
    "endpoints": [
      "0.0.0.0"
    ],
    "ingressControllerName": "nginx",
    "labels": {
      "app": "api"
    },
    "name": "api",
    "namespace": "cocktail-system"
  }
]

Get cluster namespace ingress details

get

Get detailed information for the Ingress in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
ingressNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/ingresses/{ingressName} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "creationTimestamp": "2023-06-15 07:52:17",
  "deployment": "{\"apiVersion\":\"networking.k8s.io/v1\"...",
  "deploymentYaml": "apiVersion: v1\nkind: Node\nmetadata...",
  "detail": {
    "annotations": {
      "nginx.ingress.kubernetes.io/ssl-redirect": "false"
    },
    "creationTimestamp": "2023-01-12 08:33:06",
    "labels": {
      "app": "api"
    },
    "name": "api",
    "namespace": "cocktail-system"
  },
  "endpoints": [
    "0.0.0.0"
  ],
  "ingressSpec": {
    "annotations": {
      "nginx.ingress.kubernetes.io/ssl-redirect": "false"
    },
    "ingressControllerName": "nginx",
    "labels": {
      "app": "api"
    },
    "name": "api",
    "namespaceName": "cocktail-system",
    "rules": [
      {
        "host": {
          "type": "string",
          "example": "devops-api.acloud.run"
        },
        "paths": {
          "type": "array",
          "description": "Path list",
          "items": {
            "type": "object",
            "example": {
              "path": "/v1",
              "pathType": "ImplementationSpecific",
              "serviceName": "api-gateway",
              "servicePort": "8081",
              "servicePortIsInteger": true
            }
          }
        }
      }
    ],
    "tls": [
      {
        "hosts": [
          "devops-api.acloud.run"
        ],
        "secretName": "acloudrun-tls"
      }
    ],
    "useSslRedirect": false
  },
  "name": "api",
  "namespace": "cocktail-system"
}

Get cluster namespace service exposure details

get

Get detailed information for the exposed service in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
serviceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/services/{serviceName} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "clusterIP": "0.0.0.0",
  "creationTimestamp": "2023-04-29 05:54:51",
  "detail": {
    "annotations": {
      "meta.helm.sh/release-name": "cocktail",
      "meta.helm.sh/release-namespace": "cocktail-system"
    },
    "clusterIP": "0.0.0.0",
    "creationTimestamp": "2023-04-29 05:54:51",
    "externalEndpoints": [],
    "internalEndpoints": [
      "api-cmdb.cocktail-system:0 TCP"
    ],
    "labelSelector": {
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/name": "api-cmdb"
    },
    "labels": {
      "app": "cocktail-api-cmdb",
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm"
    },
    "namespace": "cocktail-system",
    "serviceName": "api-cmdb",
    "sessionAffinity": "None",
    "type": "ClusterIP"
  },
  "endpoints": [
    {
      "host": "0.0.0.0",
      "ports": [
        {
          "port": "0",
          "protocol": "TCP"
        }
      ],
      "ready": true
    }
  ],
  "events": [
    {
      "message": "Readiness probe failed: command \"/bin/api-cmdb readiness\" timed out",
      "source": "",
      "subObject": "",
      "count": 1,
      "firstTime": "2023-04-29 05:54:51",
      "lastTime": "2023-06-20 06:35:03",
      "kind": "",
      "name": "",
      "namespace": "cocktail-system",
      "involvedObject": {
        "apiVersion": "",
        "fieldPath": "",
        "kind": "",
        "name": "",
        "namespace": "cocktail-system",
        "resourceVersion": "",
        "uid": ""
      },
      "related": {
        "apiVersion": "",
        "fieldPath": "",
        "kind": "",
        "name": "",
        "namespace": "cocktail-system",
        "resourceVersion": "",
        "uid": ""
      },
      "deployment": "",
      "deploymentYaml": ""
    }
  ],
  "externalEndpoints": [
    ""
  ],
  "internalEndpoints": [
    "agent-mdziow-3-alarm-agent.cocktail-addon:0 TCP"
  ],
  "internalLBFlag": false,
  "labels": {
    "app.kubernetes.io/instance": "agent-mdziow-3",
    "app.kubernetes.io/managed-by": "Helm",
    "...": "..."
  },
  "namespace": "cocktail-system",
  "serviceDeployment": "{\"apiVersion\":\"v1\",\"kind\":\"Service\"...",
  "serviceDeploymentYaml": "apiVersion: v1\nkind: Service\nmetadata:\n  annotations:\n...",
  "serviceName": "agent-mdziow-3-alarm-agent",
  "sessionAffinity": "None"
}

Get cluster namespace secret list

get

Get the list of Secrets in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/secrets HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "creationTimestamp": "2023-04-29 05:54:51",
    "description": "",
    "labels": {
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "api-cmdb"
    },
    "name": "cocktail-api-cmdb",
    "namespace": "cocktail-system",
    "type": "Generic"
  }
]

Get cluster namespace Cronjobs list

get

Get the list of CronJobs in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/cronjobs HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "activeJobCnt": 1,
    "creationTimestamp": "2023-06-14 09:30:39",
    "images": [
      "nginx:latest"
    ],
    "labels": {
      "app": "test"
    },
    "lastScheduleTime": "2023-06-14 09:31:00",
    "name": "cronjob",
    "namespace": "cocktail-system",
    "schedule": "* * * * *",
    "suspend": false
  }
]

Get cluster workloads list

get

Get the workload list for that cluster.

Path parameters
clusterIdstringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/workloads HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "activeCount": 1,
    "computeTotal": 1,
    "creationTimestamp": "2023-04-29 05:54:54",
    "description": "",
    "isK8sResourceExist": true,
    "namespaceName": "cocktail-system",
    "qos": "Burstable",
    "stateCode": "RUNNING",
    "workloadGroupSeq": 11,
    "workloadName": "cocktail-api-cmdb",
    "workloadType": "STATEFUL_SET_SERVER"
  }
]

Get cluster namespace PVC details

get

Get detailed information for PVC in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
pvcNamestringRequired
Responses
200
OK
*/*
get
200

OK

GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/persistentvolumeclaims/{pvcName} HTTP/1.1
Host: 
Accept: */*
{
  "accessModes": [
    "ReadWriteMany"
  ],
  "capacity": {
    "storage": "20Gi"
  },
  "clusterVolume": {
    "annotations": {
      "cocktail-user-description": "bmZzLWNzaQ==",
      "meta.helm.sh/release-name": "default-storage",
      "meta.helm.sh/release-namespace": "kube-system"
    },
    "baseStorageYn": "Y",
    "description": "",
    "labels": {
      "acornsoft.io/provisioner-type": "NFS_CSI",
      "acornsoft.io/total-capacity": "1024",
      "acornsoft.io/type": "NETWORK"
    },
    "mountOptions": [
      "hard",
      "nfsvers=4.1"
    ],
    "name": "nfs-csi",
    "parameters": [
      {
        "name": "server",
        "value": "0.0.0.0"
      }
    ],
    "phase": "AVAILABLE",
    "plugin": "NFS_CSI",
    "provisionerName": "nfs.csi.k8s.io",
    "readOnlyManyYn": "Y",
    "readWriteManyYn": "Y",
    "readWriteOnceYn": "Y",
    "reclaimPolicy": "RETAIN",
    "storageType": "NETWORK",
    "totalCapacity": 1024,
    "type": "PERSISTENT_VOLUME",
    "volumeBindingMode": "IMMEDIATE"
  },
  "creationTimestamp": "2023-04-29 05:54:51",
  "deployment": "{\"apiVersion\":\"v1\",\"kind\":\"PersistentVolumeClaim\"...",
  "deploymentYaml": "apiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:...",
  "detail": {
    "accessModes": [
      "ReadWriteMany"
    ],
    "annotations": {
      "meta.helm.sh/release-name": "cocktail",
      "meta.helm.sh/release-namespace": "cocktail-system",
      "pv.kubernetes.io/bind-completed": "yes"
    },
    "capacity": {
      "storage": "20Gi"
    },
    "creationTimestamp": "2023-04-29 05:54:51",
    "labels": {
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "api-cmdb"
    },
    "name": "cocktail-api-cmdb-logdata",
    "namespace": "cocktail-system",
    "status": "Bound",
    "storageClassName": "nfs-csi",
    "volumeName": "pvc-1eaa501f-b51a-42a0-8304-9e3b5c151482"
  },
  "name": "cocktail-api-cmdb-logdata",
  "namespace": "cocktail-system",
  "persistentVolume": {
    "accessModes": [
      "ReadWriteMany"
    ],
    "capacity": {
      "storage": "20Gi"
    },
    "claimName": "cocktail-api-cmdb-logdata",
    "claimNameWithNamespace": "cocktail-system/cocktail-api-cmdb-logdata",
    "creationTimestamp": "2023-04-29 05:54:51",
    "deployment": "{\"apiVersion\":\"v1\",\"kind\":\"PersistentVolume...",
    "deploymentYaml": "apiVersion: v1\nkind: PersistentVolume\nmetadata...",
    "detail": {
      "accessModes": [
        "ReadWriteMany"
      ],
      "annotations": {
        "pv.kubernetes.io/provisioned-by": "nfs.csi.k8s.io",
        "volume.kubernetes.io/provisioner-deletion-secret-name": "",
        "volume.kubernetes.io/provisioner-deletion-secret-namespace": ""
      },
      "capacity": {
        "storage": "20Gi"
      },
      "claimName": "cocktail-system/cocktail-api-cmdb-logdata",
      "creationTime": "2023-04-29 05:54:51",
      "events": [
        {
          "message": "",
          "source": "",
          "subObject": "",
          "count": 0,
          "firstTime": "2023-04-29 05:54:51",
          "lastTime": "2023-04-29 05:54:51",
          "kind": "",
          "name": "",
          "namespace": "",
          "involvedObject": {
            "apiVersion": "",
            "fieldPath": "",
            "kind": "",
            "name": "",
            "namespace": "",
            "resourceVersion": "",
            "uid": ""
          },
          "related": {
            "apiVersion": "",
            "fieldPath": "",
            "kind": "",
            "name": "",
            "namespace": "",
            "resourceVersion": "",
            "uid": ""
          },
          "deployment": "",
          "deploymentYaml": ""
        }
      ],
      "labels": {
        "app.kubernetes.io/instance": "cocktail",
        "app.kubernetes.io/managed-by": "Helm",
        "app.kubernetes.io/name": "api-cmdb"
      },
      "name": "pvc-1eaa501f-b51a-42a0-8304-9e3b5c151482",
      "persistentVolumeReclaimPolicy": "Retain",
      "status": "Bound",
      "StatusMessage": "",
      "statusReason": "",
      "storageClassName": "nfs-csi",
      "volumeMode": "",
      "volumeSource": "{\"csi\":{\"driver\":\"nfs.csi.k8s.io\",\"volumeAttributes\":..."
    },
    "name": "pvc-1eaa501f-b51a-42a0-8304-9e3b5c151482",
    "persistentVolumeReclaimPolicy": "Retain",
    "status": "Bound",
    "storageClassName": "nfs-csi"
  },
  "persistentVolumeType": "SHARED",
  "serverParams": [
    {
      "containerVolumes": [
        {
          "containerName": "api-cmdb",
          "containerPath": "/var/log/mysql",
          "subPath": "api-cmdb",
          "useMemoryYn": "N",
          "volumeName": "log"
        }
      ],
      "namespaceName": "cocktail-system",
      "serverName": "cocktail-api-cmdb"
    }
  ],
  "status": "Bound",
  "storageClassName": "nfs-csi",
  "volumeName": "pvc-1eaa501f-b51a-42a0-8304-9e3b5c151482"
}

Get cluster namespace PVC list

get

Get cluster namespace PVC details.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/persistentvolumeclaims HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "accessModes": [
      "ReadWriteMany"
    ],
    "capacity": {
      "storage": "20Gi"
    },
    "creationTimestamp": "2023-04-29 05:54:51",
    "name": "cocktail-api-cmdb-logdata",
    "namespace": "cocktail-system",
    "persistentVolumeType": "SHARED",
    "status": "Bound",
    "storageClassName": "nfs-csi",
    "volumeName": "pvc-1eaa501f-b51a-42a0-8304-9e3b5c151482"
  }
]

Get cluster namespace configmap details

get

Get detailed information for the ConfigMap in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
configmapNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/configmaps/{configmapName} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "annotations": {
    "meta.helm.sh/release-name": "cocktail",
    "meta.helm.sh/release-namespace": "cocktail-system"
  },
  "creationTimestamp": "2023-04-29 05:54:51",
  "data": {
    "my.cnf": "[{\"name\":\"cocktail-addon/addon-manager\",\"version\":\"1.6.9\"...",
    "ping.sh": "#!/bin/bash\nmysqladmin --defaults-extra-file=/scripts/.my.cnf ping\n"
  },
  "deployment": "{\"apiVersion\":\"v1\",\"data\":{\"my.cnf\":\"[client]...",
  "deploymentYaml": "apiVersion: v1\nkind: ConfigMap\nmetadata...",
  "description": "",
  "labels": {
    "app.kubernetes.io/instance": "cocktail",
    "app.kubernetes.io/managed-by": "Helm",
    "app.kubernetes.io/name": "api-cmdb"
  },
  "name": "cocktail-api-cmdb",
  "namespace": "cocktail-system"
}

Get cluster namespace Cronjob details

get

Get detailed information for CronJob in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
cronJobNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/cronjobs/{cronJobName} HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "activeJobCnt": 1,
    "creationTimestamp": "2023-06-14 09:30:39",
    "deployment": "{\"apiVersion\":\"batch/v1\",\"kind\":\"CronJob\"...",
    "deploymentYaml": "apiVersion: batch/v1\nkind: CronJob\nmetadata:\n...",
    "detail": {
      "activeJobs": [
        {
          "completionPodCnt": 0,
          "creationTimestamp": "2023-07-04 06:38:00",
          "deployment": "{\"apiVersion\":\"batch/v1\",\"kind\":\"Job\",\"metadata\"",
          "deploymentYaml": "apiVersion: batch/v1\nkind: Job\nmetadata:\n",
          "desiredPodCnt": 1,
          "detail": {
            "annotations": {
              "sidecar.istio.io/inject": "false"
            },
            "backoffLimit": 6,
            "completions": 1,
            "creationTime": "2023-07-04 06:38:00",
            "labels": {
              "app": "cronjob"
            },
            "name": "cronjob-28140878",
            "namespace": "cocktail-system",
            "ownerReferences": [
              {
                "apiVersion": "batch/v1",
                "blockOwnerDeletion": true,
                "controller": true,
                "kind": "CronJob",
                "name": "cronjob",
                "uid": "c86a8fcc-7ecc-4445-a72f-cb272b7074a9"
              }
            ],
            "parallelism": 1,
            "podTemplate": {
              "annotations": {
                "cocktail-deploy-datetime": "2023-06-14 01:21:02.598",
                "kubectl.kubernetes.io/restartedAt": "2023-06-14T01:28:04Z"
              },
              "labels": {
                "app": "cronjob",
                "controller-uid": "ba7b126d-b790-4152-a77e-b410da5f4fd7",
                "job-name": "cronjob-28140878"
              },
              "spec": {
                "conditions": [],
                "detail": {
                  "containers": [
                    {
                      "image": "nginx:latest",
                      "imagePullPolicy": "Always",
                      "name": "nginx",
                      "resources": {
                        "cpu": {
                          "limit": "200m",
                          "request": "100m"
                        },
                        "memory": {
                          "limit": "209715200",
                          "request": "104857600"
                        }
                      },
                      "restartCount": 0,
                      "volumeMounts": {
                        "a": "{\"mountPath\":\"/data\",\"name\":\"a\"}",
                        "b": "{\"mountPath\":\"/data2\",\"name\":\"b\"}",
                        "c": "{\"mountPath\":\"/data3\",\"name\":\"c\"}"
                      }
                    }
                  ],
                  "initContainers": [],
                  "restartPolicy": "OnFailure",
                  "terminationGracePeriodSeconds": 30
                },
                "podStatus": "Pending",
                "restartCnt": 0
              }
            },
            "selector": {
              "matchLabels": {
                "controller-uid": "ba7b126d-b790-4152-a77e-b410da5f4fd7"
              }
            },
            "status": {
              "Failed": 0,
              "Running": 1,
              "Succeeded": 0
            }
          },
          "images": [
            "nginx:latest"
          ],
          "labels": {
            "app": "cronjob"
          },
          "name": "cronjob-28140878",
          "namespace": "cocktail-system"
        }
      ],
      "annotations": {
        "acornsoft.io/workload-group-no": "53",
        "cocktail-deploy-datetime": "2023-06-14 09:30:39.002",
        "cocktail-user-description": "Lg=="
      },
      "backoffLimit": 3,
      "completions": 1,
      "concurrencyPolicy": "Allow",
      "creationTimestamp": "2023-06-14 09:30:39",
      "failedJobsHistoryLimit": 1,
      "labels": {
        "app": "cronjob"
      },
      "lastScheduleTime": "2023-07-04 06:38:00",
      "name": "cronjob",
      "namespace": "cocktail-system",
      "parallelism": 1,
      "podTemplate": {
        "annotations": {
          "cocktail-deploy-datetime": "2023-06-14 01:21:02.598",
          "kubectl.kubernetes.io/restartedAt": "2023-06-14T01:28:04Z"
        },
        "labels": {
          "app": "test2"
        },
        "spec": {
          "conditions": [],
          "detail": {
            "containers": [
              {
                "image": "nginx:latest",
                "imagePullPolicy": "Always",
                "name": "nginx",
                "resources": {
                  "cpu": {
                    "limit": "200m",
                    "request": "100m"
                  },
                  "memory": {
                    "limit": "209715200",
                    "request": "104857600"
                  }
                },
                "restartCount": 0,
                "volumeMounts": {
                  "a": "{\"mountPath\":\"/data\",\"name\":\"a\"}",
                  "b": "{\"mountPath\":\"/data2\",\"name\":\"b\"}",
                  "c": "{\"mountPath\":\"/data3\",\"name\":\"c\"}"
                }
              }
            ],
            "initContainers": [],
            "restartPolicy": "OnFailure",
            "terminationGracePeriodSeconds": 30
          },
          "podStatus": "Pending",
          "restartCnt": 0
        }
      },
      "schedule": "* * * * *",
      "successfulJobsHistoryLimit": 3,
      "suspend": false
    },
    "images": [
      "nginx:latest"
    ],
    "labels": {
      "app": "cronjob"
    },
    "lastScheduleTime": "2023-07-04 06:38:00",
    "name": "cronjob",
    "namespace": "cocktail-system",
    "schedule": "* * * * *",
    "suspend": false
  }
]

Get cluster namespace DaemonSets list

get

Get the list of DaemonSets in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/daemonsets HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "creationTimestamp": "2023-06-21 06:41:56",
    "desiredPodCnt": 7,
    "images": [
      "101.55.69.30/docker.io/grafana/promtail:2.7.4"
    ],
    "labels": {
      "app.kubernetes.io/instance": "promtail",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "promtail"
    },
    "name": "promtail",
    "namespace": "cocktail-system",
    "readyPodCnt": 7
  }
]

Get cluster namespace configmap list

get

Get the list of ConfigMaps in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/configmaps HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "annotations": {
      "meta.helm.sh/release-name": "cocktail",
      "meta.helm.sh/release-namespace": "cocktail-system"
    },
    "creationTimestamp": "2023-04-29 05:54:51",
    "description": "",
    "labels": {
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "api-cmdb"
    },
    "name": "cocktail-api-cmdb",
    "namespace": "cocktail-system"
  }
]

Get cluster namespace DaemonSet details

get

Get detailed information for DaemonSet in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
daemonSetNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/daemonsets/{daemonSetName} HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "creationTimestamp": "2023-06-21 06:41:56",
    "deployment": "{\"apiVersion\":\"apps/v1\",\"kind\":\"DaemonSet\"...",
    "deploymentYaml": "apiVersion: apps/v1\nkind: DaemonSet\nmetadata:\n...",
    "desiredPodCnt": 7,
    "detail": {
      "annotations": {
        "deprecated.daemonset.template.generation": "5",
        "meta.helm.sh/release-name": "promtail",
        "meta.helm.sh/release-namespace": "cocktail-system"
      },
      "creationTime": "2023-06-21 06:41:56",
      "labels": {
        "app.kubernetes.io/instance": "promtail",
        "app.kubernetes.io/managed-by": "Helm",
        "app.kubernetes.io/name": "promtail"
      },
      "minReadySeconds": 0,
      "name": "promtail",
      "namespace": "cocktail-system",
      "podTemplate": {
        "annotations": {
          "checksum/config": "c0bfd056325ee83005df0c32ca6018bdcd2e31066846277781c9b68dfe1f9b88"
        },
        "labels": {
          "app.kubernetes.io/instance": "promtail",
          "app.kubernetes.io/name": "promtail"
        },
        "spec": {
          "conditions": [],
          "detail": {
            "containers": [
              {
                "args": [
                  "-config.file=/etc/promtail/promtail.yaml"
                ],
                "environmentVariables": {
                  "HOSTNAME": "{\"apiVersion\":\"v1\",\"fieldPath\":\"spec.nodeName\"}"
                },
                "image": "101.55.69.30/docker.io/grafana/promtail:2.7.4",
                "imagePullPolicy": "IfNotPresent",
                "name": "promtail",
                "resources": {},
                "restartCount": 0,
                "volumeMounts": {
                  "applications": "{\"mountPath\":\"/var/log/applications\",\"name\":\"applications\"}",
                  "audit": "{\"mountPath\":\"/var/log/kubernetes\",\"name\":\"audit\",\"readOnly\":true}",
                  "config": "{\"mountPath\":\"/etc/promtail\",\"name\":\"config\"}",
                  "containers": "{\"mountPath\":\"/var/log/containers\",\"name\":\"containers\",\"readOnly\":true}",
                  "cricontainers": "{\"mountPath\":\"/var/lib/containerd/io.containerd.grpc.v1.cri/containers\",\"name\":\"cricontainers\",\"readOnly\":true}",
                  "pods": "{\"mountPath\":\"/var/log/pods\",\"name\":\"pods\",\"readOnly\":true}",
                  "run": "{\"mountPath\":\"/run/promtail\",\"name\":\"run\"}"
                }
              }
            ],
            "initContainers": [],
            "restartPolicy": "Always",
            "serviceAccountName": "promtail",
            "terminationGracePeriodSeconds": 30,
            "tolerations": [
              {
                "operator": "Exists"
              }
            ]
          },
          "podStatus": "Pending",
          "restartCnt": 0
        }
      },
      "revisionHistoryLimit": "10",
      "rollingUpdate": {
        "maxSurge": 0,
        "maxUnavailable": 1
      },
      "selector": {
        "matchLabels": {
          "app.kubernetes.io/instance": "promtail",
          "app.kubernetes.io/name": "promtail"
        }
      },
      "status": {
        "available": 7,
        "current": 7,
        "desired": 7,
        "ready": 7,
        "up-to-date": 7
      },
      "strategy": "RollingUpdate"
    },
    "images": [
      "101.55.69.30/docker.io/grafana/promtail:2.7.4"
    ],
    "labels": {
      "app.kubernetes.io/instance": "promtail",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "promtail"
    },
    "name": "promtail",
    "namespace": "cocktail-system",
    "readyPodCnt": 7
  }
]

Get cluster namespace secret details

get

Get detailed information for the Secret in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
secretNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/secrets/{secretName} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "annotations": {
    "meta.helm.sh/release-name": "cocktail",
    "meta.helm.sh/release-namespace": "cocktail-system"
  },
  "creationTimestamp": "2023-04-29 05:54:51",
  "data": {
    "BUILDER_DB_PASSWORD": "",
    "BUILDER_DB_USER": "",
    "COCKTAIL_DB_PASSWORD": ""
  },
  "deployment": "{\"apiVersion\":\"v1\",\"data\"...",
  "deploymentYaml": "apiVersion: v1\nkind: Secret\nmetadata:\n...",
  "description": "",
  "labels": {
    "app.kubernetes.io/instance": "cocktail",
    "app.kubernetes.io/managed-by": "Helm",
    "app.kubernetes.io/name": "api-cmdb"
  },
  "name": "cocktail-api-cmdb",
  "namespace": "cocktail-system",
  "type": "Generic"
}

Get cluster namespace Deployments list

get

Get the list of Deployments in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
200

OK

Get cluster namespace service exposure list

get

Get the list of exposed services in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
200

OK

Get cluster namespace Deployment details

get

Get detailed information for Deployment in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
deploymentNamestringRequired
Responses
200
OK
*/*
get
200

OK

GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/deployments HTTP/1.1
Host: 
Accept: */*
[
  {
    "conditions": [
      {
        "lastHeartbeatTime": "2023-05-02 07:12:02",
        "lastTransitionTime": "2023-05-02 07:12:02",
        "message": "Deployment has minimum availability.",
        "reason": "MinimumReplicasAvailable",
        "status": "True",
        "type": "Available"
      }
    ],
    "creationTimestamp": "2023-05-02 07:12:02",
    "desiredPodCnt": 1,
    "images": [
      "regi.acloud.run/library/log-api:1.3.0"
    ],
    "labels": {
      "app": "api",
      "app.kubernetes.io/managed-by": "Helm",
      "chart": "api-1.0.0"
    },
    "matchLabels": {
      "app.kubernetes.io/app": "cocktail-log-api",
      "app.kubernetes.io/instance": "cocktail-log",
      "app.kubernetes.io/name": "api"
    },
    "name": "cocktail-log-api",
    "namespace": "cocktail-system",
    "readyPodCnt": 1
  }
]
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/services HTTP/1.1
Host: 
Accept: */*
[
  {
    "annotations": {
      "meta.helm.sh/release-name": "cocktail",
      "meta.helm.sh/release-namespace": "cocktail-system"
    },
    "clusterIP": "0.0.0.0",
    "creationTimestamp": "2023-04-29 05:54:51",
    "internalLBFlag": false,
    "labels": {
      "app": "cocktail-api-cmdb",
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm"
    },
    "namespace": "cocktail-system",
    "serviceName": "api-cmdb",
    "servicePorts": {
      "port": "0",
      "protocol": "TCP",
      "serviceUrl": "10.187.158.194:3306",
      "targetPort": "3306"
    },
    "sessionAffinity": "None",
    "type": "ClusterIP"
  }
]
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/deployments/{deploymentName} HTTP/1.1
Host: 
Accept: */*
[
  {
    "conditions": [
      {
        "lastHeartbeatTime": "2023-05-02 07:12:02",
        "lastTransitionTime": "2023-05-02 07:12:02",
        "message": "Deployment has minimum availability.",
        "reason": "MinimumReplicasAvailable",
        "status": "True",
        "type": "Available"
      }
    ],
    "creationTimestamp": "2023-05-02 07:12:02",
    "deployment": "{\"apiVersion\":\"apps/v1\",\"kind\":\"Deployment\"...",
    "deploymentYaml": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n...",
    "desiredPodCnt": 1,
    "detail": {
      "annotations": {
        "acornsoft.io/workload-group-no": "12",
        "cocktail-deploy-datetime": "2023-06-28 08:10:52.898",
        "cocktail-user-description": ""
      },
      "creationTime": "2023-05-02 01:45:53",
      "labels": {
        "app": "api",
        "app.kubernetes.io/managed-by": "Helm",
        "chart": "api-1.0.0"
      },
      "minReadySeconds": 0,
      "name": "cocktail-log-api",
      "namespace": "cocktail-system",
      "podTemplate": {
        "annotations": {
          "kubectl.kubernetes.io/restartedAt": "2023-06-28T08:10:52Z"
        },
        "labels": {
          "app.kubernetes.io/app": "cocktail-log-api",
          "app.kubernetes.io/instance": "cocktail-log",
          "app.kubernetes.io/name": "api",
          "chart": "api-1.0.0",
          "heritage": "Helm"
        },
        "spec": {
          "conditions": [],
          "detail": {
            "containers": [
              {
                "environmentVariables": {
                  "APPLICATION_SCRAPE_JOB": "{\"key\":\"APPLICATION_SCRAPE_JOB\",\"name\":\"cocktail-log-api\"}",
                  "AUDIT_SCRAPE_JOB": "{\"key\":\"AUDIT_SCRAPE_JOB\",\"name\":\"cocktail-log-api\"}",
                  "COCKTAIL_API_SERVER": "http://api-server:8080",
                  "CONTAINER_SCRAPE_JOB": "{\"key\":\"CONTAINER_SCRAPE_JOB\",\"name\":\"cocktail-log-api\"}",
                  "LOGGING_FILE_PATH": "/var/log/app/monitoring.log",
                  "LOGGING_FILE_USE": "true",
                  "LOGGING_LEVEL": "debug",
                  "LOKI_ENABLED": "true",
                  "LOKI_SERVER_URL": "http://cocktail-logs-loki-distributed-gateway.cocktail-apm",
                  "SERVICE_PORT": "9100"
                },
                "image": "regi.acloud.run/library/log-api:1.3.0",
                "imagePullPolicy": "Always",
                "name": "api",
                "resources": {
                  "cpu": {
                    "limit": "5",
                    "request": "100m"
                  },
                  "memory": {
                    "limit": "5242880k",
                    "request": "134217728"
                  }
                },
                "restartCount": 0,
                "volumeMounts": {
                  "app-volume": "{\"mountPath\":\"/var/log/app\",\"name\":\"app-volume\",\"subPath\":\"cocktail-log-api\"}",
                  "loki-cert": "{\"mountPath\":\"/etc/loki/cert\",\"name\":\"loki-cert\"}"
                }
              }
            ],
            "imagePullSecrets": [
              {
                "name": "devops-cocktail-t4f1hevxvkmv"
              }
            ],
            "initContainers": [],
            "restartPolicy": "Always",
            "terminationGracePeriodSeconds": 30
          },
          "podStatus": "Pending",
          "restartCnt": 0
        }
      },
      "replicas": 1,
      "revisionHistoryLimit": "10",
      "rollingUpdate": {
        "maxSurge": "25%",
        "maxUnavailable": "25%"
      },
      "selector": {
        "matchLabels": {
          "app.kubernetes.io/app": "cocktail-log-api",
          "app.kubernetes.io/instance": "cocktail-log",
          "app.kubernetes.io/name": "api"
        }
      },
      "status": {
        "available": 1,
        "total": 1,
        "unavailable": 0,
        "updated": 1
      },
      "strategy": "RollingUpdate"
    },
    "images": [
      "regi.acloud.run/library/log-api:1.3.0"
    ],
    "labels": {
      "app": "api",
      "app.kubernetes.io/managed-by": "Helm",
      "chart": "api-1.0.0"
    },
    "matchLabels": {
      "app.kubernetes.io/app": "cocktail-log-api",
      "app.kubernetes.io/instance": "cocktail-log",
      "app.kubernetes.io/name": "api"
    },
    "name": "cocktail-log-api",
    "namespace": "cocktail-system",
    "newReplicaSets": [
      {
        "creationTimestamp": "2023-06-28 08:10:52",
        "deployment": "{\"metadata\":{\"annotations\":{\"acornsoft.io/workload-group-no\":\"12\",\"cocktail-deploy-datetime...",
        "deploymentYaml": "metadata:\n  annotations:\n    acornsoft.io/workload-group-no: '12'\n    cocktail-deploy-datetime...",
        "desiredPodCnt": 1,
        "detail": {
          "annotations": {
            "acornsoft.io/workload-group-no": "12",
            "cocktail-deploy-datetime": "2023-06-28 08:10:52.898",
            "cocktail-user-description": "",
            "deployment.kubernetes.io/desired-replicas": "1",
            "deployment.kubernetes.io/max-replicas": "2",
            "deployment.kubernetes.io/revision": "88",
            "meta.helm.sh/release-name": "cocktail-log",
            "meta.helm.sh/release-namespace": "cocktail-system"
          },
          "creationTime": "2023-06-28 08:10:52",
          "images": [
            "regi.acloud.run/library/log-api:1.3.0"
          ],
          "labels": {
            "app.kubernetes.io/app": "cocktail-log-api",
            "app.kubernetes.io/instance": "cocktail-log",
            "app.kubernetes.io/name": "api",
            "chart": "api-1.0.0",
            "heritage": "Helm",
            "pod-template-hash": "9d5bcff4"
          },
          "name": "cocktail-log-api-9d5bcff4",
          "namespace": "cocktail-system",
          "ownerReferences": [
            {
              "apiVersion": "apps/v1",
              "blockOwnerDeletion": true,
              "controller": true,
              "kind": "Deployment",
              "name": "cocktail-log-api",
              "uid": "85f52a56-52e7-4289-8777-25f8c78d60e5"
            }
          ],
          "podTemplate": {
            "annotations": {
              "kubectl.kubernetes.io/restartedAt": "2023-06-28T08:10:52Z"
            },
            "labels": {
              "app.kubernetes.io/app": "cocktail-log-api",
              "app.kubernetes.io/instance": "cocktail-log",
              "app.kubernetes.io/name": "api",
              "chart": "api-1.0.0",
              "heritage": "Helm",
              "pod-template-hash": "9d5bcff4"
            },
            "spec": {
              "conditions": [],
              "detail": {
                "containers": [
                  {
                    "environmentVariables": {
                      "APPLICATION_SCRAPE_JOB": "{\"key\":\"APPLICATION_SCRAPE_JOB\",\"name\":\"cocktail-log-api\"}",
                      "AUDIT_SCRAPE_JOB": "{\"key\":\"AUDIT_SCRAPE_JOB\",\"name\":\"cocktail-log-api\"}",
                      "COCKTAIL_API_SERVER": "http://api-server:8080",
                      "CONTAINER_SCRAPE_JOB": "{\"key\":\"CONTAINER_SCRAPE_JOB\",\"name\":\"cocktail-log-api\"}",
                      "LOGGING_FILE_PATH": "/var/log/app/monitoring.log",
                      "LOGGING_FILE_USE": "true",
                      "LOGGING_LEVEL": "debug",
                      "LOKI_ENABLED": "true",
                      "LOKI_SERVER_URL": "http://cocktail-logs-loki-distributed-gateway.cocktail-apm",
                      "SERVICE_PORT": "9100"
                    },
                    "image": "regi.acloud.run/library/log-api:1.3.0",
                    "imagePullPolicy": "Always",
                    "name": "api",
                    "resources": {
                      "cpu": {
                        "limit": "5",
                        "request": "100m"
                      },
                      "memory": {
                        "limit": "5242880k",
                        "request": "134217728"
                      }
                    },
                    "restartCount": 0,
                    "volumeMounts": {
                      "app-volume": "{\"mountPath\":\"/var/log/app\",\"name\":\"app-volume\",\"subPath\":\"cocktail-log-api\"}",
                      "loki-cert": "{\"mountPath\":\"/etc/loki/cert\",\"name\":\"loki-cert\"}"
                    }
                  }
                ],
                "imagePullSecrets": [
                  {
                    "name": "devops-cocktail-t4f1hevxvkmv"
                  }
                ],
                "initContainers": [],
                "restartPolicy": "Always",
                "terminationGracePeriodSeconds": 30
              },
              "podStatus": "Pending",
              "restartCnt": 0
            }
          },
          "pods": {
            "running": 1
          },
          "podsStatus": {},
          "selector": {
            "matchLabels": {
              "app.kubernetes.io/app": "cocktail-log-api",
              "app.kubernetes.io/instance": "cocktail-log",
              "app.kubernetes.io/name": "api",
              "heritage": "Helm",
              "pod-template-hash": "9d5bcff4"
            }
          }
        },
        "images": [
          "regi.acloud.run/library/log-api:1.3.0"
        ],
        "labels": {
          "app.kubernetes.io/app": "cocktail-log-api",
          "app.kubernetes.io/instance": "cocktail-log",
          "app.kubernetes.io/name": "api"
        },
        "name": "cocktail-log-api-9d5bcff4",
        "namespace": "cocktail-system",
        "readyPodCnt": 1
      }
    ],
    "readyPodCnt": 1
  }
]

Get cluster namespace Job details

get

Get detailed information for Job in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
jobNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/jobs/{jobName} HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "completionPodCnt": 1,
    "creationTimestamp": "2023-05-15 09:45:06",
    "deployment": "{\"apiVersion\":\"batch/v1\",\"kind\":\"Job\"...",
    "deploymentYaml": "apiVersion: batch/v1\nkind: Job\nmetadata:\n...",
    "desiredPodCnt": 1,
    "detail": {
      "annotations": {
        "helm.sh/hook": "pre-upgrade",
        "helm.sh/hook-delete-policy": "before-hook-creation",
        "helm.sh/hook-weight": "10"
      },
      "backoffLimit": 3,
      "completions": 1,
      "creationTime": "2023-05-15 09:45:06",
      "labels": {
        "app.kubernetes.io/instance": "cocktail-system",
        "app.kubernetes.io/managed-by": "Helm",
        "app.kubernetes.io/name": "cocktail-system"
      },
      "name": "cocktail-system-crd-upgrader-job-k8ssandra",
      "namespace": "cocktail-system",
      "parallelism": 1,
      "podTemplate": {
        "labels": {
          "app.kubernetes.io/instance": "cocktail-system",
          "app.kubernetes.io/managed-by": "Helm",
          "app.kubernetes.io/name": "cocktail-system",
          "app.kubernetes.io/part-of": "k8ssandra-cocktail-system-cocktail-system",
          "controller-uid": "60ccf04f-8999-474e-a38b-61633fcbaa39",
          "helm.sh/chart": "cocktail-system-1.6.1",
          "job-name": "cocktail-system-crd-upgrader-job-k8ssandra"
        },
        "spec": {
          "conditions": [],
          "cpuUsage": 0,
          "detail": {
            "containers": [
              {
                "args": [
                  "-upgradecrds",
                  "--targetVersion",
                  "1.6.1",
                  "--chartName",
                  "cocktail-system"
                ],
                "environmentVariables": {
                  "POD_NAMESPACE": "{\"apiVersion\":\"v1\",\"fieldPath\":\"metadata.namespace\"}"
                },
                "image": "docker.io/k8ssandra/k8ssandra-tools:latest",
                "imagePullPolicy": "IfNotPresent",
                "name": "crd-upgrade-job-k8ssandra",
                "resources": {},
                "restartCount": 0
              }
            ],
            "initContainers": [],
            "restartPolicy": "OnFailure",
            "serviceAccountName": "cocktail-system-crd-upgrader-k8ssandra",
            "terminationGracePeriodSeconds": 30
          },
          "memUsage": 0,
          "podStatus": "Pending",
          "restartCnt": 0
        }
      },
      "selector": {
        "matchLabels": {
          "controller-uid": "60ccf04f-8999-474e-a38b-61633fcbaa39"
        }
      },
      "status": {
        "Failed": 0,
        "Running": 0,
        "Succeeded": 1
      }
    },
    "images": [
      "docker.io/k8ssandra/k8ssandra-tools:latest"
    ],
    "labels": {
      "app.kubernetes.io/instance": "cocktail-system",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "cocktail-system"
    },
    "name": "cocktail-system-crd-upgrader-job-k8ssandra",
    "namespace": "cocktail-system"
  }
]

Get cluster namespace ReplicaSets list

get

Get the list of ReplicaSets in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/replicaset HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "creationTimestamp": "2023-06-28 08:10:52",
    "desiredPodCnt": 1,
    "images": [
      "regi.acloud.run/library/log-api:1.3.0"
    ],
    "labels": {
      "app.kubernetes.io/app": "cocktail-log-api",
      "app.kubernetes.io/instance": "cocktail-log",
      "app.kubernetes.io/name": "api"
    },
    "name": "cocktail-log-api-9d5bcff4",
    "namespace": "cocktail-system",
    "ownerReferences": [
      {
        "apiVersion": "apps/v1",
        "blockOwnerDeletion": true,
        "controller": true,
        "kind": "Deployment",
        "name": "cocktail-log-api",
        "uid": "85f52a56-52e7-4289-8777-25f8c78d60e5"
      }
    ],
    "readyPodCnt": 1
  }
]

Get cluster namespace StatefulSets list

get

Get the list of StatefulSets in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/statefulsets HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "creationTimestamp": "2023-04-29 05:54:54",
    "desiredPodCnt": 1,
    "images": [
      "101.55.69.30/library/api-cmdb:4.7.4-release.20230413"
    ],
    "labels": {
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "api-cmdb"
    },
    "name": "cocktail-api-cmdb",
    "namespace": "cocktail-system",
    "readyPodCnt": 1
  }
]

Get cluster namespace Jobs list

get

Get the list of Jobs in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
200

OK

Get cluster namespace pods logs

get

Get the list of Pods in the specified cluster and namespace..

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
200

OK

Get cluster namespace StatefulSet details

get

Get detailed information for StatefulSet in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
statefulSetNamestringRequired
Responses
200
OK
*/*
get
200

OK

GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/jobs HTTP/1.1
Host: 
Accept: */*
[
  {
    "completionPodCnt": 1,
    "creationTimestamp": "2023-05-15 09:45:06",
    "desiredPodCnt": 1,
    "images": [
      "docker.io/k8ssandra/k8ssandra-tools:latest"
    ],
    "labels": {
      "app.kubernetes.io/instance": "k8ssandra-operator",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "k8ssandra-operator"
    },
    "name": "k8ssandra-operator-crd-upgrader-job-k8ssandra",
    "namespace": "cocktail-system"
  }
]
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/pods HTTP/1.1
Host: 
Accept: */*
[
  {
    "conditions": [
      {
        "lastTransitionTime": "22023-05-01 09:20:19",
        "status": "True",
        "type": "Initialized"
      }
    ],
    "detail": {
      "annotations": {
        "cni.projectcalico.org/containerID": "2869a9d6ccd7a53fc8fdccda05168581a99115ffacd7beb834d816e2ab2ee6e7",
        "cni.projectcalico.org/podIP": "0.0.0.0/0",
        "cni.projectcalico.org/podIPs": "0.0.0.0/0"
      },
      "containers": [
        {
          "args": [
            "mysqld",
            "--general-log=1",
            "--general-log-file=/var/log/mysql/mysql.log",
            "--slow-query-log=1",
            "--slow-query-log-file=/var/log/mysql/mysql-slow.log"
          ],
          "containerID": "containerd://6b87d5769493be45af8a48e97f5bab7ae7cfe8cc4e39d7d2b15ebda3a79da2eb",
          "environmentVariables": {
            "MYSQL_PASSWORD_FILE": "/temp-secret/COCKTAIL_DB_PASSWORD",
            "MYSQL_ROOT_PASSWORD_FILE": "/temp-secret/DB_ROOT_PASSWORD",
            "MYSQL_USER": "{\"key\":\"COCKTAIL_DB_USER\",\"name\":\"cocktail-api-cmdb\"}"
          },
          "image": "101.55.69.30/library/api-cmdb:4.7.4-release.20230413",
          "imageID": "101.55.69.30/library/api-cmdb@sha256:30eea53896de7b26d9f9e8e6903d3706ddbe77ceda5b2bb6807f1da10e231c63",
          "imagePullPolicy": "Always",
          "lastState": "{}",
          "name": "api-cmdb",
          "ready": true,
          "resources": {
            "cpu": {
              "limit": "1",
              "request": "500m"
            },
            "memory": {
              "limit": "2Gi",
              "request": "1Gi"
            }
          },
          "restartCount": 0,
          "startTime": "2023-05-01 09:20:19",
          "state": "{\"running\":{\"startedAt\":\"2023-05-01T09:20:19.000000Z\"}}",
          "volumeMounts": {
            "config": "{\"mountPath\":\"/usr/sbin/ping.sh\",\"name\":\"config\",\"subPath\":\"ping.sh\"}",
            "kube-api-access-cts42": "{\"mountPath\":\"/var/run/secrets/kubernetes.io/serviceaccount\",\"name\":\"kube-api-access-cts42\",\"readOnly\":true}",
            "log": "{\"mountPath\":\"/var/log/mysql\",\"name\":\"log\",\"subPath\":\"api-cmdb\"}",
            "log-rotate": "{\"mountPath\":\"/etc/cron.d/mysql-server-crond\",\"name\":\"log-rotate\",\"subPath\":\"mysql-server-crond\"}",
            "mysqldata": "{\"mountPath\":\"/var/lib/mysql/\",\"name\":\"mysqldata\",\"subPath\":\"data\"}",
            "temp-secret": "{\"mountPath\":\"/temp-secret\",\"name\":\"temp-secret\"}"
          }
        }
      ],
      "creationTimestamp": "2023-05-01 09:20:09",
      "hostname": "cocktail-api-cmdb-0",
      "initContainers": [
        {
          "commands": [
            "/usr/sbin/init_api_cmdb.sh"
          ],
          "containerID": "containerd://9e5d154acc5e85e9db8b829266afe37c2c36a3e0b707187f0905e98769eab07f",
          "image": "101.55.69.30/library/api-cmdb:4.7.4-release.20230413",
          "imageID": "101.55.69.30/library/api-cmdb@sha256:30eea53896de7b26d9f9e8e6903d3706ddbe77ceda5b2bb6807f1da10e231c63",
          "imagePullPolicy": "Always",
          "lastState": "{}",
          "name": "init",
          "ready": true,
          "resources": {
            "cpu": {
              "limit": "20m",
              "request": "20m"
            },
            "memory": {
              "limit": "50Mi",
              "request": "50Mi"
            }
          },
          "restartCount": 0,
          "startTime": "2023-05-01 09:20:16",
          "state": "{\"terminated\":{\"containerID\":\"containerd://9e5d154acc5e85e9db8b829266afe37c2c36a3e0b707187f0905e98769eab07f\",\"exitCode\":0,\"finishedAt\":\"2023-05-01T09:20:18.000000Z\",\"reason\":\"Completed\",\"startedAt\":\"2023-05-01T09:20:16.000000Z\"}}",
          "volumeMounts": {
            "cocktail-secret": "{\"mountPath\":\"/cocktail-secret\",\"name\":\"cocktail-secret\"}",
            "init": "{\"mountPath\":\"/usr/sbin\",\"name\":\"init\"}",
            "kube-api-access-cts42": "{\"mountPath\":\"/var/run/secrets/kubernetes.io/serviceaccount\",\"name\":\"kube-api-access-cts42\",\"readOnly\":true}",
            "log": "{\"mountPath\":\"/var/log/mysql\",\"name\":\"log\",\"subPath\":\"api-cmdb\"}",
            "temp-secret": "{\"mountPath\":\"/temp-secret\",\"name\":\"temp-secret\"}"
          }
        }
      ],
      "labels": {
        "app": "api-cmdb",
        "app.kubernetes.io/instance": "cocktail",
        "app.kubernetes.io/managed-by": "Helm"
      },
      "namespace": "cocktail-system",
      "nodeName": "apps-gpu-v100",
      "ownerReferences": [
        {
          "apiVersion": "apps/v1",
          "blockOwnerDeletion": true,
          "controller": true,
          "kind": "StatefulSet",
          "name": "cocktail-api-cmdb",
          "uid": "cd832df7-397a-4f17-9e38-0fc0f3f5baa0"
        }
      ],
      "podIP": "0.0.0.0",
      "podName": "cocktail-api-cmdb-0",
      "podStatus": "Running",
      "qosClass": "Burstable",
      "restartPolicy": "Always",
      "serviceAccountName": "default",
      "startTime": "2023-05-01 09:20:09",
      "terminationGracePeriodSeconds": 60,
      "tolerations": [
        {
          "effect": "NoExecute",
          "key": "node.kubernetes.io/not-ready",
          "operator": "Exists",
          "tolerationSeconds": 30
        }
      ]
    },
    "namespace": "cocktail-system",
    "nodeName": "apps-gpu-v100",
    "podName": "cocktail-api-cmdb-0",
    "podStatus": "Running",
    "restartCnt": 0,
    "startTime": "2023-05-01 09:20:09"
  }
]
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/statefulsets/{statefulSetName} HTTP/1.1
Host: 
Accept: */*
[
  {
    "creationTimestamp": "2023-04-29 05:54:54",
    "deployment": "{\"apiVersion\":\"apps/v1\",\"kind\":\"StatefulSet\"...",
    "deploymentYaml": "apiVersion: apps/v1\nkind: StatefulSet\n...",
    "desiredPodCnt": 1,
    "detail": {
      "annotations": {
        "acornsoft.io/workload-group-no": "11",
        "meta.helm.sh/release-name": "cocktail",
        "meta.helm.sh/release-namespace": "cocktail-system"
      },
      "creationTime": "2023-04-29 05:54:54",
      "labels": {
        "app.kubernetes.io/instance": "cocktail",
        "app.kubernetes.io/managed-by": "Helm",
        "app.kubernetes.io/name": "api-cmdb"
      },
      "name": "cocktail-api-cmdb",
      "namespace": "cocktail-system",
      "podManagementPolicy": "OrderedReady",
      "podTemplate": {
        "labels": {
          "app": "api-cmdb",
          "app.kubernetes.io/instance": "cocktail",
          "app.kubernetes.io/managed-by": "Helm"
        },
        "spec": {
          "conditions": [],
          "detail": {
            "containers": [
              {
                "args": [
                  "mysqld",
                  "--general-log=1",
                  "--general-log-file=/var/log/mysql/mysql.log"
                ],
                "environmentVariables": {
                  "MYSQL_PASSWORD_FILE": "/temp-secret/COCKTAIL_DB_PASSWORD",
                  "MYSQL_ROOT_PASSWORD_FILE": "/temp-secret/DB_ROOT_PASSWORD",
                  "MYSQL_USER": "{\"key\":\"COCKTAIL_DB_USER\",\"name\":\"cocktail-api-cmdb\"}"
                },
                "image": "101.55.69.30/library/api-cmdb:4.7.4-release.20230413",
                "imagePullPolicy": "Always",
                "name": "api-cmdb",
                "resources": {
                  "cpu": {
                    "limit": "1",
                    "request": "500m"
                  },
                  "memory": {
                    "limit": "2Gi",
                    "request": "1Gi"
                  }
                },
                "restartCount": 0,
                "volumeMounts": {
                  "config": "{\"mountPath\":\"/usr/sbin/ping.sh\",\"name\":\"config\",\"subPath\":\"ping.sh\"}",
                  "log": "{\"mountPath\":\"/var/log/mysql\",\"name\":\"log\",\"subPath\":\"api-cmdb\"}",
                  "log-rotate": "{\"mountPath\":\"/etc/cron.d/mysql-server-crond\",\"name\":\"log-rotate\",\"subPath\":\"mysql-server-crond\"}"
                }
              }
            ],
            "initContainers": [
              {
                "commands": [
                  "/usr/sbin/init_api_cmdb.sh"
                ],
                "image": "101.55.69.30/library/api-cmdb:4.7.4-release.20230413",
                "imagePullPolicy": "Always",
                "name": "init",
                "resources": {
                  "cpu": {
                    "limit": "20m",
                    "request": "20m"
                  },
                  "memory": {
                    "limit": "50Mi",
                    "request": "50Mi"
                  }
                },
                "restartCount": 0,
                "volumeMounts": {
                  "cocktail-secret": "{\"mountPath\":\"/cocktail-secret\",\"name\":\"cocktail-secret\"}",
                  "init": "{\"mountPath\":\"/usr/sbin\",\"name\":\"init\"}",
                  "log": "{\"mountPath\":\"/var/log/mysql\",\"name\":\"log\",\"subPath\":\"api-cmdb\"}",
                  "temp-secret": "{\"mountPath\":\"/temp-secret\",\"name\":\"temp-secret\"}"
                }
              }
            ],
            "restartPolicy": "Always",
            "terminationGracePeriodSeconds": 60
          },
          "podStatus": "Pending",
          "restartCnt": 0
        }
      },
      "replicas": 1,
      "revisionHistoryLimit": "10",
      "rollingUpdate": {
        "partition": 0
      },
      "selector": {
        "matchLabels": {
          "app": "api-cmdb"
        }
      },
      "status": {
        "collisionCount": 0,
        "current": 1,
        "ready": 1,
        "replicas": 1,
        "updated": 1
      },
      "strategy": "RollingUpdate",
      "volumeClaimTemplates": [
        {
          "accessModes": [
            "ReadWriteOnce"
          ],
          "capacity": {
            "storage": "30Gi"
          },
          "name": "mysqldata",
          "storageClassName": "nfs-csi"
        }
      ]
    },
    "images": [
      "101.55.69.30/library/api-cmdb:4.7.4-release.20230413"
    ],
    "labels": {
      "app.kubernetes.io/instance": "cocktail",
      "app.kubernetes.io/managed-by": "Helm",
      "app.kubernetes.io/name": "api-cmdb"
    },
    "name": "cocktail-api-cmdb",
    "namespace": "cocktail-system",
    "readyPodCnt": 1
  }
]

Get cluster namespace HAPs list

get

Get the list of HPA in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
Responses
200
OK
*/*
get
GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/hpas HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "conditions": [
      {
        "lastTransitionTime": "2023-06-28 05:47:42",
        "message": "recent recommendations were higher than current one, applying the highest recent recommendation",
        "reason": "ScaleDownStabilized",
        "status": "True",
        "type": "AbleToScale"
      }
    ],
    "creationTimestamp": "2023-06-14 09:39:07",
    "deployment": "{\"apiVersion\":\"autoscaling/v2\",\"kind\":\"HorizontalPodAutoscaler\"...",
    "deploymentYaml": "apiVersion: autoscaling/v2\nkind: HorizontalPodAutoscaler\nmetadata...",
    "detail": {
      "creationTime": "2023-06-14 09:38:52",
      "currentReplicas": 1,
      "desiredReplicas": 1,
      "labels": {
        "app": "api-server-hpa"
      },
      "lastScaleTime": "2023-07-03 06:53:41",
      "maxReplicas": 3,
      "metrics": [
        {
          "currentAverageUtilization": 0,
          "currentAverageValue": "5m",
          "currentValue": "0",
          "metricType": "Resource",
          "name": "cpu",
          "targetAverageUtilization": 70,
          "targetType": "Utilization"
        }
      ],
      "minReplicas": 2,
      "name": "api-server-hpa",
      "namespace": "cocktail-system",
      "target": "Deployment: cocktail-api-server"
    },
    "maxReplicas": 3,
    "metrics": [
      {
        "currentAverageUtilization": 0,
        "currentAverageValue": "5m",
        "currentValue": 1,
        "metricType": "Resource",
        "name": "cpu",
        "targetAverageUtilization": 70,
        "targetType": "Utilization"
      }
    ],
    "minReplicas": 2,
    "name": "api-server-hpa",
    "namespace": "cocktail-system",
    "scaleTargetRef": {
      "apiVersion": "apps/v1",
      "kind": "Deployment",
      "name": "cocktail-api-server"
    },
    "startTime": "2023-06-28 05:47:26"
  }
]

Get cluster namespace Container log

get

Get the logs of Containers in the specified cluster and namespace.

Path parameters
clusterIdstringRequired
namespaceNamestringRequired
podNamestringRequired
Query parameters
typestringRequired

Log Retrieval Method(tail or since)

countstringOptional

The number of lines to read when the type is 'tail' (up to 10,000).

sinceSecondsstringOptional

Return logs from before the value in seconds

Responses
200
OK
*/*
get
200

OK

GET /v1/clusters/{clusterId}/namespaces/{namespaceName}/pods/{podName}/containers/log?type=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "containerName": "api-cmdb",
    "log": "2023-07-03  8:44:55 571828 [Warning] Aborted connection 571828 to db: 'acloud' user: 'root' host: '127.0.0.1' (Got timeout reading communication packets)\n...",
    "podName": "cocktail-api-cmdb-0"
  }
]

Get workspaces list

get

Get the list of workspaces.

Responses
200
OK
*/*
get
GET /v1/workspaces HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "colorCode": "green",
    "description": "",
    "sortOrder": 0,
    "useYn": "Y",
    "workspaceName": "칵테일 시스템 [ DevOps ]",
    "workspaceSeq": 3
  }
]

Get workspace details

get

Get detailed information for the specified workspace.

Path parameters
workspaceSeqintegerRequired
Responses
200
OK
*/*
get
GET /v1/workspaces/{workspaceSeq} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "clusters": [
    {
      "clusterId": "thingcluster",
      "clusterName": "devops cluster",
      "clusterSeq": 1,
      "clusterState": "RUNNING",
      "cubeType": "MANAGED"
    }
  ],
  "colorCode": "green",
  "description": "",
  "externalRegistries": [],
  "projects": [
    {
      "created": "2023-06-21",
      "projectId": 1,
      "projectName": "library",
      "projectType": "SHARE"
    }
  ],
  "servicemapGroups": [
    {
      "colorCode": "green",
      "servicemapGroupName": "Default",
      "servicemapGroupSeq": 3,
      "sortOrder": 1
    }
  ],
  "servicemaps": [
    {
      "clusterId": "thingcluster",
      "clusterName": "devops cluster",
      "clusterSeq": 1,
      "namespaceName": "cocktail-system",
      "servicemapName": "cocktail-system",
      "servicemapSeq": 2
    }
  ],
  "sortOrder": 1,
  "userSeqs": [
    27
  ],
  "workspaceName": "칵테일 시스템 [ DevOps ]",
  "workspaceSeq": 3,
  "workspaceUsers": [
    {
      "creator": 1,
      "updater": 1,
      "userGrant": "MANAGER",
      "userId": "honggildong",
      "userName": "honggildong",
      "userSeq": 27,
      "workspaceSeq": 3
    }
  ]
}

Get workspace service maps list

get

Get the list of service maps in the specified workspace.

Path parameters
workspaceSeqintegerRequired
Responses
200
OK
*/*
get
GET /v1/workspaces/{workspaceSeq}/servicemaps HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "clusterId": "thingcluster",
    "clusterIpCount": 30,
    "clusterName": "devops cluster",
    "clusterSeq": 1,
    "clusterState": "RUNNING",
    "cubeType": "MANAGED",
    "gateWayCount": 5,
    "ingressCount": 1,
    "loadBalancerCount": 1,
    "namespaceName": "cocktail-system",
    "nodePortCount": 4,
    "providerCode": "IDC",
    "providerName": "Datacenter",
    "regionCode": "Default",
    "serverCount": 32,
    "servicemapName": "cocktail-system",
    "servicemapSeq": 2,
    "volumeRequestCapacity": 0
  }
]

Get service map workloads list

get

Get the list of workloads in the specified workspace and service map.

Path parameters
workspaceSeqintegerRequired
servicemapSeqintegerRequired
Responses
200
OK
*/*
get
200

OK

GET /v1/workspaces/{workspaceSeq}/servicemaps/{servicemapSeq}/workloads HTTP/1.1
Host: 
Accept: */*
[
  {
    "namespaceName": "cocktail-system",
    "workloadGroups": [
      {
        "columnCount": 1,
        "servicemapSeq": 2,
        "sortOrder": 1,
        "useYn": "Y",
        "workloadGroupName": "Default",
        "workloadGroupSeq": 2
      }
    ],
    "workloads": [
      {
        "activeCount": 1,
        "computeTotal": 1,
        "creationTimestamp": "2023-04-29 05:54:54",
        "description": "",
        "namespaceName": "cocktail-system",
        "qos": "Burstable",
        "serverUrls": [
          {
            "serviceType": "CLUSTER_IP",
            "url": "0.0.0.0:0"
          }
        ],
        "stateCode": "RUNNING",
        "workloadGroupSeq": 11,
        "workloadName": "cocktail-api-cmdb",
        "workloadType": "STATEFUL_SET_SERVER"
      }
    ]
  }
]

Get pipeline Execution Details

get

Get execution information of the executed pipe line.

Path parameters
plSeqintegerRequired

Pipeline number

plRunSeqintegerRequired

Pipeline execution number

Responses
200
OK
*/*
get
GET /v1/pipelines/{plSeq}/run/{plRunSeq} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "beginTime": "2023-05-11T02:04:00.000+00:00",
  "canCancel": false,
  "created": "2023-05-11 02:04:00",
  "endTime": "2023-05-11T02:06:28.000+00:00",
  "plName": "cmdb-pipeline",
  "plRunBuilds": [
    {
      "beginTime": "2023-05-11T02:04:00.000+00:00",
      "buildConfig": {
        "accountSeq": 1,
        "autotagPrefix": "0.2",
        "autotagSeqType": "DATETIME",
        "autotagUseYn": "Y",
        "beginTime": "2023-05-11T02:04:00.000+00:00",
        "buildName": "train-ml",
        "buildRunSeq": 314,
        "buildSeq": 16,
        "buildServerTlsVerify": "N",
        "buildStepRuns": [
          {
            "beginTime": "2023-05-11 02:04:00",
            "buildRunSeq": 314,
            "buildStepRunSeq": 920,
            "buildStepSeq": 1,
            "endTime": "2023-05-11 02:04:39",
            "logId": "init-zgq0ng-16-314-920",
            "runTimeBySec": 39,
            "stepOrder": 0,
            "stepState": "DONE",
            "stepType": "INIT"
          }
        ],
        "endTime": "2023-05-11T02:06:16.000+00:00",
        "externalRegistrySeq": 0,
        "imageDigest": "sha256:57628695ba01a467b112d2d9df677709fbdb9e8bf41f583afcba1d5ef53e748a",
        "imageName": "train-ml",
        "imageSize": 1441193109,
        "imageUrl": "101.55.69.30/library-dev/train-ml:0.2-20230511-110400",
        "registryName": "library-dev",
        "runDesc": "optimizer Adam으로 변경",
        "runState": "DONE",
        "runTimeBySec": 136,
        "runType": "BUILD",
        "tagName": "0.2-20230511-110400"
      },
      "buildPrevRunSeq": 313,
      "buildRunSeq": 1,
      "buildSeq": 16,
      "buildTag": "0.2-20230511-110400",
      "created": "2023-05-11 02:04:00",
      "creator": 4,
      "endTime": "2023-05-11T02:06:16.000+00:00",
      "hasBuildRun": true,
      "imgUrl": "101.55.69.30/library-dev/train-ml:0.2-20230511-110400",
      "plResBuildSeq": 214,
      "plRunBuildSeq": 215,
      "plRunSeq": 133,
      "runBuildDeployMapping": [
        {
          "containerName": "train",
          "plRunBuildSeq": 215,
          "plRunDeploySeq": 1817,
          "resName": "train-ml1",
          "resType": "JOB_SERVER"
        }
      ],
      "runLog": "\nStart Build train-ml\nDone Build train-ml",
      "runOrder": 1,
      "runStatus": "DONE",
      "runYn": "Y",
      "updated": "2023-05-11 02:06:16"
    }
  ],
  "plRunDeploys": [
    {
      "beginTime": "2023-05-11T02:04:00.000+00:00",
      "created": "2023-05-11 02:04:00",
      "creator": 4,
      "plRunDeploySeq": 1709,
      "plRunSeq": 133,
      "resName": "train-ml1",
      "resType": "JOB_SERVER",
      "runLog": "\n##### StartDeploy Job > train-ml1 #####\n##### DoneDeploy Job > train-ml1 #####",
      "runOrder": 1,
      "runStatus": "DONE",
      "runYn": "Y",
      "updated": "2023-05-11 02:06:23",
      "updater": 4
    }
  ],
  "plRunSeq": 133,
  "plSeq": 27,
  "runNote": "optimizer Adam으로 변경",
  "runTimeBySec": 148,
  "updated": "2023-05-11 02:06:28",
  "ver": "0.3"
}

Run pipeline

post

Run the pipeline.

Path parameters
plSeqintegerRequired

Pipeline number

Query parameters
runTypestringRequired

Pipeline run type (LATEST, BUILD, DEPLOY, ALL)

runNotestringRequired

Pipeline run note

Responses
200
OK
*/*
post
200

OK

POST /v1/pipelines/{plSeq}/run?runType=text&runNote=text HTTP/1.1
Host: 
Accept: */*
{
  "beginTime": "2023-06-14T09:10:03.000+00:00",
  "callbackUrl": "http://dashboard:3000/callback/",
  "canCancel": false,
  "created": "2023-06-14 09:10:03",
  "endTime": "2023-06-14 09:10:03",
  "plName": "cmdb-pipeline",
  "plRunSeq": 133,
  "plSeq": 26,
  "pubSubject": "status/pl/run/133",
  "runNote": "11",
  "runStatus": "RUNNING",
  "runTimeBySec": 1,
  "updated": "2023-06-14 09:10:03",
  "ver": "test"
}

Get service map workload details

get

Get detailed information for the workloads in the specified workspace and service map.

Path parameters
workspaceSeqintegerRequired
servicemapSeqintegerRequired
workloadNamestringRequired
Responses
200
OK
*/*
get
GET /v1/workspaces/{workspaceSeq}/servicemaps/{servicemapSeq}/workloads/{workloadName} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "namespaceName": "cocktail-system",
  "workloadGroups": [
    {
      "columnCount": 1,
      "servicemapSeq": 2,
      "sortOrder": 1,
      "useYn": "Y",
      "workloadGroupName": "Default",
      "workloadGroupSeq": 2
    }
  ],
  "workloads": [
    {
      "activeCount": 1,
      "computeTotal": 1,
      "containers": [
        {
          "containerName": "api-cmdb",
          "fullImageName": "0.0.0.0/library/api-cmdb:4.7.4-release.20230413",
          "initContainerYn": "N",
          "privateRegistryYn": "N"
        }
      ],
      "creationTimestamp": "2023-04-29 05:54:54",
      "description": "",
      "namespaceName": "cocktail-system",
      "pods": [
        {
          "conditions": [
            {
              "lastTransitionTime": "2023-05-01 09:20:19",
              "status": "True",
              "type": "Initialized"
            }
          ],
          "detail": {
            "annotations": {
              "cni.projectcalico.org/containerID": "2869a9d6ccd7a53fc8fdccda05168581a99115ffacd7beb834d816e2ab2ee6e7",
              "cni.projectcalico.org/podIP": "10.177.142.134/32",
              "cni.projectcalico.org/podIPs": "10.177.142.134/32"
            },
            "containers": [
              {
                "args": [
                  "mysqld",
                  "--general-log=1",
                  "--general-log-file=/var/log/mysql/mysql.log",
                  "--slow-query-log=1",
                  "--slow-query-log-file=/var/log/mysql/mysql-slow.log"
                ],
                "containerID": "containerd://6b87d5769493be45af8a48e97f5bab7ae7cfe8cc4e39d7d2b15ebda3a79da2eb",
                "environmentVariables": {
                  "MYSQL_PASSWORD_FILE": "/temp-secret/COCKTAIL_DB_PASSWORD",
                  "MYSQL_ROOT_PASSWORD_FILE": "/temp-secret/DB_ROOT_PASSWORD",
                  "MYSQL_USER": "{\"key\":\"COCKTAIL_DB_USER\",\"name\":\"cocktail-api-cmdb\"}"
                },
                "image": "101.55.69.30/library/api-cmdb:4.7.4-release.20230413",
                "imageID": "101.55.69.30/library/api-cmdb@sha256:30eea53896de7b26d9f9e8e6903d3706ddbe77ceda5b2bb6807f1da10e231c63",
                "imagePullPolicy": "Always",
                "lastState": "{}",
                "name": "api-cmdb",
                "ready": true,
                "resources": {
                  "cpu": {
                    "limit": "1",
                    "request": "500m"
                  },
                  "memory": {
                    "limit": "2Gi",
                    "request": "1Gi"
                  }
                },
                "restartCount": 0,
                "startTime": "2023-05-01 09:20:19",
                "state": "{\"running\":{\"startedAt\":\"2023-05-01T09:20:19.000000Z\"}}",
                "volumeMounts": {
                  "config": "{\"mountPath\":\"/usr/sbin/ping.sh\",\"name\":\"config\",\"subPath\":\"ping.sh\"}",
                  "kube-api-access-cts42": "{\"mountPath\":\"/var/run/secrets/kubernetes.io/serviceaccount\",\"name\":\"kube-api-access-cts42\",\"readOnly\":true}",
                  "log": "{\"mountPath\":\"/var/log/mysql\",\"name\":\"log\",\"subPath\":\"api-cmdb\"}",
                  "log-rotate": "{\"mountPath\":\"/etc/cron.d/mysql-server-crond\",\"name\":\"log-rotate\",\"subPath\":\"mysql-server-crond\"}",
                  "mysqldata": "{\"mountPath\":\"/var/lib/mysql/\",\"name\":\"mysqldata\",\"subPath\":\"data\"}",
                  "temp-secret": "{\"mountPath\":\"/temp-secret\",\"name\":\"temp-secret\"}"
                }
              }
            ],
            "creationTime": "2023-05-01 09:20:09",
            "hostname": "cocktail-api-cmdb-0",
            "initContainers": [
              {
                "commands": [
                  "/usr/sbin/init_api_cmdb.sh"
                ],
                "containerID": "containerd://9e5d154acc5e85e9db8b829266afe37c2c36a3e0b707187f0905e98769eab07f",
                "image": "101.55.69.30/library/api-cmdb:4.7.4-release.20230413",
                "imageID": "101.55.69.30/library/api-cmdb@sha256:30eea53896de7b26d9f9e8e6903d3706ddbe77ceda5b2bb6807f1da10e231c63",
                "imagePullPolicy": "Always",
                "lastState": "{}",
                "name": "init",
                "ready": true,
                "resources": {
                  "cpu": {
                    "limit": "20m",
                    "request": "20m"
                  },
                  "memory": {
                    "limit": "50Mi",
                    "request": "50Mi"
                  }
                },
                "restartCount": 0,
                "startTime": "2023-05-01 09:20:16",
                "state": "{\"terminated\":{\"containerID\":\"containerd://9e5d154acc5e85e9db8b829266afe37c2c36a3e0b707187f0905e98769eab07f\",\"exitCode\":0,\"finishedAt\":\"2023-05-01T09:20:18.000000Z\",\"reason\":\"Completed\",\"startedAt\":\"2023-05-01T09:20:16.000000Z\"}}",
                "volumeMounts": {
                  "cocktail-secret": "{\"mountPath\":\"/cocktail-secret\",\"name\":\"cocktail-secret\"}",
                  "init": "{\"mountPath\":\"/usr/sbin\",\"name\":\"init\"}",
                  "kube-api-access-cts42": "{\"mountPath\":\"/var/run/secrets/kubernetes.io/serviceaccount\",\"name\":\"kube-api-access-cts42\",\"readOnly\":true}",
                  "log": "{\"mountPath\":\"/var/log/mysql\",\"name\":\"log\",\"subPath\":\"api-cmdb\"}",
                  "temp-secret": "{\"mountPath\":\"/temp-secret\",\"name\":\"temp-secret\"}"
                }
              }
            ],
            "labels": {
              "app": "api-cmdb",
              "app.kubernetes.io/instance": "cocktail",
              "app.kubernetes.io/managed-by": "Helm"
            },
            "namespace": "cocktail-system",
            "nodeName": "apps-gpu-v100",
            "ownerReferences": [
              {
                "apiVersion": "apps/v1",
                "blockOwnerDeletion": true,
                "controller": true,
                "kind": "StatefulSet",
                "name": "cocktail-api-cmdb",
                "uid": "cd832df7-397a-4f17-9e38-0fc0f3f5baa0"
              }
            ],
            "podIP": "10.177.142.134",
            "podName": "cocktail-api-cmdb-0",
            "podStatus": "Running",
            "qosClass": "Burstable",
            "restartPolicy": "Always",
            "serviceAccountName": "default",
            "startTime": "2023-05-01 09:20:09",
            "terminationGracePeriodSeconds": 60,
            "tolerations": [
              {
                "effect": "NoExecute",
                "key": "node.kubernetes.io/not-ready",
                "operator": "Exists",
                "tolerationSeconds": 30
              },
              {
                "effect": "NoExecute",
                "key": "node.kubernetes.io/unreachable",
                "operator": "Exists",
                "tolerationSeconds": 30
              }
            ]
          },
          "namespace": "cocktail-system",
          "nodeName": "apps-gpu-v100",
          "podName": "cocktail-api-cmdb-0",
          "podStatus": "Running",
          "restartCnt": 0,
          "startTime": "2023-05-01 09:20:09"
        }
      ],
      "qos": "BestEffort",
      "serverUrls": [
        {
          "serviceType": "CLUSTER_IP",
          "url": "10.187.158.194:3306"
        }
      ],
      "services": [
        {
          "clusterIp": "0.0.0.0",
          "headlessFlag": false,
          "internalLBFlag": false,
          "name": "api-cmdb",
          "namespaceName": "cocktail-system",
          "ports": [
            {
              "port": 0,
              "protocol": "TCP",
              "targetPort": "0"
            }
          ],
          "serviceType": "CLUSTER_IP",
          "stickySessionFlag": false
        }
      ],
      "stateCode": "RUNNING",
      "workloadGroupSeq": 11,
      "workloadName": "cocktail-api-cmdb",
      "workloadType": "STATEFUL_SET_SERVER"
    }
  ]
}

Get cluster Memory usage trend (Byte)

get

Get the per-minute trend of the overall memory usage in the cluster, categorized by cache and working set.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

Get cluster CPU usage trend (Core)

get

Get the total CPU usage per minute of the cluster.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

Get cluster CPU/Memory request trend (Core/Byte)

get

Get the per-minute trend of overall CPU and memory requests/limits in the cluster.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

Get cluster kube API server request

get

Get the number of requests to the Kubernetes API server in the past 2 minutes, converted to requests per second.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

GET /v1/monitoring-clusters/metric/memory/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "usage-bytes"
    },
    "samples": [
      85735514112,
      85752094720,
      85719015424
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]
GET /v1/monitoring-clusters/metric/cpu/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "usage-cpu"
    },
    "samples": [
      6.05478,
      6.39511,
      6.44867
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]
GET /v1/monitoring-clusters/metric/quota/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "limit-cpu"
    },
    "samples": [
      69.425,
      69.425,
      69.425
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "limit-memory"
    },
    "samples": [
      108818182144,
      108818182144,
      108818182144
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "request-cpu"
    },
    "samples": [
      25.935,
      25.935,
      25.935
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "request-memory"
    },
    "samples": [
      44447803392,
      44447803392,
      44447803392
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  }
]
GET /v1/monitoring-clusters/metric/kube-api-server-request/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster"
    },
    "samples": [
      41.46032,
      39.72698,
      41.31587
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]

Get cluster network usage trend (Mbps)

get

Get the per-minute trend of the overall network usage in the cluster, categorized by inbound and outbound.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-clusters/metric/network/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "inbound"
    },
    "samples": [
      3175670.24444,
      3497435.7,
      3347020
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "outbound"
    },
    "samples": [
      3543429.77778,
      3879819.71111,
      3899043.1
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  }
]

Get workspace service map details

get

Get detailed information for the service maps in the specified workspace.

Path parameters
workspaceSeqintegerRequired
servicemapSeqintegerRequired
Responses
200
OK
*/*
get
GET /v1/workspaces/{workspaceSeq}/servicemaps/{servicemapSeq} HTTP/1.1
Host: 
Accept: */*
200

OK

{
  "clusterId": "thingcluster",
  "clusterName": "devops cluster",
  "clusterSeq": 1,
  "labels": {
    "istio-injection": "disabled",
    "kubernetes.io/metadata.name": "cocktail-system"
  },
  "namespaceName": "cocktail-system",
  "servicemapMappings": [
    {
      "serviceType": "NORMAL",
      "servicemapGroup": {
        "servicemapGroupName": "Default",
        "servicemapGroupSeq": 3,
        "servicemapSeq": 2,
        "sortOrder": 1,
        "workspaceSeq": 3
      },
      "servicemapSeq": 2,
      "workspaceName": "칵테일 시스템 [ DevOps ]",
      "workspaceSeq": 3
    }
  ],
  "servicemapName": "cocktail-system",
  "servicemapSeq": 2,
  "workloadGroups": [
    {
      "columnCount": 1,
      "servicemapSeq": 2,
      "sortOrder": 1,
      "workloadGroupName": "Default",
      "workloadGroupSeq": 2
    }
  ]
}

Get cluster pod CPU usage Top 5 trend (Core)

get

Get the per-minute trend of the CPU usage for the top 5 pods in the cluster with the highest CPU usage.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-clusters/metric/pod-cpu-top/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "namespace": "cocktail-system",
      "pod": "cocktail-api-cmdb-0",
      "workload": "cocktail-api-cmdb"
    },
    "samples": [
      0.21448,
      0.18462,
      0.15429
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]

Get cluster pod Memory usage Top 5 trend (Byte)

get

Get the per-minute trend of the memory usage for the top 5 pods in the cluster with the highest memory usage.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

GET /v1/monitoring-clusters/metric/pod-memory-top/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "namespace": "cocktail-system",
      "pod": "cocktail-api-cmdb-0",
      "workload": "cocktail-api-cmdb"
    },
    "samples": [
      1815183360,
      1817915392,
      1820692480
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]

Get cluster node CPU current load (Core Average)

get

Get the current CPU load by node in the cluster.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
Responses
200
OK
*/*
get
GET /v1/monitoring-nodes/metric/load/result/current?clusterIds=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "load1",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687826040,
    "value": 0.85
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "load5",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687826040,
    "value": 0.72
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "load15",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687826040,
    "value": 0.73
  }
]

Get cluster node CPU usage trend (%)

get

Get the per-minute trend of CPU usage by node in the cluster.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

Get cluster node CPU load trend (Average Core)

get

Get the per-minute trend of CPU load by node in the cluster.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

Get cluster node CPU usage trend by status (%)

get

Get the per-minute trend of CPU usage by state (User, System, Steal, Nice, Irq, Softirq, iowait, Idle) for cluster nodes.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

GET /v1/monitoring-nodes/metric/cpu-usage/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "usage-cpu",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0.07592,
      0.07889,
      0.07764
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]
GET /v1/monitoring-nodes/metric/load/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "load1",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0.06,
      0.05125,
      0.0775
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "load5",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0.06375,
      0.06,
      0.06375
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "load15",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0.07625,
      0.07375,
      0.075
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  }
]
GET /v1/monitoring-nodes/metric/cpu-usage-by-mode/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "mode": "softirq",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0.00097,
      0.00096,
      0.00088
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "mode": "steal",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0,
      0,
      0
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  }
]

Get cluster node Memory usage trend (Byte)

get

Get the per-minute trend of memory usage by node in the cluster, categorized by total, available, used, and used-ratio.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-nodes/metric/memory-usage/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "total",
      "node": "apps-gpu-v100"
    },
    "samples": [
      16607899648,
      16607899648,
      16607899648
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "available",
      "node": "apps-gpu-v100"
    },
    "samples": [
      12771897344,
      12770172928,
      12823642112
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "used",
      "node": "apps-gpu-v100"
    },
    "samples": [
      3836002304,
      3837726720,
      3784257536
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "used-ratio",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0.23097,
      0.23108,
      0.22786,
      0.23104
    ],
    "timestamps": [
      1685620800,
      1685620860,
      1685620920
    ],
    "values": null
  }
]

Get pipeline list

get

Get the list of pipelines in the specified workspace.

Query parameters
workspaceSeqstringRequired
Responses
200
OK
*/*
get
GET /v1/pipelines?workspaceSeq=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "lastRunTime": "2023-06-14T09:10:03.000+00:00",
    "name": "cmdb-pipeline",
    "namespace": "cocktail-system",
    "plSeq": 26,
    "releaseResCount": 4,
    "releaseTime": "2023-04-28T06:36:36.000+00:00",
    "releaseVer": "4.0",
    "status": "ERROR",
    "updateResCount": 0,
    "ver": "5.0"
  }
]

Get service map groups list

get

Get the list of service map groups.

Path parameters
workspaceSeqintegerRequired
Responses
200
OK
*/*
get
GET /v1/workspaces/{workspaceSeq}/servicemapgroup HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "colorCode": "green",
    "servicemapGroupName": "Default",
    "servicemapGroupSeq": 3,
    "sortOrder": 1,
    "workspaceSeq": 3
  }
]

Get cluster restart pod growth rate

get

Get the rate of pods restarted in the cluster.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-ns/metric/pod-restart/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "container": "gateway",
      "namespace": "cocktail-system",
      "pod": "cocktail-api-cmdb-0",
      "workload": "cocktail-api-cmdb"
    },
    "samples": [
      0,
      0,
      0
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]

Get cluster restart pod list

get

Get the list of pods restarted in the cluster.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

GET /v1/monitoring-clusters/metric/pod-restart-list/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "namespaces": "cocktail-system",
      "pod": "cocktail-api-cmdb-0"
    },
    "timestamps": 1685621400,
    "values": 1.3333333333333333
  }
]

Get cluster pod count trend by status

get

Get the per-minute trend of the number of pods by status (Unknown, Failed, Pending, Running, Succeeded).

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-clusters/metric/pod-running/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "phase": "Succeeded"
    },
    "samples": [
      6,
      6,
      6
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]

(deprecated) Get ingress controller average connection count trend - After 4.8.1, it will no longer be supported.

get

Get the per-minute trend of the average connection count for the Ingress Controller.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-ingress/metric/controller-connections/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster"
    },
    "timestamp": 1687741080,
    "value": 0.0048888888888869685
  }
]

Get ingress controller CPU usage trend (Core)

get

Get the per-minute trend of CPU usage for the ingress controller.

Query parameters
clusterIdsstringRequired

Cluster ID for the query target

controllerIdsstringRequired

Name of the Ingress Controller for the query target

startstringRequired

Start date/time of the query (YYYYmmddHHMMss)

endstringRequired

End date/time of the query (YYYYmmddHHMMss)

Responses
200
OK
*/*
get
200

OK

(deprecated) Get ingress controller CPU usage trend (Core) - After 4.8.1, it will no longer be supported.

get

Get the per-minute trend of CPU usage for the ingress controller.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
200

OK

Get cluster node availability

get

Get the available CPU (Core) and memory (Byte) capacity for cluster nodes.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
Responses
200
OK
*/*
get
200

OK

Get cluster node disk detailed usage rate

get

Get the disk details (device, mount point, namespace, pod, etc.) and usage of the cluster node.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
Responses
200
OK
*/*
get
200

OK

GET /v2/monitoring-ingress/metric/controller-average-cpu-usage/result/transition?clusterIds=text&controllerIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster"
    },
    "timestamp": 1687741080,
    "value": 0.0048888888888869685
  }
]
GET /v1/monitoring-ingress/metric/controller-average-cpu-usage/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster"
    },
    "timestamp": 1687741080,
    "value": 0.0048888888888869685
  }
]
GET /v1/monitoring-nodes/metric/capacity/result/current?clusterIds=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "capacity-cpu",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687842900,
    "value": 8
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "capacity-memory",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687842900,
    "value": 16607899648
  }
]
GET /v1/monitoring-nodes/metric/disk-detail-usage/result/current?clusterIds=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "device": "/dev/mapper/centos-root",
      "measure": "used_ratio",
      "mountpoint": "/",
      "namespace": "cocktail-system",
      "node": "apps-gpu-v100",
      "pod": "cocktail-api-cmdb-0",
      "service": "api-cmdb"
    },
    "timestamp": "1687840740",
    "value": "0.015729446533998215"
  }
]

Get ingress controller average connection count trend

get

Get the per-minute trend of the average request rate for the Ingress Controller.

Query parameters
clusterIdsstringRequired

Cluster ID for the query target

controllerIdsstringRequired

Name of the Ingress Controller for the query target

startstringRequired

Start date/time of the query (YYYYmmddHHMMss)

endstringRequired

End date/time of the query (YYYYmmddHHMMss)

Responses
200
OK
*/*
get
GET /v2/monitoring-ingress/metric/controller-requests/result/transition?clusterIds=text&controllerIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster"
    },
    "timestamp": 1687741080,
    "value": 0.2
  }
]

(deprecated) Get ingress controller average request rate trend (ReqPS) - After 4.8.1, it will no longer be supported.

get

Get the per-minute trend of the average request rate for the Ingress Controller.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-ingress/metric/controller-requests/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "controller_class": "k8s.io/ingress-nginx"
    },
    "timestamp": 1687741080,
    "value": 0.2
  }
]

Get cluster node disk free space trend

get

Get the per-minute trend of disk usage by node in the cluster, categorized by total, available, available_ratio, and used Disk.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-nodes/metric/disk-usage/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "device": "/dev/mapper/centos-root",
      "measure": "total",
      "node": "apps-gpu-v100"
    },
    "samples": [
      982015008768,
      982015008768,
      982015008768
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200,
      1687741260
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "device": "/dev/mapper/centos-root",
      "measure": "available",
      "node": "apps-gpu-v100"
    },
    "samples": [
      966450876416,
      966450876416,
      966464471040
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "device": "/dev/mapper/centos-root",
      "measure": "used",
      "node": "apps-gpu-v100"
    },
    "samples": [
      15564132352,
      15564132352,
      15550537728
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "device": "/dev/mapper/centos-root",
      "measure": "available_ratio",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0.98415,
      0.98415,
      0.98416,
      0.98455
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]

Get cluster node disk I/O rate change trend

get

Get the per-minute trend of disk I/O speed change rate by node in the cluster.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-nodes/metric/disk-io/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "device": "dm-0",
      "node": "apps-gpu-v100"
    },
    "samples": [
      0.2952,
      0.29763,
      0.25898
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]

Get cluster node network usage trend by device

get

Get the per-minute trend of network usage by device for cluster nodes.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-nodes/metric/traffic-by-device/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "device": "cali608295ca688",
      "measure": "inbound",
      "node": "apps-gpu-v100"
    },
    "samples": [
      318.2,
      340.33333,
      323.4,
      317.93333
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "device": "cali608295ca688",
      "measure": "outbound",
      "node": "apps-gpu-v100"
    },
    "samples": [
      459.53333,
      580.13333,
      492.56667
    ],
    "timestamps": [
      1687741080,
      1687741140,
      1687741200
    ],
    "values": null
  }
]

Get cluster node uptime

get

Get the uptime of cluster nodes. The operation time represents the duration (without restarting) after the booting of the node (server).

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
Responses
200
OK
*/*
get
200

OK

GET /v1/monitoring-nodes/metric/uptime/result/current?clusterIds=text HTTP/1.1
Host: 
Accept: */*
[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "booting",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687842300,
    "value": 1669889847
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "running",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687842300,
    "value": 1687842293.5012803
  }
]

Get ingress controller request success rate trend

get

Get the per-minute trend of the success rate (2XX) among all requests for the Ingress Controller.

Query parameters
clusterIdsstringRequired

Cluster ID for the query target

controllerIdsstringRequired

Name of the Ingress Controller for the query target

startstringRequired

Start date/time of the query (YYYYmmddHHMMss)

endstringRequired

End date/time of the query (YYYYmmddHHMMss)

Responses
200
OK
*/*
get
GET /v2/monitoring-ingress/metric/controller-success-rate/result/current?clusterIds=text&controllerIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster"
    },
    "timestamp": 1687741080,
    "value": 0.9594736842105263
  }
]

(deprecated) Get ingress controller request success rate trend - After 4.8.1, it will no longer be supported.

get

Get the per-minute trend of the success rate (2XX) among all requests for the Ingress Controller.

Query parameters
clusterIdsstringRequired
startstringRequired

Start date for the query

endstringRequired

End date for the query

Responses
200
OK
*/*
get
GET /v1/monitoring-ingress/metric/controller-success-rate/result/transition?clusterIds=text&start=text&end=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "controller_class": "k8s.io/ingress-nginx"
    },
    "timestamp": 1687741080,
    "value": 0.9594736842105263
  }
]

Get cluster node network usage (bps)

get

Get network usage for cluster nodes, categorized by inbound and outbound.

Query parameters
clusterIdsstringRequired
nodeIdsstringOptional
Responses
200
OK
*/*
get
GET /v1/monitoring-nodes/metric/network/result/current?clusterIds=text HTTP/1.1
Host: 
Accept: */*
200

OK

[
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "inbound",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687841100,
    "value": 421652.79999999993
  },
  {
    "metrics": {
      "cluster": "thingcluster",
      "measure": "outbound",
      "node": "apps-gpu-v100"
    },
    "timestamp": 1687841100,
    "value": 691668.5555555555
  }
]