从现有 Eon 模式数据库生成自定义资源

为了简化对基于 Kubernetes 的 Vertica 的采用,Vertica 提供了 vdb-gen 迁移工具,该工具可将现有 Eon 模式数据库恢复为 Kubernetes 中的 StatefulSet。 vdb-gen 通过连接到数据库并写入标准输出,从现有 Eon 模式数据库生成自定义资源 (CR)。

vdb-gen 工具在 vertica-kubernetes GitHub 存储库中作为项目提供。使用 -h 标志查看可用选项(包括用于调试和使用环境变量的选项)的完整列表。以下步骤使用基本命令生成 CR。

  1. 执行 vdb-gen 并将输出重定向到 YAML 格式的文件:

    $ vdb-gen --password secret --name mydb 10.20.30.40 vertdb > vdb.yaml
    

    上面的命令使用以下标志和值:

    • password:现有数据库的超级用户密码。

    • name:新的自定义资源对象的名称。

    • 10.20.30.40:现有数据库的 IP 地址

    • vertdb:现有 Eon 模式数据库的名称。

    • vdb.yaml:YAML 格式的文件,包含由 vdb-gen 工具生成的自定义资源定义。

  2. 使用 admintools stop_db 命令 停止现有数据库:

    $ /opt/vertica/bin/admintools -t stop_db -d vertdb
    

    等待群集租约到期后再继续。有关详细信息,请参阅恢复 Eon 模式数据库群集

  3. 应用由 vdb-gen 工具生成的 YAML 格式的清单:

    $ kubectl apply -f vdb.yaml
    verticadb.vertica.com/mydb created
    
  4. 操作器创建 StatefulSet,在每个 pod 上安装 Vertica,然后运行恢复。要查看为新数据库生成的事件,请使用 kubectl describe

    $ kubectl describe vdb mydb