하나의 수집기에서 여러 MSSQL 인스턴스를 모니터하도록 NRDOT Collector를 설정할 수 있습니다. 이는 서로 다른 호스트에서 실행 중인 여러 MSSQL이 있고 단일 NRDOT Collector 인스턴스를 사용하여 이들 모두에서 메트릭을 수집하려는 경우에 유용합니다.
전제 조건
MSSQL 인스턴스에 NRDOT가 설치 및 구성되었습니다:
다중 수신기 설정 추가
다음 예제는 다중 수신기 설정을 사용하여 여러 MSSQL 인스턴스를 모니터하도록 NRDOT Collector를 설정하는 방법을 보여줍니다. 환경에 맞는 배포 유형을 선택하십시오. 추가 인스턴스를 위해 필요에 따라 수신기를 더 추가할 수 있습니다.
receivers: nrsqlserver/1: &nrsqlserver-common username: "<YOUR_DB_USERNAME>" password: "<YOUR_DB_PASSWORD>" server: "<YOUR_SERVER_1>" port: <YOUR_PORT_1> collection_interval: 30s # Add any additional configuration here (metrics, events, query collection, etc.) # All settings are automatically inherited by additional receiver instances. nrsqlserver/2: <<: *nrsqlserver-common username: "<YOUR_DB2_USERNAME>" password: "<YOUR_DB2_PASSWORD>" server: "<YOUR_SERVER_2>" port: <YOUR_PORT_2> # Add more instances as needed: # nrsqlserver/3: # <<: *nrsqlserver-common # username: "<YOUR_DB3_USERNAME>" # password: "<YOUR_DB3_PASSWORD>" # server: "<YOUR_SERVER_3>" # port: <YOUR_PORT_3>
service: pipelines: metrics: receivers: [nrsqlserver/1, nrsqlserver/2] # Add nrsqlserver/3, nrsqlserver/4, ... as needed processors: [<YOUR_PROCESSORS>] exporters: [otlp] logs: receivers: [nrsqlserver/1, nrsqlserver/2] # Add nrsqlserver/3, nrsqlserver/4, ... as needed processors: [<YOUR_PROCESSORS>] exporters: [otlp]<<: *nrsqlserver-common 병합 키는 nrsqlserver/1의 모든 설정을 상속합니다. username, password, server 및 port와 같이 그 이후에 명시적으로 설정한 모든 필드는 해당 특정 수신자 인스턴스에 대해 상속된 값을 재정의합니다.
중요
새로운 수신기 인스턴스(예: nrsqlserver/3)를 추가할 때마다 service.pipelines 아래의 metrics 및 logs 파이프라인 모두에 있는 receivers 목록에도 추가해 주십시오. receivers 블록에 정의되어 있지만 service.pipelines에서 누락된 수신기는 데이터를 수집하지 않습니다.
NRDOT Collector를 다시 시작하십시오
다시 시작하는 것은 선택 사항이 아니라 필수입니다 — 수집기는 시작 시 설정을 한 번 로드하며 핫 리로드하지 않습니다. 프로세스를 다시 시작할 때까지 모든 설정 변경 사항은 적용되지 않습니다.
$sudo systemctl restart nrdot-collector