리눅스

Total 331
Today 0
profile_image
슈퍼아이피
18-04-10 18:27 0개 14회
설치문서
RHCS (Red hat Cluster Suite) 구축 4/6

(3). 서비스 그룹 설정


클러스터에 클러스터 서비스를 추가할 수 있다.


클러스터가 시작되어 실행될 때 서비스가 자동으로 시작하게 하려면 자동으로 서비스 시작(Automatically Start This Service)
체크 박스를 선택한다.
체크 박스가 선택되어 있지 않을경우 정지 상태에서 클러스터가 나타나는 때에 수동으로 서비스를 시작해야 한다.

배타적 실행 (Run Exclusive) 체크 박스를 선택하여 다른 서비스를 실행하지 않는 노드에서만 서비스를 실행하는 정책을 설정한다.

클러스터에 장애 조치 도메인을 설정한 경우, 장애 조치 도메인 (Failover Domain) 매개 변수의 드롭 다운 메뉴를 사용하여 
서비스에 장애 조치 도메인을 선택할 수 있다. 


복구 정책 (Recovery Policy) 드롭 다운 상자를 사용하여 서비스의 복구 정책을 선택한다. 
옵션에는 재배치 (Relocate), 다시 시작 (Restart), 다시 시작-비활성화 (Restart-Disable), 비활성화(Disable)가 있다.

다시 시작 (Restart) 옵션을 선택하면 시스템이 서비스를 재배치하기 전에 실패한 서비스를 다시 시작 시도해야 함을 가리킨다. 
재배치 (Relocate) 옵션을 선택한 경우 시스템은 다른 노드에서 서비스를 다시 시작 시도해야 함을 가리킨다. 
비활성화 (Disable) 옵션을 선택한 경우 시스템 구성 요소에 장애가 발생하면 리소스 그룹을 비활성화해야 함을 가리킨다. 
다시 시작-비활성화(Restart-Disable) 옵션을 선택하면 시스템이 실패한 경우 그 자리에서 시스템이 서비스를 다시 시작 시도해야
함을 가리킨다. 
하지만 서비스 다시 시작을 실패한 경우, 서비스는 클러스터에 있는 다른 호스트로 이동하지 않고 비활성화 된다.

서비스의 복구 정책으로 다시 시작 (Restart) 또는 다시 시작-비활성화 (Restart-Disable)를 선택한 경우, 
서비스를 이동 또는 비활성화하기 전 까지 다시 시작 실패의 최대 횟수를 지정할 수 있으며 다시 시작을 잊어버린 후
시간을 초 단위로 지정할 수 있다.


2439B34C58CD27F319CF48




서비스에 리소스를 추가하려면, 리소스 추가 (Add Resource)를 클릭한다. 
리소스 추가(Add Resource)를 클릭하면 서비스에 리소스 추가 (Add Resource T o Service) 드롭 다운 상자가 나타나 
기존 글로벌 리소스를 추가하거나 서비스에서만 사용할 수 있는 새로운 리소스를추가할 수 있다.

기존 글로벌 리소스를 추가하려면, 서비스에 리소스 추가 (Add Resource To Service) 드롭 다운 상자에서 기존 리소스 이름을 클릭한다. 
그러면 설정한 서비스에 대한 서비스 그룹(Service Groups) 페이지에 리소스와 매개 변수가 표시된다. 

서비스에서만 사용할 수 있는 새로운 리소스를 추가하려면, 서비스에 리소스 추가 (AddResource T o Service) 
드롭 다운 상자에서 설정할 리소스 유형을 선택하고 추가하려는 리소스에 대한 리소스 매개 변수를 입력한다. 


리소스를 서비스에 추가할 때, 이것이 기존 글로벌 리소스인지 또는 서비스에서만 사용 가능한 리소스 인지를 지정할 수 있으며 
리소스가 독립 하위 트리 (Independent Subtree) 또는 중요하지 않은 리소스 (Non-Critical Resource)인지를 지정할 수 있다.

리소스가 독립 하위 트리라고 지정하여 리소스가 실패할 경우, 
시스템이 정상적으로 복구 시도하기 전 (서비스 전체가 아닌) 해당 리소스만이 다시 시작된다. 
서비스에 대한 복구 정책을 구현하기 전 노드의 리소스를 다시 시작 시도하는 최대 횟수를 지정할 수 있다.
또한 시스템이 서비스에 대한 복구 정책을 구현한 후 시간을 초단위로 지정할 수 있다.

리소스가 중요하지 않은 리소스라고 지정하고 이러한 리소스가 실패할 경우,
해당 리소스만이 다시 시작됩니다. 또한 리소스가 계속해서 실패하면 서비스 전체가 아닌 해당 리소스만 비활성화 된다. 

리소스를 비활성화하기 전 노드에 있는 리소스에 대해 다시 시작을 시도하는 최대 횟수를 지정할 수 있다. 
또한 시스템이 리소스를 비활성화한 후 시간을 초 단위로 지정할 수 있다.

정의된 리소스에 자식 리소스를 추가하려면 자식 리소스 추가 (Add Child Resource)를 클릭한다.
자식 리소스 추가 (Add Child Resource)를 클릭하면 서비스에 리소스 추가 (AddResource To Service) 드롭 다운 상자가 나타난다. 
여기서 기존 글로벌 리소스를 추가하거나 서비스에서만 사용할 수 있는 새로운 리소스를 추가할 수 있다. 
사용자 요건에 맞게 리소스에 자식리소스를 계속 추가할 수 있다.


234C8E4C58CD27F322A6E1




- Independent Subtree 관련 체크하고 페일 오버 테스트 하니 잘 안되서 빼버렷다. 


2642904C58CD27F42619A5




- 아래 화면에서 체크박스에 체크를 하고 Start를 하면 설정한 서비스 그룹이 정상적으로 작동한다.

* 참고로 페일 오버 테스트 할 때 페일 오버 도메인 값 수정 후 적용하려면 서비스 그룹에서 해당 서비스를 Disable -> Start
해야 정상적으로 적용이 된다. 그냥 Restart 로는 적용이 안된다. 와 버그인가 ? 뭐지..

* 그리고 여기서 설정하는 값들은 각 클러스터 노드들 (노드 - A , 노드 - B)의 /etc/cluster/cluster.conf 파일에 자동으로 업데이트 된다.


246CDC4C58CD27F42B3BB0




# clustat 명령어를 실행해보았다. 


2667DE4C58CD27F5216A4B




 

# service cman start 시 아래와 같은 에러가 발생한다면?
Starting cman... cman_tool: Cannot open connection to cman, is it running ? Check cluster logs for details

-> 아오 개고생했네, 클러스터 노드에서 /etc/cluster/cluster.conf 파일은 동일한 내용이 쓰여진다.
그런데 어떠한 이유로 클러스터 노드 - A 와 클러스터 노드 - B 의 /etc/cluster/cluster.conf 파일이 동일하지 않을 수가 있다.

특히 여기서 cluster config_version 값이 안맞아서 cman 서비스가 실행되지 않는 경우가 있다.
<?xml version="1.0"?>
<cluster config_version="60" name="RHCS-cluster">

정상적으로 실행중인 클러스터 노드의 cluster.conf 파일을 복사하던지, 설정 내용이 서로 다른부분이 있는지 확인해서
내용을 똑같이 맞춰주면 해결된다.

 


댓글목록

등록된 댓글이 없습니다.