集群配置先决条件 - SAP HANA 开启 AWS

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

集群配置先决条件

禁用源/目的地检查

每个 EC2 实例都必须禁用本应接收来自叠加 IP 地址的流量的两个 EC2 实例的source/destination checks by default. This means that the instance must be the source or destination of any traffic it sends or receives. For cluster instances, source/destination检查。您可以使用 AWS CLI 或禁AWS Management Console用源/目标检查。有关详细信息,请参阅 ec2 modify-instance-attribute 文档。

为创建个人资料 AWS CLI

您需要使用以下命令 AWS CLI 为创建配置文件。此配置文件可帮助您运行集群命令。

aws configure --profile cluster

配置文件名称必须与群集资源的配置相匹配,如以下示例所示。

primitive res_AWS_STONITH stonith:external/ec2 \ op start interval=0 timeout=180 \ op stop interval=0 timeout=180 \ op monitor interval=300 timeout=60 \ meta target-role=Started \ params tag=pacemaker profile=cluster pcmk_delay_max=45

AWS 角色和策略

SAP HANA 数据库 EC2 实例将运行 SLES 或 RHEL 集群软件及其代理。由于 SLES 和 RHEL 集群软件及其代理需要访问 AWS 资源才能执行故障转移活动,因此他们需要特定 AWS 的 IAM 权限。

创建一个新的 IAM 角色并将其关联到集群中的两个 EC2 实例。将以下 IAM 策略附加到此 IAM 角色。

创建 STONITH 策略

集群的两个实例都需要权限才能启动和停止集群中的其他节点。创建如以下示例所示的策略,并将其附加到分配给两个集群实例的 IAM 角色。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1424870324000", "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeTags" ], "Resource": "*" }, { "Sid": "Stmt1424870324001", "Effect": "Allow", "Action": [ "ec2:RebootInstances", "ec2:StartInstances", "ec2:StopInstances" ], "Resource": [ "arn:aws:ec2:region-name:account-id:instance/instance-a", "arn:aws:ec2:region-name:account-id:instance/instance-b" ] } ] }, { "Statement": [ { "Effect": "Allow", "Action": [ "EC2:DescribeInstances", "EC2:DescribeVolumes" ], "Resource": "*" }, { "Effect": "Allow", "Action": "cloudwatch:GetMetricStatistics", "Resource": "*" }, { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::aws-sap-data-provider/config.properties" } ] }

将区域名称account-id、和实例标识符替换为相应的值。

创建覆盖 IP 代理策略

Amazon VPC 设置包括将子网分配给您的 SAP HANA 数据库的主/辅助节点。这些已配置的子网都具有来自完全驻留在一个可用区内的 VPC 的无类域间路由 (CIDR) IP 分配。在故障转移情况下,此 CIDR IP 分配不能跨多个区域,也不能重新分配给不同可用区中的辅助实例。因此,AWS 允许您在 VPC CIDR 块之外配置叠加 IP (OIP) 以访问活动的 SAP 实例。使用 IP 叠加路由,您可以允许 AWS 网络使用位于 VPC CIDR 范围之外的非重叠RFC1918私有 IP 地址,并通过 AWS 使用 SLES/RHEL 叠加 IP 代理更改路由条目,将 SAP 流量引导到 VPC 内可用区中设置的任何实例。

要让 SLES/RHEL Overlay IP 代理更改 AWS 路由表中的路由条目,请创建以下策略并附加到分配给两个集群实例的 IAM 角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "ec2:ReplaceRoute", "Resource": "arn:aws:ec2:region-name:account-id:route-table/rtb-XYZ" }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "ec2:DescribeRouteTables", "Resource": "*" } ] }

将区域名称、账户 ID 和路由表标识符替换为相应的值。

更新路由表

向分配给主实例和辅助 EC2 实例子网的路由表中添加路由条目。此 IP 地址是 SAP HANA 集群的虚拟 IP(覆盖 IP)地址,该地址必须在 VPC 的 CIDR 范围之外。要使用控制台修改路由或向路由表添加路由,请执行以下操作:

  1. 打开 Amazon VPC 控制台,网https://console.aws.amazon.com/vpc/址为(需要登录)。

  2. 在导航窗格中,选择路由表,然后选择路由表。

  3. 选择操作 > 编辑路线

  4. 滚动到列表末尾并点击添加另一条路线

  5. 目标部分添加叠加 IP 地址,然后为其中一个现有实例选择弹性网络接口 (ENI) 名称

  6. 单击 “保存路线”,保存您的更改。

屏幕截图显示了路由表中的覆盖 IP 地址条目。

路由表中的覆盖 IP 地址条目