4.5. 워치독(Watchdog) 설정

4.5.1. 가상 머신에 워치독 추가

가상 머신에 워치독 카드를 추가하여 운영 체제의 응답성을 감시할 수 있습니다.

절차 4.9. 가상 머신에 워치독 카드 추가

  1. 가상 머신 탭을 클릭하고 가상 머신을 선택합니다.
  2. 편집을 클릭합니다.
  3. 고가용성 탭을 클릭합니다.
  4. 워치독 모델 드롭 다운 목록에서 사용할 워치독 모델을 선택합니다.
  5. 워치독 작업 드롭 다운 목록에서 작업을 선택합니다. 이는 워치독이 트리거(trigger)되었을 경우 가상 머신이 수행할 작업을 말합니다.
  6. OK를 클릭합니다.

4.5.2. 워치독 설치

가상 머신에 연결된 워치독 카드를 활성화하려면 그 가상 머신에 watchdog 패키지를 설치하고 watchdog 서비스를 시작해야 합니다.

절차 4.10. 워치독 설치

  1. 워치독 카드가 연결되어 있는 가상 머신에 로그인합니다.
  2. watchdog 패키지 및 관련 패키지를 설치합니다:
    # yum install watchdog
  3. /etc/watchdog.conf 파일을 편집하고 다음 행을 주석 해제 처리합니다:
    watchdog-device = /dev/watchdog
  4. 변경 사항을 저장합니다.
  5. watchdog 서비스를 시작하고 부팅 시 이러한 서비스가 시작되는지 확인합니다:
    • Red Hat Enterprise Linux 6:
      # service watchdog start
      # chkconfig watchdog on
    • Red Hat Enterprise Linux 7:
      # systemctl start watchdog.service
      # systemctl enable watchdog.service

4.5.3. 워치독 기능 확인

가상 머신에 워치독 카드가 연결되었으며 watchdog 서비스가 활성화되어 있는지 확인합니다.

주의

이 절차는 워치독 기능을 확인하기 위해서만 제공되며 프로덕션 시스템에서는 실행하지 않아야 합니다.

절차 4.11. 워치독 기능 확인

  1. 워치독 카드가 연결되어 있는 가상 머신에 로그인합니다.
  2. 가상 머신이 워치독 카드를 인식했는지 확인합니다:
    # lspci | grep watchdog -i
  3. 워치독이 활성화되어 있는지 확인하기 위해 다음의 명령 중 하나를 실행합니다:
    • 커널 패닉을 트리거(trigger)합니다:
      # echo c > /proc/sysrq-trigger
    • watchdog 서비스를 종료합니다:
      # kill -9 `pgrep watchdog`
워치독 타이머를 더 이상 초기화할 수 없으므로 잠시 후 워치독 카운터는 제로가 됩니다. 워치독 카운터가 제로가 되면 해당 가상 머신의 워치독 작업 드롭 다운 메뉴에서 지정된 작업이 수행됩니다.

4.5.4. watchdog.conf에 있는 워치독 매개 변수

다음 부분에는 /etc/watchdog.conf 파일에 있는 watchdog 서비스 설정 옵션 목록이 있습니다. 옵션을 설정하려면 그 옵션을 주석 해제 처리하고 변경된 내용을 저장한 후 watchdog 서비스를 다시 시작합니다.

참고

watchdog 서비스 설정 옵션 및 watchdog 명령 사용에 대한 보다 자세한 설명은 watchdog man 페이지에서 참조하십시오.

표 4.2. watchdog.conf 변수

변수 이름기본값설명
pingN/AIP 주소에 액세스할 수 있는지 확인하기 위해서 워치독이 핑(ping)을 시도하는 주소입니다. 추가적인 ping 행을 더해서 여러 개의 IP 주소를 입력할 수 있습니다.
interfaceN/A네트워크 트래픽이 있는지 확인하기 위해 워치독이 감시하는 네트워크 인터페이스입니다. 추가적인 interface 행을 더해서 여러 개의 네트워크 인터페이스를 입력할 수 있습니다.
file/var/log/messages변경된 내용이 있는지 확인하기 위해 워치독이 감시할 로컬 시스템 파일입니다. 추가적인 file 행을 더해서 여러 개의 파일을 입력할 수 있습니다.
change1407워치독 간격이 이 숫자 이상이 되면 워치독은 파일이 변경 되었는지 확인하게 됩니다. change 행을 반드시 각 file 행 직후에 있는 행에 지정해야 하며, 이 change 행 바로 위에 있는 file 행에 적용됩니다.
max-load-1241분 동안 가상 머신이 감당할 수 있는 최대 평균 부하입니다. 이 평균값이 초과되면 워치독이 실행됩니다. 이 값을 0으로 설정 시 이 기능이 비활성화됩니다.
max-load-5185분 동안 가상 머신이 감당할 수 있는 최대 평균 부하입니다. 이 평균값이 초과되면 워치독이 실행됩니다. 이 값을 0으로 설정 시 이 기능이 비활성화됩니다. 기본적으로 이 변수값은 max-load-1의 4분의 3 정도 되는 값으로 설정되어 있습니다.
max-load-151215분 동안 가상 머신이 감당할 수 있는 최대 평균 부하입니다. 이 평균값이 초과되면 워치독이 실행됩니다. 이 값을 0으로 설정하면 이 기능이 비활성화됩니다. 기본적으로 이 변수값은 max-load-1의 반 정도 되는 값으로 설정되어 있습니다.
min-memory1가상 머신에서 반드시 사용 가능하도록 남아 있어야 하는 최소한의 가상 메모리 크기입니다. 이 값은 페이지 단위로 측정됩니다. 이 값을 0으로 설정하면 이 기능이 비활성화됩니다.
repair-binary/usr/sbin/repair워치독이 트리거(trigger)되었을 때 로컬 시스템에서 실행될 바이너리 파일의 경로 및 파일 이름입니다. 이렇게 지정된 파일을 사용하여 워치독 카운터가 초기화되지 못하는 문제가 해결되면 워치독 작업이 트리거되지 않습니다.
test-binaryN/A매 간격마다 워치독이 실행하려고 시도하게 되는 로켈 시스템에 있는 바이너리 파일의 경로 및 파일 이름입니다. 테스트 바이너리를 사용하면 사용자 정의 테스트를 실행하기 위한 파일을 지정할 수 있습니다.
test-timeoutN/A사용자 정의 테스트가 실행될 수 있는 제한 시간을 초 단위로 설정할 수 있습니다. 이 값을 0으로 설정하면 사용자 정의 테스트가 무기한으로 지속됩니다.
temperature-deviceN/Awatchdog 서비스가 실행 중인 시스템의 온도를 확인하는 장치의 경로 및 이름입니다.
max-temperature120watchdog 서비스가 실행 중인 시스템의 최대 허용 온도입니다. 이 온도에 도달하면 시스템이 중지됩니다. 단위 환산은 고려되지 않으므로, 사용하고 있는 워치독 카드와 같은 단위로 이 값을 지정해야 합니다.
adminroot이메일 알림이 전송되는 이메일 주소입니다.
interval10워치독 장치 업데이트 간격을 초 단위로 설정할 수 있습니다. 워치독 장치는 최소 1분마다 업데이트를 예상하며, 1분이 넘게 업데이트가 없으면 워치독이 트리거됩니다. 이러한 1분의 시간은 워치독 장치 드라이버에 하드코딩되어 있으며 설정을 변경할 수 없습니다.
logtick1watchdog 서비스에 대한 상세 정보 로깅(verbose logging)이 활성화된 경우, watchdog 서비스가 정기적으로 로컬 시스템에 로그 메시지를 기록하게 됩니다. logtick 값은 메시지가 작성된 후 워치독 간격에 대한 설정을 나타냅니다.
realtimeyes메모리에서 워치독을 잠그도록 설정할 수 있습니다. 이 값을 yes로 설정하면 워치독이 메모리에서 잠겨서 스왑-아웃할 수 없게 되며, 이 값을 no로 설정하면 워치독을 메모리에서 스왑-아웃할 수 있습니다. 워치독이 스왑-아웃된 후 워치독 카운터가 제로가 되기 전에 다시 스왑-인되지 않으면 워치독이 트리거됩니다.
priority1realtime 값이 yes로 설정 시 스케줄 우선 순위를 나타냅니다.
pidfile/var/run/syslogd.pid관련 프로세스가 아직 활성화되어 있는지 확인하기 위해 워치독이 감시하는 PID 경로 및 파일 이름입니다. 관련 프로세스가 활성화되어 있지 않으면 워치독이 트리거됩니다.