Component management-related APIs
Component management-related APIs
Get component status
Access basic component information and status.
If already installed, deployment parameters and related information will be displayed.
Request structure
1GET /v2/cluster/{ClusterID}/addon
2Host: cce.bj.baidubce.com
3Authorization: authorization string
Request headers
There are no special headers required beyond the common headers.
Request parameters
| Parameter name | Types | Required or not | Parameter location | Description |
|---|---|---|---|---|
| clusterID | String | Yes | URL parameter | Cluster ID. |
| addons | String | No | Query | If null, retrieves information on all components. When querying multiple components, separate with commas, e.g., cce-ingress-controller,cce-gpu-controller. Refer to the appendix for valid values. |
Response headers
No special headers are required beyond the standard ones.
Response parameters
| Parameter name | Types | Required or not | Description |
|---|---|---|---|
| requestID | String | Yes | Request ID, useful for issue troubleshooting. |
| items | List<[AddOnInfo](CCE/API_V2 Reference/Appendix.md#AddOnInfo)> | No | Component query results, where each array element corresponds to the result for a particular component. |
| code | String | No | Error code, present only when the request fails. |
| message | String | No | Error description, available only in case of a request failure. |
Request example
1GET /v2/cluster/cce-5e130ugt/addon?addons=cce-ingress-controller HTTP/1.1
2Host: cce.bj.baidubce.com
3Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2019-03-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
Response example
1HTTP/1.1 200 OK
2X-Bce-Request-Id: aef503ab-66e2-4b7f-9044-e922389ed03f
3Date: Thu, 16 Mar 2020 06:29:48 GMT
4Content-Type: application/json;charset=UTF-8
5{
6 "items": [
7 {
8 "meta": {
9 "name": "cce-ingress-controller",
10 "type": "Networking",
11 "latestVersion": "1.3.5",
12 "shortIntroduction": "Implement K8s Ingress semantics based on Baidu AI Cloud Application Load Balancer (Application BLB), providing Layer 7 network load balancing capabilities",
13 "defaultParams": "\n# Default values for cce-ingress-controller\n# This is a YAML-formatted file.\n# Declare variables to be passed into your templates.\n\nClusterVersion: v2\nImageID: registry.baidubce.com/cce-plugin-dev/cce-ingress-controller:rc853b4b_20230117\n\nOpenCCEGatewayEndpoint:\nBLBOpenAPIEndpoint:\nEIPOpenAPIEndpoint:\nVPCEndpoint:\nCCEV2Endpoint:\nTagEndpoint:\n\nEIPPurchaseType:\n\nRegion: # Cluster region\nClusterID: # Cluster ID\nConcurrentIngressSyncs: # Maximum number of services processed simultaneously\nDefaultMaxRSCount: # Maximum number of backends mounted by default for BLB by component\n",
14 "installInfo": {
15 "allowInstall": true
16 }
17 },
18 "instance": {
19 "name": "cce-ingress-controller",
20 "installedVersion": "2022.11.08.1552",
21 "params": "# No Params",
22 "status": {
23 "phase": "Running"
24 },
25 "uninstallInfo": {
26 "allowUninstall": true
27 },
28 "upgradeInfo": {
29 "allowUpgrade": false,
30 "nextVersion": "",
31 "message": "Version upgrade is not supported now"
32 },
33 "updateInfo": {
34 "allowUpdate": false,
35 "message": "Parameter update is not supported"
36 }
37 }
38 }
39 ],
40 "requestID": "62709f56-3f0b-4fcc-86e0-c18547ba1ce7"
41}
Install component
Install a component in the cluster.
Installation parameters differ based on the component. Deployment parameters are provided as strings.
Request structure
1POST /v2/cluster/{ClusterID}/addon
2Host: cce.bj.baidubce.com
3Authorization: authorization string
Request headers
There are no special headers required beyond the common headers.
Request parameters
| Parameter name | Types | Required or not | Parameter location | Description |
|---|---|---|---|---|
| clusterID | String | Yes | URL parameter | Cluster ID. |
| name | String | Yes | Request Body parameters | Specify the name of the component to install. |
| params | String | No | Request Body parameters | Component installation parameters vary. Refer to [Appendix] for details, as some components do not require installation parameters. |
| version | String | No | Request Body parameters | Specify the version of the component to install. This parameter is usually not set. |
Response headers
No special headers are required beyond the standard ones.
Response parameters
| Parameter name | Types | Required or not | Description |
|---|---|---|---|
| requestID | String | Yes | Request ID, useful for issue troubleshooting. |
| code | String | No | Error code, present only when the request fails. |
| message | String | No | Error description, available only in case of a request failure. |
Request example
1POST /v2/cluster/cce-5e130ugt/addon HTTP/1.1
2Host: cce.bj.baidubce.com
3Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2019-03-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
4{
5 "name": "cce-gpu-manager",
6 "params": "EnableHook: true\nEnableSGPU: true\n\n"
7}
Response example
1HTTP/1.1 200 OK
2X-Bce-Request-Id: 6f593304-6787-45ea-8e0f-426ee331cc8b
3Date: Thu, 16 Mar 2020 06:29:48 GMT
4Content-Type: application/json;charset=UTF-8
5{
6 "requestID": "6f593304-6787-45ea-8e0f-426ee331cc8b"
7}
Uninstall component
Uninstall a component that has been deployed in the cluster.
Request structure
1DELETE /v2/cluster/{ClusterID}/addon
2Host: cce.bj.baidubce.com
3Authorization: authorization string
Request headers
There are no special headers required beyond the common headers.
Request parameters
| Parameter name | Types | Required or not | Parameter location | Description |
|---|---|---|---|---|
| clusterID | String | Yes | URL parameter | Cluster ID. |
| name | String | Yes | Request Body parameters | Provide the name of the component to uninstall. |
| instanceName | String | No | Request Body parameters | Enter the name of the component instance to uninstall. This is applicable only for components supporting multi-instance deployment to indicate the specific instance to remove. This field is generally not used. |
Response headers
No special headers are required beyond the standard ones.
Response parameters
| Parameter name | Types | Required or not | Description |
|---|---|---|---|
| requestID | String | Yes | Request ID, useful for issue troubleshooting. |
| code | String | No | Error code, present only when the request fails. |
| message | String | No | Error description, available only in case of a request failure. |
Request example
1DELETE /v2/cluster/cce-5e130ugt/addon HTTP/1.1
2Host: cce.bj.baidubce.com
3Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2019-03-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
4{
5 "name": "cce-ingress-controller"
6}
Response example
1HTTP/1.1 200 OK
2X-Bce-Request-Id: 6f593304-6787-45ea-8e0f-426ee331cc8b
3Date: Thu, 16 Mar 2020 06:29:48 GMT
4Content-Type: application/json;charset=UTF-8
5{
6 "requestID": "6f593304-6787-45ea-8e0f-426ee331cc8b"
7}
Update component deployment parameters
Update the deployment parameters for a component installed in the cluster.
Request structure
1PUT /v2/cluster/{ClusterID}/addon
2Host: cce.bj.baidubce.com
3Authorization: authorization string
Request headers
There are no special headers required beyond the common headers.
Request parameters
| Parameter name | Types | Required or not | Parameter location | Description |
|---|---|---|---|---|
| clusterID | String | Yes | URL parameter | Cluster ID. |
| name | String | Yes | Request Body parameters | Enter the name of the component to update. |
| instanceName | String | No | Request Body parameters | Specify the name of the component instance to update. This applies only to components allowing multi-instance deployment. This field is typically not used. |
| params | String | Yes | Request Body parameters | Provide the deployment parameters to be updated. |
Response headers
No special headers are required beyond the standard ones.
Response parameters
| Parameter name | Types | Required or not | Description |
|---|---|---|---|
| requestID | String | Yes | Request ID, useful for issue troubleshooting. |
| code | String | No | Error code, present only when the request fails. |
| message | String | No | Error description, available only in case of a request failure. |
Request example
1PUT /v2/cluster/cce-mehgoi9r/addon HTTP/1.1
2Host: cce.bj.baidubce.com
3Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2019-03-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
4{
5 "name": "cce-hybrid-manager",
6 "params": "A: a"
7}
Response example
1HTTP/1.1 200 OK
2X-Bce-Request-Id: 6f593304-6787-45ea-8e0f-426ee331cc8b
3Date: Thu, 16 Mar 2020 06:29:48 GMT
4Content-Type: application/json;charset=UTF-8
5{
6 "requestID": "6f593304-6787-45ea-8e0f-426ee331cc8b"
7}
Component dilatation
Upgrade the version of a component deployed in the cluster.
Request structure
1POST /v2/cluster/{ClusterID}/addon/upgrade
2Host: cce.bj.baidubce.com
3Authorization: authorization string
Request headers
There are no special headers required beyond the common headers.
Request parameters
| Parameter name | Types | Required or not | Parameter location | Description |
|---|---|---|---|---|
| clusterID | String | Yes | URL parameter | Cluster ID. |
| name | String | Yes | Request Body parameters | Specify the name of the component to upgrade. |
| targetVersion | String | No | Request Body parameters | Indicate the target upgrade version. This field is rarely used, as the target version is typically determined automatically by the backend. |
| instanceName | String | No | Request Body parameters | Enter the name of the component instance to upgrade. This applies only for components supporting multi-instance deployment. This field is generally not used. |
| params | String | No | Request Body parameters | Provide the parameters to be updated during the upgrade. This field is typically not used. |
Response headers
No special headers are required beyond the standard ones.
Response parameters
| Parameter name | Types | Required or not | Description |
|---|---|---|---|
| requestID | String | Yes | Request ID, useful for issue troubleshooting. |
| code | String | No | Error code, present only when the request fails. |
| message | String | No | Error description, available only in case of a request failure. |
Request example
1POST /v2/cluster/cce-jx4l7afz/addon/upgrade HTTP/1.1
2Host: cce.bj.baidubce.com
3Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2019-03-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
4{
5 "name": "cce-npu-manager"
6}
Response example
1HTTP/1.1 200 OK
2X-Bce-Request-Id: 6f593304-6787-45ea-8e0f-426ee331cc8b
3Date: Thu, 16 Mar 2020 06:29:48 GMT
4Content-Type: application/json;charset=UTF-8
5{
6 "requestID": "6f593304-6787-45ea-8e0f-426ee331cc8b"
7}
Component name list
| Component name | Parameter name |
|---|---|
| CCE GPU Manager | cce-gpu-manager |
| CCE AI Job Scheduler | cce-volcano |
| CCE RDMA Device Plugin | cce-rdma-plugin |
| CCE PaddleFlow | cce-paddleflow |
| CCE Fluid | cce-fluid |
| CCE Deep Learning Frameworks Operator | cce-aibox |
| CCE Image Accelerate | cce-image-accelerate |
| CCE Hybrid Manager | cce-hybrid-manager |
| CCE Ingress NGINX Controller | cce-ingress-nginx-controller |
| CCE Ingress Controller | cce-ingress-controller |
| CCE CSI CDS Plugin | cce-csi-cds-plugin |
| CCE CSI BOS Plugin | cce-csi-bos-plugin |
| CCE CSI PFS Plugin | cce-csi-pfs-plugin |
| CCE NPU Manager | cce-npu-manager |
| CCE Log Operator | cce-log-operator |
Component example parameters
CCE GPU Manager
1EnableSGPU: false # true: isolated in kernel mode; false: isolated in user mode
2 GPUShareMemoryUnit: GiB # memory sharing resource reporting unit GiB/MiB
3 IgnoreDeviceType: false # whether to ignore card type, defaulting to false, with card model included in the reported resource
CCE AI Job Scheduler
1Binpack: true # Binpack: false indicates enabling spread
2 Reclaimgang: true # whether to start preemption in the queue
3 Preemptgang: true # whether to start inter-queue preemption
CCE RDMA Device Plugin
This component does not require user to set parameters
CCE PaddleFlow
1global:
2 PF_SELFED_DB_ENABLED: &selfd_mysql true
3 PF_DB_DATABASE: &pf_db_database paddleflow
4 PF_DB_HOST: &pf_db_host mysql-standalone
5 PF_DB_PASSWORD: &mysqlpwd Paddle@2022
6 PF_DB_USER: &pf_db_user root
7 PF_DB_PORT: &pf_db_port 3306
8 PF_SVC_TYPE: &pf_svc_type NodePort
9 PF_SERVER_NODE_PORT: &pf_server_node_port 30999
10 PF_LB_IP: &eip "0.0.0.0"
11 CCE_LB_ID: "lb-12345678"
12 CCE_LB_SBN_ID: "sbn-123456789123"
13 CCE_LB_INTERNAL: true
14 CCE_LB_POD_DERICT: false
15 IMAGE_REPOSITORY: registry.baidubce.com/cce-plugin-dev/paddleflow
16paddleflow-server:
17 out_depend_msg:
18 PF_DB_DATABASE: *pf_db_database
19 PF_DB_HOST: *pf_db_host
20 PF_DB_PASSWORD: *mysqlpwd
21 PF_DB_PORT: *pf_db_port
22 PF_DB_USER: *pf_db_user
23 paddleflow_server:
24 service:
25 extra_usr_define_services:
26 paddleflow-server:
27 ports:
28 port-0:
29 nodePort: *pf_server_node_port
30 loadBalancerIP: *eip
31 type: *pf_svc_type
32paddleflow-db-init:
33 out_depend_msg:
34 PF_DB_DATABASE: *pf_db_database
35 PF_DB_HOST: *pf_db_host
36 PF_DB_PASSWORD: *mysqlpwd
37 PF_DB_PORT: *pf_db_port
38 PF_DB_USER: *pf_db_user
39mysql-replication:
40 enabled: *selfd_mysql
41 fullnameOverride: *pf_db_host
42 nameOverride: *pf_db_host
43 auth:
44 rootPassword: *mysqlpwd
45 database: *pf_db_database
46 username: *pf_db_user
47 password: *mysqlpwd
48 primary:
49 service:
50 port: *pf_db_port
CCE Fluid
This component does not require user to set parameters
CCE Deep Learning Frameworks Operator
1TFOperatorEnable: false
2MPIOperatorEnable: false
3PyTorchOperatorEnable: false
4PaddleOperatorEnable: false
5MXNetOperatorEnable: false
6AITrainingOperatorEnable: false
CCE Image Accelerate
This component does not require user to set parameters
CCE Hybrid Manager
1version:
2 scheduler: 1.2.8
3 hybridlet: 1.2.8
4globalSLA:
5 cpu:
6 highPercent: 65
7 bestEffortMaxCores: 60
8 memory:
9 highPercent: 80
10 bestEffortMax: 60
11 net:
12 inHigh: 10000
13 bestEffortInHigh: 10000
14 outHigh: 10000
15 bestEffortOutHigh: 10000
16 coolDownSec: 10
17 expulsionDelaySec: 60
18 maxInstances: 256
CCE Ingress NGINX Controller
1controller:
2 ingressClass: ads
3 kind: DaemonSet
4 nodeSelector:
5 instance-group-id: cce-ig-ubn1700b
6 resources:
7 limits:
8 cpu: 0.5
9 memory: 1024Mi
10 requests:
11 cpu: 0.25
12 memory: 256Mi
13 scope:
14 enabled: false
15 namespace: ""
16 service:
17 annotations:
18 service.beta.kubernetes.io/cce-load-balancer-internal-vpc: true
19 tolerations: []
20fullnameOverride: ads-ngx-control
21isArchArm64: false
CCE Ingress Controller
This component does not require user to set parameters
CCE CSI CDS Plugin
1maxVolumesPerNode: 5 # Maximum number of CDS PVs mounted on each node in the maxVolumesPerNode cluster
2 cluster: # kubeletRootPath user node Kubelet data directory. List all data directories that have appeared on any node in the cluster here. If the node has not specifically modified the kubelet data directory, it can be omitted.
3 nodes:
4 - kubeletRootPath: "/home/cce/kubelet"
5 kubeletRootPathAffinity: true
6 - kubeletRootPath: "/data/kubelet"
7 kubeletRootPathAffinity: true
8 - kubeletRootPath: "/var/lib/kubelet"
9 kubeletRootPathAffinity: true
CCE CSI BOS Plugin
1maxVolumesPerNode: 5 # Maximum number of BOS PVs mounted on each node in the maxVolumesPerNode cluster
2 cluster: # kubeletRootPath user node Kubelet data directory. List all data directories that have appeared on any node in the cluster here. If the node has not specifically modified the kubelet data directory, it can be omitted.
3 nodes:
4 - kubeletRootPath: "/home/cce/kubelet"
5 kubeletRootPathAffinity: true
6 - kubeletRootPath: "/data/kubelet"
7 kubeletRootPathAffinity: true
8 - kubeletRootPath: "/var/lib/kubelet"
9 kubeletRootPathAffinity: true
CCE CSI PFS Plugin
1pfs:
2 configEndpoint: "" # configEndpoint PFS connection address and port
3 parentDir: /kubernetes # parentDir represents the subpath with read/write permissions for CSI. Paths requiring static PV mounts must be kept in the range of this path Maximum /, defaulting to /kubernetes. Before mounting, ensure the path has been authorized for the K8S Cluster CCE machines.
4 nodes: # kubeletRootPath user node Kubelet data directory. List all data directories that have appeared on any node in the cluster here. If the node has not specifically modified the kubelet data directory, it can be omitted.
5 - kubeletRootPath: "/var/lib/kubelet"
6 kubeletRootPathAffinity: true
7 - kubeletRootPath: "/home/cce/kubelet"
8 kubeletRootPathAffinity: true
9 - kubeletRootPath: "/data/kubelet"
10 kubeletRootPathAffinity: true
CCE NPU Manager
1XPUUseSriov: false # If started, segment by hardware isolation, not supporting virtual machine
2 XPUSriovNumVfs: 3 # Specify the number of Kunlun hardware segments
CCE Log Operator
This component does not require user to set parameters
