Я управляю роем docker на 2 серверах ec2. docker compose, который я использую:
version: "3.2"
services:
cadvisor:
image: google/cadvisor
hostname: '{{.Node.ID}}'
command: -logtostderr -docker_only -storage_driver=influxdb -storage_driver_db=cadvisor -storage_driver_host=influxdb:8086
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
deploy:
mode: global
webserver:
image: nginx
ports:
- "8089:80"
logging:
driver: fluentd
options:
fluentd-address: 127.0.0.1:24224 # this is the port published by the fluentd service below
fluentd-async-connect: 1
tag: httpd.nginx
fluentd:
image: papirkurvendk/fluentd-influxdb
volumes:
- fluentd:/fluentd/log
ports: # needs to be exposed for the logging driver to have access
- "24224:24224"
- "24224:24224/udp"
influxdb:
image: influxdb
volumes:
- influx:/var/lib/influxdb
deploy:
mode: replicated
replicas: 1
placement:
constraints:
- node.role == manager
grafana:
image: grafana/grafana:5.3.4
ports:
- 0.0.0.0:3000:3000
volumes:
- grafana:/var/lib/grafana
deploy:
mode: replicated
replicas: 1
placement:
constraints:
- node.role == manager
############## Data persisted on host #######
volumes:
influx:
driver: local
fluentd:
driver: local
grafana:
driver: local
У меня проблема с cadvisor
, он не может записать в базу притока. даже если они находятся в одном и том же рое, и он должен видеть, что служба работает, и она должна иметь возможность связаться с ней, она все равно не работает.
failed to write stats to influxDb - Post http://influxdb:8086/write?consistency=&db=cadvisor&precision=&rp=: dial tcp 10.0.6.5:8086: i/o timeout
Я могу go в контейнер и запустите ping influxdb
, и он работает хорошо, это означает, что он его видит.
Я проверил группы безопасности и разрешил порт связи 8086.
Есть ли у вас какие-либо идеи, почему это не работает?