원본출처 : http://www.unixarena.com/2016/01/rhel-7-pacemaker-cluster-node-management.html
이 기사에서는 Pacemaker/Corosync 클러스터 멤버쉽, 노드 관리 및 기타 클러스터 운영 작업에 대해 설명합니다. 주기적으로 OS 패키지 업데이트 / 업그레이드, 하드웨어 교체 / 업그레이드 등과 같은 유지 관리 작업을 수행하려면 클러스터 노드를 오프라인으로 전환해야 할 수도 있습니다. 이 경우 클러스터를 작동 상태로 유지하려면 클러스터 노드를 대기 모드로 전환해야합니다 다른 노드는 투표 문제를 피하기 위해 (두 노드 클러스터의 경우). 클러스터 대기 옵션은 클러스터 노드 재부팅시 지속됩니다. 따라서 우리는 노드를 비 대기 상태로 만들 때까지 자동 리소스 시작에 관해 걱정할 필요가 없습니다.
마지막 섹션에서는 노드 대기 및 비 대기 동작과 완전히 다른 클러스터 유지 관리 모드에 대해 살펴 보겠습니다. 클러스터 노드에서 온라인 변경을 수행하는 경우 클러스터 유지 관리를 사용하는 것이 좋습니다.
사전 구성된 리소스는 vgres (LVM - 볼륨 그룹), webvolfs (논리 볼륨), ClusterIP (웹 사이트의 HA IP 주소), webres (Apache) 및 UAKVM2_res (HA KVM Guest)입니다.
[root@UA-HA ~]# pcs resource Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA webvolfs (ocf::heartbeat:Filesystem): Started UA-HA ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA webres (ocf::heartbeat:apache): Started UA-HA Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA2 [root@UA-HA ~]#
클러스터 노드는 UA-HA 및 UA-HA2입니다.
[root@UA-HA ~]# pcs cluster status Cluster Status: Last updated: Sat Oct 17 11:58:23 2015 Last change: Sat Oct 17 11:57:48 2015 by root via crm_attribute on UA-HA Stack: corosync Current DC: UA-HA (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] PCSD Status: UA-HA: Online UA-HA2: Online [root@UA-HA ~]#
1. 루트 사용자로 클러스터 노드 중 하나에 로그인하고 노드 상태를 확인하십시오.
[root@UA-HA ~]# pcs status nodes Pacemaker Nodes: Online: UA-HA UA-HA2 Standby: Offline: Pacemaker Remote Nodes: Online: Standby: Offline: [root@UA-HA ~]#
2. 클러스터 상태를 확인하십시오.
[root@UA-HA ~]# pcs status Cluster name: UABLR Last updated: Sat Oct 17 12:00:35 2015 Last change: Sat Oct 17 11:57:48 2015 by root via crm_attribute on UA-HA Stack: corosync Current DC: UA-HA (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA webvolfs (ocf::heartbeat:Filesystem): Started UA-HA ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA webres (ocf::heartbeat:apache): Started UA-HA Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA2 PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA ~]#
3. 또한 crm_mon을 사용하여 실시간으로 클러스터 상태를 모니터 할 수 있습니다.
[root@UA-HA ~]# crm_mon Last updated: Sat Oct 17 12:05:50 2015 Last change: Sat Oct 17 12:04:28 2015 by root via cibadmin on UA-HA Stack: corosync Current DC: UA-HA (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA webvolfs (ocf::heartbeat:Filesystem): Started UA-HA ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA webres (ocf::heartbeat:apache): Started UA-HA Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA2
crm_mon을 종료하려면 Ctrl + c를 누릅니다.
[root@UA-HA ~]# crm_mon Connection to the CIB terminated [root@UA-HA ~]#
4. 특정 노드를 대기 모드로 전환하려면 다음 명령을 사용하십시오.
[root@UA-HA ~]# pcs cluster standby UA-HA2 [root@UA-HA ~]#
클러스터 상태를 다시 확인하십시오.
[root@UA-HA ~]# pcs status Cluster name: UABLR Last updated: Sat Oct 17 12:09:35 2015 Last change: Sat Oct 17 12:09:23 2015 by root via crm_attribute on UA-HA Stack: corosync Current DC: UA-HA (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Node UA-HA2: standby Online: [ UA-HA ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA webvolfs (ocf::heartbeat:Filesystem): Started UA-HA ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA webres (ocf::heartbeat:apache): Started UA-HA Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA ~]#
리소스 그룹 “UAKVM2”가 UA-HA2에서 UA-HA로 자동 이동된다는 것을 알 수 있습니다. 클러스터 구성원 및 자동 리소스 시작에 대해 걱정하지 않고도 UA-HA2에서 유지 관리 작업을 수행 할 수 있습니다.
5. 클러스터 멤버쉽 상태를 확인하십시오. (정족수 상태).
[root@UA-HA ~]# pcs status corosync Membership information ---------------------- Nodeid Votes Name 2 1 UA-HA2 1 1 UA-HA (local) [root@UA-HA ~]#
또는
[root@UA-HA ~]# corosync-quorumtool Quorum information ------------------ Date: Sat Oct 17 12:15:54 2015 Quorum provider: corosync_votequorum Nodes: 2 Node ID: 1 Ring ID: 2296 Quorate: Yes Votequorum information ---------------------- Expected votes: 2 Highest expected: 2 Total votes: 2 Quorum: 1 Flags: 2Node Quorate WaitForAll Membership information ---------------------- Nodeid Votes Name 2 1 UA-HA2 1 1 UA-HA (local) [root@UA-HA ~]#
노드 UA-HA2는 대기 모드이지만 여전히 클러스터에 투표를 제공합니다. 유지 관리 작업을 위해 노드 “UA-HA2”를 중지 한 경우 쿼럼 상태는 아래와 같이 변경됩니다.
[root@UA-HA ~]# corosync-quorumtool Quorum information ------------------ Date: Sat Oct 17 12:16:25 2015 Quorum provider: corosync_votequorum Nodes: 1 Node ID: 1 Ring ID: 2300 Quorate: Yes Votequorum information ---------------------- Expected votes: 2 Highest expected: 2 Total votes: 1 Quorum: 1 Flags: 2Node Quorate WaitForAll Membership information ---------------------- Nodeid Votes Name 1 1 UA-HA (local) [root@UA-HA ~]#
1. UA-HA2에 대한 유지 관리가 완료되면 클러스터 노드를 작동 할 수 있도록 비 대기로 설정하십시오.
[root@UA-HA ~]# pcs cluster unstandby UA-HA2 [root@UA-HA ~]# pcs status Cluster name: UABLR Last updated: Sat Oct 17 12:29:21 2015 Last change: Sat Oct 17 12:29:19 2015 by root via crm_attribute on UA-HA Stack: corosync Current DC: UA-HA (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA webvolfs (ocf::heartbeat:Filesystem): Started UA-HA ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA webres (ocf::heartbeat:apache): Started UA-HA Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA ~]#
2. 원하는 리소스 그룹을 UA-HA2로 이동할 수 있습니다.
[root@UA-HA ~]# pcs resource move UAKVM2 UA-HA2 [root@UA-HA ~]# pcs status Cluster name: UABLR Last updated: Sat Oct 17 12:32:05 2015 Last change: Sat Oct 17 12:29:19 2015 by root via crm_attribute on UA-HA Stack: corosync Current DC: UA-HA (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA webvolfs (ocf::heartbeat:Filesystem): Started UA-HA ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA webres (ocf::heartbeat:apache): Started UA-HA Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA2 PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA ~]#
우리는 노드 “UA-HA2”를 유지 보수 모드로 성공적으로 되돌려 되돌려 놓았습니다.
1. 클러스터 상태를 확인하십시오.
[root@UA-HA log]# pcs status Cluster name: UABLR Last updated: Sat Oct 17 16:53:02 2015 Last change: Sat Oct 17 16:52:21 2015 by root via crm_resource on UA-HA Stack: corosync Current DC: UA-HA2 (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA2 webvolfs (ocf::heartbeat:Filesystem): Started UA-HA2 ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA2 webres (ocf::heartbeat:apache): Started UA-HA2 Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA log]#
2. UA-HA에서 클러스터 서비스를 중지 할 계획을 세우십시오. 클러스터 상태에 따라 “UAKVM2”그룹이 UA-HA에서 실행 중입니다.
3. UA-HA에서 클러스터 서비스를 중지하고 그룹에 어떤 일이 발생하는지 봅시다. UA-HA 노드에서 다음 명령을 실행합니다.
[root@UA-HA log]# pcs cluster stop Stopping Cluster (pacemaker)... Stopping Cluster (corosync)... [root@UA-HA log]# pcs status Error: cluster is not currently running on this node [root@UA-HA log]#
pcsd 데몬이 중지되었으므로 UA-HA에서 클러스터 상태를 확인할 수 없습니다. UA-HA2 노드에서 확인해 봅시다.
[root@UA-HA log]# ssh UA-HA2 pcs status Cluster name: UABLR Last updated: Sun Jan 10 12:13:52 2016 Last change: Sun Jan 10 12:05:47 2016 by root via crm_resource on UA-HA Stack: corosync Current DC: UA-HA2 (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA2 ] OFFLINE: [ UA-HA ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA2 webvolfs (ocf::heartbeat:Filesystem): Started UA-HA2 ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA2 webres (ocf::heartbeat:apache): Started UA-HA2 Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA2 PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA log]#
“UAKVM2”그룹이 자동으로 UA-HA2로 이동되었습니다. UA-HA에서 클러스터 서비스를 시작하면 어떻게됩니까?
[root@UA-HA log]# pcs cluster start Starting Cluster... [root@UA-HA log]# pcs constraint Location Constraints: Ordering Constraints: Colocation Constraints: [root@UA-HA log]# pcs status Cluster name: UABLR Last updated: Sat Oct 17 17:03:45 2015 Last change: Sun Jan 10 12:05:47 2016 by root via crm_resource on UA-HA Stack: corosync Current DC: UA-HA2 (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA2 webvolfs (ocf::heartbeat:Filesystem): Started UA-HA2 ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA2 webres (ocf::heartbeat:apache): Started UA-HA2 Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA log]#
그룹 UAKVM2는 자동으로 UA-HA로 다시 이동합니다.
자동으로 리소스 그룹을 이동하지 않으려면,
1. 클러스터 서비스를 중지하려는 리소스 그룹을 “BAN” 설정.
[root@UA-HA log]# pcs resource ban UAKVM2 UA-HA Warning: Creating location constraint cli-ban-UAKVM2-on-UA-HA with a score of -INFINITY for resource UAKVM2 on node UA-HA. This will prevent UAKVM2 from running on UA-HA until the constraint is removed. This will be the case even if UA-HA is the last node in the cluster.
2. 리소스 그룹은 클러스터의 다른 노드로 자동 이동됩니다.
[root@UA-HA log]# pcs status Cluster name: UABLR Last updated: Sat Oct 17 17:18:25 2015 Last change: Sat Oct 17 17:17:48 2015 by root via crm_resource on UA-HA Stack: corosync Current DC: UA-HA2 (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA2 webvolfs (ocf::heartbeat:Filesystem): Started UA-HA2 ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA2 webres (ocf::heartbeat:apache): Started UA-HA2 Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA2 PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA log]#
3. 클러스터는 그룹이 특정 노드에서 시작하지 못하도록 제한 조건을 작성합니다.
[root@UA-HA log]# pcs constraint Location Constraints: Resource: UAKVM2 Disabled on: UA-HA (score:-INFINITY) (role: Started) Ordering Constraints: Colocation Constraints:
4. 클러스터 서비스를 중지하십시오. (특정 노드에서 클러스터 서비스를 중지하려는 경우).
5. 클러스터 서비스를 시작하십시오.
6. 원하는 시간에 리소스 그룹을 시스템으로 다시 이동 시키십시오.
클러스터 리소스에 영향을 미치는 소프트웨어 업그레이드 및 구성 변경을 수행하려면 클러스터를 유지 관리 모드로 만들어야합니다. 따라서 모든 리소스는 Pacemaker가 관리하지 않는 것으로 태그가 지정됩니다. 즉, 유지 보수 모드를 제거 할 때까지 Pacemaker 모니터링이 꺼지고 클러스터에 의한 조치가 취해지지 않습니다. 이 기능은 클러스터 구성 요소를 업그레이드하고 다른 리소스 변경을 수행하는 데 유용한 기능 중 하나입니다.
1. 클러스터를 유지 보수 모드로 이동하려면 다음 명령을 사용하십시오.
[root@UA-HA ~]# pcs property set maintenance-mode=true
2. 클러스터 속성 확인
[root@UA-HA ~]# pcs property list Cluster Properties: cluster-infrastructure: corosync cluster-name: UABLR dc-version: 1.1.13-10.el7-44eb2dd have-watchdog: false last-lrm-refresh: 1452507397 maintenance-mode: true stonith-enabled: false
3. 클러스터 상태를 점검하십시오. 리소스가 관리되지 않는 플래그로 설정됩니다.
[root@UA-HA ~]# pcs status Cluster name: UABLR Last updated: Sun Oct 18 12:19:33 2015 Last change: Sun Oct 18 12:19:27 2015 by root via cibadmin on UA-HA Stack: corosync Current DC: UA-HA2 (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA2 (unmanaged) webvolfs (ocf::heartbeat:Filesystem): Started UA-HA2 (unmanaged) ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA2 (unmanaged) webres (ocf::heartbeat:apache): Started UA-HA2 (unmanaged) Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA (unmanaged) PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA ~]#
4. 클러스터 서비스를 중지 했더라도 리소스는 계속 실행됩니다.
[root@UA-HA ~]# pcs cluster stop --all UA-HA: Stopping Cluster (pacemaker)... UA-HA2: Stopping Cluster (pacemaker)... UA-HA2: Stopping Cluster (corosync)... UA-HA: Stopping Cluster (corosync)... [root@UA-HA ~]# virsh list Id Name State ---------------------------------------------------- 55 UAKVM2 running [root@UA-HA ~]#
시스템을 재부팅하지 않고 수행 할 수있는 유지 보수 활동을 수행하십시오.
5. 클러스터 서비스를 시작하십시오.
[root@UA-HA ~]# pcs cluster start --all UA-HA2: Starting Cluster... UA-HA: Starting Cluster... [root@UA-HA ~]#
6. 리소스가 Unmamaged & Online 으로 표시되어야합니다.
Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA2 (unmanaged) webvolfs (ocf::heartbeat:Filesystem): Started UA-HA2 (unmanaged) ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA2 (unmanaged) webres (ocf::heartbeat:apache): Started UA-HA2 (unmanaged) Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA (unmanaged)
7. 유지 보수 모드를 해제하십시오.
[root@UA-HA ~]# pcs property set maintenance-mode=flase
또는
[root@UA-HA ~]# pcs property unset maintenance-mode
8. 리소스 상태를 확인하십시오.
[root@UA-HA ~]# pcs status Cluster name: UABLR Last updated: Sun Oct 18 12:41:59 2015 Last change: Sun Oct 18 12:41:51 2015 by root via cibadmin on UA-HA Stack: corosync Current DC: UA-HA2 (version 1.1.13-10.el7-44eb2dd) - partition with quorum 2 nodes and 5 resources configured Online: [ UA-HA UA-HA2 ] Full list of resources: Resource Group: WEBRG1 vgres (ocf::heartbeat:LVM): Started UA-HA2 webvolfs (ocf::heartbeat:Filesystem): Started UA-HA2 ClusterIP (ocf::heartbeat:IPaddr2): Started UA-HA2 webres (ocf::heartbeat:apache): Started UA-HA2 Resource Group: UAKVM2 UAKVM2_res (ocf::heartbeat:VirtualDomain): Started UA-HA PCSD Status: UA-HA: Online UA-HA2: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled [root@UA-HA ~]#