Apigee-Monit로 자가 복구

Private Cloud용 Apigee Edge에는 오픈소스 monit 유틸리티를 기반으로 하는 도구인 apigee-monit가 포함되어 있습니다. apigee-monit는 주기적으로 Edge 서비스를 폴링합니다. 서비스를 사용할 수 없는 경우 apigee-monit에서 다시 시작을 시도합니다.

apigee-monit 앱을 사용하려면 수동으로 설치해야 합니다. 이는 표준 설치에 포함되지 않습니다.

기본적으로 apigee-monit는 60초마다 에지 서비스의 상태를 확인합니다.

빠른 시작

이 섹션에서는 apigee-monit를 빠르게 실행하는 방법을 보여줍니다.

Amazon Linux를 사용하는 경우 먼저 Fedora를 설치합니다. 그 이외의 경우에는 이 단계를 건너뛰세요.

sudo yum install -y https://kojipkgs.fedoraproject.org/packages/monit/5.25.1/1.el6/x86_64/monit-5.25.1-1.el6.x86_64.rpm

apigee-monit를 설치하려면 다음 단계를 따르세요.

  apigee-monit 설치
/opt/apigee/apigee-service/bin/apigee-service apigee-monit install
/opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

이렇게 하면 apigee-monit가 설치되고 기본적으로 노드의 모든 구성요소 모니터링을 시작합니다.

  구성요소 모니터링 중지
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
  구성요소 모니터링 시작
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
  요약 상태 정보 받기
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
  apigee-monit 로그 파일 보기
cat /opt/apigee/var/log/apigee-monit/apigee-monit.log

이러한 각 주제와 기타 주제에 대해서는 다음 섹션에서 자세히 설명합니다.

apigee-monit 정보

apigee-monit는 노드의 모든 구성요소가 가동 상태를 유지하도록 도와줍니다. 이를 위해 다음을 포함한 다양한 서비스를 제공합니다.

  • 실패한 서비스 다시 시작
  • 요약 정보 표시
  • 로깅 모니터링 상태
  • 알림 전송
  • Edge가 아닌 서비스 모니터링

Apigee에서는 apigee-monit을(를) 모니터링하여 실행 중인지 확인할 것을 권장합니다. 자세한 내용은 apigee-monit 모니터링을 참고하세요.

apigee-monit 아키텍처

프라이빗 클라우드용 Apigee Edge 설치 및 구성 중에 필요에 따라 클러스터의 각 노드에 별도의 apigee-monit 인스턴스를 설치할 수 있습니다. 이러한 별도의 apigee-monit 인스턴스는 서로 독립적으로 작동합니다. 즉, 구성요소의 상태를 다른 노드에 전달하지 않으며 모니터링 유틸리티 자체의 오류를 중앙 서비스에 전달하지 않습니다.

다음 이미지는 노드가 5개인 클러스터의 apigee-monit 아키텍처를 보여줍니다.

5개 노드 클러스터의 Apigee monit 아키텍처
그림 1: 클러스터의 각 노드에서 격리된 상태로 실행되는 별도의 apigee-monit 인스턴스

지원되는 플랫폼

apigee-monit은(는) 프라이빗 클라우드 클러스터에 다음 플랫폼을 지원합니다. apigee-monit에 지원되는 OS는 Private Cloud 버전에 따라 다릅니다.

운영체제 프라이빗 클라우드 버전
v4.50.00 v4.51.00 v4.52.00
CentOS 7.5, 7.6, 7.7, 7.8 7.5, 7.6, 7.7, 7.8 7.5, 7.6, 7.7, 7.8
RedHat Enterprise Linux (RHEL) 7.5, 7.6, 7.7, 7.8 7.5, 7.6, 7.7, 7.8, 7.9, 8.0 7.5, 7.6, 7.7, 7.8, 7.9, 8.0
Oracle Linux 7.5, 7.6, 7.7, 7.8 7.5, 7.6, 7.7, 7.8 7.5, 7.6, 7.7, 7.8
* 기술적으로 지원되지는 않지만 Apigee Edge for Private Cloud 버전 4.19.01의 경우 CentOS/RHEL/Oracle 버전 6.9에서 apigee-monit를 설치하여 사용할 수 있습니다.

구성요소 구성

apigee-monit구성요소 구성을 사용하여 모니터링할 구성요소, 확인할 구성요소의 측면, 장애 발생 시 취할 조치를 결정합니다.

기본적으로 apigee-monit는 사전 정의된 구성요소 구성을 사용하여 노드의 모든 Edge 구성요소를 모니터링합니다. 기본 설정을 보려면 apigee-monit 구성요소 구성 파일을 확인하면 됩니다. 기본 구성요소 구성은 변경할 수 없습니다.

apigee-monit는 검사 중인 구성요소에 따라 구성요소의 여러 측면을 확인합니다. 다음 표에는 apigee-monit에서 각 구성요소를 확인하는 내용과 각 구성요소의 구성요소 구성 위치가 나와 있습니다. 일부 구성요소는 단일 구성 파일에 정의되며, 다른 구성요소는 자체 구성을 갖습니다.

구성요소 구성 위치 모니터링 대상
관리 서버 /opt/apigee/edge-management-server/monit/default.conf apigee-monit 검사:
  • 지정된 포트가 열려 있으며 요청을 수락 중입니다.
  • 지정된 프로토콜이 지원됨
  • 응답 상태

또한 이러한 구성요소의 경우 apigee-monit는 다음과 같습니다.

  • 조치를 취하려면 지정된 주기 수 내에 실패가 여러 번 발생해야 함
  • 커스텀 요청 경로 설정
메시지 프로세서 /opt/apigee/edge-message-processor/monit/default.conf
Postgres 서버 /opt/apigee/edge-postgres-server/monit/default.conf
Qpid 서버 /opt/apigee/edge-qpid-server/monit/default.conf
라우터 /opt/apigee/edge-router/monit/default.conf
Cassandra
Edge UI
OpenLDAP
Postgres
Qpid
동물원키퍼
/opt/apigee/data/apigee-monit/monit.conf apigee-monit 검사:
  • 서비스 실행 중

다음 예는 edge-router 구성요소의 기본 구성요소 구성을 보여줍니다.

check host edge-router with address localhost
  restart program = "/opt/apigee/apigee-service/bin/apigee-service edge-router monitrestart"
  if failed host 10.1.1.0 port 8081 and protocol http
    and request "/v1/servers/self/uuid"
    with timeout 15 seconds
    for 2 times within 3 cycles
  then restart

  if failed port 15999 and protocol http
    and request "/v1/servers/self"
    and status < 600
    with timeout 15 seconds
    for 2 times within 3 cycles
  then restart

다음 예는 기본 UI (edge-ui) 구성요소의 기본 구성을 보여줍니다.

check process edge-ui
 with pidfile /opt/apigee/var/run/edge-ui/edge-ui.pid
 start program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui start" with timeout 55 seconds
 stop program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui stop"

이는 구성요소 이름이 edge-management-ui인 새 Edge UI가 아닌 기본 UI에 적용됩니다.

프라이빗 클라우드용 Apigee Edge 구성요소의 기본 구성요소 구성은 변경할 수 없습니다. 하지만 대상 엔드포인트 또는 httpd 서비스와 같은 외부 서비스의 자체 구성요소 구성은 추가할 수 있습니다. 자세한 내용은 비Apigee 구성요소 구성을 참조하세요.

기본적으로 apigee-monit는 실행 중인 노드의 모든 구성요소를 모니터링합니다. 모든 구성요소 또는 개별 구성요소에 사용 설정하거나 사용 중지할 수 있습니다. 자세한 내용은 다음을 참고하세요.

apigee-monit 설치

apigee-monit은(는) 기본적으로 설치되지 않습니다. Private Cloud용 Apigee Edge 버전 4.19.01 이상을 업그레이드하거나 설치한 후 수동으로 설치할 수 있습니다.

이 섹션에서는 지원되는 플랫폼apigee-monit를 설치하는 방법을 설명합니다.

apigee-monit uninstalling에 관한 자세한 내용은 apigee-monit 제거를 참고하세요.

지원되는 플랫폼에 apigee-monit 설치

이 섹션에서는 지원되는 플랫폼apigee-monit를 설치하는 방법을 설명합니다.

지원되는 플랫폼에 apigee-monit을 설치하려면 다음 안내를 따르세요.

  1. 다음 명령어를 사용하여 apigee-monit를 설치합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit install
  2. 다음 명령어로 apigee-monit를 구성합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  3. 다음 명령어로 apigee-monit를 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit start
  4. 클러스터의 각 노드에서 이 절차를 반복합니다.

모니터링 구성요소 중지 및 시작

어떤 이유로든 서비스가 중지되면 apigee-monit는 서비스 다시 시작을 시도합니다.

구성요소를 고의로 중지하려는 경우 문제가 발생할 수 있습니다. 예를 들어 구성요소를 백업하거나 업그레이드해야 할 때 구성요소를 중지할 수 있습니다. 백업 또는 업그레이드 중에 apigee-monit에서 서비스를 다시 시작하면 유지보수 절차가 중단되어 실패할 수 있습니다.

다음 섹션에서는 구성요소 모니터링을 중지하는 옵션을 보여줍니다.

구성요소를 중지하고 모니터링 해제하기

구성요소를 중지하고 모니터링을 해제하려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop-component -c component_name
component_name는 다음 중 하나일 수 있습니다.
  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL 데이터베이스)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge SSO)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (관리 서버)
  • edge-management-ui (새 Edge UI)
  • edge-message-processor (메시지 프로세서)
  • edge-postgres-server (Postgres 서버)
  • edge-qpid-server (Qpid 서버)
  • edge-router (에지 라우터)
  • edge-ui (기본 UI)

'모두'는 stop-component에 유효한 옵션이 아닙니다. stop-component를 사용하여 한 번에 하나의 구성요소만 중지하고 모니터링 해제할 수 있습니다.

구성요소를 다시 시작하고 모니터링을 재개하려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit start-component -c component_name

'모두'는 start-component에 유효한 옵션이 아닙니다.

모든 구성요소를 중지하고 모니터링 해제하는 방법은 모든 구성요소 중지 및 모니터링 취소를 참고하세요.

구성요소 모니터링 취소 (중지하지는 않음)

구성요소를 모니터링하지 않고 모니터링하지 않으려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
component_name는 다음 중 하나일 수 있습니다.
  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL 데이터베이스)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge SSO)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (관리 서버)
  • edge-management-ui (새 Edge UI)
  • edge-message-processor (메시지 프로세서)
  • edge-postgres-server (Postgres 서버)
  • edge-qpid-server (Qpid 서버)
  • edge-router (에지 라우터)
  • edge-ui (기본 UI)

구성요소 모니터링을 재개하려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name

모든 구성요소를 모니터링 취소하지만 중지하지는 않습니다.

모든 구성요소를 모니터링 해제하지만 중지하지 않으려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all

모든 구성요소 모니터링을 재개하려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all

모든 구성요소를 중지하고 모니터링 취소

모든 구성요소를 중지하고 모니터링을 해제하려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
/opt/apigee/apigee-service/bin/apigee-all stop

모든 구성요소를 다시 시작하고 모니터링을 재개하려면 다음 명령어를 실행합니다.

/opt/apigee/apigee-service/bin/apigee-all start
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all

모든 구성요소 모니터링을 중지하려면 apigee-monit 중지, 시작, 사용 중지에 설명된 대로 apigee-monit를 사용 중지하면 됩니다.

apigee-monit 중지, 시작, 사용 중지

다른 서비스와 마찬가지로 apigee-service 명령어를 사용하여 apigee-monit를 중지하거나 시작할 수 있습니다. 또한 apigee-monit는 구성요소 모니터링을 일시적으로 중지할 수 있는 unmonitor 명령어를 지원합니다.

apigee-monit 중지

apigee-monit를 중지하려면 다음 명령어를 사용합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop

apigee-monit 시작

apigee-monit를 시작하려면 다음 명령어를 사용합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

apigee-monit

다음 명령어를 사용하여 노드의 모든 구성요소 모니터링을 정지할 수 있습니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all

또는 apigee-monit 제거에 설명된 대로 노드에서 apigee-monit를 제거하여 영구적으로 사용 중지할 수 있습니다.

apigee-monit 제거

apigee-monit를 제거하려면 다음 안내를 따르세요.

  1. apigee-monit를 모니터링하는 cron 작업을 설정한 경우 apigee-monit를 제거하기 전에 cron 작업을 삭제합니다.
    sudo rm /etc/cron.d/apigee-monit.cron
  2. 다음 명령어를 사용하여 apigee-monit를 중지합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit stop
  3. 다음 명령어를 사용하여 apigee-monit를 제거합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit uninstall
  4. 클러스터의 각 노드에서 이 절차를 반복합니다.

새로 설치된 구성요소 모니터링

apigee-monit를 실행 중인 노드에 새 구성요소를 설치하면 apigee-monitrestart 명령어를 실행하여 모니터링을 시작할 수 있습니다. 이렇게 하면 구성요소 구성에 새 구성요소가 포함될 새 monit.conf 파일이 생성됩니다.

다음 예에서는 apigee-monit를 다시 시작합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit restart

apigee-monit 맞춤설정

다음과 같은 다양한 apigee-monit 설정을 맞춤설정할 수 있습니다.

  1. 기본 apigee-monit 컨트롤 설정
  2. 전체 구성 설정
  3. Apigee 이외 구성요소 구성

기본 apigee-monit 제어 설정

상태 확인 빈도 및 apigee-monit 파일의 위치와 같은 기본 apigee-monit 컨트롤 설정을 맞춤설정할 수 있습니다. 이렇게 하려면 구성이 포함된 코드 기법을 사용하여 속성 파일을 수정합니다. 속성 파일은 Private Cloud용 Apigee Edge를 업그레이드한 후에도 유지됩니다.

다음 표에서는 맞춤설정할 수 있는 기본 apigee-monit 컨트롤 설정을 설명합니다.

속성 설명
conf_monit_httpd_port httpd 데몬의 포트 apigee-monit는 대시보드 앱에 httpd를 사용하고 보고서/요약을 사용 설정합니다. 기본값은 2812입니다.
conf_monit_httpd_allow httpd 데몬에 대한 요청의 제약조건 apigee-monithttpd를 사용하여 대시보드 앱을 실행하고 보고서/요약을 사용 설정합니다. 이 값은 localhost (httpd가 실행 중인 호스트)를 가리켜야 합니다.

요청에 사용자 이름과 비밀번호를 포함하도록 하려면 다음 구문을 사용합니다.

conf_monit_httpd_allow=allow username:"password"\nallow 127.0.0.1

사용자 이름과 비밀번호를 추가할 때 각 제약조건 사이에 '\n'을 삽입합니다. 값에 실제 줄바꿈이나 캐리지 리턴을 삽입하지 마세요.

conf_monit_monit_datadir 이벤트 세부정보가 저장된 디렉터리입니다.
conf_monit_monit_delay_time apigee-monit가 메모리에 처음 로드된 후 실행되기 전에 대기하는 시간입니다. 이는 apigee-monit에 첫 번째 프로세스 확인에만 영향을 미칩니다.
conf_monit_monit_logdir apigee-monit 로그 파일의 위치입니다.
conf_monit_monit_retry_time apigee-monit가 각 프로세스를 확인하려고 시도하는 빈도입니다. 기본값은 60초입니다.
conf_monit_monit_rundir apigee-monit가 프로세스를 확인하는 데 사용하는 PID 및 상태 파일의 위치입니다.

기본 apigee-monit 컨트롤 설정을 맞춤설정하려면 다음 단계를 따르세요.

  1. 다음 파일을 수정합니다.
    /opt/apigee/customer/application/monit.properties

    파일이 존재하지 않으면 파일을 만들고 소유자를 'apigee' 사용자로 설정합니다.

    chown apigee:apigee /opt/apigee/customer/application/monit.properties

    파일이 이미 존재할 경우 위 표에 나열된 것 외에 추가로 정의된 구성 속성이 있을 수 있습니다. 위에 나열된 속성 이외의 속성을 수정해서는 안 됩니다.

  2. 속성 값을 설정하거나 새 값으로 바꿉니다.

    예를 들어 로그 파일의 위치를 /tmp로 변경하려면

    conf_monit_monit_logdir=/tmp/apigee-monit.log
    속성을 추가하거나 수정합니다.

  3. 변경 사항을 monit.properties 파일에 저장합니다.
  4. 다음 명령어를 사용하여 apigee-monit를 재구성합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  5. 다음 명령어로 apigee-monit를 새로고침합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    apigee-monit를 다시 시작할 수 없는 경우 apigee-monit 로그 파일 액세스에 설명된 대로 로그 파일에 오류가 있는지 확인합니다.

  6. 클러스터의 각 노드에 대해 이 절차를 반복합니다.

전체 구성 설정

apigee-monit의 전역 구성 설정을 정의할 수 있습니다. 예를 들어 알림에 대한 이메일 알림을 추가할 수 있습니다. 이렇게 하려면 /opt/apigee/data/apigee-monit 디렉터리에 구성 파일을 만든 후 apigee-monit를 다시 시작하면 됩니다.

apigee-monit의 전역 구성 설정을 정의하려면 다음 안내를 따르세요.

  1. /opt/apigee/data/apigee-monit/filename.conf
    위치에 새 구성요소 구성 파일을 만듭니다.

    여기서 filename는 'monit'을 제외한 유효한 파일 이름일 수 있습니다.

  2. 다음 예에 표시된 것처럼 새 구성 파일의 소유자를 'apigee' 사용자로 변경합니다.
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-mail-config.conf
  3. 새 파일에 전역 구성 설정을 추가합니다. 다음 예시에서는 메일 서버를 구성하고 알림 수신자를 설정합니다.
    SET MAILSERVER smtp.gmail.com PORT 465
      USERNAME "example-admin@gmail.com" PASSWORD "PASSWORD"
      USING SSL, WITH TIMEOUT 15 SECONDS
    
    SET MAIL-FORMAT {
      from: edge-alerts@example.com
      subject: Monit Alert -- Service: $SERVICE $EVENT on $HOST
    }
    SET ALERT fred@example.com
    SET ALERT nancy@example.com

    전역 구성 옵션의 전체 목록은 monit 문서를 참조하세요.

  4. 구성요소 구성 파일에 변경사항을 저장합니다.
  5. 다음 명령어로 apigee-monit를 새로고침합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    apigee-monit가 다시 시작되지 않으면 apigee-monit 로그 파일 액세스에 설명된 대로 로그 파일에 오류가 있는지 확인합니다.

  6. 클러스터의 각 노드에 대해 이 절차를 반복합니다.

Apigee 이외의 구성요소 구성

자체 구성을 apigee-monit에 추가하면 Apigee Edge for Private Cloud에 속하지 않는 서비스를 검사할 수 있습니다. 예를 들어 apigee-monit를 사용하면 대상 엔드포인트에 요청을 전송하여 API가 실행 중인지 확인할 수 있습니다.

Apigee가 아닌 구성요소 구성을 추가하려면 다음 안내를 따르세요.

  1. /opt/apigee/data/apigee-monit/filename.conf
    위치에 새 구성요소 구성 파일을 만듭니다.

    여기서 filename는 'monit'을 제외한 유효한 파일 이름일 수 있습니다.

    구성요소 구성 파일은 필요한 만큼 만들 수 있습니다. 예를 들어 노드에서 모니터링하려는 Apigee가 아닌 각 구성요소에 대해 별도의 구성 파일을 만들 수 있습니다.

  2. 다음 예에 표시된 것처럼 새 구성 파일의 소유자를 'apigee' 사용자로 변경합니다.
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-config.conf
  3. 새 파일에 맞춤 구성을 추가합니다. 다음 예시에서는 로컬 서버에서 대상 엔드포인트를 확인합니다.
    CHECK HOST localhost_validate_test WITH ADDRESS localhost
      IF FAILED
        PORT 15999
        PROTOCOL http
        REQUEST "/validate__test"
        CONTENT = "Server Ready"
        FOR 2 times WITHIN 3 cycles
      THEN alert

    가능한 구성 설정의 전체 목록은 monit 문서를 참고하세요.

  4. 변경 사항을 구성 파일에 저장합니다.
  5. 다음 명령어로 apigee-monit를 새로고침합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    apigee-monit가 다시 시작되지 않으면 apigee-monit 로그 파일 액세스에 설명된 대로 로그 파일에 오류가 있는지 확인합니다.

  6. 클러스터의 각 노드에 대해 이 절차를 반복합니다.

이는 Edge가 아닌 구성요소에만 적용됩니다. Edge 구성요소의 구성요소 구성은 맞춤설정할 수 없습니다.

apigee-monit 로그 파일 액세스

apigee-monit는 이벤트, 다시 시작, 구성 변경, 알림 등의 모든 활동을 로그 파일에 기록합니다.

로그 파일의 기본 위치는

/opt/apigee/var/log/apigee-monit/apigee-monit.log
입니다.

apigee-monit 컨트롤 설정을 맞춤설정하여 기본 위치를 변경할 수 있습니다.

로그 파일 항목의 형식은 다음과 같습니다.

'edge-message-processor' trying to restart
[UTC Dec 14 16:20:42] info     : 'edge-message-processor' trying to restart
'edge-message-processor' restart: '/opt/apigee/apigee-service/bin/apigee-service edge-message-processor monitrestart'

apigee-monit 로그 파일 항목의 형식은 맞춤설정할 수 없습니다.

apigee-monit으로 집계된 상태 보기

apigee-monit에는 노드의 구성요소에 대한 집계된 상태 정보를 제공하는 다음 명령어가 포함되어 있습니다.

명령어 사용
report
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
summary
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary

각 명령어는 다음 섹션에서 더 자세히 설명합니다.

신고

report 명령어는 노드에서 실행, 다운, 현재 초기화 중 또는 현재 모니터링되지 않는 구성요소 수에 대한 롤업 요약을 제공합니다. 다음 예에서는 report 명령어를 호출합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit report

다음 예는 AIO (올인원) 구성의 report 출력을 보여줍니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
up:            11 (100.0%)
down:           0 (0.0%)
initialising:   0 (0.0%)
unmonitored:    1 (8.3%)
total:         12 services

이 예시에서는 12개 서비스 중 11개가 apigee-monit에 의해 작동 중인 것으로 보고됩니다. 서비스 1개는 현재 모니터링되지 않습니다.

report 명령어를 처음 실행하면 Connection refused 오류가 발생할 수 있습니다. 이 경우 conf_monit_monit_delay_time 속성이 지속될 때까지 기다린 후 다시 시도하세요.

요약

summary 명령어는 각 구성요소를 나열하고 상태를 제공합니다. 다음 예에서는 summary 명령어를 호출합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary

다음 예는 AIO (올인원) 구성의 summary 출력을 보여줍니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
Monit 5.25.1 uptime: 4h 20m
 Service Name                     Status                      Type
 host_name                        OK                          System
 apigee-zookeeper                 OK                          Process
 apigee-cassandra                 OK                          Process
 apigee-openldap                  OK                          Process
 apigee-qpidd                     OK                          Process
 apigee-postgresql                OK                          Process
 edge-ui                          OK                          Process
 edge-qpid-server                 OK                          Remote Host
 edge-postgres-server             OK                          Remote Host
 edge-management-server           OK                          Remote Host
 edge-router                      OK                          Remote Host
 edge-message-processor           OK                          Remote Host

summary 명령어를 처음 실행할 때 Connection refused 오류가 발생하면 conf_monit_monit_delay_time 속성의 지속 시간을 기다렸다가 다시 시도하세요.

apigee-monit 모니터링

apigee-monit가 각 노드에서 실행 중인지 정기적으로 확인하는 것이 좋습니다.

apigee-monit가 실행 중인지 확인하려면 다음 명령어를 사용합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit

Apigee에서는 apigee-monit를 실행하는 각 노드에서 이 명령어를 주기적으로 실행하는 것이 좋습니다. 이렇게 하는 한 가지 방법은 예약된 작업을 사전 정의된 간격으로 실행하는 cron와 같은 유틸리티를 사용하는 것입니다.

cron를 사용하여 apigee-monit를 모니터링하려면 다음 안내를 따르세요.

  1. 다음 예에 표시된 것처럼 apigee-monit.cron 디렉터리를 /etc/cron.d 디렉터리에 복사하여 cron 지원을 추가합니다.
    cp /opt/apigee/apigee-monit/cron/apigee-monit.cron /etc/cron.d/
  2. apigee-monit.cron 파일을 열어 수정합니다.

    apigee-monit.cron 파일은 실행할 cron 작업과 해당 작업을 실행하는 빈도를 정의합니다. 다음 예시는 기본값을 보여줍니다.

    # Cron entry to check if monit process is running. If not start it
    */2 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit

    이 파일은 다음 구문을 사용하며 처음 5개 필드는 apigee-monit가 작업을 실행하는 시간을 정의합니다.

    min hour day_of_month month day_of_week task_to_execute

    예를 들어 기본 실행 시간은 */2 * * * *이며, 이 경우 cron에 2분마다 apigee-monit 프로세스를 확인하도록 지시합니다.

    cron 작업은 분당 1회 이상 실행할 수 없습니다.

    cron 사용에 대한 자세한 내용은 서버 OS 문서 또는 설명 페이지를 참조하세요.

  3. 조직의 정책에 맞게 cron 설정을 변경하세요. 예를 들어 실행 빈도를 5분마다로 변경하려면 작업 정의를 다음과 같이 설정합니다.
    */5 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
  4. apigee-monit.cron 파일을 저장합니다.
  5. 클러스터의 각 노드에 대해 이 절차를 반복합니다.

cron에서 apigee-monit의 시청을 시작하지 않는 경우 다음을 확인하세요.

  • cron 작업 정의 뒤에는 빈 줄이 있습니다.
  • 파일에는 cron 작업이 하나만 정의되어 있습니다. (주석이 달린 행은 계산되지 않습니다.)

apigee-monit를 중지하거나 일시적으로 사용 중지하려면 이 cron 작업도 중지해야 합니다. 그러지 않으면 cron에서 apigee-monit을 다시 시작합니다.

cron를 사용 중지하려면 다음 중 하나를 실행하세요.

  • /etc/cron.d/apigee-monit.cron 파일을 삭제합니다.
    sudo rm /etc/cron.d/apigee-monit.cron

    나중에 cron에서 apigee-monit을(를) 시청하도록 다시 사용 설정하려면 이 부분을 다시 복사해야 합니다.

    또는

  • /etc/cron.d/apigee-monit.cron 파일을 수정하고 줄 시작 부분에 '#'을 추가하여 작업 정의를 주석 처리합니다. 예를 들면 다음과 같습니다.
    # 10 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit