7장. 노드 내보내기
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
노드 익스포터1 는 2장에서 이미 살펴본 것처럼 가장 먼저 사용하게 될 익스포터 중 하나일 것입니다. 주로 운영 체제의 커널에서 CPU, 메모리, 디스크 공간, 디스크 I/O, 네트워크 대역폭, 마더보드 온도와 같은 머신 수준 메트릭을 노출합니다. 노드 익스포터는 Unix 시스템에서 사용되며, Windows 사용자는 대신Windows 익스포터를 사용해야 합니다.2
노드 익스포터는 머신의 개별 프로세스나 서비스가 아닌 머신 자체만을 모니터링하기 위한 것입니다. 다른 모니터링 시스템에는 종종 우버에이전트라고 부르는, 즉 머신의 모든 것을 모니터링하는 단일 프로세스가 있습니다. Prometheus 아키텍처에서는 각 서비스가 필요한 경우 내보내기를 사용하여 자체 메트릭을 노출한 다음 Prometheus에서 직접 스크랩합니다. 이렇게 하면 우버에이전트가 운영 또는 성능 병목 현상이 발생하는 것을 방지할 수 있으며, 기계가 아닌 동적 서비스 측면에서 더 많은 것을 생각할 수 있습니다.
"내 지표의 이름은 어떻게 지정해야 하나요?"에서 설명한 것과 같이 직접 계측을 통해 지표를 만들 때 사용할 지침은 비교적 명확합니다. 내보내기의 경우에는 그렇지 않은데, 정의상 데이터가 Prometheus 가이드라인을 염두에 두고 설계되지 않은 소스에서 가져오는 것이기 때문입니다. 지표의 양과 품질에 따라, 내보내기 개발자는 엔지니어링 노력과 완벽한 지표를 얻는 것 사이에서 절충점을 찾아야 합니다.
Linux의 경우 수천 개의 메트릭이 제공됩니다. CPU 사용량과 같이 잘 문서화되어 있고 이해가 쉬운 메트릭도 있지만, 메모리 사용량과 같이 구현이 변경됨에 따라 커널 버전마다 달라진 메트릭도 있습니다. 심지어는 완전히 문서화되지 않아 커널 소스 코드를 읽어야만 어떤 기능을 하는지 파악할 수 있는 메트릭도 찾을 수 있습니다.
노드 익스포터는 루트가 아닌 사용자로 실행하도록 설계되었으며, sshd 또는 cron과 같은 시스템 데몬을 실행하는 것과 같은 방식으로 시스템에서 직접 실행해야 합니다.
경고
Docker 내에서 노드 익스포터를 실행하는 동안3 를 실행할 수 있지만, 컨테이너 내부에 호스트 파일시스템을 마운트하려면 일부 볼륨과 명령줄 매개변수(--path.procfs, --path.rootfs, --path.sysfs)를 사용해야 합니다. 가능하면 Docker 없이 노드에서 노드 익스포터를 서비스로 실행하세요. Docker는 컨테이너를 머신의 내부 작업으로부터 격리하려고 시도하는데, 이는 노드 익스포터가 이러한 내부 작업에 접근하려고 할 때 잘 작동하지 않습니다.
대부분의 다른 내보내기와 달리 운영 체제에서 사용할 수 있는 다양한 메트릭이 있기 때문에 노드 내보내기를 사용하면 가져오는 메트릭 카테고리를 구성할 수 있습니다. WiFi 수집기를 활성화하는--collector.wifi, 비활성화하는--no-collector.wifi ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access