SAP-APP-服务器组-003-pacemaker集群-在AWS平台里-创建及配置-ASCS资源及VIP路由管理资源

在AWS平台、ASCS资源 需要与 路由表更新资源 要在一个资源组中 

1、这里我们先创建ASCS资源,只需要向应用相关的人员要到  InstanceName  和 START_PROFILE 两个参数的值

一般来说,集群中的每台主机,会有如下一些目录要做到共享的,在AWS中,可以使用原生的EFS

SAP-APP-服务器组-003-pacemaker集群-在AWS平台里-创建及配置-ASCS资源及VIP路由管理资源

创建ASCS资源及资源组

[root@app01 qq-5201351]# pcs resource create project-pet-ascs SAPInstance InstanceName="PET_ASCS01_awtprojectascs" 
START_PROFILE=/sapmnt/PET/profile/PET_ASCS01_awtprojectascs AUTOMATIC_RECOVER=false 
meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 
op demote interval=0s timeout=320s 
op methods interval=0s timeout=5s 
op monitor interval=60 on-fail=restart timeout=120 
op promote interval=0s timeout=320s 
op reload interval=0s timeout=320s 
op start interval=0 timeout=600 
op stop interval=0 timeout=600  
--group g-project-Pet-ASCS 

注意:如果给出的 InstanceName  与 START_PROFILE 的最后一段不一致时,以START_PROFILE 的最后一段为准

2、创建 aws-vpc-move-ip ,也即是管理VIP的,当VIP发生变化时,会去更新指定的路由表、可以将app组与db组子网的路由表一起更新了

pcs resource create project-pet-oip aws-vpc-move-ip 
ip=192.168.15.6 
interface=eth0 
routing_table=rtb-0fe5332b3a0b50cf2,rtb-0f05a39defaa838ba 
--group g-project-Pet-ASCS

通过命令,我们可以看到ip地址是一个/32位掩码的IP地址,在aws中一般是绑定在eth0上的,绑定在那个接口,也可以在上面的命令中进行指定

注意:VIP地址,最佳实践是选择一个所有VPC之外的一个CIDR块中的IP地址,ASCS外部会进行访问的,这个倒可以使用NLB进行转发,转发到VIP上

具体的原因,可以参考,笔者的另一篇文章《关于pacemaker管理VIP的解决方案-以及AWS中为VPC子网-路由表-添加主机路由的一些限制》

https://www.cnblogs.com/5201351/p/17859346.html

还有一种重要的前置条件:要在root用户下 aws configure  因为是绑定的Role ,重要的是要指定 region  

 

3、在app机器的IAM-Role 上,还需要添加如下两个policy, 一个用于路由表VIP主机路由条目更新,另一个用于Stonith设备

Overlay-IP-To-Router

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "ec2:ReplaceRoute",
            "Resource": "*"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "ec2:DescribeRouteTables",
            "Resource": "*"
        }
    ]
}

Stonith-for-Projectt-PRD

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceAttribute",
                "ec2:DescribeTags"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:ModifyInstanceAttribute",
                "ec2:RebootInstances",
                "ec2:StartInstances",
                "ec2:StopInstances"
            ],
            "Resource": [
                "arn:aws-cn:ec2:cn-north-1:221234567899:instance/i-0cf37dd132f0b9106",
                "arn:aws-cn:ec2:cn-north-1:221234567899:instance/i-062152cb9a269a2e3"
            ]
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "kms:*",
            "Resource": "*"
        }
    ]
}

注意:对于APP服务器来说,因为没有像DB会使用backint,因此可以不用AmazonSSMManagedInstanceCore托管策略,但也建议可以加上

 

 

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17899955.html

 

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...