云服务器内容精选

  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 获取Token ,请参考《 统一身份认证 服务API参考》的“获取用户Token”章节。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 X-Enterprise-Project-ID 否 String 企业项目ID。 创建环境时,环境会绑定企业项目ID。 最大长度36字节,带“-”连字符的UUID格式,或者是字符串“0”。 该字段不传(或传为字符串“0”)时,则查询默认企业项目下的资源。 说明: 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理服务用户指南》。 X-Environment-ID 是 String 环境ID。 获取环境ID,通过《云应用引擎API参考》的“获取环境列表”章节获取环境信息。 请求响应成功后在响应体的items数组中的一个元素即为一个环境的信息,其中id字段即是环境ID。
  • 请求示例 创建环境,环境名称为“test”,组织名“cae-test”,绑定 虚拟私有云VPC 。 POST https://{endpoint}/v1/{project_id}/cae/environments { "api_version" : "v1", "kind" : "Environment", "metadata" : { "annotations" : { "vpc_id" : "9b320498-6c39-4fe7-a758-79636dd68a82", "group_name" : "cae-test", "type" : "exclusive", "subnet_id" : "1c75734a-132c-459f-86e2-a3db86a66b86", "security_group_id" : "e6c5a41d-8f47-48bd-a21b-0a4b10766aef" }, "name" : "test" } }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 api_version String API版本,固定值“v1”,该值不可修改。 kind String API类型,固定值“Job”,该值不可修改。 spec JobSpec object job规格信息。 表4 JobSpec 参数 参数类型 描述 progress Number 任务进度。 status String 任务状态。 tasks Array of Task objects 子任务。 表5 Task 参数 参数类型 描述 index Integer 任务序号。 name String 任务名称。 status String 任务状态。 detail String 任务详情。 created_at String 创建时间。 updated_at String 更新时间。
  • 响应示例 状态码: 200 请求成功。 { "api_version" : "v1", "kind" : "Job", "spec" : { "progress" : 0, "status" : "running", "tasks" : [ { "index" : 1, "name" : "upgrade", "status" : "init", "detail" : "", "created_at" : "2023-02-16T11:24:07.950175Z", "updated_at" : "2023-02-16T11:24:07.950175Z" } ] } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 获取Token,请参考《统一身份认证服务API参考》的“获取用户Token”章节。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 X-Enterprise-Project-ID 否 String 企业项目ID。 创建环境时,环境会绑定企业项目ID。 最大长度36字节,带“-”连字符的UUID格式,或者是字符串“0”。 该字段不传(或传为字符串“0”)时,则查询默认企业项目下的资源。 说明: 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理服务用户指南》。 X-Environment-ID 是 String 环境ID。 获取环境ID,通过《云应用引擎API参考》的“获取环境列表”章节获取环境信息。 请求响应成功后在响应体的items数组中的一个元素即为一个环境的信息,其中id字段即是环境ID。
  • 请求示例 创建事件通知规则。 POST https://{endpoint}/v1/{project_id}/cae/notice-rules { "api_version" : "v1", "kind" : "NoticeRule", "spec" : { "name" : "test", "event_name" : "Started", "scope" : { "type" : "environments", "environments" : [ "f3c12180-b34a-42d8-bb5a-12ba0a6b579e" ] }, "trigger_policy" : { "trigger_type" : "immediately" }, "notification" : { "protocol" : "email", "endpoint" : "123@example.com", "template" : "ZH" }, "enable" : true } }
  • 响应示例 状态码: 200 请求成功。 { "api_version": "v1", "kind": "NoticeRule", "spec": { "id": "133da017-423c-4e1c-80be-8c8c71c9b84e", "name": "test", "event_name": "Started", "scope": { "type": "environments", "environments": [ "f3c12180-b34a-42d8-bb5a-12ba0a6b579e" ] }, "trigger_policy": { "trigger_type": "immediately" }, "notification": { "protocol": "email", "endpoint": "123@example.com" "template": "ZH" }, "enable": true } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 获取Token,请参考《统一身份认证服务API参考》的“获取用户Token”章节。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 X-Enterprise-Project-ID 否 String 企业项目ID。 创建环境时,环境会绑定企业项目ID。 最大长度36字节,带“-”连字符的UUID格式,或者是字符串“0”。 该字段不传(或传为字符串“0”)时,则查询默认企业项目下的资源。 说明: 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理服务用户指南》。 X-Environment-ID 是 String 环境ID。 获取环境ID,通过《云应用引擎API参考》的“获取环境列表”章节获取环境信息。 请求响应成功后在响应体的items数组中的一个元素即为一个环境的信息,其中id字段即是环境ID。 表3 请求Body参数 参数 是否必选 参数类型 描述 api_version 是 String API版本,固定值“v1”,该值不可修改。 kind 是 String API类型,固定值“Application”,该值不可修改。 metadata 是 metadata object 请求数据。 表4 metadata 参数 是否必选 参数类型 描述 name 是 String 应用名称。
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 api_version String API版本,固定值“v1”,该值不可修改。 kind String API类型,固定值“Application”,该值不可修改。 metadata metadata object 响应数据。 表6 metadata 参数 参数类型 描述 id String 应用ID。 name String 应用名称。 created_at String 创建时间。 updated_at String 更新时间。
  • 响应示例 状态码: 200 请求成功。 { "api_version" : "v1", "kind" : "Application", "metadata" : { "id" : "02022b3f-0594-496e-b34e-b41acd2bdde4", "name" : "test", "created_at" : "2022-06-10T06:49:24.836171213Z", "updated_at" : "2022-06-10T06:49:24.836171213Z" } }
  • 请求示例 创建云数据库RDS组件配置,数据库名称为“cae”,地址为100.xx.xx.xxx,端口号为3306。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "rds", "data" : { "spec" : { "rds_id" : "a5fdee4cf88c4277a68688a014f444bdin01", "rds_db_name" : "cae", "rds_address" : "100.xx.xx.xxx", "rds_username" : "cae", "rds_password" : "xxx", "rds_port" : "3306" } } } ] } 创建 微服务引擎CSE 组件配置,配置中心地址:“https://192.168.1.xxx:30103,https://192.168.1.xxx:30103”,服务注册发现地址:“https://192.168.1.xxx:30100,https://192.168.1.xxx:30100”。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "cse", "data" : { "spec" : { "config_center_addr" : "https://192.168.1.xxx:30103,https://192.168.1.xxx:30103", "service_center_addr" : "https://192.168.1.xxx:30100,https://192.168.1.xxx:30100", "cse_id" : "25779525-1aac-44be-abda-f9164f1b41b8" } } } ] } 创建环境变量组件配置,配置时区为Asia/Shanghai,且注入一个名称为password的凭据做为环境变量。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "env", "data" : { "spec" : { "envs" : { "TZ" : "Asia/Shanghai" }, "env_references" : { "env_name" : "db_password", "value_from" : { "name" : "password", "reference_type" : "dewSecret" } } } } } ] } 创建内网访问方式和负载均衡类型的外网访问方式组件配置。 内网访问方式类型为ClusterIP,监听端口为80,访问端口为8080,协议为TCP。 外网访问方式类型为LoadBalancer,监听端口为80,访问端口为9090,协议为TCP,配置白名单访问控制,仅允许170.126.0.0/16网段的用户访问。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "access", "data" : { "spec" : { "items" : [ { "type" : "ClusterIP", "ports" : [ { "target_port" : 80, "port" : 8080, "protocol" : "TCP" } ] }, { "type" : "LoadBalancer", "access_control" : { "type" : "white", "ip_list" : [ "170.126.0.0/16" ] }, "elb_id" : "xxx", "ports" : [ { "target_port" : 80, "port" : 9090, "protocol" : "TCP" } ] } ] } } } ] } 创建转发策略类型的外网访问方式组件配置,如下请求示例配置了两条转发策略,两条策略的对外协议为HTTPS、负载均衡策略为默认策略,使用加权轮询算法、访问端口为8443,配置黑名单访问策略,不允许10.120.1.1和10.120.1.2这两个IP访问,安全策略为tls-1-2-strict,服务器默认证书是test。 第一条转发策略 域名 设置为test.example.com,URL匹配规则为前缀匹配,匹配路径为/test1,监听端口设置为80,第一条访问策略未配置域名证书对,使用默认证书test。 第二条转发策略域名设置为test.example.cn,URL匹配规则为前缀匹配,匹配路径为/test2,监听端口设置为80,第二条访问策略配置了域名证书对,使用域名证书对中的证书test1。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "access", "data" : { "spec" : { "items" : [ { "type" : "Ingress", "access_control" : { "type" : "black", "ip_list" : [ "10.120.1.1", "10.120.1.2" ] }, "ports" : [ { "port" : 8443, "protocol" : "HTTPS", "default_certificate" : "test", "policy" : "tls-1-2-strict", "target_port" : 80, "paths" : [ { "path" : "/test1", "url_match_mode" : "STARTS_WITH", "hostname" : "test.example.com" } ] }, { "port" : 8443, "protocol" : "HTTPS", "default_certificate" : "test", "certificate" : "test1", "policy" : "tls-1-2-strict", "target_port" : 80, "paths" : [ { "path" : "/test2", "url_match_mode" : "STARTS_WITH", "hostname" : "test.example.cn" } ] } ] } ] }, "metadata" : { "annotations" : { "kubernetes.io/elb.health-check-flag" : "off", "kubernetes.io/elb.lb-algorithm" : "ROUND_ROBIN" } } } } ] } 创建伸缩策略组件配置,配置最大实例数3个,最小实例数1个,cpu使用率30%,内存使用率30%,缩容冷却时间窗5分钟,每次最大缩容99个实例,最大扩容4个实例,禁止缩容功能关闭。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "scaling", "data" : { "spec" : { "scale_strategy" : "metric", "max_replica_count" : 3, "min_replica_count" : 1, "advanced" : { "scaledown_stabilization_seconds" : 300, "scaledown_rate" : 99, "scaleup_stabilization_seconds" : 0, "scaleup_rate" : 4, "disable_scaledown" : false }, "triggers" : [ { "metadata" : { "type" : "Utilization", "value" : "30" }, "type" : "cpu" }, { "metadata" : { "type" : "Utilization", "value" : "30" }, "type" : "memory" } ] } } } ] } 创建 云存储 配置组件配置(OBS桶配置、OBS并行文件系统、SFS3.0容量型配置),配置存储桶,挂载路径为/tmp,权限设置为读写;配置并行文件系统,挂载路径为/temp,权限设置为读写。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "volume", "data" : { "spec" : { "volumes" : [ { "volume_id" : "bef119d0-c7d1-4b58-9794-8b74faf80a59", "resource_name" : "test-nacos", "resource_type" : "obs", "resource_sub_type" : "object_bucket", "umask" : "0027", "mount_info" : [ { "path" : "/tmp", "access_mode" : "ReadWriteMany" } ] }, { "mount_info" : [ { "path" : "/temp", "access_mode" : "ReadWriteMany" } ], "volume_id" : "a061934d-52e3-4b36-aea7-6c51879f84c9", "resource_name" : "test", "resource_type" : "obs", "resource_sub_type" : "parallel_file_system", "umask" : "0027" } ] } } } ] } 创建健康检查组件配置(配置存活探针、就绪探针、启动探针)。 配置存活探针,类型为livenessProbe,检测周期10s,延迟时间1s,超时时间1s,成功阈值1,最大失败次数3,端口为80,协议HTTP,路径、请求头未设置。 配置就绪探针,类型为readinessProbe,检测周期10s,延迟时间0s(0可不传),超时时间1s,成功阈值1,最大失败次数3,端口为80,协议HTTP,路径、请求头未设置。 配置启动探针,类型为startupProbe,检测周期10s,延迟时间0s(0可不传),超时时间1s,成功阈值1,最大失败次数3,端口为80,协议HTTP,路径未设置,请求头设置x-auth-token。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "healthCheck", "data" : { "spec" : { "livenessProbe" : { "periodSeconds" : 10, "initialDelaySeconds" : 1, "timeoutSeconds" : 1, "successThreshold" : 1, "failureThreshold" : 3, "httpGet" : { "path" : "", "port" : 80, "httpHeaders" : [ ], "scheme" : "HTTP" } }, "startupProbe" : { "periodSeconds" : 10, "timeoutSeconds" : 1, "successThreshold" : 1, "failureThreshold" : 3, "httpGet" : { "path" : "", "port" : 80, "httpHeaders" : [ { "name" : "x-auth-token", "value" : "xxx" } ], "scheme" : "HTTP" } }, "readinessProbe" : { "periodSeconds" : 10, "timeoutSeconds" : 1, "successThreshold" : 1, "failureThreshold" : 3, "httpGet" : { "path" : "", "port" : 80, "httpHeaders" : [ ], "scheme" : "HTTP" } } } } } ] } 创建生命周期管理组件配置(配置启动后处理、停止前处理)。配置启动后命令脚本“/bin/sh -c "echo service start"”,配置停止前命令脚本“/bin/sh -c "echo service end"”。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "lifecycle", "data" : { "spec" : { "postStart" : { "exec" : { "command" : [ "/bin/sh", "-c", "echo service start" ] } }, "preStop" : { "exec" : { "command" : [ "/bin/sh", "-c", "echo service end" ] } } } } } ] } 创建自定义日志配置,创建自定义路径“/var/log/error.log”。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "log", "data" : { "spec" : { "log_paths" : [ "/var/log/error.log" ] } } } ] } 创建性能管理配置,探针注入方式为自动注入。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "apm2", "data" : { "spec" : { "instrumentation" : "automatic" } } } ] } 创建自定义监控指标配置,采集路径为/metrics,采集端口为2112,指定一个自定义监控指标,名称为myapp_processed_ops_total。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "customMetric", "data" : { "spec" : { "path" : "/metrics", "port" : 2112, "metrics" : [ "myapp_processed_ops_total" ] } } } ] } 使用增删改模式新增转发策略类型的外网访问方式组件配置,如下请求示例配置了基于最后一次生效配置中uid为“1”的访问方式中uid为“1-1”的转发策略配置,修改了监听端口为8080,URL为/test3,域名为test.example.com,URL匹配规则为正则匹配并且剩余字段保持不变后新增到原有配置中。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "access", "data" : { "spec" : { "items" : [ { "operator" : "modify", "uid" : 1, "ports" : [ { "operator" : "copy", "uid" : "1-1", "target_port" : 8080, "paths" : [ { "path" : "/test3", "url_match_mode" : "REGEX", "hostname" : "test.example.com" } ] } ] } ] } } } ] } 使用增删改模式删除转发策略类型的外网访问方式组件配置,如下请求示例配置了将最后一次生效配置中uid为“1”的访问方式中uid为“1-2”的转发策略配置删除。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "access", "data" : { "spec" : { "items" : [ { "operator" : "modify", "uid" : 1, "ports" : [ { "operator" : "delete", "uid" : "1-2" } ] } ] } } } ] } 使用增删改模式修改转发策略类型的外网访问方式组件配置,如下请求示例配置了将最后一次生效配置中uid为“1”的访问方式中uid为“1-2”的转发策略配置,只修改监听端口为8081。 POST https://{endpoint}/v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations { "api_version" : "v1", "kind" : "ComponentConfiguration", "items" : [ { "type" : "access", "data" : { "spec" : { "items" : [ { "operator" : "modify", "uid" : 1, "ports" : [ { "operator" : "modify", "uid" : "1-2", "target_port" : 8081 } ] } ] } } } ] }
  • URI POST /v1/{project_id}/cae/applications/{application_id}/components/{component_id}/configurations 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取项目ID请参见获取项目ID。 application_id 是 String 应用ID。 component_id 是 String 组件ID。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 获取Token,请参考《统一身份认证服务API参考》的“获取用户Token”章节。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 X-Enterprise-Project-ID 否 String 企业项目ID。 创建环境时,环境会绑定企业项目ID。 最大长度36字节,带“-”连字符的UUID格式,或者是字符串“0”。 该字段不传(或传为字符串“0”)时,则查询默认企业项目下的资源。 说明: 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理服务用户指南》。 X-Environment-ID 是 String 环境ID。 获取环境ID,通过《云应用引擎API参考》的“获取环境列表”章节获取环境信息。 请求响应成功后在响应体的items数组中的一个元素即为一个环境的信息,其中id字段即是环境ID。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 api_version String API版本,固定值“v1”,该值不可修改。 kind String API类型,固定值“Component”,该值不可修改。 items Array of MountComponent objects 挂载组件列表。 表4 MountComponent 参数 参数类型 描述 env_id String 环境ID。 env_name String 环境名称。 app_id String 应用ID。 app_name String 应用名称。 component_id String 组件ID。 component_name String 组件名称。
  • 响应示例 状态码: 200 返回{}表示成功,返回组件信息,表明这些组件挂载了当前云存储,当前云存储不能解绑。 { "api_version" : "v1", "kind" : "Component", "items" : [ { "env_id" : "5d3d1e90-2f5d-4ef1-958b-3fc1ed0b0898", "env_name" : "test", "app_id" : "c904781d-aea0-49d4-b756-9b847a10a437", "app_name" : "test", "component_id" : "f5de88cc-64be-4f70-ac17-db745eb76e67", "component_name" : "test-config" } ] }