NGINX 웹 서버 검색
NGINX는 부하 분산 장치가 있는 오픈 소스 웹 서버입니다. 검색은 부하 분산 장치와 관련한 정보 및 웹 서버를 식별합니다.
검색은 다음 프로세스를 사용하여 NGINX 서버 소프트웨어를 식별합니다.
- NGINX 프로세스 분류 규칙은 Linux 서버를 탐색하는 동안 다음 기준과 일치하는 실행 중인 프로세스를 탐지합니다.
- nginx로 시작하는 이름
- 마스터를 포함하는 이름
- 일치하는 프로세스가 있는 경우:
- NGINX 웹 서버 [cmdb_ci_nginx_web_server] 테이블에 기록이 생성됩니다.
- Linux 서버(Linux 서버 [cmdb_ci_linux_server]) 및 NGINX 웹 서버(NGINX 웹 서버 [cmdb_ci_nginx_web_server])에 대한 CI 관계 [cmdb_rel_ci] 테이블에서 관계에 대한 실행이 생성됩니다.다음 두 개의 프로브가 트리거됩니다.ServiceNow 인스턴스의 센서가 페이로드 결과를 구문 분석하고 CMDB를 채웁니다.
- NGINX – 버전: 이 프로브에 Bourne 셸 스크립트가 포함됩니다. NGINX의 버전을 결정하고 NGINX 웹 서버 [cmdb_ci_nginx_web_server] 테이블을 채웁니다.
- NGINX – 구성 가져오기: 이 프로브에는 Bourne 셸 스크립트와 NGINX 구성 파일의 경로를 결정하는 인수가 포함됩니다. 프로브는 구성 파일 내의 키워드를 기반으로 구성 매개변수를 식별하여 단일 페이로드 결과로 반환합니다.
NGINX 웹서버를 검색하려면 다음 요구 사항이 있어야 합니다.
- NGINX가 서버에 설치되어 실행되고 있습니다.
- MID 서버에는 NGINX 구성 파일에 대한 액세스 권한이 있으며 기본적으로
etc/nginx/nginx.conf입니다.
요구 사항
NGINIX 서버의 경우:
- NGINX 소프트웨어가 서버에 설치되어 실행 중인지 확인합니다.
- MID 서버에 NGINX 구성 파일에 대한 액세스 권한을 부여합니다(기본적으로 /etc/nginx/nginx.conf).
- 다음의 연결된 요소를 식별하기 위해 SSH(보안 셸) 명령을 사용합니다.
- NGINX 버전
- NGINX 구성 가져오기
다음 프로브는 명령을 실행할 수 있는 실행 권한이 필요합니다.
| 프로브 | 명령 |
|---|---|
| Nginx – 버전 | nginx |
| Nginx – 구성 가져오기 | 에코, sed, httpd, 잘라내기, grep, egrep(Bourne 셸 스크립트 내) |
프로브 및 센서
검색에서 다음 프로세스를 사용하여 NGINX 서버 소프트웨어를 식별합니다.
- Nginx 프로세스 분류 규칙은 UNIX 서버를 탐색하는 동안 다음 조건과 일치하는 실행 중인 프로세스를 검색합니다.
- 프로세스 이름이 nginx로 시작함.
- 프로세스 이름에 master가 포함됨.
- 일치하는 프로세스가 있는 경우:
- 웹 서버 [cmdb_ci_web_server] 테이블에 기록이 생성됩니다.
- Linux 서버 [cmdb_ci_linux_server] 테이블 및 웹 서버 [cmdb_ci_web_server] 테이블에 대한 CI 관계 [cmdb_rel_ci] 테이블에서 Runs on 관계가 생성됩니다.
- 다음 두 개의 프로브가 트리거됩니다.
- Nginx – 버전: 이 프로브에 Bourne 셸 스크립트가 포함됩니다. NGINX의 버전을 결정하고 웹 서버 [cmdb_ci_web_server] 테이블을 채웁니다.
- Nginx – 구성 가져오기: 이 프로브에는 Bourne 셸 스크립트와 NGINX 구성 파일의 경로를 결정하는 인수가 포함됩니다. 프로브는 구성 파일 내의 키워드를 기반으로 구성 매개변수를 식별하여 단일 페이로드 결과로 반환합니다.
- ServiceNow 인스턴스의 센서가 페이로드를 처리하고 CMDB를 채웁니다.
수집된 데이터
검색에서 실행 중인 NGINX 프로세스를 탐지하면 CMDB 기록을 생성하거나 업데이트합니다. 다음 데이터가 수집됩니다.
| 테이블 이름 | 필드 및 레이블 이름 | 프로브 |
|---|---|---|
| 이름 | cmdb_ci_lb_appl [이름] | Nginx – 구성 가져오기 |
| IP 주소 | cmdb_ci_lb_appl [ip_address] | Nginx – 구성 가져오기 |
| 최근 검색됨 | cmdb_ci_lb_appl [last_discovered] | Nginx – 구성 가져오기 |
| 버전 | cmdb_ci_lb_appl [version] | Nginx – 버전 |
| 이름 | cmdb_ci_lb_풀_구성원 [이름] | Nginx – 구성 가져오기 |
| 최근 검색됨 | cmdb_ci_lb_풀_구성원 [last_discovered] | Nginx – 구성 가져오기 |
| IP 주소 | cmdb_ci_lb_풀_구성원 [ip_address] | Nginx – 구성 가져오기 |
| 부하 분산 장치 | cmdb_ci_lb_풀_구성원 [load_balancer] | Nginx – 구성 가져오기 |
| 전체 주소 도메인 이름 | cmdb_ci_lb_풀_구성원 [fqdn] | Nginx – 구성 가져오기 |
| 포트 | cmdb_ci_lb_풀_구성원 [port] | Nginx – 구성 가져오기 |
| 최근 검색됨 | cmdb_ci_lb_서비스 [last_discovered] | Nginx – 구성 가져오기 |
| IP 주소 | cmdb_ci_lb_서비스 [ip_address] | Nginx – 구성 가져오기 |
| 이름 | cmdb_ci_lb_서비스 [이름] | Nginx – 구성 가져오기 |
| 부하 분산 장치 | cmdb_ci_lb_서비스 [load_balancer] | Nginx – 구성 가져오기 |
| 입력 URL | cmdb_ci_lb_service [input_url] | NGINX – 구성 가져오기 |
관계
[cmdb_rel_ci] 테이블에서 다음 관계가 채워집니다.
- cmdb_ci_lb_appl 테이블의 기록은 cmdb_ci_web_server 테이블 기록에서 실행됩니다.
- cmdb_ci_lb_service 테이블의 기록은 cmdb_ci_lb_pool 테이블 기록을 사용합니다.
- cmdb_ci_pool 테이블의 기록은 cmdb_ci_service 테이블 기록에서 사용됩니다.
- cmdb_ci_pool 테이블의 기록은 cmdb_ci_pool_member 테이블의 구성원입니다.
- cmdb_ci_pool_member 테이블의 기록은 cmdb_ci_pool 테이블의 구성원입니다.