Finish Erlang Distribution Grafana dashboard
Includes Erlang node to colour pinning Adds a few make targets to help with docker-compose repetitive commands & Grafana dashboard updates. Split Overview & Distribution Docker deployments re deadtrickster/prometheus.erl#92 [finishes #166004512]
This commit is contained in:
parent
c4f0105bad
commit
2645082738
|
@ -1,6 +1,6 @@
|
|||
TODAY := $(shell date -u +'%Y.%m.%d')
|
||||
# Use the latest alpha RabbitMQ 3.8 release - https://dl.bintray.com/rabbitmq/all-dev/rabbitmq-server/
|
||||
BASED_ON_RABBITMQ_VERSION := 3.8.0-alpha.664
|
||||
BASED_ON_RABBITMQ_VERSION := 3.8.0-alpha.671
|
||||
DOCKER_IMAGE_VERSION := $(BASED_ON_RABBITMQ_VERSION)-$(TODAY)
|
||||
# RABBITMQ_VERSION is used in rabbitmq-components.mk to set PROJECT_VERSION
|
||||
RABBITMQ_VERSION ?= $(DOCKER_IMAGE_VERSION)
|
||||
|
@ -109,3 +109,36 @@ find_latest_otp: $(JQ)
|
|||
printf "Checksum: " && \
|
||||
wget --continue --quiet --output-document="/tmp/OTP-$$VERSION.tar.gz" "https://github.com/erlang/otp/archive/OTP-$$VERSION.tar.gz" && \
|
||||
shasum -a 256 "/tmp/OTP-$$VERSION.tar.gz"
|
||||
.PHONY: flo
|
||||
flo: find_latest_otp
|
||||
|
||||
define DOCKER_COMPOSE_UP
|
||||
cd docker && \
|
||||
docker-compose --file docker-compose-$@.yml up --detach && \
|
||||
docker-compose --file docker-compose-$@.yml logs --follow
|
||||
endef
|
||||
.PHONY: overview distribution
|
||||
overview distribution:
|
||||
@$(DOCKER_COMPOSE_UP)
|
||||
.PHONY: o d
|
||||
o: overview
|
||||
d: distribution
|
||||
|
||||
DOCKER_COMPOSE_FILES := $(wildcard docker/docker-compose-*.yml)
|
||||
.PHONY: $(DOCKER_COMPOSE_FILES)
|
||||
$(DOCKER_COMPOSE_FILES):
|
||||
@(cd docker && docker-compose --file $(@F) down ; true)
|
||||
.PHONY: down
|
||||
down: $(DOCKER_COMPOSE_FILES)
|
||||
|
||||
DASHBOARDS_FROM_PATH := $(HOME)/Downloads
|
||||
DASHBOARDS_TO_PATH := $(CURDIR)/docker/grafana/dashboards
|
||||
.PHONY: update_dashboards
|
||||
update_dashboards:
|
||||
mv -fv $(DASHBOARDS_FROM_PATH)/RabbitMQ-Overview-*.json $(DASHBOARDS_TO_PATH)/RabbitMQ-Overview.json ; \
|
||||
mv -fv $(DASHBOARDS_FROM_PATH)/Erlang-Distribution-*.json $(DASHBOARDS_TO_PATH)/Erlang-Distribution.json ; \
|
||||
mv -fv $(DASHBOARDS_FROM_PATH)/Erlang-Memory-Allocators-*.json $(DASHBOARDS_TO_PATH)/Erlang-Memory-Allocators.json ; \
|
||||
true
|
||||
|
||||
.PHONY: ud
|
||||
ud: update_dashboards
|
||||
|
|
|
@ -0,0 +1,108 @@
|
|||
# https://docs.docker.com/compose/compose-file/
|
||||
version: "3.6"
|
||||
|
||||
# https://docs.docker.com/compose/compose-file/#networks
|
||||
networks:
|
||||
rabbitmq-prometheus:
|
||||
|
||||
# https://docs.docker.com/compose/compose-file/#volumes
|
||||
volumes:
|
||||
rabbitmq-prometheus_prometheus:
|
||||
rabbitmq-prometheus_grafana:
|
||||
|
||||
services:
|
||||
rabbitmq1: &rabbitmq
|
||||
# https://hub.docker.com/r/pivotalrabbitmq/rabbitmq-prometheus/tags
|
||||
image: pivotalrabbitmq/rabbitmq-prometheus:3.8.0-alpha.671-2019.05.29
|
||||
networks:
|
||||
- "rabbitmq-prometheus"
|
||||
ports:
|
||||
- "5672:5672"
|
||||
- "15670:25672"
|
||||
- "15672:15672"
|
||||
- "15692:15692"
|
||||
# https://unix.stackexchange.com/questions/71940/killing-tcp-connection-in-linux
|
||||
# https://en.wikipedia.org/wiki/Tcpkill
|
||||
# https://www.digitalocean.com/community/tutorials/iptables-essentials-common-firewall-rules-and-commands#block-an-ip-address
|
||||
cap_add:
|
||||
- ALL
|
||||
hostname: rabbitmq1
|
||||
environment:
|
||||
RABBITMQ_ERLANG_COOKIE: rabbitmq-prometheus
|
||||
volumes:
|
||||
- ./rabbitmq-distribution.conf:/etc/rabbitmq/rabbitmq.conf:ro
|
||||
- ./rabbitmq-env.conf:/etc/rabbitmq/rabbitmq-env.conf:ro
|
||||
- ./rabbitmq-ssl_dist.config:/etc/rabbitmq/ssl_dist.config:ro
|
||||
- ./rabbitmq-definitions.json:/etc/rabbitmq/rabbitmq-definitions.json:ro
|
||||
- ./rabbitmq-ssl:/etc/rabbitmq/ssl:ro
|
||||
# we want to simulate hitting thresholds
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: "1024"
|
||||
hard: "2048"
|
||||
rabbitmq2:
|
||||
<< : *rabbitmq
|
||||
hostname: rabbitmq2
|
||||
ports:
|
||||
- "6672:5672"
|
||||
- "25670:25672"
|
||||
- "25672:15672"
|
||||
- "25692:15692"
|
||||
rabbitmq3:
|
||||
<< : *rabbitmq
|
||||
hostname: rabbitmq3
|
||||
ports:
|
||||
- "7672:5672"
|
||||
- "35670:25672"
|
||||
- "35672:15672"
|
||||
- "35692:15692"
|
||||
stress_distribution:
|
||||
# https://hub.docker.com/r/pivotalrabbitmq/perf-test/
|
||||
image: &perf-test-image pivotalrabbitmq/perf-test:2.8.0-ubuntu
|
||||
networks:
|
||||
- "rabbitmq-prometheus"
|
||||
environment:
|
||||
URI: "amqp://guest:guest@rabbitmq1:5672/%2f"
|
||||
QUEUE_PATTERN: "ha3-max1-%d"
|
||||
QUEUE_PATTERN_FROM: 1
|
||||
QUEUE_PATTERN_TO: 10
|
||||
PRODUCERS: 10
|
||||
CONSUMERS: 10
|
||||
ROUTING_KEY: max1
|
||||
SIZE: 512000
|
||||
QOS: 100
|
||||
AUTOACK: "false"
|
||||
VARIABLE_RATE: "1:30,10:30,20:30"
|
||||
SERVERS_STARTUP_TIMEOUT: &startup_timeout 30
|
||||
prometheus:
|
||||
# https://hub.docker.com/r/prom/prometheus/tags
|
||||
image: prom/prometheus:v2.9.2
|
||||
networks:
|
||||
- "rabbitmq-prometheus"
|
||||
ports:
|
||||
- "9090:9090"
|
||||
volumes:
|
||||
- rabbitmq-prometheus_prometheus:/prometheus
|
||||
- ./prometheus.yml:/etc/prometheus/prometheus.yml
|
||||
grafana:
|
||||
# https://hub.docker.com/r/grafana/grafana/tags
|
||||
image: grafana/grafana:6.1.6
|
||||
ports:
|
||||
- "3000:3000"
|
||||
networks:
|
||||
- "rabbitmq-prometheus"
|
||||
volumes:
|
||||
- rabbitmq-prometheus_grafana:/var/lib/grafana
|
||||
- ./grafana/dashboards.yml:/etc/grafana/provisioning/dashboards/rabbitmq.yaml
|
||||
- ./grafana/datasources.yml:/etc/grafana/provisioning/datasources/prometheus.yaml
|
||||
- ./grafana/dashboards:/dashboards
|
||||
# environment:
|
||||
# https://grafana.com/plugins/flant-statusmap-panel
|
||||
# https://grafana.com/plugins/grafana-polystat-panel
|
||||
# https://grafana.com/plugins/grafana-piechart-panel
|
||||
# https://grafana.com/plugins/jdbranham-diagram-panel
|
||||
# https://grafana.com/plugins/michaeldmoore-multistat-panel
|
||||
# https://grafana.com/plugins/vonage-status-panel
|
||||
# https://grafana.com/plugins/yesoreyeram-boomtable-panel
|
||||
# Even if the plugins are stored on a volume, updating them can be slow - disabling this for now
|
||||
# GF_INSTALL_PLUGINS: "flant-statusmap-panel,grafana-piechart-panel,grafana-polystat-panel,jdbranham-diagram-panel,michaeldmoore-multistat-panel,vonage-status-panel,yesoreyeram-boomtable-panel"
|
|
@ -13,7 +13,7 @@ volumes:
|
|||
services:
|
||||
rabbitmq1: &rabbitmq
|
||||
# https://hub.docker.com/r/pivotalrabbitmq/rabbitmq-prometheus/tags
|
||||
image: pivotalrabbitmq/rabbitmq-prometheus:3.8.0-alpha.664-2019.05.20
|
||||
image: pivotalrabbitmq/rabbitmq-prometheus:3.8.0-alpha.671-2019.05.29
|
||||
networks:
|
||||
- "rabbitmq-prometheus"
|
||||
ports:
|
||||
|
@ -30,8 +30,8 @@ services:
|
|||
environment:
|
||||
RABBITMQ_ERLANG_COOKIE: rabbitmq-prometheus
|
||||
volumes:
|
||||
- ./rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf
|
||||
- ./rabbitmq-definitions.json:/etc/rabbitmq/rabbitmq-definitions.json
|
||||
- ./rabbitmq-overview.conf:/etc/rabbitmq/rabbitmq.conf:ro
|
||||
- ./rabbitmq-definitions.json:/etc/rabbitmq/rabbitmq-definitions.json:ro
|
||||
# we want to simulate hitting thresholds
|
||||
ulimits:
|
||||
nofile:
|
||||
|
@ -55,7 +55,7 @@ services:
|
|||
- "35692:15692"
|
||||
publisher-confirms:
|
||||
# https://hub.docker.com/r/pivotalrabbitmq/perf-test/
|
||||
image: &perf-test-image pivotalrabbitmq/perf-test:dev-2019.05.20
|
||||
image: &perf-test-image pivotalrabbitmq/perf-test:2.8.0-ubuntu
|
||||
networks:
|
||||
- "rabbitmq-prometheus"
|
||||
environment:
|
||||
|
@ -66,7 +66,7 @@ services:
|
|||
VARIABLE_RATE: "12:30,25:30,50:30,100:30"
|
||||
CONFIRM: 1
|
||||
CONFIRM_TIMEOUT: 1
|
||||
SERVERS_STARTUP_TIMEOUT: 30
|
||||
SERVERS_STARTUP_TIMEOUT: &startup_timeout 60
|
||||
unroutable-return:
|
||||
image: *perf-test-image
|
||||
networks:
|
||||
|
@ -77,7 +77,7 @@ services:
|
|||
VARIABLE_SIZE: "100:30,200:30"
|
||||
CONSUMERS: 0
|
||||
FLAG: mandatory
|
||||
SERVERS_STARTUP_TIMEOUT: 30
|
||||
SERVERS_STARTUP_TIMEOUT: *startup_timeout
|
||||
unroutable-drop:
|
||||
image: *perf-test-image
|
||||
networks:
|
||||
|
@ -87,7 +87,7 @@ services:
|
|||
VARIABLE_RATE: "5:30,10:30,20:30"
|
||||
VARIABLE_SIZE: "100:30,200:30"
|
||||
CONSUMERS: 0
|
||||
SERVERS_STARTUP_TIMEOUT: 30
|
||||
SERVERS_STARTUP_TIMEOUT: *startup_timeout
|
||||
slow-consumer-persistent:
|
||||
image: *perf-test-image
|
||||
networks:
|
||||
|
@ -104,7 +104,7 @@ services:
|
|||
CONSUMER_RATE: 10
|
||||
QOS: 10
|
||||
AUTOACK: "false"
|
||||
SERVERS_STARTUP_TIMEOUT: 30
|
||||
SERVERS_STARTUP_TIMEOUT: *startup_timeout
|
||||
basic-get:
|
||||
image: *perf-test-image
|
||||
networks:
|
||||
|
@ -117,7 +117,7 @@ services:
|
|||
POLLING: "true"
|
||||
POLLING_INTERVAL: 5000
|
||||
AUTOACK: "false"
|
||||
SERVERS_STARTUP_TIMEOUT: 30
|
||||
SERVERS_STARTUP_TIMEOUT: *startup_timeout
|
||||
basic-get-auto:
|
||||
image: *perf-test-image
|
||||
networks:
|
||||
|
@ -130,7 +130,7 @@ services:
|
|||
POLLING: "true"
|
||||
POLLING_INTERVAL: 5000
|
||||
AUTOACK: "true"
|
||||
SERVERS_STARTUP_TIMEOUT: 30
|
||||
SERVERS_STARTUP_TIMEOUT: *startup_timeout
|
||||
nack:
|
||||
image: *perf-test-image
|
||||
networks:
|
||||
|
@ -148,60 +148,7 @@ services:
|
|||
NACK: "true"
|
||||
QOS: 5
|
||||
CONSUMER_LATENCY: 3000000
|
||||
SERVERS_STARTUP_TIMEOUT: 30
|
||||
# max1: &max
|
||||
# image: pivotalrabbitmq/perf-test:dev-2019.05.20
|
||||
# networks:
|
||||
# - "rabbitmq-prometheus"
|
||||
# environment:
|
||||
# URI: "amqp://guest:guest@rabbitmq1:5672/%2f"
|
||||
# QUEUE_PATTERN: "ha3-max1-%d"
|
||||
# QUEUE_PATTERN_FROM: 1
|
||||
# QUEUE_PATTERN_TO: 10
|
||||
# PRODUCERS: 10
|
||||
# CONSUMERS: 10
|
||||
# ROUTING_KEY: max1
|
||||
# SIZE: 512000
|
||||
# QOS: 100
|
||||
# AUTOACK: "false"
|
||||
# SERVERS_STARTUP_TIMEOUT: 30
|
||||
# prometheus:
|
||||
# image: prom/prometheus:v2.9.0
|
||||
# networks:
|
||||
# - "rabbitmq-prometheus"
|
||||
# ports:
|
||||
# - "9090:9090"
|
||||
# volumes:
|
||||
# - rabbitmq-prometheus_prometheus:/prometheus
|
||||
# - ./prometheus.yml:/etc/prometheus/prometheus.yml
|
||||
# max2:
|
||||
# << : *max
|
||||
# environment:
|
||||
# URI: "amqp://guest:guest@rabbitmq2:5672/%2f"
|
||||
# QUEUE_PATTERN: "ha3-max2-%d"
|
||||
# QUEUE_PATTERN_FROM: 1
|
||||
# QUEUE_PATTERN_TO: 10
|
||||
# PRODUCERS: 10
|
||||
# CONSUMERS: 10
|
||||
# ROUTING_KEY: max2
|
||||
# SIZE: 512000
|
||||
# QOS: 100
|
||||
# AUTOACK: "false"
|
||||
# SERVERS_STARTUP_TIMEOUT: 30
|
||||
# max3:
|
||||
# << : *max
|
||||
# environment:
|
||||
# URI: "amqp://guest:guest@rabbitmq3:5672/%2f"
|
||||
# QUEUE_PATTERN: "ha3-max3-%d"
|
||||
# QUEUE_PATTERN_FROM: 1
|
||||
# QUEUE_PATTERN_TO: 10
|
||||
# PRODUCERS: 10
|
||||
# CONSUMERS: 10
|
||||
# ROUTING_KEY: max3
|
||||
# SIZE: 512000
|
||||
# QOS: 100
|
||||
# AUTOACK: "false"
|
||||
# SERVERS_STARTUP_TIMEOUT: 30
|
||||
SERVERS_STARTUP_TIMEOUT: *startup_timeout
|
||||
prometheus:
|
||||
# https://hub.docker.com/r/prom/prometheus/tags
|
||||
image: prom/prometheus:v2.9.2
|
||||
|
@ -227,10 +174,10 @@ services:
|
|||
# environment:
|
||||
# https://grafana.com/plugins/flant-statusmap-panel
|
||||
# https://grafana.com/plugins/grafana-polystat-panel
|
||||
# https://grafana.com/plugins/grafana-piechart-panel
|
||||
# https://grafana.com/plugins/jdbranham-diagram-panel
|
||||
# https://grafana.com/plugins/michaeldmoore-multistat-panel
|
||||
# https://grafana.com/plugins/natel-discrete-panel
|
||||
# https://grafana.com/plugins/vonage-status-panel
|
||||
# https://grafana.com/plugins/yesoreyeram-boomtable-panel
|
||||
# Even if the plugins are stored on a volume, updating them can be slow - disabling this for now
|
||||
# GF_INSTALL_PLUGINS: "flant-statusmap-panel,grafana-polystat-panel,jdbranham-diagram-panel,michaeldmoore-multistat-panel,natel-discrete-panel,vonage-status-panel,yesoreyeram-boomtable-panel"
|
||||
# GF_INSTALL_PLUGINS: "flant-statusmap-panel,grafana-piechart-panel,grafana-polystat-panel,jdbranham-diagram-panel,michaeldmoore-multistat-panel,vonage-status-panel,yesoreyeram-boomtable-panel"
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,18 @@
|
|||
# https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.conf.example
|
||||
loopback_users.guest = false
|
||||
listeners.tcp.default = 5672
|
||||
management.listener.port = 15672
|
||||
management.listener.ssl = false
|
||||
|
||||
vm_memory_high_watermark.absolute = 4GiB
|
||||
vm_memory_high_watermark_paging_ratio = 0.9
|
||||
disk_free_limit.absolute = 2048MiB
|
||||
|
||||
cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config
|
||||
cluster_formation.classic_config.nodes.1 = rabbit@rabbitmq1
|
||||
cluster_formation.classic_config.nodes.2 = rabbit@rabbitmq2
|
||||
cluster_formation.classic_config.nodes.3 = rabbit@rabbitmq3
|
||||
|
||||
management.load_definitions = /etc/rabbitmq/rabbitmq-definitions.json
|
||||
|
||||
# background_gc_enabled = true
|
|
@ -0,0 +1,3 @@
|
|||
INET_TLS="-proto_dist inet_tls -ssl_dist_optfile /etc/rabbitmq/ssl_dist.config"
|
||||
SERVER_ADDITIONAL_ERL_ARGS="$INET_TLS"
|
||||
CTL_ERL_ARGS="$INET_TLS"
|
|
@ -1,3 +1,4 @@
|
|||
# https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.conf.example
|
||||
loopback_users.guest = false
|
||||
listeners.tcp.default = 5672
|
||||
management.listener.port = 15672
|
||||
|
@ -5,7 +6,6 @@ management.listener.ssl = false
|
|||
|
||||
vm_memory_high_watermark.absolute = 256MiB
|
||||
vm_memory_high_watermark_paging_ratio = 0.5
|
||||
disk_free_limit.absolute = 2048MiB
|
||||
|
||||
cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config
|
||||
cluster_formation.classic_config.nodes.1 = rabbit@rabbitmq1
|
||||
|
@ -13,3 +13,5 @@ cluster_formation.classic_config.nodes.2 = rabbit@rabbitmq2
|
|||
cluster_formation.classic_config.nodes.3 = rabbit@rabbitmq3
|
||||
|
||||
management.load_definitions = /etc/rabbitmq/rabbitmq-definitions.json
|
||||
|
||||
# background_gc_enabled = true
|
|
@ -0,0 +1,20 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIDRTCCAi2gAwIBAgIJAJ6tbccLOBogMA0GCSqGSIb3DQEBCwUAMDExIDAeBgNV
|
||||
BAMMF1RMU0dlblNlbGZTaWduZWR0Um9vdENBMQ0wCwYDVQQHDAQkJCQkMB4XDTE5
|
||||
MDUyODExMzk1NFoXDTI5MDUyNTExMzk1NFowMTEgMB4GA1UEAwwXVExTR2VuU2Vs
|
||||
ZlNpZ25lZHRSb290Q0ExDTALBgNVBAcMBCQkJCQwggEiMA0GCSqGSIb3DQEBAQUA
|
||||
A4IBDwAwggEKAoIBAQDdG6L5G8lamSkbVB5fvwX+2HA5JOylrk7AxUnWRJJqtg3q
|
||||
5QghMmVeBNYuO9h9spfZ4kMmfje4YyDHjgBzfymiu1nDWgQSJnWWCRV+RnT1OHsr
|
||||
Qm+8Y4pMASb4dSobU9q7aXrwuVaSbuNFqyALay+A1ZY/RmxEF9PsmS2e08OPnGxt
|
||||
lZc/h69udrx5E17WMN8KK3A8A6zAKDp5xVDOBURHJoujQgLrSQLZHrSr/GhWTT6Y
|
||||
/aO7wJz5h9AK3O31COtbSoEVpv6z1rzTJe7TVmXmGJE40+SAP9/k0vu7TnLgBAVJ
|
||||
38TlpTXqkxwSqdcqQOgRYl6MWS3JRVJCr3uVLqxpAgMBAAGjYDBeMAsGA1UdDwQE
|
||||
AwIBBjAdBgNVHQ4EFgQU5uLt6Ju+zd4VLtzZIm7H92x7SN8wHwYDVR0jBBgwFoAU
|
||||
5uLt6Ju+zd4VLtzZIm7H92x7SN8wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B
|
||||
AQsFAAOCAQEACvTdgRUZbkfzuCuhEgrCqxQtiyMTBJt1yPQ3s4j+T6ZpW/iz6D4r
|
||||
7TwqP46gx8OL9wmQpgPskl8y+dtsG8YyMsoM4jL2jlSK0q+zZ2d2EGZUCbArZee9
|
||||
m64wa2Z/ZRT59tRQFn7gEc0WcwvG9V4mPhuNwwSaYQcebDwJHybp8nmUu/0+JEVS
|
||||
cm6Yyzqmy5z95voobya15sV/IrtsOg4ufPUhjDoBOd6pvOkxSMBG6P/ZPE904HdY
|
||||
38m8KdsfyDeHWG5yGhtRdEnqJlaQ6a/MoR13MwaYhb3cevctTo+hYaBY1fM7MEEe
|
||||
FbuyVxWhwm2JdgI+e0ychay/LzNOxr5nrg==
|
||||
-----END CERTIFICATE-----
|
|
@ -0,0 +1,28 @@
|
|||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDdG6L5G8lamSkb
|
||||
VB5fvwX+2HA5JOylrk7AxUnWRJJqtg3q5QghMmVeBNYuO9h9spfZ4kMmfje4YyDH
|
||||
jgBzfymiu1nDWgQSJnWWCRV+RnT1OHsrQm+8Y4pMASb4dSobU9q7aXrwuVaSbuNF
|
||||
qyALay+A1ZY/RmxEF9PsmS2e08OPnGxtlZc/h69udrx5E17WMN8KK3A8A6zAKDp5
|
||||
xVDOBURHJoujQgLrSQLZHrSr/GhWTT6Y/aO7wJz5h9AK3O31COtbSoEVpv6z1rzT
|
||||
Je7TVmXmGJE40+SAP9/k0vu7TnLgBAVJ38TlpTXqkxwSqdcqQOgRYl6MWS3JRVJC
|
||||
r3uVLqxpAgMBAAECggEARciPKygF6L4mJyXpYDad4czVvnNU7QWSfWzG3QVPYLaM
|
||||
tfILGs8ZBw9nubfRn/pZyr6Kiv+S/nLqyZCbu9gKf/25WtpyJnhU7EF5sxzxlON6
|
||||
nDCfq0mPQGWsswXngDB6/GNSFd+o3xZ4TGix+Gif2X2PqfDEAsmybR37NAGJ2yzh
|
||||
BBs0mzvWqxXXVkaJCe8M2P6VCaqOIEl0FRb/tOcP1kguQYOMh2/dPDOWQZApEZXA
|
||||
OejQPveaywTc1ZmqOtWIIHHMPlNd+oayaUIsKGIz/D+KSsyjCwiV9sZ1BOye6bEd
|
||||
Uw4C1COgVAEVC+4qYD/QZ3vy6smAvLTGWKRX61YMAQKBgQD5TojClmTOxZ1ihTtG
|
||||
oD6PKmpKJz1fi3pt6X2FNW0RRefZfqx5m1DGFRuzEwREag65s79lTEUP3Y/D03Tz
|
||||
7dfMMMiRdXLBC4fqq0b8Dlyhrylp0wgbJlKe003frM4UseZVN2JsrpaDfhzsmOsG
|
||||
m6nFUx+Dimys8T3FvcB4B842SQKBgQDjC0tMr0UDhpV/OtBUmnHB/J/Bh5YI8zxs
|
||||
fSH2UlwKC8omad8UCw0e9jOXcMoQ/Va0n9JXfRlOzBGxr/lUt+8xA3jq0nVWrzsB
|
||||
rtHDEAxgYN9Ua4CpbGW91WnVd67oBzQHDb7E9H1jdv06KBGcciV1ubPAPW0HbPoY
|
||||
QnZPJzhFIQKBgQDxoVNdveQgoFnFJjpoXmGj4sk368ZJN2dG5jn5BOocBrQLEgJa
|
||||
rtVf1w+MxY6qPFzfUb7ckEqTcPupIebFkS1Jw7JxgPLi9akbIjxfig/vyVSLM7U0
|
||||
kzUaqNReSR9H4ZDL4S0tBx3sfivMiP2p3u9xx/nQRTbFe9+SKzJDY9VSuQKBgQCr
|
||||
f/yBEGOxJhgG4wY64e7L+WczaJeMay9ZQ6xDxDKB5CXunkpDeZWPramK20fHTZYR
|
||||
GihorbZQLxWugp5zv/yNqXHM7uxzbinEO6l3DshKhOItgobNc3Pm0S4AcUdNPSOv
|
||||
sFJJs+SDHX5qT5n98rsZEg0VSVDyKv8/E/UKFTYMAQKBgBa66F3msuNsOdmn23JT
|
||||
CtByn0Rp+QjhxK03BlBy6WHsM2JCJW6V2TxvHkC0lIXx6QfEiZ7HTNFk9OXzO++i
|
||||
GPQq9sKwZOICY3fu3rnEZIOFLTa1eqzLh9f2PftxnZG0SME9Mgmp4SYLLN7oV0UY
|
||||
lEpI1sA6tlO+xGNwY7+aBaG0
|
||||
-----END PRIVATE KEY-----
|
|
@ -0,0 +1,19 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIDIzCCAgugAwIBAgIBAjANBgkqhkiG9w0BAQsFADAxMSAwHgYDVQQDDBdUTFNH
|
||||
ZW5TZWxmU2lnbmVkdFJvb3RDQTENMAsGA1UEBwwEJCQkJDAeFw0xOTA1MjgxMTM5
|
||||
NTVaFw0yOTA1MjUxMTM5NTVaMCIxDzANBgNVBAMMBmZvY2tlcjEPMA0GA1UECgwG
|
||||
Y2xpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAygvU5TZhn127
|
||||
pF4vU+GGUJ23g/oZcUStAmZJOm3f5WnUIsRCW8y+jA9G12Oav4Ntf90ctedWUAFk
|
||||
C0dpWSw+951StA7TnBzZYUCnzhXf4IOstG86LdZZPlJMUlRB7S2C2p493WFtygnG
|
||||
+6YSL38wC3O1EFImm8XJQ5mAX1EcN8YVWsKxeyIHn1T0Ql6HQ9Ij01k6CxWaRo8M
|
||||
mzn80aMwCg06VsZB6WcYZKxS3Pc52xfYg0Mes31gO9TFHQORjvsRKRRW0aDIEFMq
|
||||
7s2n/OkdKV5KMye8j0Yy86lyzJGgVtddidO0yfPS1KoFrS/pQDDwkAy2RG3O36pl
|
||||
fib/zvYjAQIDAQABo1UwUzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIFoDATBgNVHSUE
|
||||
DDAKBggrBgEFBQcDAjAkBgNVHREEHTAbggZmb2NrZXKCBmZvY2tlcoIJbG9jYWxo
|
||||
b3N0MA0GCSqGSIb3DQEBCwUAA4IBAQCq19cxFMhe2zhF8A8mccishK2QFH5fq5Kb
|
||||
BRFFm5YoK/6YQU0JKyVC5jTLm1KvMdHjaT1s73znJTydOmy42CjAoLE8yIxZRZ6C
|
||||
Txc+JP+dmBNQFLaldiiAxU58VbmM45ulbukrUmyA4V0M5REOxSdqfMOAltKIBHvO
|
||||
PrRT2xDg2JIiTdKQngRO7rhPZw8Lwb6IhXju6SyEyRtNW5hkyghMYFdKrL/SmBB7
|
||||
3gOaX/hqNvW3d8bzD7CrLxp04c4Ve7D3IrLYXzW1bgV4isLa5I0NPx91MTi26e1Z
|
||||
1WpHt2VQIXO/z80ms4QTdNLJyfC48VB9jOvjm+ffjdGGq3ShZ8Wx
|
||||
-----END CERTIFICATE-----
|
Binary file not shown.
|
@ -0,0 +1,27 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEpAIBAAKCAQEAygvU5TZhn127pF4vU+GGUJ23g/oZcUStAmZJOm3f5WnUIsRC
|
||||
W8y+jA9G12Oav4Ntf90ctedWUAFkC0dpWSw+951StA7TnBzZYUCnzhXf4IOstG86
|
||||
LdZZPlJMUlRB7S2C2p493WFtygnG+6YSL38wC3O1EFImm8XJQ5mAX1EcN8YVWsKx
|
||||
eyIHn1T0Ql6HQ9Ij01k6CxWaRo8Mmzn80aMwCg06VsZB6WcYZKxS3Pc52xfYg0Me
|
||||
s31gO9TFHQORjvsRKRRW0aDIEFMq7s2n/OkdKV5KMye8j0Yy86lyzJGgVtddidO0
|
||||
yfPS1KoFrS/pQDDwkAy2RG3O36plfib/zvYjAQIDAQABAoIBAQCnEgGJR96RmUCA
|
||||
OiGIiwQ1xTTqvPQs5UzqnwoOdqydV1VDKmZ04mjuB/PcR1C+7D6vbHdBM3n7ziqb
|
||||
6QED68JlnoG0wk3Y2UInWP9pOk1VqYw154OEQ6qoDgVuTp31MZzyicc+OEJAvrT7
|
||||
geenvtRLo/Ik/MlQJcy3SUcNilR7CKgwZVKZbLrMXEj9Oy4A9hjePA4EPuAqFL+6
|
||||
g1FreIL/bOs/hLt10+WVRjTfxV+J5LpLxyOCEsCHiGcA5YgT3gytR5KcoR7hUi4n
|
||||
8PAmwfg2PYKqe4abkPguyMFxP+q39AAd1T26zt9dqI31TcLcmrubJbsJoU/hk+dO
|
||||
PnAXehXBAoGBAO6nvO4FGf34F1Pq58hXsadN39Jyf7Xg/dRh/qHilTYCATIilxIZ
|
||||
1TqmOcbKmQdT4p3uutU3HKVyN734D4duDK9rM76NIJxUJOAylEhRYGSHxKVdxj6v
|
||||
nsKuQb73EOX5mxfVXkO+w3bSByYtsS0Zq27v9oGE2N13ETg8BbgP7NCjAoGBANi6
|
||||
+HJdxbs7DD7LY36ejytTHNVEBc9XowLKL5VdgpvRP+g/v6ZZ0Hh+rNlwzGabvxKY
|
||||
J1E6Noq+YoiTBMbQtWO6m2/PjlN68pVwayUOibVrAIvHGqpIc7jVAjF7QAxCVXqa
|
||||
vDVVM2kG6DQV7PjezfOnCLkY8DPVHik+BXk5qOQLAoGACgoqa4Txa/q02IXoTEhM
|
||||
I/KluM+ySa92XinlMWA70LLS5A4Kdut5SedWROOe/mzr+qLhXzjbTqZ4a9h0psjd
|
||||
Zb/HxHthZNIxXvEhxc0OlgwUHLTOMzLmJeB4yZTRNCuE98K1HXp39JavUE7ZxkDv
|
||||
MlKL9zTkfqSUp932i6C34KsCgYBK7glrcOQl4TpQk3zoj+Urs2ZqjUP89W2UT1a4
|
||||
K0Y2nNedcjzORIsAvbsAyjDA4OPkh9pACQJGYaArW7jxC8NKoX+P3pB0aDNqWx2Q
|
||||
CECwCjh8GvArIzVvF6XUeaohEuX+p3Sec8B8dTjemR3+xPkrXfp0FB0nrmzpEVpP
|
||||
GRI9FQKBgQCeBTw2VrLaAwLNlYeP9TfGwHmID7a8PFE4Atqgm0w7hoF2ABp1tVs0
|
||||
U6i2T8ue3fuBPWGh8BJX4EPP0DBbmsSLti+kTKTaDwsW0nZ+yuos3LgP3BOx8fnJ
|
||||
4xEZM+nh0qEwRny+nT0u0QJ3jwDOMFRPIVj7Vrf6tWJ0sNi8WUpAbg==
|
||||
-----END RSA PRIVATE KEY-----
|
|
@ -0,0 +1,21 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIDZTCCAk2gAwIBAgIBATANBgkqhkiG9w0BAQsFADAxMSAwHgYDVQQDDBdUTFNH
|
||||
ZW5TZWxmU2lnbmVkdFJvb3RDQTENMAsGA1UEBwwEJCQkJDAeFw0xOTA1MjgxMTM5
|
||||
NTRaFw0yOTA1MjUxMTM5NTRaMCIxDzANBgNVBAMMBmZvY2tlcjEPMA0GA1UECgwG
|
||||
c2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2gs+lVgbg0Xg
|
||||
Hd9Bj9sR1qqsBh9YzbccoN15ZLelYo0JCMGUq1jqrzOhjlffPA7iz6hon9hJVjps
|
||||
MJTdIjutDKtP2y4BSN5P/tJ04cATGdDaOKAQztRY/gDVhUl2ZL8tZcfH0yuJ91AZ
|
||||
pj7xZqGN12UDsLuiplevkBST5NBclks6lXK/ZyaUwHTXiB8my5BsMk8k97n8UfBo
|
||||
x22jGT20LffzoEzA2Z85qUgyBVGmMG7C/uotvyqykjm3MP+Qdd/JaajnDCPxdQst
|
||||
0olJwa2XIf9oslYFBo+R0wGVKMoa3fxWMlwh+43VOi1wsN9x6AdhmZvVMSCJ3MnB
|
||||
52PgIkHU6wIDAQABo4GWMIGTMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMBMGA1Ud
|
||||
JQQMMAoGCCsGAQUFBwMBMCQGA1UdEQQdMBuCBmZvY2tlcoIGZm9ja2Vygglsb2Nh
|
||||
bGhvc3QwHQYDVR0OBBYEFNQf86rQEpzfJ1cpl9Y/P0H5S4RvMB8GA1UdIwQYMBaA
|
||||
FObi7eibvs3eFS7c2SJux/dse0jfMA0GCSqGSIb3DQEBCwUAA4IBAQBaGzNihsml
|
||||
vJTAewEmHopgK6CTPoXqk4x/ufRQx6AswgaroXACGCCyKqvZ6X4Xr89PF0TZF4Lu
|
||||
q6sm9HYgVGZRUy2wlTjOCpgg/ObtfeWlfF89bcWn2RZKgca+N4CmA/t+3px7TY29
|
||||
3uYXRHU6wWKUVtSHLYU3VeVv0LDwZ9vslm3S2FVziZmjU7y85Ikm9ZweknU/+Su0
|
||||
aeo+um3v+/JUbnLJqwkNVg648NVmTlVi0NFVnsaC2R4tLTjh4MJrI/A1CL3hyqYd
|
||||
08uSAsn/6uZZgyAri9qpjdqou8wTPvlqwHdPfkMve4K9EnPox3ys3nP1Cv15Ldmi
|
||||
zUZ6LFLwhqB8
|
||||
-----END CERTIFICATE-----
|
Binary file not shown.
|
@ -0,0 +1,27 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEpAIBAAKCAQEA2gs+lVgbg0XgHd9Bj9sR1qqsBh9YzbccoN15ZLelYo0JCMGU
|
||||
q1jqrzOhjlffPA7iz6hon9hJVjpsMJTdIjutDKtP2y4BSN5P/tJ04cATGdDaOKAQ
|
||||
ztRY/gDVhUl2ZL8tZcfH0yuJ91AZpj7xZqGN12UDsLuiplevkBST5NBclks6lXK/
|
||||
ZyaUwHTXiB8my5BsMk8k97n8UfBox22jGT20LffzoEzA2Z85qUgyBVGmMG7C/uot
|
||||
vyqykjm3MP+Qdd/JaajnDCPxdQst0olJwa2XIf9oslYFBo+R0wGVKMoa3fxWMlwh
|
||||
+43VOi1wsN9x6AdhmZvVMSCJ3MnB52PgIkHU6wIDAQABAoIBAHUFlegHKnTwupCt
|
||||
sn0ngNJqNPrwNfPqM6YuVylz2oIi2VdmtYikpweyuSExDfEouBfk9YncRbfOkSQd
|
||||
sPTffEeRZcFnVm8qSVqkzvAd6uJvEb9UQNEQbFaeUfo/7Bez9wRqDVfLRTeDONDd
|
||||
dSe0yvBwGWPvwCJwaxvzv1ANd7N83I7JWajZrBhIWdgu5Tq2E5m8beFxBVvVOdNX
|
||||
s7hBdqqPf2SMQqDIw5/NIUuKc4dqBsnikEq9oSD9ueghDxRuNEYfsqk+31L6DpOr
|
||||
CGIRekyFn+J0HDc2WyNG60GadSrUUhrV3XxT8+bRGYahkVAK9OazeD1/phHA/87O
|
||||
scWGY8kCgYEA+aPORKSye5xgreEOYYQ7Xv1KqUadxj9X6MkUbFzDnLE3rrGbdyuy
|
||||
L5L23kdIU5bsgQtSfLSAWvAT/PxmUvoKHQKL9TOljCnUYaHJo5E75AA4+XG2Tc8V
|
||||
w93TFq8XBcGFzGsUC2HYSxRGTUmCV9LIRk8P7mpaUgcLQ2nX4tk1oR0CgYEA35ld
|
||||
UtJxCNDmJBpGmRZtUo5jPgYOWtJnbp23wjQaFYlbG759pZyFSLwY+HA2F03iFRaz
|
||||
VzBPNErs10EWovvFToKcWIdLA5GsL3nRhF2+z43BtxxR2PMGwtE7zzl0uxkl2fDM
|
||||
G3JFpgS03VDK/1wgxWFpiKG6fvLIuStoTpFit6cCgYEAv59ve914a84ToCT7Jvub
|
||||
n0SKhPmBrmV9E2EWXj+un56hAWWv0oAmHMKQ4PqSmCdnj36jaLodNLDIhw8vdE4e
|
||||
aTpFOIjWcIrDTdYks3uOH2vUUBVrPLrTGDA0EluALpjoHYusLTiEEM2VUUo11Tgl
|
||||
J2MU9YuJnSFvEeYzIxxcQDkCgYAGGa0OIWesEeb1fTIH4zDAW9ohSxEBMVRZFDx7
|
||||
M+iyRbkSnLPY3NhWD6uuu4D+ScWtRZ1G965xgsnLZZ80eyH67l1NnQNS6ZqFARHS
|
||||
Rqx6BSgP0tn4zUiV8Bdto+enYxxBQeyPoyJ7UQ2OLDIdnWnXeLzkWWU5KW6IfsKt
|
||||
whGraQKBgQDDq0wYR7jqPuiM9ptB7Jc6odZrpBJftIyfKzw3CSeeMbPZujvR6gl3
|
||||
32uTsZjlWNCy9TRwvVdbnzFJx5NTZmbUS3jupk3L/Je+TURGoxs2NGfSc9ldfQmA
|
||||
FEtUyhEHWPkGJTjhE1sRh5LSV3aj0wHd1Qd40sOX16wDLZT8AFz09g==
|
||||
-----END RSA PRIVATE KEY-----
|
|
@ -0,0 +1,10 @@
|
|||
[
|
||||
{server, [
|
||||
{certfile, "/etc/rabbitmq/ssl/server_certificate.pem"},
|
||||
{keyfile, "/etc/rabbitmq/ssl/server_key.pem"},
|
||||
{secure_renegotiate, true}
|
||||
]},
|
||||
{client, [
|
||||
{secure_renegotiate, true}
|
||||
]}
|
||||
].
|
|
@ -114,7 +114,7 @@ dep_cowboy = hex 2.6.1
|
|||
dep_cowlib = hex 2.7.0
|
||||
dep_jsx = hex 2.9.0
|
||||
dep_lager = hex 3.6.10
|
||||
dep_prometheus = git https://github.com/deadtrickster/prometheus.erl v4.3.0
|
||||
dep_prometheus = hex 4.4.0
|
||||
dep_ra = git https://github.com/rabbitmq/ra.git master
|
||||
dep_ranch = hex 1.7.1
|
||||
dep_recon = hex 2.5.0
|
||||
|
|
|
@ -117,10 +117,12 @@
|
|||
{2, erlang_net_ticktime_seconds, gauge, "Inter-node heartbeat interval in seconds", net_ticktime}
|
||||
]},
|
||||
|
||||
{node_node_metrics, [
|
||||
{2, peer_node_bytes_in, counter, "Bytes received from peer node", recv_bytes},
|
||||
{2, peer_node_bytes_out, counter, "Bytes sent to peer node", send_bytes}
|
||||
]},
|
||||
% These metrics are captured in Erlang Distribution collector, built-into prometheus.erl
|
||||
% https://github.com/deadtrickster/prometheus.erl/pull/92
|
||||
% {node_node_metrics, [
|
||||
% {2, peer_node_bytes_in, counter, "Bytes received from peer node", recv_bytes},
|
||||
% {2, peer_node_bytes_out, counter, "Bytes sent to peer node", send_bytes}
|
||||
% ]},
|
||||
|
||||
{node_persister_metrics, [
|
||||
{2, io_read, counter, "I/O read operations", io_read_count},
|
||||
|
|
|
@ -166,7 +166,6 @@ metrics_test(Config) ->
|
|||
?assertEqual(match, re:run(Body, "rabbitmq_queue_messages_published", [{capture, none}])),
|
||||
?assertEqual(match, re:run(Body, "rabbitmq_file_descriptors_open", [{capture, none}])),
|
||||
?assertEqual(match, re:run(Body, "rabbitmq_file_descriptors_open_limit", [{capture, none}])),
|
||||
?assertEqual(match, re:run(Body, "rabbitmq_peer_node_bytes_in", [{capture, none}])),
|
||||
?assertEqual(match, re:run(Body, "rabbitmq_io_read", [{capture, none}])),
|
||||
?assertEqual(match, re:run(Body, "rabbitmq_queue_messages_ready", [{capture, none}])),
|
||||
?assertEqual(match, re:run(Body, "rabbitmq_queue_consumers", [{capture, none}])),
|
||||
|
|
Loading…
Reference in New Issue