Pacemaker With RHEL7 Part 07 - Configuring HA KVM guest

원본출처 : http://www.unixarena.com/2015/12/rhel-7-pacemaker-configuring-ha-kvm-guest.html

UnixArena에서 KVM 기사 시리즈를 읽은 적이 있다면 KVM 게스트 라이브 마이그레이션 에 관한 기사를 읽었을 것 입니다. KVM은 게스트 라이브 마이그레이션 (VMware vMotion과 유사)을 지원하지만 고 가용성을 제공하려면 클러스터 설정이 필요합니다. (VMware HA와 마찬가지). 이 기사에서는 라이브 마이그레이션을 지원하는 KVM 게스트를 클러스터 리소스로 구성 할 것입니다. KVM 게스트 리소스를 수동으로 이동하면 클러스터는 실시간 마이그레이션을 수행하고 KVM 호스트에서 하드웨어 오류나 하이퍼 바이저 오류가 발생하면 게스트는 사용 가능한 클러스터 노드에서 시작되며 (가동 중지 시간은 최소화 됨) 기존 KVM 및 Redhat 클러스터 설정을 사용하여 이를 보여줍니다.

  • KVM 하이퍼 바이저 - RHEL 7.2
  • Redhat 클러스터 노드 - UA-HA 및 UA-HA2
  • 공유 저장 장치 - NFS (GFS2를 사용할 수도 있음)
  • KVM 게스트 - UAKVM2

Pacemaker를 사용하는 HA KVM 게스트

1. 클러스터 노드 중 하나에 로그인하고 KVM 게스트를 중지합니다.

[root@UA-HA ~]# virsh shutdown UAKVM2
[root@UA-HA ~]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     UAKVM2                         shut off
 
[root@UA-HA ~]#

2. 게스트 도메인 구성 파일 (XML)을 NFS 경로로 복사합니다.

[root@UA-HA qemu_config]# cd /etc/libvirt/qemu/
[root@UA-HA qemu]# ls -lrt
total 8
drwx------. 3 root root   40 Dec 14 09:13 networks
drwxr-xr-x. 2 root root    6 Dec 16 16:16 autostart
-rw-------  1 root root 3676 Dec 23 02:52 UAKVM2.xml
[root@UA-HA qemu]#
[root@UA-HA qemu]# cp UAKVM2.xml /kvmpool/qemu_config
[root@UA-HA qemu]# ls -lrt /kvmpool/qemu_config
total 4
-rw------- 1 root root 3676 Dec 23 08:14 UAKVM2.xml
[root@UA-HA qemu]#

3. KVM 가상 게스트의 정의를 해제합니다. (클러스터 리소스로 구성하려면)

[root@UA-HA qemu]# virsh undefine UAKVM2
Domain UAKVM2 has been undefined
 
[root@UA-HA qemu]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 
[root@UA-HA qemu]#

4. pacemaker 클러스터 상태를 확인합니다.

[root@UA-HA ~]# pcs status
Cluster name: UABLR
Last updated: Mon Dec 28 22:44:59 2015          Last change: Mon Dec 28 21:16:56 2015 by root via crm_resource on UA-HA2
Stack: corosync
Current DC: UA-HA2 (version 1.1.13-10.el7-44eb2dd) - partition with quorum
2 nodes and 4 resources configured
 
Online: [ UA-HA UA-HA2 ]
 
Full list of resources:
 
 Resource Group: WEBRG1
     ClusterIP  (ocf::heartbeat:IPaddr2):       Started UA-HA2
     vgres      (ocf::heartbeat:LVM):   Started UA-HA2
     webvolfs   (ocf::heartbeat:Filesystem):    Started UA-HA2
     webres     (ocf::heartbeat:apache):        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 ~]#

5. KVM 게스트를 관리하려면 “VirtualDomain”이라는 리소스 에이전트를 사용해야합니다. /kvmpool/qemu_config에 저장된 UAKVM2.xml 파일을 사용하여 새 가상 도메인을 만듭니다.

[root@UA-HA ~]# pcs resource create UAKVM2_res VirtualDomain hypervisor="qemu:///system" config="/kvmpool/qemu_config/UAKVM2.xml" migration_transport=ssh op start timeout="120s" op stop timeout="120s" op monitor  timeout="30" interval="10"  meta allow-migrate="true" priority="100" op migrate_from interval="0" timeout="120s" op migrate_to interval="0" timeout="120" --group UAKVM2
[root@UA-HA ~]#

6. 클러스터 상태를 점검하십시오.

[root@UA-HA ~]# pcs status
Cluster name: UABLR
Last updated: Mon Dec 28 22:51:36 2015          Last change: Mon Dec 28 22:51:36 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
     ClusterIP  (ocf::heartbeat:IPaddr2):       Started UA-HA2
     vgres      (ocf::heartbeat:LVM):   Started UA-HA2
     webvolfs   (ocf::heartbeat:Filesystem):    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 ~]#

7. KVM 게스트 “UAKVM2”가 자동으로 생성되고 시작되어야합니다. 다음 명령을 사용하여 실행중인 VM을 확인하십시오.

[root@UA-HA ~]# virsh list
 Id    Name                           State
----------------------------------------------------
 2     UAKVM2                         running
 
[root@UA-HA ~]#

8. Pacemaker는 또한 라이브 KVM 게스트 마이그레이션을 지원합니다. 즉시 KVM 게스트를 다른 KVM 호스트로 마이그레이션하려면 다음 명령을 사용하십시오.

[root@UA-HA ~]# pcs resource move UAKVM2 UA-HA2
[root@UA-HA ~]#

위의 명령에서,

UAKVM2는 리소스 그룹 이름을 나타내고 UA-HA2는 클러스터 노드 이름을 나타냅니다.

9. 클러스터 상태를 점검하십시오.

[root@UA-HA ~]# pcs status
Cluster name: UABLR
Last updated: Mon Dec 28 22:54:51 2015          Last change: Mon Dec 28 22:54:38 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
     ClusterIP  (ocf::heartbeat:IPaddr2):       Started UA-HA2
     vgres      (ocf::heartbeat:LVM):   Started UA-HA2
     webvolfs   (ocf::heartbeat:Filesystem):    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 ~]#

10. virsh 명령을 사용하여 VM을 나열하십시오. VM이 UA-HA에서 UA-HA2로 이동되었음을 알 수 있습니다.

[root@UA-HA ~]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 
[root@UA-HA ~]# ssh UA-HA2 virsh list
 Id    Name                           State
----------------------------------------------------
 2     UAKVM2                         running
 
[root@UA-HA ~]#

이 마이그레이션 중에는 단 하나의 패킷조차 유실되지 않았습니다.

로그인하면 댓글을 남길 수 있습니다.
  • pacemaker_with_rhel7_part_07_-_configuring_ha_kvm_guest.txt
  • 마지막으로 수정됨: 2017/03/17 16:31
  • 저자 koov