8.2. 노드 삭제 또는 추가
다음 부분에서는 클러스터에서 노드를 삭제하고 클러스터에 노드를 추가하는 방법에 대해 설명합니다. 8.2.1절. “클러스터에서 노드를 삭제 ”에 따라 클러스터에서 노드를 삭제할 수 있으며 8.2.2절. “클러스터에 노드 추가 ”에 따라 클러스터에 노드를 추가할 수 있습니다.
8.2.1. 클러스터에서 노드를 삭제
클러스터에서 노드를 삭제하는 것은 삭제할 노드에서 클러스터 소프트웨어를 종료하고 변경 사항을 반영하기 위해 클러스터 설정을 업데이트하는 것으로 이루어집니다.
중요
클러스터에서 노드를 삭제하는 것이 2개 이상의 노드에서 2개의 노드로 변경되는 원인이 될 경우 클러스터 설정 파일을 업데이트한 후 각 노드에서 클러스터 소프트웨어를 다시 시작해야 합니다.
클러스터에서 노드를 제거하려면 다음 절차를 실행합니다:
- 노드 중 하나에서
clusvcadm
유틸리티를 사용하여 클러스터에서 삭제할 노드에서 실행되고 있는 각각의 HA 서비스를 재배치, 이전, 중지합니다.clusvcadm
사용에 대한 자세한 내용은 8.3절. “고가용성 서비스 관리 ”에서 참조하십시오. - 클러스터에서 삭제된 노드에서 8.1.2절. “클러스터 소프트웨어 중지 ”에 따라 클러스터 소프트웨어를 중지합니다. 예:
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - 클러스터에 있는 노드 중 하나에서
/etc/cluster/cluster.conf
를 편집하여 삭제될 노드의clusternode
부분을 제거합니다. 예를 들어 예 8.1. “3 노드 클러스터 설정 ”에서 node-03.example이 삭제되어야 한다고 할 경우 해당 노드의clusternode
부분을 제거합니다. 노드를 제거하는 것이 2-노드 클러스터가 되는 원인이 될 경우, 설정 파일에 다음 행을 추가하여 단일 노드가 쿼터를 유지하게 합니다 (예를 들어 1 개의 노드가 실패할 경우):<cman two_node="1" expected_votes="1"/>
3 노드와 2 노드 구성 간의 비교는 8.2.3절. “3 노드 및 2-노드 설정의 예 ”에서 참조하십시오. - 값을 증가시켜
config_version
속성을 업데이트합니다 (예:config_version="2"
에서config_version="3">
로 변경) /etc/cluster/cluster.conf
를 저장합니다.- (옵션)
ccs_config_validate
명령을 실행하여 클러스터 스키마 (cluster.rng
)에 대해 업데이트된 파일의 유효성을 검사합니다. 예:[root@example-01 ~]#
ccs_config_validate
Configuration validates cman_tool version -r
명령을 실행하여 설정을 나머지 클러스터 노드에 전달합니다.- 업데이트된 설정 파일이 전달되었는지 확인합니다.
- 클러스터 노드 수가 2개 이상의 노드에서 2개의 노드로 변경된 경우 다음과 같이 클러스터 소프트웨어를 다시 시작해야 합니다:
- 각 노드에서 8.1.2절. “클러스터 소프트웨어 중지 ”에 따라 클러스터 소프트웨어를 중지합니다. 예:
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - 각 노드에서 8.1.1절. “클러스터 소프트웨어 시작 ”에 따라 클러스터 소프트웨어를 시작합니다. 예:
[root@example-01 ~]#
service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] [root@example-01 ~]#service clvmd start
Starting clvmd: [ OK ] Activating VG(s): 2 logical volume(s) in volume group "vg_example" now active [ OK ] [root@example-01 ~]#service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service rgmanager start
Starting Cluster Service Manager: [ OK ] [root@example-01 ~]# - 클러스터 노드에서
cman_tools nodes
를 실행하여 노드가 클러스터에서 멤버로 작동하는지 확인합니다 (상태 컬럼 "Sts"에서 "M"로 표시). 예:[root@example-01 ~]#
cman_tool nodes
Node Sts Inc Joined Name 1 M 548 2010-09-28 10:52:21 node-01.example.com 2 M 548 2010-09-28 10:52:21 node-02.example.com - 노드에서
clustat
유틸리티를 사용하여, HA 서비스가 예상대로 실행되는지 확인합니다. 또한clustat
는 클러스터 노드의 상태를 표시합니다. 예:[root@example-01 ~]#
clustat
Cluster Status for mycluster @ Wed Nov 17 05:40:00 2010 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ node-02.example.com 2 Online, rgmanager node-01.example.com 1 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:example_apache node-01.example.com started service:example_apache2 (none) disabled