升级集群数据存储

警告

数据库集群功能仍处于实验阶段,不应在生产环境中使用。

升级集群实例的数据存储与升级单个实例非常相似。

Trove 尝试执行滚动升级,以避免任何停机时间。但是,并非总是可行,例如,在 Redis 升级的情况下,其某些插槽可能会暂时不可用。

Trove 策略逐个升级整个集群中的每个实例。升级完成后,所有实例都将升级完成。

请查阅数据存储升级指南以检查先决条件。

本示例演示如何为集群升级 Redis 数据存储(版本 3.2.6)。

升级集群

  1. 检查集群任务

    使用 openstack database cluster list 检查集群的任务是否为 NONE。

    $ openstack database cluster list
    +--------------------------------------+---------------+-----------+-------------------+-----------+
    | ID                                   | Name          | Datastore | Datastore Version | Task Name |
    +--------------------------------------+---------------+-----------+-------------------+-----------+
    | 05f2e7b7-8dac-453f-ad5d-38195cd5718f | redis_cluster | redis     | 3.2.6             | NONE      |
    +--------------------------------------+---------------+-----------+-------------------+-----------+
    
  2. 检查目标版本是否可用

    使用 openstack datastore version list 列出数据存储的所有可用版本。

    $ openstack datastore version list redis
    +--------------------------------------+-------+
    | ID                                   | Name  |
    +--------------------------------------+-------+
    | 483debec-b7c3-4167-ab1d-1765795ed7eb | 3.2.6 |
    | 507f666e-193c-4194-9d9d-da8342dcb4f1 | 3.2.7 |
    +--------------------------------------+-------+
    
  3. 运行集群升级

    使用 openstack database cluster upgrade 命令为所选实例升级数据存储。

    $ openstack database cluster upgrade 05f2e7b7-8dac-453f-ad5d-38195cd5718f 3.2.7
    
  4. 等待任务从 UPGRADING_CLUSTER 变为 NONE

    您可以使用 openstack database cluster list 检查当前任务。

    $ openstack database cluster list
    +--------------------------------------+---------------+-----------+-------------------+-----------+
    | ID                                   | Name          | Datastore | Datastore Version | Task Name |
    +--------------------------------------+---------------+-----------+-------------------+-----------+
    | 05f2e7b7-8dac-453f-ad5d-38195cd5718f | redis_cluster | redis     | 3.2.7             | NONE      |
    +--------------------------------------+---------------+-----------+-------------------+-----------+
    

其他集群

其他集群的升级方式相同。目前 Trove 支持以下集群数据存储的升级:

  • MySQL。

  • MariaDB。

  • Redis。