在CentOS上監控Docker容器的性能和狀態,可以使用以下幾種方法:
docker stats
命令docker stats
命令可以實時顯示所有運行中的容器的資源使用情況,包括CPU、內存、網絡和磁盤I/O。
docker stats
如果你只想監控特定的容器,可以使用 -c
或 --no-stream
參數:
docker stats <container_id_or_name>
cAdvisor
cAdvisor(Container Advisor)是一個開源工具,用于收集、聚合、處理和導出有關運行中的容器的資源使用情況和性能特征的指標。
你可以從Docker Hub下載cAdvisor鏡像并運行:
docker pull google/cadvisor
docker run -d --name=cadvisor --restart=always \
-p 8080:8080 \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:rw \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
google/cadvisor
然后,你可以通過瀏覽器訪問 http://<your_server_ip>:8080
來查看容器的監控信息。
Prometheus 是一個開源的監控系統和時間序列數據庫,而 Grafana 是一個開源的分析和監控平臺。你可以將它們結合起來監控Docker容器。
wget https://github.com/prometheus/prometheus/releases/download/v2.30.3/prometheus-2.30.3.linux-amd64.tar.gz
tar xvfz prometheus-2.30.3.linux-amd64.tar.gz
cd prometheus-2.30.3.linux-amd64
./prometheus --config.file=prometheus.yml
wget https://dl.grafana.com/oss/release/grafana-8.2.0.linux-amd64.tar.gz
tar xvfz grafana-8.2.0.linux-amd64.tar.gz
cd grafana-8.2.0
./bin/grafana-server
編輯 prometheus.yml
文件,添加Docker的監控配置:
scrape_configs:
- job_name: 'docker'
static_configs:
- targets: ['localhost:9323']
然后重啟Prometheus服務:
./prometheus --config.file=prometheus.yml
http://<your_server_ip>:3000
。htop
和 nmon
雖然這些工具不是專門為Docker設計的,但它們可以幫助你監控系統的整體性能,包括CPU、內存和磁盤I/O。
sudo yum install htop nmon
htop
nmon
通過這些方法,你可以全面監控CentOS上Docker容器的性能和狀態。