批量实例内核版本升级
功能介绍
GaussDB批量实例版本升级。包括灰度升级,就地升级、热补丁升级三种升级方式。 批量实例可升级版本大于当前所有实例的最小引擎版本,且选择的所有实例,其升级方式和操作方式要保持一致。若批量实例升级方式是灰度升级,默认升级所有AZ和分片。
-
就地升级:就地升级需要停止业务进行,会一次性升级集群中所有节点。就地升级需要暂停业务30分钟来升级。
-
灰度升级:
每个主DN或者CN组件升级就有一次10秒业务中断。升级过程均是先管理面,再数据面,由备到主的升级方式。
- 升级自动提交:所有节点进程一起升级,在升级过程中有大概10秒的业务中断,不阻塞其他业务操作。
- 升级待观察:升级待观察,将数据库升级过程细分为升级,提交两个阶段。
- 升级阶段可以根据部署方式细分为按分片或者按AZ的滚动升级。
- 分布式实例:根据分片数滚动升级。批量实例升级方式下,默认升级所有分片。
- 主备版实例:根据AZ数进行滚动升级。批量实例升级方式下,默认升级所有分片。
- 提交阶段可以对升级完成后的实例进行业务测试,根据需要可以选择提交升级或者升级回退。
- 提交升级:在升级完成进入提交阶段时,业务测试正常后提交升级,完成本次升级流程。
- 升级回退:在升级完成进入提交阶段时,可以根据需要回退本次升级,回退到升级前的版本。
- 升级阶段可以根据部署方式细分为按分片或者按AZ的滚动升级。
-
热补丁升级:
- 升级自动提交:热补丁自动升级并提交,中间无业务中断,仅修复产品BUG。
- 升级回退:热补丁回退,无业务中断时间。
-
调用接口前,您需要了解API 认证鉴权。
-
调用接口前,您需要提前获取到地区和终端节点,即下文中的Endpoint值。
调试
您可以在API Explorer中调试该接口。
URI
PUT https://{
Endpoint
}/v3/{project_id}/instances/db-upgrade
表1 参数说明
参数
是否必选
参数类型
描述
project_id
是
String
参数解释:
租户在某一Region下的项目ID。
获取方法请参见获取项目ID。
约束限制:
不涉及。
取值范围:
只能由英文字母、数字组成,且长度为32个字符。
默认取值:
不涉及。
请求参数
表2 请求Body参数
参数
是否必选
参数类型
描述
instance_ids
是
Array of strings
批量实例ID。
upgrade_type
是
String
实例升级类型。包括就地升级,灰度升级、热补丁升级三种。区分大小写。
取值范围:
- grey:灰度升级。
- inplace:就地升级。
- hotfix:热补丁升级。
upgrade_action
否
String
实例升级操作,就地升级无需传值。灰度升级包括升级自动提交,升级待观察,提交升级,升级回退四种。区分大小写。
- upgrade:升级。
- upgradeAutoCommit:升级自动提交。
- commit:提交。
- rollback:回滚。
target_version
否
String
批量实例升级目标版本,非必填。
如果未传值,灰度升级和就地升级默认升级到当前实例的优选三位版本,如果是大版本升级,灰度升级和就地升级必填此参数。热补丁升级无需传该值,默认升级实例所有可升级热补丁。
响应参数
表3 响应参数
参数
参数类型
描述
job_ids
Array of strings
任务ID。
succeeded_num
Integer
下发成功的实例数量。
failed_num
Integer
下发失败的实例数量。
failed_instance_ids
Array of strings
下发失败的实例ID列表。
error_messages
Array of strings
下发失败错误信息列表。
请求示例
-
批量实例就地升级
PUT https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/v3/0483b6b16e954cb88930a360d2c4e663/instances/db-upgrade { "instance_ids" : [ "cc0ae5c47bf94834bf9e44138f7f995ain14", "aa0ae5c47bf94834bf9e44138f7f995ain14" ], "upgrade_type" : "inplace" , "target_version" : "8.100.0" } -
批量实例灰度升级并采用升级待观察方式升级传参。
PUT https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/v3/0483b6b16e954cb88930a360d2c4e663/instances/db-upgrade { "instance_ids" : [ "cc0ae5c47bf94834bf9e44138f7f995ain14", "aa0ae5c47bf94834bf9e44138f7f995ain14" ], "upgrade_type" : "grey", "upgrade_action" : "upgrade", "target_version" : "8.100.0" } -
批量实例灰度升级并采用回滚方式升级传参。
PUT https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/v3/0483b6b16e954cb88930a360d2c4e663/instances/db-upgrade { "instance_ids" : [ "cc0ae5c47bf94834bf9e44138f7f995ain14", "aa0ae5c47bf94834bf9e44138f7f995ain14" ], "upgrade_type" : "grey", "upgrade_action" : "rollback", "target_version" : "8.100.0" } -
批量实例灰度升级并采用升级自动提交方式升级传参。
PUT https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/v3/0483b6b16e954cb88930a360d2c4e663/instances/db-upgrade { "instance_ids" : [ "cc0ae5c47bf94834bf9e44138f7f995ain14", "aa0ae5c47bf94834bf9e44138f7f995ain14" ], "upgrade_type" : "grey", "upgrade_action" : "upgradeAutoCommit", "target_version" : "8.100.0" } -
批量实例热补丁升级并采用升级自动提交方式升级传参。
PUT https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/v3/0483b6b16e954cb88930a360d2c4e663/instances/db-upgrade { "instance_ids" : [ "cc0ae5c47bf94834bf9e44138f7f995ain14", "aa0ae5c47bf94834bf9e44138f7f995ain14" ], "upgrade_type" : "hotfix", "upgrade_action" : "upgradeAutoCommit" } -
批量实例热补丁升级回退并采用升级回退方式传参。
PUT https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/v3/0483b6b16e954cb88930a360d2c4e663/instances/db-upgrade { "instance_ids" : [ "cc0ae5c47bf94834bf9e44138f7f995ain14", "aa0ae5c47bf94834bf9e44138f7f995ain14" ], "upgrade_type" : "hotfix", "upgrade_action" : "rollback" }
响应示例
{
"job_ids" : [ "2b414788a6004883a02390e2eb0ea227", "aa414788a6004883a02390e2eb0ea228" ],
"succeeded_num" : 2,
"failed_num" : 1,
"failed_instance_ids" : [ "cc0ae5c47bf94834bf9e44138f7f995ain14" ],
"error_messages" : [ "实例状态异常,无法进行该操作" ]
}
状态码
-
正常
202
-
异常
请参见状态码。
错误码
请参见错误码。