rhel8_cluster_구성

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
rhel8_cluster_구성 [2020/11/27 08:10] – 만듦 koovrhel8_cluster_구성 [2024/01/19 04:42] (현재) – [STONITH Fence Device 구성] koov
줄 68: 줄 68:
 <code bash> <code bash>
 [root@z1 ~]# pcs cluster enable --all [root@z1 ~]# pcs cluster enable --all
 +[root@z1 ~]# systemctl enable pacemaker
 +[root@z1 ~]# systemctl enable corosync
 +
 </code> </code>
 </WRAP> </WRAP>
줄 107: 줄 110:
 </WRAP> </WRAP>
  
-===== STONITH 비활성화 =====+===== STONITH 비활성화(테스트용) ===== 
 +<WRAP center round important 60%> 
 +이 설정은 구축/테스트 시에만 설정하고 실 운영시에는 반드시 ''enable''로 해야한다. 
 +</WRAP>
  
 fence 장치를 구성하기 전에는 STONITH를 비활성화 해야 한다. fence 장치를 구성하기 전에는 STONITH를 비활성화 해야 한다.
 +
 <WRAP prewrap> <WRAP prewrap>
 <code bash> <code bash>
줄 115: 줄 122:
 </code> </code>
 </WRAP> </WRAP>
 +
 +
 +
 +
 +===== LVM Resource 구성 =====
 +  * https://access.redhat.com/documentation/ko-kr/red_hat_enterprise_linux/9/html/configuring_and_managing_high_availability_clusters/assembly_configuring-active-passive-nfs-server-in-a-cluster-configuring-and-managing-high-availability-clusters
 +
 +
 +LVM Resource를 구성하는 방법에는 아래와같은 방법들이 있다.
 +  * ''lvmlockd''
 +  * ''clvmd''
 +  * ''system_id''
 +  * ''tagging''
 +
 +과거에는 ''tagging''방식을 주로 사용하였으나 현재는 ''system_id''방식을 권장한다.
 +
 +==== system_id 를 이용한 LVM Resource 제어 ====
 +
 +먼저 시스템 내의 ''/etc/lvm/lvm.conf''파일 내에 ''system_id_source'' 구성 옵션을 ''uname''으로 설정한다.
 +
 +<WRAP prewrap>
 +<code vim>
 +# Configuration option global/system_id_source.
 +system_id_source = "uname"
 +</code>
 +</WRAP>
 +
 +노드의 LVM 시스템 ID가 노드의 uname 과 일치하는지 확인합니다.
 +<WRAP prewrap>
 +<code bash>
 +# lvm systemid
 +  system ID: z1.example.com
 +  
 +# uname -n
 +  z1.example.com
 +</code>
 +</WRAP>
 +
 +이후 볼륨을 생성한다.
 +
 +<WRAP prewrap>
 +<code bash>
 +[root@z1 ~]# pvcreate /dev/sdb1
 +  Physical volume "/dev/sdb1" successfully created
 +</code>
 +</WRAP>
 +
 +볼륨그룹 생성시 해당 볼륨그룹의 ''%%--setautoactivation n%%'' 속성을 추가한다.
 +<WRAP prewrap>
 +<code bash>
 +[root@z1 ~]# vgcreate --setautoactivation n my_vg /dev/sdb1
 +  Volume group "my_vg" successfully created
 +  
 +[root@z1 ~]# vgs -o+systemid
 +  VG    #PV #LV #SN Attr   VSize  VFree  System ID
 +  my_vg       0 wz--n- <1.82t <1.82t z1.example.com
 +</code>
 +</WRAP>
 +
 +위의 ''System ID''항목에 현재 호스트의 ''uname -n''값이 나타나야 한다. 만약 나오지 않는다면 아래 명령어로 수동으로 설정해준다.  
 +  * https://access.redhat.com/solutions/3743711
 +<WRAP prewrap>
 +<code bash>
 +# vgchange --systemid $(uname -n) <vg name>
 +</code>
 +</WRAP>
 +  
 +이후 계속해서 논리 볼륨을 구성한다.
 +
 +<WRAP prewrap>
 +<code bash>
 +[root@z1 ~]# lvcreate -L450 -n my_lv my_vg
 +  Rounding up size to full physical extent 452.00 MiB
 +  Logical volume "my_lv" created
 +  
 +[root@z1 ~]# lvs
 +  LV      VG      Attr      LSize   Pool Origin Data%  Move Log Copy%  Convert
 +  my_lv   my_vg   -wi-a---- 452.00m
 +  ...
 +
 +[root@z1 ~]# mkfs.xfs /dev/my_vg/my_lv
 +meta-data=/dev/my_vg/my_lv       isize=512    agcount=4, agsize=28928 blks
 +                               sectsz=512   attr=2, projid32bit=1
 +...
 +</code>
 +</WRAP>
 +
 +
 +이후 클러스터의 모든 노드에서 마운트 할 경로를 생성하고 서비스 할 경로 및 설정을 완료한다.
 +<WRAP prewrap>
 +<code bash>
 +[root@z1 ~]# mkdir /nfsshare
 +
 +[root@z1 ~]# lvchange -ay my_vg/my_lv
 +[root@z1 ~]# mount /dev/my_vg/my_lv /nfsshare
 +
 +[root@z1 ~]# mkdir -p /nfsshare/exports
 +[root@z1 ~]# mkdir -p /nfsshare/exports/export1
 +[root@z1 ~]# mkdir -p /nfsshare/exports/export2
 +
 +[root@z1 ~]# touch /nfsshare/exports/export1/clientdatafile1
 +[root@z1 ~]# touch /nfsshare/exports/export2/clientdatafile2
 +
 +[root@z1 ~]# umount /dev/my_vg/my_lv
 +[root@z1 ~]# vgchange -an my_vg
 +</code>
 +</WRAP>
 +
 +마지막에 반드시 ''umount'' 후 ''vgchange -an my_vg'' 작업을 수행하여 해당 vg를 비활성화 해준다.
 +이후 클러스터가 구동되면서 자동으로 마운트가 동작한다.
 +
 +===== STONITH Fence Device 구성 =====
 +
 +''2-node''구성일 경우 반드시 한쪽에(가급적 primary노드에) ''delay'' 속성값을 지정해서 서로 fence를 날리는 일이 없도록 한다.
 +<WRAP prewrap>
 +<code bash>
 +# pcs stonith create fence-node1 fence_ipmilan ip=192.168.0.33 ipport=7061 lanplus=1 username=admin password=admin pcmk_host_list=host1 delay=10
 +# pcs stonith create fence-node2 fence_ipmilan ip=192.168.0.33 ipport=7062 lanplus=1 username=admin password=admin pcmk_host_list=host2
 +</code>
 +</WRAP>
 +
  
 ====== 참조링크 ====== ====== 참조링크 ======
  • rhel8_cluster_구성.1606464650.txt.gz
  • 마지막으로 수정됨: 2020/11/27 08:10
  • 저자 koov