此选项可用于 Oracle 或 Generic JDBC 连接器。
此过程会创建一个安装了 QueryGrid 的可自动扩展的 AWS 实例集群。将 QueryGrid 部署到 AWS 自动缩放组 (ASG) 成员主机时,可以通过指定在 AWS ASG 的所有新添加成员上运行的引导脚本来自动执行 tdqg-node 安装和注册过程。
所需的脚本 (TDQG_DEPLOYMENT.sh) 打包在节点包 tdqg-node-version.tar.gz 中。该脚本连同 tdqg-node.json 令牌必须上载到 AWS S3 存储桶,并通过 AWS 启动模板的userdata选项使用 awscli 下载到实例。
此过程假定已具备以下先决条件:
- 您拥有执行以下操作所需的权限:
- 在 IAM 中创建角色和策略
- 将文件上载到 S3 存储桶
- 创建启动模板和自动缩放组
- 在要安装 QueryGrid 的所有节点上安装了 cURL 工具
- 在要安装 QueryGrid 的所有节点上安装了 AWS CLI 工具
如果节点上尚未安装以下软件,则会自动安装:
- OpenJDK 11(如果 Java 尚不存在)
- JQ
- ACL
- 在 Viewpoint 中添加一个系统,并下载由 QueryGrid 管理器生成的 tdqg-node.json 令牌文件。有关下载 tdqg-node.json 的信息,请参阅手动添加节点。
- 下载节点包。请参阅下载必需的软件包。
- 使用 tar -xzvf tdqg-node-version.tar.gz 命令解压缩此节点包。TDQG_DEPLOYMENT.sh 位于 qgdeployment/aws 路径中。
- 创建一个名为 config 的文件来存储 AWS 配置变量。
[default] output = json region = us-west-2
- 将 TDQG_DEPLOYMENT.sh 脚本、tdqg-node.json 令牌和 config 文件上载到 AWS S3 存储桶。
- 创建具有以下策略权限的 IAM 角色:
策略 权限 EC2 - DescribeAvailabilityZones
- DescribeInstances
- TerminateInstances
EC2 自动缩放 - DescribeAutoScalingGroups
- DescribeAutoScalingInstances
- TerminateInstanceInAutoScalingGroup
AmazonS3ReadOnly 访问 – - 在 AWS EC2 启动模板中,选择创建启动模板并在高级详细信息中提供以下信息:
- IAM 实例配置文件:选择之前创建的 IAM 角色
- 用户数据:在提供的文本区域中提供以下代码片段:
#!/bin/bash # Download the files uploaded to S3 bucket aws s3 cp <s3-uri-path-to-tdqg_node> tdqg-node.json aws s3 cp <s3-uri-path-to-tdqg_deployment> TDQG_DEPLOYMENT.001.sh aws s3 cp <s3-uri-path-to-config> config # Permission to run TDQG_DEPLOYMENT.sh chmod 655 tdqg-node.json chmod 655 TDQG_DEPLOYMENT.001.sh mkdir ~/.aws mv config ~/.aws/ # Run deployment script ./TDQG_DEPLOYMENT.001.sh --tdqg_node_json_file tdqg-node.json --scale-in-enabled true
步骤 操作 可选 scale-in-enabled:true 这样,QueryGrid 软件即可在驱动程序主机空闲一段时间后执行自动缩减。当与“ASG 扩展”中选项定义的仅自动扩展策略结合使用时,可以自动执行缩减和扩展。由于此任务由 QueryGrid 执行,因此如果设置为 true,即使删除了缩减规则,也会发生缩减。 - 在 AWS 自动缩放组中,选择创建自动缩放 组并在缩放策略中提供以下信息:
- 选择目标跟踪缩放策略。
- 提供策略名称并定义扩展指标。
- 启用禁用缩减以仅创建扩展策略。
允许 AWS 执行自动缩减而不是使用 QueryGrid 启用缩减功能可能会导致在执行缩减时查询失败。