bvis / docker-prometheus-swarm Goto Github PK
View Code? Open in Web Editor NEWSample prometheus that can be used as a sample to get Swarm cluster metrics
Sample prometheus that can be used as a sample to get Swarm cluster metrics
... and I like what I see! :)
Just saw your Docker Swarm dashboard and thought it looked familiar. Thanks for referencing my work - I love what you did with it!
I thought about making the suite swarm-aware for a long time but haven't got around doing it. Maybe we can team up? What do you think?
EDIT: And sorry for putting this as an issue, I just thought it was the easiest way to reach out to you. :)
Hello!
It's possible show in "instance" fileld the hostname of server instead the IP:Port?
Regards
Hello,
would be nice if you could explain how the load balancing of docker swarm is considered. As far as I understand yet, the scraping of prometheus will be routed to some cadvisor or nodeexport instance without any guarantees. How do you get data from all nodes at each scrape interval? How are the datapoint distinguished from each other?
Thank you very much and best regards,
Siavash
Hi,
I was able to up the stack using docker stack command and it came up fine on the swarm as attached. However, when I try to import the .json file for the graphana dashboard, it asks for the data sources (elastic search, prometheus and alerts) and I cannot click "Import", because it expects all fields to be filled in. I tried combinations
http://prometheus:9090
, http://localhost:9090
, which complained about bad gatewayhttp://localhost:9200
By the time I reached this point with errors in both prometheus and elastic search, I was doubtful if I am going the right direction.
My expectation was that once the stack is up and running, it has everything that it needs to see the dashboard and evaluate further - Is that not the case ? There is more to set up than just standing up the stack using docker stack
?
Docker exporter container is running but cannot access the port 4999 it just times out which also means there is an alert running by default.
Hi bvis,
your grafana dashboard https://grafana.com/dashboards/609 doesn't work with grafana v5.
There is a link to this repo on the Dashboard page.
Error message is:
msg="Failed to import dashboard" logger=context [...] error="Invalid alert data. Cannot save dashboard"
Maybe you can have a look.
Thanks
Floek
When I deploy stack in swarm mode i get this error for prometheus for example:
$docker service ps monitoring_prometheus --no-trunc
monitoring_prometheus.1 basi/prometheus-swarm:v0.4.3@sha256:e39a... swarm-01
Shutdown Failed 5 seconds ago
"starting container failed: subnet sandbox join failed for "10.0.2.0/24": overlay subnet 10.0.2.0/24 has conflicts in the host while running in host mode"
is it problem because stack deploy creates network monitoring_monitoring
?
I managed to start services by creating network docker network create --driver overlay monitoring
.
But then I still have some network problems to access services using reverse proxy (i can acces only services on one node)
my cadvisor container eth0 has two IP ,so network cann't connect
74: eth0@if75: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1450 qdisc noqueue state UP
link/ether 02:42:0a:00:00:05 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.5/24 scope global eth0
valid_lft forever preferred_lft forever
inet 10.0.0.2/32 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::42:aff:fe00:5/64 scope link
valid_lft forever preferred_lft forever
Docker logs from the container:
ubuntu@p3-staging-swarm-master:~/docker-prometheus-swarm$ docker logs logging_logspout.fj1zrpo9qv23occ2mlfw5xdac.57z1ah300o7bf4acn6jvqx5lq
# logspout v3.3-dev-custom by gliderlabs
# adapters: logstash raw udp tcp
# options : persist:/mnt/routes
# jobs : http[]:80 pump routes
# routes :
# ADAPTER ADDRESS CONTAINERS SOURCES OPTIONS
# logstash logstash:5000 map[]
2017/06/01 07:26:15 logstash: could not write:write udp 10.0.6.3:36077->10.0.6.6:5000: write: connection refused
ubuntu@p3-staging-swarm-master:~/docker-prometheus-swarm$
Docker service details:
ubuntu@p3-staging-swarm-master:~/docker-prometheus-swarm$ docker service inspect logging_logspout
[
{
"ID": "emey9d6xwy7ksctssvkkxk9c6",
"Version": {
"Index": 87385
},
"CreatedAt": "2017-06-01T07:23:33.285425141Z",
"UpdatedAt": "2017-06-01T07:23:33.288820538Z",
"Spec": {
"Name": "logging_logspout",
"Labels": {
"com.docker.stack.namespace": "logging"
},
"TaskTemplate": {
"ContainerSpec": {
"Image": "bekt/logspout-logstash:latest@sha256:366a7f7d3ca69ab2415440595f65db46b57419ff0c4e7a23df2b7ea8cd4d8434",
"Labels": {
"com.docker.stack.namespace": "logging"
},
"Env": [
"DOCKER_LABELS=true",
"ROUTE_URIS=logstash://logstash:5000"
],
"Mounts": [
{
"Type": "bind",
"Source": "/var/run/docker.sock",
"Target": "/var/run/docker.sock"
}
]
},
"Resources": {
"Limits": {
"NanoCPUs": 250000000,
"MemoryBytes": 67108864
},
"Reservations": {
"NanoCPUs": 250000000,
"MemoryBytes": 33554432
}
},
"Placement": {},
"ForceUpdate": 0
},
"Mode": {
"Global": {}
},
"Networks": [
{
"Target": "shx9ujmfgs4zftl3fzlr1cu34",
"Aliases": [
"logspout"
]
}
],
"EndpointSpec": {
"Mode": "vip"
}
},
"Endpoint": {
"Spec": {
"Mode": "vip"
},
"VirtualIPs": [
{
"NetworkID": "shx9ujmfgs4zftl3fzlr1cu34",
"Addr": "10.0.6.2/24"
}
]
},
"UpdateStatus": {
"StartedAt": "0001-01-01T00:00:00Z",
"CompletedAt": "0001-01-01T00:00:00Z"
}
}
]
ubuntu@p3-staging-swarm-master:~/docker-prometheus-swarm$
Other possibly relevant details:
ubuntu@p3-staging-swarm-master:~/docker-prometheus-swarm$ docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
fj1zrpo9qv23occ2mlfw5xdac * p3-staging-swarm-master Ready Active Leader
n43n89h55wes1j3z71whq8pgg p3-staging-swarm-worker-1 Ready Active
qbfp17fvh22lepxfmt9fns6c9 p3-staging-swarm-worker-0 Down Active
ubuntu@p3-staging-swarm-master:~/docker-prometheus-swarm$ docker version
Client:
Version: 17.03.1-ce
API version: 1.27
Go version: go1.7.5
Git commit: c6d412e
Built: Mon Mar 27 17:14:09 2017
OS/Arch: linux/amd64
Server:
Version: 17.03.1-ce
API version: 1.27 (minimum version 1.12)
Go version: go1.7.5
Git commit: c6d412e
Built: Mon Mar 27 17:14:09 2017
OS/Arch: linux/amd64
Experimental: false
ubuntu@p3-staging-swarm-master:~/docker-prometheus-swarm$
All the other services are running from monitoring and logging stack.
Hi, first of all thank you very much for your help.
So the only changes I made to the docker-compose file on your page is I added "ports" for prometheus, node exporter and cadvisor because I couldnt access the endpoints. I also mounted my own prometheus config file. I copied over the new docker compose file and executed it. Everything sets up fine, I can even see my targets are healthy in prometheus. But after setting up grafana I see that my CPU usage is somewhere near -60k% - -70k%. I cannot figure out what is going on. Before trying to use services, I was able to manually deploy node exporter and cadvisor on all the nodes in my cluster and see accurate results in grafana. I appreciate the help. Please let me know If you need more info.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.