調用UpdatePublicWhiteIps,更新指定Elasticsearch實例的公網地址訪問白名單。
注意事項
- 當實例狀態為生效中(activating)、失效(invalid)和凍結(inactive)時,無法更新實例的公網地址訪問白名單。
- 您可以通過兩種方式更新白名單:IP白名單列表和IP白名單組。兩種方式不能同時使用,且除了InstanceId和clientToken外,兩種方式支持配置的參數也不同,具體如下:
- IP白名單列表:publicIpWhitelist
- IP白名單組:modifyMode、whiteIpGroup
- 公網訪問白名單不支持配置私網IP地址,私網訪問白名單不支持配置公網IP地址。
調試
您可以在OpenAPI Explorer中直接運行該接口,免去您計算簽名的困擾。運行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。
請求頭
該接口使用公共請求頭,無特殊請求頭。請參見公共請求參數文檔。
請求語法
PATCH|POST /openapi/instances/{InstanceId}/public-white-ips HTTP/1.1
請求參數
名稱 | 類型 | 位置 | 是否必選 | 示例值 | 描述 |
---|---|---|---|---|---|
InstanceId | String | Path | 是 | es-cn-tl329rbpc0001**** |
實例ID。 |
clientToken | String | Query | 否 | 5A2CFF0E-5718-45B5-9D4D-70B3FF**** |
用于保證請求的冪等性。由客戶端生成該參數值,要保證在不同請求間唯一,最大不超過64個ASCII字符。 |
modifyMode | String | Query | 否 | Cover |
修改方式,取值含義如下:
|
RequestBody
參數 |
類型 |
是否必選 |
示例值 |
描述 |
---|---|---|---|---|
publicIpWhitelist |
List<String> |
是 |
["0.0.0.0/0","0.0.0.0/1"] |
IP地址白名單列表。whiteIpGroup為空時可用,該參數值會更新Default白名單分組中的IP白名單配置。 不支持同時配置publicIpWhitelist和whiteIpGroup。 |
whiteIpGroup |
Object |
否 |
以白名單組方式更新實例白名單配置,僅支持更新一個白名單組。 不支持同時配置publicIpWhitelist和whiteIpGroup。 |
|
└ groupName |
String |
否 |
test_group_name |
白名單組的組名。如果選填了whiteIpGroup參數,則該參數必填。 |
└ ips |
List<String> |
否 |
["0.0.0.0", "10.2.XX.XX"] |
白名單組中的IP列表。如果選填了whiteIpGroup參數,則該參數必填。 |
注意 白名單組的增加和刪除是由modifyMode為Cover的調用來實現的,Delete和Append無法實現白名單組粒度的增刪,只能修改白名單組中的IP地址列表。具體說明如下:
- modifyMode為Cover時,如果ips為空,則刪除該白名單組。如果groupName不在已有白名單組組名的列表中,則會新建一個白名單組。
- modifyMode為Delete時,刪除后的ips至少需要保留一個IP地址。
- modifyMode為Append時,需要保證白名單組組名為已創建,否則會提示NotFound的錯誤。
返回數據
名稱 | 類型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | C82758DD-282F-4D48-934F-92170A33**** |
請求ID。 |
Result | Object |
返回結果。 |
|
publicIpWhitelist | Array of String | ["0.0.0.0","10.2.XX.XX","110.0.XX.XX/8"] |
公網地址訪問白名單列表。 |
說明 下文返回示例中,本文只保證包含返回數據列表中的參數,而未提到的參數僅供參考,參數說明請參見ListInstance。程序中不能強制依賴獲取這些參數。
示例
請求示例
PATCH /openapi/instances/es-cn-tl329rbpc0001****/public-white-ips HTTP/1.1
Host:elasticsearch.aliyuncs.com
Content-Type:application/json
{
"publicIpWhitelist": [
"110.0.XX.XX/8"
]
}
或
{
"whiteIpGroup": {
"groupName": "test_group_name",
"ips": [
"0.0.0.0",
"10.2.XX.XX"
]
}
}
正常返回示例
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"Result" : {
"instanceId" : "es-cn-tl329rbpc0001****",
"version" : "7.10.0_with_X-Pack",
"description" : "test",
"nodeAmount" : 0,
"paymentType" : "postpaid",
"status" : "active",
"privateNetworkIpWhiteList" : [ "11.22.XX.XX", "0.0.XX.XX/0" ],
"enablePublic" : true,
"nodeSpec" : { },
"dataNode" : false,
"networkConfig" : {
"vpcId" : "vpc-bp1jy348ibzulk6h***",
"vswitchId" : "vsw-bp1a0mifpletdd1da****",
"vsArea" : "cn-hangzhou-h",
"whiteIpGroupList" : [ {
"groupName" : "default",
"ips" : [ "0.0.XX.XX/0", "11.22.XX.XX" ],
"whiteIpType" : "PRIVATE_ES"
}, {
"groupName" : "default",
"ips" : [ "110.0.XX.XX/9" ],
"whiteIpType" : "PUBLIC_KIBANA"
}, {
"groupName" : "default",
"ips" : [ "192.168.XX.XX/24" ],
"whiteIpType" : "PRIVATE_KIBANA"
}, {
"groupName" : "default",
"ips" : [ "110.0.XX.XX/8" ],
"whiteIpType" : "PUBLIC_ES"
}, {
"groupName" : "test_group_name",
"ips" : [ "0.0.0.0", "10.2.XX.XX" ],
"whiteIpType" : "PUBLIC_ES"
} ],
"type" : "vpc"
},
"createdAt" : "2021-07-21T01:29:38.510Z",
"updatedAt" : "2021-07-21T06:40:32.438Z",
"commodityCode" : "elasticsearch",
"extendConfigs" : [ {
"configType" : "usageScenario",
"value" : "log"
}, {
"configType" : "maintainTime",
"maintainStartTime" : "02:00Z",
"maintainEndTime" : "06:00Z"
}, {
"configType" : "aliVersion",
"aliVersion" : "ali1.4.0"
}, {
"configType" : "followCube",
"followClusterEnabled" : true
} ],
"endTime" : 4782556800000,
"clusterTasks" : [ ],
"vpcInstanceId" : "es-cn-tl329rbpc0001****-worker",
"resourceGroupId" : "rg-acfmxxkk2p7****",
"zoneCount" : 1,
"protocol" : "HTTP",
"zoneInfos" : [ {
"zoneId" : "cn-hangzhou-h",
"status" : "NORMAL"
} ],
"instanceType" : "elasticsearch",
"inited" : true,
"tags" : [ {
"tagKey" : "acs:rm:rgId",
"tagValue" : "rg-acfmxxkk2p7****"
} ],
"serviceVpc" : true,
"domain" : "es-cn-tl329rbpc0001****.elasticsearch.aliyuncs.com",
"port" : 9200,
"esVersion" : "7.10.0_with_X-Pack",
"esConfig" : {
"action.destructive_requires_name" : "true",
"xpack.watcher.enabled" : "false",
"action.auto_create_index" : "+.*,-*"
},
"esIPWhitelist" : [ "11.22.XX.XX", "0.0.XX.XX/0" ],
"esIPBlacklist" : [ ],
"kibanaProtocol" : "HTTPS",
"kibanaIPWhitelist" : [ "::1", "110.0.XX.XX/9" ],
"kibanaPrivateIPWhitelist" : [ "192.168.XX.XX/24" ],
"publicIpWhitelist" : [ "0.0.0.0", "10.2.XX.XX", "110.0.XX.XX/8" ],
"kibanaDomain" : "es-cn-tl329rbpc0001****.kibana.elasticsearch.aliyuncs.com",
"kibanaPort" : 5601,
"kibanaPrivateDomain" : "es-cn-tl329rbpc0001****-kibana.internal.elasticsearch.aliyuncs.com",
"kibanaPrivatePort" : 5601,
"publicPort" : 9200,
"publicDomain" : "es-cn-tl329rbpc0001****.public.elasticsearch.aliyuncs.com",
"haveKibana" : true,
"instanceCategory" : "IS",
"dedicateMaster" : false,
"advancedDedicateMaster" : false,
"masterConfiguration" : { },
"haveClientNode" : false,
"warmNode" : true,
"warmNodeConfiguration" : {
"spec" : "elasticsearch.d1.2xlarge",
"amount" : 3
},
"clientNodeConfiguration" : { },
"kibanaConfiguration" : {
"spec" : "elasticsearch.n4.small",
"amount" : 1,
"disk" : 0
},
"elasticDataNodeConfiguration" : { },
"haveElasticDataNode" : false,
"dictList" : [ {
"name" : "SYSTEM_MAIN.dic",
"fileSize" : 2782602,
"sourceType" : "ORIGIN",
"type" : "MAIN"
}, {
"name" : "SYSTEM_STOPWORD.dic",
"fileSize" : 132,
"sourceType" : "ORIGIN",
"type" : "STOP"
} ],
"synonymsDicts" : [ ],
"ikHotDicts" : [ ],
"aliwsDicts" : [ ],
"haveGrafana" : false,
"haveCerebro" : false,
"enableKibanaPublicNetwork" : true,
"enableKibanaPrivateNetwork" : true,
"advancedSetting" : {
"gcName" : "CMS"
},
"enableMetrics" : true,
"readWritePolicy" : {
"writeHa" : false
}
},
"RequestId" : "9E5466DE-E29A-4F87-9019-4AA7B80E60DE"
}
錯誤碼
HttpCode | 錯誤碼 | 錯誤信息 | 描述 |
---|---|---|---|
400 | InstanceActivating | Instance is activating. | 實例目前處于生效中。 |
400 | InstanceNotFound | The instanceId provided does not exist. | 實例找不到,請核對實例狀態。 |
訪問錯誤中心查看更多錯誤碼。