* 클러스터 시작/중지
pcs cluster stop --all
pcs cluster start --all
* 상태확인
pcs status --full
pcs status corosync
pcs status quorum
pcs config
* 클러스터 관리
pcs node standby/unstandby 노드명
클러스터에서 제거하지 않고 리소스 올리지 못하게 하기, 마이그레이션 테스트 등
pcs resource debug-start 리소스명
fail 원인 찾기. 리소스 시작 시도의 오류 메시지를 표시해줌.
corosync-cfgtool -s
클러스터 네트워크 확인
pcs properity --all
클러스터 속성값 확인 (no quorum policy 확인)
pcs cluster node add/remove 노드명
클러스터에 새로운 노드 넣기/제거하기
* 리소스 관련
pcs resource list
pcs resource describe 에이전트명
pcs resource delete
pcs resource enable/disable 리소스명/그룹명 : 리소스 중단. 컨스트레인트 테스트할때 사용
pcs resource update 리소스 정보 변경
pcs resource op add/remove 리소스명 이름(monitor/start/stop등)
* 펜스 관련
pcs stonith list 에이전트명
펜스 리스트 보기
pcs stonith describe 에이전트명
해당 펜스 에이전트의 상세정보 확인
에이전트명 -h
해당 펜스 에이전트의 상세정보 확인
pcs stonith delete
펜스 삭제
* 컨스트레인트 관련
pcs constraint list --full
현재 컨스트레인트의 상세정보
pcs constraint delete 컨스트레인트명
컨스트레인트 제거
pcs constraint order a then b
a가 시작되어야 b 도 시작 가능하다. a가 스톱되어야 한다면 b가 먼저 스톱된다.
pcs constraint location A prefers/avoids 노드명
해당 리소스가 해당 노드를 더 선호하게 된다. 이것은 인피니티를 가지게 됨. / 또는 더 안선호하고 마이너스 인피니티를 가지게 함.
pcs constraint location A prefers node=500
해당 노드에 500점 준다
pcs constraint colocation add B with A
두 노드는 동일 노드에서 실행되어야만 한다. A가 메인이다. a가 시작되어야 b도 시작된다. a가 시작할 위치가 없으면 b도 실행할 수 없다. a가 먼저 실행될곳을 결정하고 그다음 b가 실행될지 여부를 결정한다.
pcs constraint colocation add B with A -INFINITY
둘이 절대 같이 안있게함.
# 현재 스코어 보기
crm_simulate -sL 의 옵션
-s : 스코어를 보여주기 (리소스, 리소스 그룹, stonith 장치)
-L : live cluster 에서 (현재 클러스터?인듯)
crm_simulate 명령은 리소스 type에 따라 특정 리소스에 대해 호출되는 할당 메서드(이전에는 color알려짐)를 사용하여 워크로드를 생성한다.
일반 리소스는 native_allocate만을 호출하는데 반면 클론된 리소스는 클론되는 레귤로 리소스에 대한 native_allocate 와 클론으로서 성격에 대한 clone_allocate 둘다 호출한다.
비슷하게, 그룹 리소스도 native_allocate와 group_allocate 두개를 호출한다.
location constraint 만을 사용해서 노드에 이동시키는 예시만 쓰므로, 리소스 할당 type은 여기서는 관련이 없다.
위 예시에서, location constraint 가 있는데 myweb 리소스 그룹은 노드1을 선호하도록 100점이 되어있다.
클러스터가 노드1에서 webip 리소스를 시작했다. 리소스가 실행되고 있을 때, 리소스 그룹이 자동으로 클러스터 내 모든 노드에 대하여 webserver 의 리소스가 -infinity 가 되도록 세팅했다. 따라서 그 리소스는 node1에서 실행되어야만 했다. (리소스그룹안에 모든 리소스들은 동일한 클러스터 노드에서 실행되어야만 하므로)
또한 crm_simulate 명령은 또한 특정 클러스터 구성과 이벤트 순서에 따라 리소스가 어떻게 재배치되는지를 예측하기 위한 문제해결 도구가 되기도 한다.
'High Availability' 카테고리의 다른 글
[QEMU-KVM] RHEL8 에서 브릿지 네트워크 (bridge network) 만들기 (1) | 2024.04.20 |
---|---|
stickiness 이해 (0) | 2024.02.17 |