Skip to content

Commit 03fc66c

Browse files
authored
docker-compose: add node exporter deployment (#874)
1 parent 891c512 commit 03fc66c

File tree

6 files changed

+87
-3
lines changed

6 files changed

+87
-3
lines changed

docker-compose/docker-compose.yaml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -520,6 +520,35 @@ services:
520520
command:
521521
- --port=8080
522522

523+
# Description: Publishes Prometheus metrics about the machine's hardware / operating system.
524+
#
525+
# Disk: none
526+
# Ports exposed to other Sourcegraph services: 9100/TCP
527+
# Ports exposed to the public internet: none
528+
#
529+
node-exporter:
530+
container_name: node-exporter
531+
image: 'index.docker.io/sourcegraph/node-exporter:181368_2022-11-03_bf1f156a4692@sha256:2d9dcdf0b2226f0c3d550a64d2667710265462350a3ba9ebe37d0302bc64af0f'
532+
cpus: .5
533+
mem_limit: '1g'
534+
pid: 'host'
535+
volumes:
536+
- /proc:/host/proc:ro
537+
- /sys:/host/sys:ro
538+
- /:/rootfs:ro
539+
command:
540+
- '--path.procfs=/host/proc'
541+
- '--path.rootfs=/rootfs'
542+
- '--path.sysfs=/host/sys'
543+
- '--no-collector.wifi'
544+
- '--no-collector.hwmon'
545+
- '--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)'
546+
expose:
547+
- 9100
548+
networks:
549+
- sourcegraph
550+
restart: always
551+
523552
# Description: PostgreSQL database for various data.
524553
#
525554
# Disk: 128GB / persistent SSD

prometheus/prometheus_targets.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,75 +1,98 @@
11
---
22
- labels:
3+
nodename: "sourcegraph-docker-compose-host"
34
job: node
45
targets:
56
- cadvisor:8080
67
- sourcegraph-frontend-internal:6060
78
- labels:
9+
nodename: "sourcegraph-docker-compose-host"
810
job: github-proxy
911
targets:
1012
- github-proxy:6060
1113
- labels:
14+
nodename: "sourcegraph-docker-compose-host"
1215
job: repo-updater
1316
targets:
1417
- repo-updater:6060
1518
- labels:
19+
nodename: "sourcegraph-docker-compose-host"
1620
job: worker
1721
targets:
1822
- worker:6060
1923
- labels:
24+
nodename: "sourcegraph-docker-compose-host"
2025
job: worker-executors
2126
targets:
2227
- worker:6996
2328
- labels:
29+
nodename: "sourcegraph-docker-compose-host"
2430
job: node
2531
targets:
2632
- syntect-server:6060
2733
- labels:
34+
nodename: "sourcegraph-docker-compose-host"
2835
job: precise-code-intel-worker
2936
targets:
3037
- precise-code-intel-worker:6060
3138
# Add new entries here for every searcher/symbol/gitserver replica.
3239
- labels:
40+
nodename: "sourcegraph-docker-compose-host"
3341
job: zoekt-indexserver
3442
targets:
3543
- zoekt-indexserver-0:6072
3644
- labels:
45+
nodename: "sourcegraph-docker-compose-host"
3746
job: zoekt-webserver
3847
targets:
3948
- zoekt-webserver-0:6070
4049
- labels:
50+
nodename: "sourcegraph-docker-compose-host"
4151
job: sourcegraph-frontend
4252
targets:
4353
- sourcegraph-frontend-0:6060
4454
- labels:
55+
nodename: "sourcegraph-docker-compose-host"
4556
job: gitserver
4657
targets:
4758
- gitserver-0:6060
4859
- labels:
60+
nodename: "sourcegraph-docker-compose-host"
4961
job: searcher
5062
targets:
5163
- searcher-0:6060
5264
- labels:
65+
nodename: "sourcegraph-docker-compose-host"
5366
job: symbols
5467
targets:
5568
- symbols-0:6060
5669
- labels:
70+
nodename: "sourcegraph-docker-compose-host"
5771
job: pgsql
5872
targets:
5973
- pgsql-exporter:9187
6074
- labels:
75+
nodename: "sourcegraph-docker-compose-host"
6176
job: codeintel-db
6277
targets:
6378
- codeintel-db-exporter:9187
6479
- labels:
80+
nodename: "sourcegraph-docker-compose-host"
6581
job: codeinsights-db
6682
targets:
6783
- codeinsights-db-exporter:9187
6884
- labels:
85+
nodename: "sourcegraph-docker-compose-host"
6986
job: redis-cache
7087
targets:
7188
- redis-cache:9121
7289
- labels:
90+
nodename: "sourcegraph-docker-compose-host"
7391
job: redis-store
7492
targets:
7593
- redis-store:9121
94+
- labels:
95+
nodename: "sourcegraph-docker-compose-host"
96+
job: node-exporter
97+
targets:
98+
- node-exporter:9100
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
#!/usr/bin/env bash
2+
set -e
3+
source ./replicas.sh
4+
5+
# Description: Publishes Prometheus metrics about the machine's hardware / operating system.
6+
#
7+
# Disk: none
8+
# Ports exposed to other Sourcegraph services: 9100/TCP
9+
# Ports exposed to the public internet: none
10+
#
11+
sudo docker run --detach \
12+
--name=node-exporter \
13+
--network=sourcegraph \
14+
--restart=always \
15+
--cpus=0.5 \
16+
--memory=1g \
17+
--pid='host' \
18+
--volume=/:/rootfs:ro \
19+
--volume=/proc:/host/proc:ro \
20+
--volume=/sys:/host/sys:ro \
21+
-p 0.0.0.0:9100:9100 \
22+
index.docker.io/sourcegraph/node-exporter:181368_2022-11-03_bf1f156a4692@sha256:2d9dcdf0b2226f0c3d550a64d2667710265462350a3ba9ebe37d0302bc64af0f \
23+
'--path.procfs=/host/proc' \
24+
'--path.rootfs=/rootfs' \
25+
'--path.sysfs=/host/sys' \
26+
'--no-collector.wifi' \
27+
'--no-collector.hwmon' \
28+
'--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)'
29+
30+
echo "Deployed node-exporter"

pure-docker/deploy.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ source ./replicas.sh
1010

1111
docker network create sourcegraph &>/dev/null || true
1212

13+
./deploy-node-exporter.sh
1314
./deploy-cadvisor.sh
1415
./deploy-github-proxy.sh
1516
for i in $(seq 0 $(($NUM_GITSERVER - 1))); do ./deploy-gitserver.sh $i; done

pure-docker/teardown.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ cd "$root_dir"
66

77
source ./replicas.sh
88

9+
docker rm -f node-exporter &>/dev/null || true &
910
docker rm -f cadvisor &> /dev/null || true &
1011
docker rm -f caddy &> /dev/null || true &
1112
docker rm -f sourcegraph-frontend-internal &> /dev/null || true &

test/smoke-test.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@ deploy_sourcegraph() {
1010

1111
if [[ "$GIT_BRANCH" == *"customer-replica"* ]]; then
1212
# Expected number of containers on e.g. 3.18-customer-replica branch.
13-
expect_containers="60"
13+
expect_containers="61"
1414
else
1515
# Expected number of containers on `master` branch.
16-
expect_containers="25"
16+
expect_containers="26"
1717
fi
1818
elif [[ "$TEST_TYPE" == "docker-compose-test" ]]; then
1919
docker-compose --file docker-compose/docker-compose.yaml up -d -t 600
20-
expect_containers="26"
20+
expect_containers="27"
2121
fi
2222

2323
echo "Giving containers 90s to start..."

0 commit comments

Comments
 (0)