更新时间:2024-05-21 GMT+08:00

实例内核版本升级

功能介绍

GaussDB实例版本升级。包括就地升级,灰度升级,热补丁升级三种升级方式。

  • 就地升级

    就地升级需要停止业务进行,会一次性升级集群中所有节点。就地升级需要暂停业务30分钟来升级。

  • 灰度升级
    每个主DN或者CN组件升级就有一次10秒业务中断。升级过程均是先管理面,再数据面,由备到主的升级方式。灰度升级支持升级自动提交和升级待观察两种操作方式。
    • 升级自动提交:所有节点进程一起升级,在升级过程中有大概10秒的业务中断,不阻塞其他业务操作。
    • 升级待观察:升级待观察,将数据库升级过程细分为升级,提交两个阶段。
      • 升级阶段可以根据部署方式细分为按分片或者按AZ的滚动升级。
        • 分布式实例:根据分片数滚动升级。
        • 主备版实例:根据AZ数进行滚动升级。
      • 提交阶段可以对升级完成后的实例进行业务测试,根据需要可以选择提交升级或者升级回退。
        • 提交升级:在升级完成进入提交阶段时,业务测试正常后提交升级,完成本次升级流程。
        • 升级回退:在升级完成进入提交阶段时,可以根据需要回退本次升级,回退到升级前的版本。
  • 热补丁升级
    • 升级自动提交:热补丁自动升级并提交,中间无业务中断。
    • 升级回退:热补丁回退,无业务中断时间。

URI

PUT https://{Endpoint}/v3.1/{project_id}/instances/{instance_id}/db-upgrade

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户在某一Region下的项目ID。

获取方法请参见获取项目ID

instance_id

String

实例ID,严格匹配UUID规则。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

upgrade_type

String

实例升级类型,区分大小写。包括就地升级,灰度升级,热补丁升级三种,三种升级方式的异同,详见接口描述。

  • inplace:就地升级。
  • grey:灰度升级。
  • hotfix:热补丁升级。

upgrade_action

String

实例升级操作,区分大小写。

实例升级类型是就地升级时非必选。

灰度升级包括升级自动提交、升级待观察、提交升级和升级回退四种。

热补丁升级包括升级自动提交,升级回退两种。

  • upgradeAutoCommit:升级自动提交 。
  • upgrade:升级待观察。
  • commit:提交升级。
  • rollback:升级回退。

target_version

String

实例升级目标版本。

  • 热补丁升级场景下支持传入多个热补丁版本。

upgrade_shard_num

Integer

分布式实例灰度升级分片数。分布式实例灰度升级,升级待观察必填。该值不能大于实例未升级分片总数。

upgrade_az

String

灰度升级,升级待观察AZ值,升级待观察时必填。可以支持多AZ一起升级,AZ之间以英文逗号分割。不能填入不属于该实例的AZ值。

响应参数

表3 响应Body参数

参数

参数类型

描述

job_id

String

任务ID。按需实例时仅返回任务ID。

order_id

String

订单ID。包周期实例时仅返回订单ID。

请求示例

  • 就地升级。
    PUT https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/cc6fd964d93f4003851dfc29d57d30a5in14/db-upgrade
    { 
        "upgrade_type" : "inplace",
        "target_version": "xxx"
    }
  • 热补丁升级
    • 实例热补丁升级。
      PUT https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/cc6fd964d93f4003851dfc29d57d30a5in14/db-upgrade
      {
          "upgrade_type" : "hotfix",
          "target_version" : "xxxx,xxxx,xxxx",
          "upgrade_action" : "upgradeAutoCommit"
      }
    • 实例热补丁升级回退。
      PUT https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/cc6fd964d93f4003851dfc29d57d30a5in14/db-upgrade
      {
          "upgrade_type": "hotfix",
          "target_version": "xxxx,xxxx,xxxx",
          "upgrade_action": "rollback"
      }
  • 灰度升级
    1. 实例执行灰度升级并采用升级自动提交升级方式升级。
      PUT https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/cc6fd964d93f4003851dfc29d57d30a5in14/db-upgrade
      { 
          "upgrade_type" : "grey",
          "target_version": "xxx",
          "upgrade_action" : "upgradeAutoCommit" 
      }
    1. 实例执行灰度升级并采用升级待观察方式升级。
      1. 实例传入升级参数。
        PUT https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/cc6fd964d93f4003851dfc29d57d30a5in14/db-upgrade
        { 
            "upgrade_type" : "grey",
            "target_version": "xxx",
            "upgrade_action" : "upgrade", 
            "upgrade_shard_num" : 1, 
        }
      1. 实例处于升级待观察状态中,可进行升级回退,会回退全部已升级的分片,实例恢复正常后回退成功。
        PUT https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/cc6fd964d93f4003851dfc29d57d30a5in14/db-upgrade
        { 
            "upgrade_type" : "grey",
            "target_version": "xxx",
            "upgrade_action" : "rollback"
        }
      1. 实例处于升级待观察状态中,且全部分片都升级完成后,可进行升级提交。实例恢复正常后升级完成。
        PUT https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/cc6fd964d93f4003851dfc29d57d30a5in14/db-upgrade
        { 
            "upgrade_type" : "grey",
            "target_version": "xxx",
            "upgrade_action" : "commit"
        }
  • 主备版实例灰度升级并采用升级待观察方式升级传参。
    PUT https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/cc6fd964d93f4003851dfc29d57d30a5in14/db-upgrade
    { 
        "upgrade_type" : "grey", 
        "upgrade_action" : "upgrade", 
        "target_version": "xxx",
        "upgrade_az" : "az1,az2" 
    }

响应示例

{ 
  "job_id" : "2b414788a6004883a02390e2eb0ea227" 
}

状态码

错误码

请参见错误码