Zabbix 웹 시나리오란?
Zabbix 웹 시나리오는 HTTP 요청을 통해 특정 웹사이트의 상태를 주기적으로 모니터링하는 기능입니다. 기본적으로 웹사이트의 응답 시간을 측정하거나 상태 코드(예: 200 OK, 404 Not Found 등)를 확인하는 방식으로 동작합니다. 또한 웹 페이지 내 특정 텍스트가 포함되어 있는지, 리다이렉트 여부 등을 확인할 수 있어 웹사이트의 핵심 기능 감시에 유용합니다.
웹 시나리오 설정 방법
Zabbix의 웹 시나리오 기능을 통해 웹사이트를 모니터링하려면 다음과 같은 과정을 따라 설정을 진행해야 합니다.
1. Zabbix 웹 콘솔에 로그인
Zabbix 웹 인터페이스에 관리자 계정으로 로그인합니다.
웹 시나리오를 추가하려면 호스트 설정 페이지로 이동해야 하므로, Zabbix의 관리자 권한이 필요합니다.
2. 호스트 선택 및 시나리오 추가
웹 시나리오는 특정 호스트에 종속되어 있으므로 모니터링할 웹사이트의 호스트를 먼저 선택해야 합니다.
- Configuration -> Hosts 메뉴로 이동합니다.
- 웹 시나리오를 설정할 호스트를 선택합니다.
- 상단의 Web 탭을 클릭한 다음 Create scenario 버튼을 눌러 웹 시나리오 설정을 시작합니다.
3. 웹 시나리오의 기본 정보 입력
웹 시나리오의 주요 설정을 입력합니다. 이는 전체적인 웹 시나리오의 동작 방식을 결정합니다.
- Name(이름): 웹 시나리오 이름을 지정합니다. [http code check]
- Application(어플리케이션): 웹 시나리오와 관련된 어플리케이션을 선택합니다. [비워둬도 됩니다.]
- Agent(에이전트): HTTP 에이전트를 지정하여 웹사이트에 특정 브라우저나 기기에서 접속하는 것처럼 설정합니다.
[기본값으로 설정하거나 필요에 따라 특정 브라우저 에이전트를 지정할 수 있습니다.] - Interval(갱신 간격): 웹 시나리오의 실행 주기를 설정합니다. [5m]
- Attempts(시도 횟수): 시나리오 실행에 실패했을 경우 다시 시도할 횟수를 설정합니다. [1]
4. Step(단계) 추가
웹 시나리오의 핵심은 단계(Step) 설정에 있습니다.
단계는 웹사이트의 특정 URL에 접근하여 HTTP 요청을 보내고 결과를 확인하는 과정입니다.
- Step Name: 각 단계를 쉽게 식별할 수 있도록 이름을 지정합니다. [티스토리테스트]
- URL: 모니터링할 URL을 입력합니다. [https://samso.tistory.com]
- Timeout: 응답을 기다리는 최대 시간을 지정합니다. 응답이 이 시간을 초과하면 타임아웃으로 간주합니다. [15s]
- Required status code: 정상적인 응답으로 간주할 HTTP 상태 코드를 입력합니다.
- Post method: 로그인이 같이 데이터를 서버에 제출할 때 POST 메서드를 설정할 수 있습니다. [사용 X]
- Follow redirects: 리다이렉트가 발생할 경우 이를 따를 것인지 여부를 지정합니다. [사용 X]
5. Step의 성공/실패 조건 설정
단계별로 성공 또는 실패를 판별할 조건을 설정할 수 있습니다.
- Required string: 응답 내용에 특정 문자열이 포함되어 있는지 확인합니다.
예를 들어, 로그인 성공 페이지라면 "로그인 성공" 또는 "환영합니다" 등의 문구가 있는지를 확인합니다. - Required status codes: 단계의 응답이 정상으로 간주될 상태 코드를 입력합니다.
기본적으로 200을 입력하여 정상적인 HTTP 응답을 확인할 수 있습니다.
트리거 설정으로 자동 알림 받기
웹 시나리오 설정이 완료되면, 웹사이트의 문제가 발생할 경우 자동으로 알림을 받을 수 있도록 트리거를 설정하는 것이 좋습니다. 트리거는 지정된 조건이 만족될 때 경고를 생성하여 문제를 신속히 파악할 수 있게 해 줍니다.
- Configuration -> Hosts로 이동하여 웹 시나리오가 설정된 호스트를 선택합니다.
- 상단의 Triggers 탭을 클릭한 후 Create trigger 버튼을 클릭합니다.
- 트리거 조건을 설정합니다.
- 조건 예시: web.test.rspcode[<Scenario>,<Step>]가 200이 아닐 때 트리거 발생
web.test.rspcode[http code check,티스토리테스트].last()}<>200
- 조건 예시: web.test.rspcode[<Scenario>,<Step>]가 200이 아닐 때 트리거 발생
이렇게 설정해 두면 웹사이트의 상태가 비정상일 때 Zabbix가 즉시 경고를 보내주어, 빠르게 문제를 해결할 수 있습니다.
Zabbix 5.0 기준
모니터링 - 최근데이터 - 호스트 선택 - Response code for step 확인 할 수 있습니다.
'Monitoring Tools' 카테고리의 다른 글
Monitoring Tools - Zabbix로 윈도우 암호 만료일 7일 전 알림 설정방법 (0) | 2024.11.06 |
---|---|
Monitoring Tools - Zabbix로 Windows Server 메모리 사용량 체크하기 (0) | 2024.10.31 |
Monitoring Tools - Zabbix 프록시 설치 및 설정 방법 (0) | 2024.10.22 |
Monitoring Tools - Zabbix 로그 파일 모니터링 설정 시 "Accessible only as active check" 에러 해결 방법 (0) | 2024.10.15 |
Monitoring Tools - Zabbix Agent 모드 비교와 호스트 자동 등록 설정 (4) | 2024.10.03 |