接口功能介紹
創建集群(包周期,即包年/包月)。
接口約束
參數校驗必須通過。
注意事項:
?1.云搜索和數據分析類型集群不支持task節點組
?2.云搜索類型集群的core類型節點組機器數量為1-15,且可以沒有core節點組
?3.非云搜索類型的集群,都需要存在master和core-1節點組,且core-1節點組機器數量為3-15
?4.自定義類型集群需參考組件依賴關系
components組件信息如下:
?data-lake數據湖
??必選組件:OpenLDAP(2.4.50)、Kerberos(1.18.2)、ZooKeeper(3.7.1)、HDFS(3.3.3)、YARN(3.3.3)、Hive(3.1.2)、Tez(0.10.1)、TezUI(0.10.1)、Spark(3.4.1)、Hudi(0.14.0)、Iceberg(1.4.3)
??可選組件:HBase(2.4.12)、Trino(440)、Kyuubi(1.8.2)、Doris(2.1.6)、Ranger(2.2.0)、Kafka(2.8.1)、KafkaUI(1.0.0)、Knox(1.6.1)、Flink(1.16.2)、JeekeFS(1.1.1)、Flume(1.11.0)、SeaTunnel(2.3.7)、Pushgateway(1.6.2)
?data-analysis數據分析
??必選組件:Doris(2.1.6)
?data-service數據服務
??必選組件:OpenLDAP(2.4.50)、Kerberos(1.18.2)、ZooKeeper(3.7.1)、HDFS(3.3.3)、YARN(3.3.3)、HBase(2.4.12)
??可選組件:Ranger(2.2.0)、Knox(1.6.1)、JeekeFS(1.1.1)
?cloud-search云搜索
??必選組件:Elasticsearch(7.10.2)、Kibana(7.10.2)
??可選組件:Logstash(7.10.2)
?real-time-data-processing實時數據流
??必選組件:HDFS(3.3.3)、YARN(3.3.3)、Flink(1.16.2)、ZooKeeper(3.7.1)、Kerberos(1.18.2)、OpenLDAP(2.4.50)、Hudi(0.14.0)、Iceberg(1.4.3)、SeaTunnel(2.3.7)
??可選組件:Kafka(2.8.1)、KafkaUI(1.0.0)、Knox(1.6.1)、JeekeFS(1.1.1)、Pushgateway(1.6.2)
?customize自定義
??可選組件:OpenLDAP(2.4.50)、Kerberos(1.18.2)、ZooKeeper(3.7.1)、HDFS(3.3.3)、YARN(3.3.3)、Hive(3.1.2)、Spark(3.4.1)、Hudi(0.14.0)、Iceberg(1.4.3)、HBase(2.4.12)、Trino(440)、Kyuubi(1.8.2)、Doris(2.1.6)、Ranger(2.2.0)、Kafka(2.8.1)、KafkaUI(1.0.0)、Knox(1.6.1)、Flink(1.16.2)、JeekeFS(1.1.1)、Flume(1.11.0)、Tez(0.10.1)、TezUI(0.10.1)、SeaTunnel(2.3.7)、Pushgateway(1.6.2)
自定義集群組件依賴關系如下:
?Flink????依賴(全部)HDFS、Hudi、Iceberg、Kerberos、OpenLDAP、SeaTunnel、YARN、ZooKeeper
?HBase???依賴(全部)HDFS、Kerberos、OpenLDAP、ZooKeeper
?HDFS????依賴(全部)Kerberos、OpenLDAP、ZooKeeper
?Hive????依賴(全部)HDFS、Hudi、Iceberg、Kerberos、OpenLDAP、Tez、YARN、ZooKeeper
?Hudi????依賴(任意)Flink、Hive、Spark
?Iceberg???依賴(任意)Flink、Hive、Spark
?JeekeFS???依賴(全部)Kerberos
?Kafka????依賴(全部)Kerberos、ZooKeeper
?KafkaUI???依賴(全部)Kafka、Kerberos、OpenLDAP
?Kerberos??依賴(全部)OpenLDAP
?Knox????依賴(全部)Kerberos、OpenLDAP
?Kyuubi???依賴(全部)HDFS、Hive、Kerberos、OpenLDAP、Spark、YARN、ZooKeeper
?Ranger???依賴(全部)HDFS、Kerberos、OpenLDAP、ZooKeeper
?Spark????依賴(全部)HDFS、Hive、Hudi、Iceberg、Kerberos、OpenLDAP、YARN、ZooKeeper
?TezUI????依賴(全部)Tez、YARN
?Trino????依賴(全部)Kerberos、OpenLDAP
?YARN????依賴(全部)HDFS、Kerberos、OpenLDAP、ZooKeeper
?ZooKeeper?依賴(全部)Kerberos、OpenLDAP
URI
POST /v2/emr/openapi/order/new
路徑參數
無
Query參數
無
請求參數
請求頭header參數
無
請求體body參數
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 | 下級對象 |
|---|---|---|---|---|---|
| cluster_name | 是 | String | 集群名稱: 大寫字母、小寫字母、數字和特殊符號- _ : /組成,最多支持28個字符 |
sjfw-test-1 | |
| cluster_type | 是 | String | 集群類型: data-lake:數據湖 data-analysis:數據分析 data-service:數據服務 cloud-search:云搜索 real-time-data-processing:實時數據流 customize:自定義 |
data-lake | |
| components | 是 | String | 組件信息: 多個組件“,”隔開 |
OpenLDAP,Kerberos,ZooKeeper,HDFS,YARN,Hive,Tez,Spark,Hudi,Iceberg,Ranger | |
| region_id | 是 | String | 資源池ID | bb9fdb42056f11eda1610242ac110002 | |
| available_zone_id | 是 | String | 可用區ID | cn-huadong1-jsnj3A-public-ctcloud | |
| vpc_Id | 是 | String | VPC ID | vpc-n83zi9vuo0 | |
| subnet_id | 是 | String | 子網ID | subnet-8hzbyype9r | |
| security_groups_id | 是 | String | 安全組ID | sg-zfh4pgydhe | |
| enable_ipv6 | 否 | Boolean | 開啟IPv6: true:開啟 false:關閉 VPC支持時默認true |
false | |
| node_root_password | 是 | String | 節點的root密碼: 長度為12-26字符,需包含大寫字母、小寫字母、數字和特殊符號(僅包括:~!@#$%^*_-+{[]}:,.?),不能包含root、toor相關大小寫變形字符串和3位及以上連續數字或字符 |
Juhwqe7h!21Da. | |
| os_type | 是 | String | 操作系統類型: CTyun:CTyunOS Kylin:麒麟 |
CTyun | |
| host_type | 是 | String | 主機類型: ecs:云主機 dps:物理機 |
ecs | |
| cpu_type | 是 | String | CPU類型: X86:X86 ARM:ARM |
X86 | |
| spec_type | 是 | Integer | 規格類型: 1:通用云主機 2:國產云主機 3:通用物理機 4:國產物理機 主機類型為“ecs”時可選“1”和“2”,為“dps”時可選“3”和“4” |
1 | |
| dps_type | 否 | String | 裸金屬類型: EBM:彈性裸金屬 SBM:標準裸金屬 主機類型為“dps”時必填 |
EBM | |
| charge_info | 是 | Object | 計費信息 |
表charge_info | |
| datasource_configs | 否 | Array of Objects | 關聯數據連接信息: 部署Hive和Ranger等組件時,可以關聯數據連接,將元數據存儲于關聯的數據庫 |
表datasource_config | |
| node_details | 是 | Array of Objects | 節點組詳情 | 表node_detail |
表 charge_info
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 | 下級對象 |
|---|---|---|---|---|---|
| charge_mode | 是 | String | 計費模式: prePaid:包周期,即包年/包月 |
prePaid | |
| period_type | 是 | String | 周期類型: month:包月 year: 包年 |
month | |
| period_num | 是 | Integer | 周期數: 當“period_type”為“month”時,取值為1-11 當“period_type”為“year”時,取值為1-5 |
1 | |
| is_auto_renew | 否 | Boolean | 是否自動續費: true:是 false:否 默認false |
false |
表 datasource_config
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 | 下級對象 |
|---|---|---|---|---|---|
| type | 是 | String | 組件類型: Hive、Ranger |
Hive | |
| properties | 是 | Array of Objects | 配置信息 | 表property |
表 property
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 | 下級對象 |
|---|---|---|---|---|---|
| name | 是 | String | 名稱: DB_Host、DB_Port、DB_Name、DB_User、DB_Password |
||
| value | 是 | String | 值 |
表 node_detail
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 | 下級對象 |
|---|---|---|---|---|---|
| group_name | 是 | String | 節點組名稱: master,core1-11,task1-10,節點組總數不超過12 |
master | |
| node_num | 是 | Integer | 節點數量: master節點組固定3,core和task節點組1-15(非云搜索類型的集群core-1節點數量最小為3) |
3 | |
| node_size | 是 | String | 實例規格 | s7.2xlarge.4 | |
| affinity_group | 否 | Boolean | 反親和性云主機組: true:反親和 false:親和 默認true 主機類型為“ecs”時有效,為“dps”時可不填 |
true | |
| disk_specifications | 是 | Array of Objects | 磁盤規格 | 表disk_specification |
表 disk_specification
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 | 下級對象 |
|---|---|---|---|---|---|
| disk_function | 是 | String | 磁盤分類: SYSTEM:系統盤 DATA:數據盤 |
SYSTEM | |
| disk_type | 是 | String | 磁盤類型: cloud:云盤 local:本地盤 |
cloud | |
| io_type | 否 | String | 磁盤IO類型: SATA:普通IO SAS:高IO SSD:超高IO SSD-genric:通用型SSD 磁盤類型為“cloud”時必填 |
SATA | |
| disk_size | 否 | Integer | 磁盤大小: 80-32768,單位GB, 磁盤類型為“cloud”時必填 |
80 | |
| disk_num | 否 | Integer | 磁盤數量: 系統盤固定1,數據盤1-6 磁盤類型為“cloud”時必填 |
1 | |
| raid_uuid | 否 | String | 磁盤RAID UUID 磁盤類型為“local”時必填 |
r-wtzluqacgzzxgunnabdkpnpjew3d |
響應參數
| 參數 | 參數類型 | 說明 | 示例 | 下級對象 |
|---|---|---|---|---|
| statusCode | Integer | 狀態碼,成功:200,失敗:500 | 200 | |
| error | String | 錯誤碼,請求成功時,不返回該字段 | EMR_400000 | |
| message | String | 用來簡述當前接口調用狀態以及必要提示信息 | 請求成功 | |
| returnObj | Object | 返回結果 | 表 returnObj |
表 returnObj
| 參數 | 參數類型 | 說明 | 示例 | 下級對象 |
|---|---|---|---|---|
| orderNo | String | 訂單號 | 20221018153152727265 |
枚舉參數
無
請求示例
請求url
//emr-global.ctapi.daliqc.cn/v2/emr/openapi/order/new
請求頭header
無
請求體body
數據湖請求示例:
{
"cluster_name": "sjfw-test-1",
"cluster_type": "data-lake",
"components": "OpenLDAP,Kerberos,ZooKeeper,HDFS,YARN,Hive,Tez,Spark,Hudi,Iceberg,HBase,Trino,Kyuubi,Doris,Ranger,Kafka,Knox,Flink,JeekeFS,Flume",
"region_id": "bb9fdb42056f11eda1610242ac110002",
"available_zone_id": "cn-huadong1-jsnj3A-public-ctcloud",
"vpc_Id": "vpc-n83zi9vuo0",
"subnet_id": "subnet-8hzbyype9r",
"security_groups_id": "sg-zfh4pgydhe",
"enable_ipv6": false,
"node_root_password": "Juhwqe7h!21Da.",
"os_type": "CTyun",
"host_type": "ecs",
"cpu_type": "X86",
"spec_type": 1,
"dps_type": null,
"charge_info": {
"charge_mode": "prePaid",
"period_type": "month",
"period_num": 1,
"is_auto_renew": false
},
"datasource_configs": [{
"type": "Hive",
"properties": [{
"name": "DB_Host",
"value": "192.168.1.100"
}, {
"name": "DB_Port",
"value": "3306"
}, {
"name": "DB_Name",
"value": "hive-1"
}, {
"name": "DB_User",
"value": "hive"
}, {
"name": "DB_Password",
"value": "A121daDAqw2A."
}
]
}, {
"type": "Ranger",
"properties": [{
"name": "DB_Host",
"value": "192.168.1.100"
}, {
"name": "DB_Port",
"value": "3306"
}, {
"name": "DB_Name",
"value": "ranger-1"
}, {
"name": "DB_User",
"value": "ranger"
}, {
"name": "DB_Password",
"value": "A121daDAqw2A."
}
]
}
],
"node_details": [{
"group_name": "master",
"node_num": 3,
"node_size": "physical.s5.2xlarge1",
"affinity_group": true,
"disk_specifications": [{
"disk_function": "SYSTEM",
"disk_type": "cloud",
"io_type": "SATA",
"disk_size": 100,
"disk_num": 1
}, {
"disk_function": "DATA",
"disk_type": "cloud",
"io_type": "SATA",
"disk_size": 80,
"disk_num": 2
}
]
}, {
"group_name": "core-1",
"node_num": 3,
"node_size": "physical.s5.2xlarge1",
"affinity_group": true,
"disk_specifications": [{
"disk_function": "SYSTEM",
"disk_type": "cloud",
"io_type": "SATA",
"disk_size": 100,
"disk_num": 1
}, {
"disk_function": "DATA",
"disk_type": "cloud",
"io_type": "SATA",
"disk_size": 80,
"disk_num": 2
}
]
}, {
"group_name": "task-1",
"node_num": 1,
"node_size": "physical.s5.2xlarge4",
"affinity_group": true,
"disk_specifications": [{
"disk_function": "SYSTEM",
"disk_type": "local",
"raid_uuid": "r-wtzluqacgzzxgunnabdkpnpjew3d"
}, {
"disk_function": "DATA",
"disk_type": "local",
"raid_uuid": "r-qytwf9r5h0yn9x4evjkyr0n1cwyb"
}
]
}
]
}
響應示例
請求成功示例:
{
"statusCode": 200,
"message": "success",
"returnObj": {
"orderNo": "20221018153152727265"
}
}
驗簽失敗示例:
{
"statusCode": 500,
"error": "EMR_401000",
"message": "OpenAPI認證失敗",
"returnObj": {}
}
實名認證失敗示例:
{
"statusCode": 500,
"error": "EMR_401009",
"message": "賬號未進行實名認證",
"returnObj": {}
}
非法操作示例:
{
"statusCode": 500,
"error": "EMR_401004",
"message": "非法操作",
"returnObj": {}
}
請求參數類型錯誤示例:
{
"statusCode": 500,
"error": "EMR_401001",
"message": "請求參數類型錯誤",
"returnObj": "{\"cluster_Name\": \"應為字符串\"}"
}
請求參數值無效示例1:
{
"statusCode": 500,
"error": "EMR_401002",
"message": "請求參數值無效",
"returnObj": "{\"cluster_Name\": \"不能為空\"}"
}
請求參數值無效示例2:
{
"statusCode": 500,
"error": "EMR_401002",
"message": "請求參數值無效",
"returnObj": "{\"cluster_type\": \"集群類型不存在:xxx\"}"
}
規格不足示例:
{
"statusCode": 500,
"error": "EMR_401012",
"message": "規格已售罄",
"returnObj": {}
}
IP不足示例:
{
"statusCode": 500,
"error": "EMR_401013",
"message": "子網下IP余量不足",
"returnObj": {}
}
狀態碼
請參考
錯誤碼
請參考