fence lock 해결

  • 펜싱 장치의 전원이 꺼지는 것과 동시에 클러스터의 노드 전원이 꺼지면 클러스터 서비스가 장애 조치를 수행하지 않거나 GFS 파일 시스템이 잠깁니다.
  • 네트워크가 다운되면 다른 노드의 펜싱이 실패하고 모든 것이 잠깁니다.
  • 이 상황에 빠지면 한쪽 장비가 복구가 불가능한 상황인경우 멀쩡한 다른 노드가 정상적으로 서비스가 올라오지 않는 상태가 발생한다.
  • /var/log/cluster/fenced.log 에 아래 내용이 찍힌다.
Nov 19 12:55:50 node1 fenced[2080]: fencing node node2 still retrying
Nov 19 13:26:16 node1 fenced[2080]: fencing node node2 still retrying
Nov 19 13:56:42 node1 fenced[2080]: fencing node node2 still retrying

클러스터가 반복적으로 노드 차단에 실패하는 상태에 있으면 이를 수정하는 두 가지 일반적인 방법이 있습니다.

  • a) 노드가 펜스 장치에 도달하고 펜스 작동을 수행할 수 있는 기능을 복원합니다. 예를 들어 네트워크가 중단된 경우 연결을 복원하고, 펜스 장치 하드웨어에 장애가 발생한 경우 교체하고, 장치 전원이 차단된 경우 전원을 복원합니다. 장치를 교체하는 경우 이전 장치와 동일한 로그인 자격 증명 및 기타 설정이 있는지 확인하여 fence 또는 stonith-ng 데몬에서 해당 장치에 대한 후속 로그인 시도가 성공적으로 이루어지도록 합니다. 펜스 작업 실패의 원인이 되는 문제가 해결되면 이 작업의 다음 재시도가 성공하여 쿼럼이 여전히 있는 경우 클러스터가 복구되고 작업을 재개할 수 있습니다.
  • b) 장애가 발생한 노드를 수동으로 펜스(전원 끄기)하고 나머지 노드에서 fence_ack_manual 또는 pcs stonith confirm 명령으로 펜스가 수행되었음을 확인합니다

cman 기반 클러스터에서 fence_ack_manual 명령을 사용하여 클러스터 에서 수동 펜싱 확인

경고 : 이 명령을 실행하기 전에 잘못된 노드의 전원을 완전히 꺼야 합니다. 그렇지 않으면 데이터 손상 또는 기타 공유 리소스 충돌이 발생할 수 있습니다.

  • RHEL 6
# fence_ack_manual -n <nodename of manually fenced node> 
  • RHEL 5
# fence_ack_manual -e -n <nodename of manually fenced node> 

pacemaker 기반 클러스터에서 pcs stonith confirm 명령을 사용하여 클러스터 에서 수동 펜싱 확인

경고 : 이 명령을 실행하기 전에 잘못된 노드의 전원을 완전히 꺼야 합니다. 그렇지 않으면 데이터 손상 또는 기타 공유 리소스 충돌이 발생할 수 있습니다.

# pcs stonith confirm <nodename of manually fenced node>
로그인하면 댓글을 남길 수 있습니다.
  • fence_lock_해결.txt
  • 마지막으로 수정됨: 2023/01/13 01:51
  • 저자 koov