Prometheus 및 Grafana를 사용하여 ISP 패킷 손실 시각화
4494 단어 opensource
배경
사람들이 재택근무를 시작한 이후, 불량한 화상/음성 통화 연결은 매우 성가신 문제가 되었습니다.
그러나 근본 원인이 무엇인지 진단하기는 어렵습니다. 사람들은 ISP를 비난하기 시작했고 나는 그들에게 안타까움을 느낍니다. 사실 영상 통화 연결 상태가 좋지 않은 데에는 여러 가지 이유가 있지만 내 문제가 당신 쪽에서 발생한 것이 아님을 큰 확신을 가지고 말씀해 주시면 됩니다.
ISP 패킷 손실 모니터링을 시작해야 합니다.
전제 조건
프로세스
ping_exporter 설정
라우터에 SSH 접속 > ping_exporter 다운로드
필요한 버전을 확인할 수 있습니다here..
예를 들어:
wget https://github.com/czerwonk/ping_exporter/releases#:~:text=ping_exporter_0.4.7_linux_arm64.tar.gz
파일을 추출합니다.
tar -xf ping_exporter_*.tar.gz ping_exporter
/usr/local/bin
로 이동:mv ping_exporter /usr/local/bin
라우터에서 ISP의 DNS 서버를 얻는 방법을 선택하십시오.
예를 들어:
cat /etc/resolv.conf
ping_exporter.yaml
아래에 /etc/ping_exporter/
파일을 만듭니다.targets:
- <Your ISP's DNS servers>
ping:
interval: 2s
timeout: 3s
history-size: 42
payload-size: 120
ping_exporter.service
아래에 /etc/systemd/system/
파일을 만듭니다.[Unit]
Description=ping_exporter
[Service]
User=root
ExecStart=/usr/local/bin/ping_exporter --config.path /etc/ping_exporter/ping_exporter.yaml
Restart=always
[Install]
WantedBy=multi-user.target
서비스 파일을 다시 로드합니다.
sudo systemctl daemon-reload
ping_exporter.service
시작:sudo systemctl start ping_exporter.service
ping_exporter.service
상태를 확인하십시오.sudo systemctl status ping_exporter.service
재부팅할 때마다
ping_exporter.service
를 활성화하려면:sudo systemctl enable ping_exporter.service
cURL을 통해 테스트 결과 얻기:
curl http://localhost:9427/metrics
Prometheus에 대상 추가
Prometheus 구성 파일에서
static_config
섹션에 대상을 추가합니다.- targets: ["<Your router's ip/dns address>:9427"]
Prometheus의 구성을 다시 로드합니다.
Grafana 패널 만들기
홈 네트워크의 대시보드에 새 패널을 추가하고
ping_loss_percent
메트릭을 사용하겠습니다.ping_loss_percent{instance="<Your router's ip/dns address>:9427",target="<Your ISP's DNS servers>"}
⚠️ 음성 및 화상 통화의 경우 0.05 미만의 패킷 손실은 허용 가능한 것으로 간주될 수 있습니다.
Reference
이 문제에 관하여(Prometheus 및 Grafana를 사용하여 ISP 패킷 손실 시각화), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ericyi/use-prometheus-and-grafana-to-visualize-isp-packet-loss-2eh텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)