mirror of
https://github.com/bigbluebutton/docker.git
synced 2025-02-16 17:51:33 +01:00
Enable optimization for Prometheus when recording is enabled
This commit is contained in:
parent
40db868ccd
commit
abeac58d73
@ -115,7 +115,7 @@ services:
|
|||||||
- ./conf/dialplan_public:/etc/freeswitch/dialplan/public_docker
|
- ./conf/dialplan_public:/etc/freeswitch/dialplan/public_docker
|
||||||
- vol-freeswitch:/var/freeswitch/meetings
|
- vol-freeswitch:/var/freeswitch/meetings
|
||||||
network_mode: host
|
network_mode: host
|
||||||
|
|
||||||
nginx:
|
nginx:
|
||||||
build: mod/nginx
|
build: mod/nginx
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -156,7 +156,7 @@ services:
|
|||||||
retries: 30
|
retries: 30
|
||||||
networks:
|
networks:
|
||||||
bbb-net:
|
bbb-net:
|
||||||
ipv4_address: 10.7.7.5
|
ipv4_address: 10.7.7.5
|
||||||
|
|
||||||
mongodb:
|
mongodb:
|
||||||
image: mongo:4.4
|
image: mongo:4.4
|
||||||
@ -177,7 +177,7 @@ services:
|
|||||||
kurento:
|
kurento:
|
||||||
image: kurento/kurento-media-server:6.16
|
image: kurento/kurento-media-server:6.16
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
KMS_STUN_IP: ${STUN_IP}
|
KMS_STUN_IP: ${STUN_IP}
|
||||||
KMS_STUN_PORT: ${STUN_PORT}
|
KMS_STUN_PORT: ${STUN_PORT}
|
||||||
KMS_MIN_PORT: 24577
|
KMS_MIN_PORT: 24577
|
||||||
@ -188,7 +188,7 @@ services:
|
|||||||
network_mode: host
|
network_mode: host
|
||||||
volumes:
|
volumes:
|
||||||
- vol-kurento:/var/kurento
|
- vol-kurento:/var/kurento
|
||||||
|
|
||||||
webrtc-sfu:
|
webrtc-sfu:
|
||||||
build: mod/webrtc-sfu
|
build: mod/webrtc-sfu
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -249,7 +249,7 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
bbb-net:
|
bbb-net:
|
||||||
ipv4_address: 10.7.7.20
|
ipv4_address: 10.7.7.20
|
||||||
|
|
||||||
periodic:
|
periodic:
|
||||||
build: mod/periodic
|
build: mod/periodic
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -385,15 +385,20 @@ services:
|
|||||||
prometheus-exporter:
|
prometheus-exporter:
|
||||||
image: greenstatic/bigbluebutton-exporter:v0.7.0-preview2
|
image: greenstatic/bigbluebutton-exporter:v0.7.0-preview2
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
API_BASE_URL: http://10.7.7.1:8080/bigbluebutton/api/
|
API_BASE_URL: http://10.7.7.1:8080/bigbluebutton/api/
|
||||||
API_SECRET: ${SHARED_SECRET}
|
API_SECRET: ${SHARED_SECRET}
|
||||||
RECORDINGS_METRICS_READ_FROM_DISK: "false"
|
RECORDINGS_METRICS_READ_FROM_DISK: "${ENABLE_PROMETHEUS_EXPORTER_OPTIMIZATION}"
|
||||||
networks:
|
networks:
|
||||||
bbb-net:
|
bbb-net:
|
||||||
ipv4_address: 10.7.7.33
|
ipv4_address: 10.7.7.33
|
||||||
|
{{ if isTrue .Env.ENABLE_PROMETHEUS_EXPORTER_OPTIMIZATION }}
|
||||||
|
volumes:
|
||||||
|
- bigbluebutton:/var/bigbluebutton:ro
|
||||||
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
bigbluebutton:
|
bigbluebutton:
|
||||||
vol-freeswitch:
|
vol-freeswitch:
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
ENABLE_HTTPS_PROXY=true
|
ENABLE_HTTPS_PROXY=true
|
||||||
|
|
||||||
# coturn (a TURN Server)
|
# coturn (a TURN Server)
|
||||||
# requires either the abhove HTTPS Proxy to be enabled
|
# requires either the abhove HTTPS Proxy to be enabled
|
||||||
# or TLS certificates to be mounted to container
|
# or TLS certificates to be mounted to container
|
||||||
ENABLE_COTURN=true
|
ENABLE_COTURN=true
|
||||||
#COTURN_TLS_CERT_PATH=
|
#COTURN_TLS_CERT_PATH=
|
||||||
@ -26,9 +26,10 @@ ENABLE_GREENLIGHT=true
|
|||||||
# serves the bigbluebutton-exporter under following URL:
|
# serves the bigbluebutton-exporter under following URL:
|
||||||
# https://yourdomain/bbb-exporter
|
# https://yourdomain/bbb-exporter
|
||||||
#ENABLE_PROMETHEUS_EXPORTER=true
|
#ENABLE_PROMETHEUS_EXPORTER=true
|
||||||
|
#ENABLE_PROMETHEUS_EXPORTER_OPTIMIZATION=true
|
||||||
|
|
||||||
# Recording
|
# Recording
|
||||||
# IMPORTANT: this is currently a big privacy issues, because it will
|
# IMPORTANT: this is currently a big privacy issues, because it will
|
||||||
# record everything which happens in the conference, even when the button
|
# record everything which happens in the conference, even when the button
|
||||||
# suggets, that it does not.
|
# suggets, that it does not.
|
||||||
# https://github.com/bigbluebutton/bigbluebutton/issues/9202
|
# https://github.com/bigbluebutton/bigbluebutton/issues/9202
|
||||||
@ -132,7 +133,7 @@ CHAT_START_CLOSED=false
|
|||||||
# set to true to disable announcements "You are now (un-)muted"
|
# set to true to disable announcements "You are now (un-)muted"
|
||||||
DISABLE_SOUND_MUTED=false
|
DISABLE_SOUND_MUTED=false
|
||||||
|
|
||||||
# set to true to disable announcement "You are the only person in this conference"
|
# set to true to disable announcement "You are the only person in this conference"
|
||||||
DISABLE_SOUND_ALONE=false
|
DISABLE_SOUND_ALONE=false
|
||||||
|
|
||||||
# maximum count of breakout rooms per meeting
|
# maximum count of breakout rooms per meeting
|
||||||
@ -224,7 +225,7 @@ ALLOW_GREENLIGHT_ACCOUNTS=true
|
|||||||
# SMTP_AUTH=plain
|
# SMTP_AUTH=plain
|
||||||
# SMTP_STARTTLS_AUTO=true
|
# SMTP_STARTTLS_AUTO=true
|
||||||
#
|
#
|
||||||
# If your mail server has a self-signed certificate, you'll also need to include the line below.
|
# If your mail server has a self-signed certificate, you'll also need to include the line below.
|
||||||
# Please note that enable this presents its own security risks and should not be done unless necessary.
|
# Please note that enable this presents its own security risks and should not be done unless necessary.
|
||||||
# SMTP_OPENSSL_VERIFY_MODE=none
|
# SMTP_OPENSSL_VERIFY_MODE=none
|
||||||
#
|
#
|
||||||
|
@ -43,6 +43,7 @@ docker run \
|
|||||||
-e ENABLE_COTURN=${ENABLE_COTURN:-false} \
|
-e ENABLE_COTURN=${ENABLE_COTURN:-false} \
|
||||||
-e ENABLE_GREENLIGHT=${ENABLE_GREENLIGHT:-false} \
|
-e ENABLE_GREENLIGHT=${ENABLE_GREENLIGHT:-false} \
|
||||||
-e ENABLE_PROMETHEUS_EXPORTER=${ENABLE_PROMETHEUS_EXPORTER:-false} \
|
-e ENABLE_PROMETHEUS_EXPORTER=${ENABLE_PROMETHEUS_EXPORTER:-false} \
|
||||||
|
-e ENABLE_PROMETHEUS_EXPORTER_OPTIMIZATION=${ENABLE_PROMETHEUS_EXPORTER_OPTIMIZATION:-false} \
|
||||||
-e NUMBER_OF_BACKEND_NODEJS_PROCESSES=${NUMBER_OF_BACKEND_NODEJS_PROCESSES:-1} \
|
-e NUMBER_OF_BACKEND_NODEJS_PROCESSES=${NUMBER_OF_BACKEND_NODEJS_PROCESSES:-1} \
|
||||||
-e NUMBER_OF_FRONTEND_NODEJS_PROCESSES=${NUMBER_OF_FRONTEND_NODEJS_PROCESSES:-1} \
|
-e NUMBER_OF_FRONTEND_NODEJS_PROCESSES=${NUMBER_OF_FRONTEND_NODEJS_PROCESSES:-1} \
|
||||||
jwilder/dockerize -template /docker-compose.tmpl.yml \
|
jwilder/dockerize -template /docker-compose.tmpl.yml \
|
||||||
|
@ -43,18 +43,13 @@ then
|
|||||||
echo " you must provide a relative or absolute path"
|
echo " you must provide a relative or absolute path"
|
||||||
echo " to your certificates."
|
echo " to your certificates."
|
||||||
while [[ -z "$CERTPATH" ]]; do
|
while [[ -z "$CERTPATH" ]]; do
|
||||||
read -p "Please enter path to cert.pem: " CERTPATH
|
read -p "Please enter path to cert.pem: " CERTPATH
|
||||||
done
|
done
|
||||||
while [[ -z "$KEYPATH" ]]; do
|
while [[ -z "$KEYPATH" ]]; do
|
||||||
read -p "Please enter path to key.pem: " KEYPATH
|
read -p "Please enter path to key.pem: " KEYPATH
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
prometheus_exporter=""
|
|
||||||
while [[ ! $prometheus_exporter =~ ^(y|n)$ ]]; do
|
|
||||||
read -p "Should a Prometheus exporter be included? (y/n): " prometheus_exporter
|
|
||||||
done
|
|
||||||
|
|
||||||
DOMAIN=""
|
DOMAIN=""
|
||||||
while [[ -z "$DOMAIN" ]]; do
|
while [[ -z "$DOMAIN" ]]; do
|
||||||
read -p "Please enter the domain name: " DOMAIN
|
read -p "Please enter the domain name: " DOMAIN
|
||||||
@ -68,10 +63,25 @@ echo " suggests, that it does not."
|
|||||||
echo " make sure that you always get people's consent, before they join a room!"
|
echo " make sure that you always get people's consent, before they join a room!"
|
||||||
echo " https://github.com/bigbluebutton/bigbluebutton/issues/9202"
|
echo " https://github.com/bigbluebutton/bigbluebutton/issues/9202"
|
||||||
while [[ ! $recording =~ ^(y|n)$ ]]; do
|
while [[ ! $recording =~ ^(y|n)$ ]]; do
|
||||||
|
|
||||||
read -p "Choice (y/n): " recording
|
read -p "Choice (y/n): " recording
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|
||||||
|
prometheus_exporter=""
|
||||||
|
while [[ ! $prometheus_exporter =~ ^(y|n)$ ]]; do
|
||||||
|
read -p "Should a Prometheus exporter be included? (y/n): " prometheus_exporter
|
||||||
|
done
|
||||||
|
if [ "$prometheus_exporter" == "y" ] && [ "$recording" == "y" ]
|
||||||
|
then
|
||||||
|
echo "Should Prometheus exporter optimization be enabled?"
|
||||||
|
echo " This instructs exporter to collect expensive recordings metrics by querying the disk instead of the API."
|
||||||
|
echo " Enabling this can substantially decrease the scrape time required for the exporter to respond to metrics requests"
|
||||||
|
prometheus_exporter_optimization=""
|
||||||
|
while [[ ! $prometheus_exporter_optimization =~ ^(y|n)$ ]]; do
|
||||||
|
read -p "Choice (y/n): " prometheus_exporter_optimization
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
ip_correct=""
|
ip_correct=""
|
||||||
while [[ ! $ip_correct =~ ^(y|n)$ ]]; do
|
while [[ ! $ip_correct =~ ^(y|n)$ ]]; do
|
||||||
read -p "Is $EXTERNAL_IPv4 your external IPv4 address? (y/n): " ip_correct
|
read -p "Is $EXTERNAL_IPv4 your external IPv4 address? (y/n): " ip_correct
|
||||||
@ -142,7 +152,12 @@ fi
|
|||||||
|
|
||||||
if [ "$prometheus_exporter" == "y" ]
|
if [ "$prometheus_exporter" == "y" ]
|
||||||
then
|
then
|
||||||
sed -i "s/#ENABLE_PROMETHEUS_EXPORTER.*/ENABLE_PROMETHEUS_EXPORTER=true/" .env
|
sed -i "s/#ENABLE_PROMETHEUS_EXPORTER=.*/ENABLE_PROMETHEUS_EXPORTER=true/" .env
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$prometheus_exporter_optimization" == "y" ]
|
||||||
|
then
|
||||||
|
sed -i "s/#ENABLE_PROMETHEUS_EXPORTER_OPTIMIZATION=.*/ENABLE_PROMETHEUS_EXPORTER_OPTIMIZATION=true/" .env
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# change secrets
|
# change secrets
|
||||||
|
Loading…
Reference in New Issue
Block a user