2017-09-27 206 views
0

我正在關注此guide以設置cadvisor + prometheus + Grafana來監視碼頭集裝箱。一切看起來都很好,除非我在容器級別找不到指標(主機指標顯示正常)。舉例來說,如果我檢索「container_memory_cache」中普羅米修斯,它返回以下結果」Prometheus cAdvisor - 我如何看到容器而不是主機的指標

container_memory_cache{id="/",instance="cadvisor:8080",job="cadvisor"} 

‘ID’維是空的,沒有‘名’維度。通過檢查多了,我想跑休息cAdvisor的API的使用容器ID /名稱檢索容器的信息,但仍沒有運氣:

[[email protected] dockprom]# docker ps -a 
CONTAINER ID  IMAGE      COMMAND     CREATED    STATUS    PORTS     NAMES 
02e385dc1bf1  grafana/grafana   "/run.sh"    18 minutes ago  Up 18 minutes  0.0.0.0:3000->3000/tcp grafana 
30ae6527facb  prom/node-exporter  "/bin/node_exporte..." 18 minutes ago  Up 18 minutes  9100/tcp     nodeexporter 
927f0144f8c5  google/cadvisor:v0.27.1 "/usr/bin/cadvisor..." 18 minutes ago  Up 18 minutes  0.0.0.0:8080->8080/tcp cadvisor 
4c277db6d796  prom/prometheus   "/bin/prometheus -..." 18 minutes ago  Up 18 minutes  0.0.0.0:9090->9090/tcp prometheus 
b169c96dad3e  prom/alertmanager   "/bin/alertmanager..." 18 minutes ago  Up 18 minutes  0.0.0.0:9093->9093/tcp alertmanager 
[[email protected] dockprom]# curl http://127.0.0.1:8080/api/v1.3/containers/02e385dc1bf1 
failed to get container "/02e385dc1bf1" with error: unknown container "/02e385dc1bf1" 
[[email protected] dockprom]# curl http://127.0.0.1:8080/api/v1.3/events/grafana 
[] 
[[email protected] dockprom]# 

[[email protected] dockprom]# curl http://127.0.0.1:8080/api/v1.3/containers/grafana 
failed to get container "/grafana" with error: unknown container "/grafana" 
[[email protected] dockprom]# curl http://127.0.0.1:8080/api/v2.1/ 
Supported request types: "appmetrics,attributes,events,machine,machinestats,ps,spec,stats,storage,summary,version" 
[[email protected] dockprom]# curl http://127.0.0.1:8080/api/v2.1/events/ 
[] 

下面是從碼頭工人,compose.yml cadvisor配置:

cadvisor: 
    image: google/cadvisor:v0.27.1 
    container_name: cadvisor 
    volumes: 
    - /:/rootfs:ro 
    - /var/run:/var/run:rw 
    - /sys:/sys:ro 
    - /var/lib/docker/:/var/lib/docker:ro 
    restart: unless-stopped 
    expose: 
    - 8080 
    ports: 
    - 8080:8080 
    networks: 
    - monitor-net 
    labels: 
    org.label-schema.group: "monitoring" 
...... 

cadvisor日誌:

[[email protected] dockprom]# docker logs cadvisor 
I1009 09:28:39.904951  1 storagedriver.go:50] Caching stats in memory for 2m0s 
I1009 09:28:39.905178  1 manager.go:149] cAdvisor running in container: "/sys/fs/cgroup/cpu" 
W1009 09:28:39.933801  1 manager.go:157] unable to connect to Rkt api service: rkt: cannot tcp Dial rkt api service: dial tcp [::1]:15441: getsockopt: connection refused 
W1009 09:28:39.933995  1 manager.go:166] unable to connect to CRI-O api service: Get http://%2Fvar%2Frun%2Fcrio.sock/info: dial unix /var/run/crio.sock: connect: no such file or directory 
I1009 09:28:39.965342  1 fs.go:139] Filesystem UUIDs: map[] 
I1009 09:28:39.965362  1 fs.go:140] Filesystem partitions: map[tmpfs:{mountpoint:/dev major:0 minor:47 fsType:tmpfs blockSize:0} /dev/xvda1:{mountpoint:/var/lib/docker/overlay2 major:202 minor:1 fsType:ext4 blockSize:0} shm:{mountpoint:/ rootfs/var/lib/docker/containers/663cfebcdcb5c83740441d225a90546e4368789d676d6b6086d59fdcb5bdfe1f/shm major:0 minor:31 fsType:tmpfs blockSize:0}] 
I1009 09:28:39.971298  1 info.go:51] Couldn't collect info from any of the files in "/rootfs/etc/machine-id,/var/lib/dbus/machine-id" 
I1009 09:28:39.971390  1 manager.go:216] Machine: {NumCores:2 CpuFrequency:2394312 MemoryCapacity:8373006336 HugePages:[{PageSize:2048 NumPages:0}] MachineID: SystemUUID:EC20823C-306D-BF65-BC34-A40C692B43A6 BootID:2db18d19-659b-493f-b3b5-7980fd48d301 Filesystems:[{Device:/dev/xvda1 DeviceMajor:202 DeviceMinor:1 Capacity:105553080320 Type:vfs Inodes:6553600 HasInodes:true} {Device:shm DeviceMajor:0 DeviceMinor:31 Capacity:67108864 Type:vfs Inodes:1022095 HasInodes:true} {Device:overlay DeviceMajor:0 DeviceMinor:30 Capacity:105553080320 Type:vfs Inodes:6553600 HasInodes:true} {Device:tmpfs DeviceMajor:0 DeviceMinor:47 Capacity:4186501120 Type:vfs Inodes:1022095 HasInodes:true}] DiskMap:map[202:0:{Name:xvda Major:202 Minor:0 Size:107374182400 Scheduler:noop}] NetworkDevices:[{Name:br-169495c710b6 MacAddress:02:42:7d:01:a4:0d Speed:0 Mtu:1500} {Name:eth0 MacAddress:12:79:be:fa:a6:d2 Speed:0 Mtu:9001}] Topology:[{Id:0 Memory:8373006336 Cores:[{Id:0 Threads:[0] Caches:[{Size:32768 Type:Data Level:1} {Size:32768 Type:Instruction Level:1} {Size:262144 Type:Unified Level:2}]} {Id:1 Threads:[1] Caches:[{Size:32768 Type:Data Level:1} {Size:32768 Type:Instruction Level:1} {Size:262144 Type:Unified Level:2}]}] Caches:[{Size:31457280 Type:Unified Level:3}]}] CloudProvider:AWS InstanceType:t2.large InstanceID:i-0e3ac492ad4c0b5f6} 
I1009 09:28:39.972406  1 manager.go:222] Version: {KernelVersion:4.9.43-17.39.amzn1.x86_64 ContainerOsVersion:Alpine Linux v3.4 DockerVersion:17.03.2-ce DockerAPIVersion:1.27 CadvisorVersion:v0.27.1 CadvisorRevision:cda62a4} 
I1009 09:28:39.984490  1 factory.go:355] Registering Docker factory 
W1009 09:28:39.984547  1 manager.go:265] Registration of the rkt container factory failed: unable to communicate with Rkt api service: rkt: cannot tcp Dial rkt api service: dial tcp [::1]:15441: getsockopt: connection refused 
W1009 09:28:39.984704  1 manager.go:276] Registration of the crio container factory failed: Get http://%2Fvar%2Frun%2Fcrio.sock/info: dial unix /var/run/crio.sock: connect: no such file or directory 
I1009 09:28:39.984735  1 factory.go:54] Registering systemd factory 
I1009 09:28:39.985581  1 factory.go:86] Registering Raw factory 
I1009 09:28:39.986558  1 manager.go:1140] Started watching for new ooms in manager 
I1009 09:28:39.987201  1 manager.go:311] Starting recovery of all containers 
I1009 09:28:39.989175  1 manager.go:316] Recovery completed 
I1009 09:28:39.994765  1 cadvisor.go:159] Starting cAdvisor version: v0.27.1-cda62a4 on port 8080 
+0

的cadvisor配置看起來不錯。你能看到日誌中的一些錯誤嗎? '碼頭日誌管理員' –

+0

@AndreasJägle感謝您的期待。我附上了顧問日誌。有一個關於連接拒絕的錯誤,連接拒絕Rkt API服務,但根據[#1757](https://github.com/google/cadvisor/issues/1757):這是一個預期的錯誤,所以我不知道我的環境中有什麼問題 –

回答

1

更新泊塢窗版本17.09.0策,建立afdb6d4解決這個問題

相關問題