4.10. 네트워크 리소스 에이전트 설치
HA 작업이 작동하려면 클러스터에서 AWS 네트워킹 리소스 에이전트를 사용하여 페일오버 기능을 활성화합니다. 노드가 정해진 시간 내에 하트비트 검사에 응답하지 않으면 노드가 펜싱되고 클러스터의 추가 노드로 작업이 실패합니다. 네트워크 리소스 에이전트가 작동하도록 구성해야 합니다.
두 리소스를 동일한 그룹에 추가하여 순서
및 공동 배치
제약 조건을 적용합니다.
보조 개인 IP 리소스 및 가상 IP 리소스 생성
보조 개인 IP 주소를 추가하고 가상 IP를 생성하려면 다음 절차를 완료합니다. 클러스터의 모든 노드에서 이 프로세스를 완료할 수 있습니다.
절차
AWS Secondary Private IP Address
리소스 에이전트(awsvip) 설명을 확인합니다. 여기에는 이 에이전트의 옵션 및 기본 작업이 표시됩니다.# pcs resource describe awsvip
VPC CIDR
블록에서 사용되지 않는 개인 IP 주소를 사용하여 보조 개인 IP 주소를 만듭니다.# pcs resource create privip awsvip secondary_private_ip=Unused-IP-Address --group group-name
예제:
[root@ip-10-0-0-48 ~]# pcs resource create privip awsvip secondary_private_ip=10.0.0.68 --group networking-group
가상 IP 리소스를 생성합니다. 이는 펜싱된 노드에서 장애 조치 노드로 빠르게 다시 매핑할 수 있는 VPC IP 주소입니다. 서브넷 내에서 펜싱된 노드의 장애를 마스킹합니다.
# pcs resource create vip IPaddr2 ip=secondary-private-IP --group group-name
예제:
root@ip-10-0-0-48 ~]# pcs resource create vip IPaddr2 ip=10.0.0.68 --group networking-group
검증
리소스가 실행 중인지 확인합니다.
# pcs status
예제:
[root@ip-10-0-0-48 ~]# pcs status Cluster name: newcluster Stack: corosync Current DC: ip-10-0-0-46 (version 1.1.18-11.el7-2b07d5c5a9) - partition with quorum Last updated: Fri Mar 2 22:34:24 2018 Last change: Fri Mar 2 22:14:58 2018 by root via cibadmin on ip-10-0-0-46 3 nodes configured 3 resources configured Online: [ ip-10-0-0-46 ip-10-0-0-48 ip-10-0-0-58 ] Full list of resources: clusterfence (stonith:fence_aws): Started ip-10-0-0-46 Resource Group: networking-group privip (ocf::heartbeat:awsvip): Started ip-10-0-0-48 vip (ocf::heartbeat:IPaddr2): Started ip-10-0-0-58 Daemon Status: corosync: active/disabled pacemaker: active/disabled pcsd: active/enabled
탄력적 IP 주소 생성
탄력적 IP 주소는 펜싱된 노드에서 장애 조치 노드로 빠르게 다시 매핑할 수 있는 공용 IP 주소로, 펜싱된 노드의 오류를 마스킹합니다.
이 리소스는 이전에 생성된 가상 IP 리소스와 다릅니다. 탄력적 IP 주소는 서브넷 연결 대신 공용 인터넷 연결에 사용됩니다.
-
이전에 생성된 두 리소스를 동일한 그룹에 추가하여
순서
와공동 배치
제약 조건을 적용합니다. 다음 AWS CLI 명령을 입력하여 탄력적 IP 주소를 생성합니다.
[root@ip-10-0-0-48 ~]# aws ec2 allocate-address --domain vpc --output text eipalloc-4c4a2c45 vpc 35.169.153.122
AWS Secondary Elastic IP Address 리소스 에이전트(awseip) 설명을 확인합니다. 다음 명령은 이 에이전트의 옵션 및 기본 작업을 보여줍니다.
# pcs resource describe awseip
1단계에서 생성된 할당된 IP 주소를 사용하여 Secondary Elastic IP 주소 리소스를 생성합니다.
# pcs resource create elastic awseip elastic_ip=Elastic-IP-Address allocation_id=Elastic-IP-Association-ID --group networking-group
예제:
# pcs resource create elastic awseip elastic_ip=35.169.153.122 allocation_id=eipalloc-4c4a2c45 --group networking-group
검증
pcs status
명령을 입력하여 리소스가 실행 중인지 확인합니다.# pcs status
예제:
[root@ip-10-0-0-58 ~]# pcs status Cluster name: newcluster Stack: corosync Current DC: ip-10-0-0-58 (version 1.1.18-11.el7-2b07d5c5a9) - partition with quorum Last updated: Mon Mar 5 16:27:55 2018 Last change: Mon Mar 5 15:57:51 2018 by root via cibadmin on ip-10-0-0-46 3 nodes configured 4 resources configured Online: [ ip-10-0-0-46 ip-10-0-0-48 ip-10-0-0-58 ] Full list of resources: clusterfence (stonith:fence_aws): Started ip-10-0-0-46 Resource Group: networking-group privip (ocf::heartbeat:awsvip): Started ip-10-0-0-48 vip (ocf::heartbeat:IPaddr2): Started ip-10-0-0-48 elastic (ocf::heartbeat:awseip): Started ip-10-0-0-48 Daemon Status: corosync: active/disabled pacemaker: active/disabled pcsd: active/enabled
탄력적 IP 주소 테스트
다음 명령을 입력하여 가상 IP(awsvip) 및 탄력적 IP(awseip) 리소스가 작동하는지 확인합니다.
절차
로컬 워크스테이션에서 이전에 생성된 탄력적 IP 주소로 SSH 세션을 시작합니다.
$ ssh -l ec2-user -i ~/.ssh/<KeyName>.pem elastic-IP
예제:
$ ssh -l ec2-user -i ~/.ssh/cluster-admin.pem 35.169.153.122
- SSH를 통해 연결된 호스트가 생성된 탄력적 리소스와 연결된 호스트인지 확인합니다.
추가 리소스