Skip to content

Commit 4aa1652

Browse files
committed
Always configure both proxysql schedulers
1 parent c4b5aec commit 4aa1652

File tree

2 files changed

+44
-48
lines changed

2 files changed

+44
-48
lines changed

proxysql/dockerdir/entrypoint.sh

Lines changed: 40 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,23 @@
33
set -o xtrace
44

55
PROXY_CFG=/etc/proxysql/proxysql.cnf
6-
if [ "${SCHEDULER}" == "percona" ]; then
7-
PROXY_SCHEDULER_CFG=/etc/config.toml
8-
temp_proxy_scheduler_cfg=$(mktemp)
9-
else
10-
PROXY_SCHEDULER_CFG=/etc/proxysql-admin.cnf
11-
fi
6+
# Percona scheduler
7+
PERCONA_SCHEDULER_CFG=/etc/config.toml
8+
temp_proxy_scheduler_cfg=$(mktemp)
9+
# proxysql-admin scheduler
10+
PROXY_SCHEDULER_CFG=/etc/proxysql-admin.cnf
1211

1312
if [ -n ${PROXYSQL_SERVICE} ]; then
1413
MYSQL_INTERFACES='0.0.0.0:3306;0.0.0.0:33062'
1514
CLUSTER_PORT='33062'
16-
if [ "${SCHEDULER}" == "percona" ]; then
17-
sed "s/^writerIsAlsoReader.*=.*$/writerIsAlsoReader = 1/" ${PROXY_SCHEDULER_CFG} | \
18-
sed "s/^hgW.*=.*$/hgW = 11/" | \
19-
sed "s/^hgR.*=.*$/hgR = 10/" | \
20-
sed "s/^clustered.*=.*false$/clustered = true/" > ${temp_proxy_scheduler_cfg}
21-
cp ${temp_proxy_scheduler_cfg} ${PROXY_SCHEDULER_CFG}
22-
else
23-
sed "s/#export WRITERS_ARE_READERS=.*$/export WRITERS_ARE_READERS='yes'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
24-
fi
15+
# Percona scheduler
16+
sed "s/^writerIsAlsoReader.*=.*$/writerIsAlsoReader = 1/" ${PERCONA_SCHEDULER_CFG} | \
17+
sed "s/^hgW.*=.*$/hgW = 11/" | \
18+
sed "s/^hgR.*=.*$/hgR = 10/" | \
19+
sed "s/^clustered.*=.*false$/clustered = true/" > ${temp_proxy_scheduler_cfg}
20+
cp ${temp_proxy_scheduler_cfg} ${PERCONA_SCHEDULER_CFG}
21+
# proxysql-admin scheduler
22+
sed "s/#export WRITERS_ARE_READERS=.*$/export WRITERS_ARE_READERS='yes'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
2523
fi
2624

2725
sed "s/interfaces=\"0.0.0.0:3306\"/interfaces=\"${MYSQL_INTERFACES:-0.0.0.0:3306}\"/g" ${PROXY_CFG} 1<> ${PROXY_CFG}
@@ -38,24 +36,23 @@ sed "s/cluster_username=\"admin\"/cluster_username=\"${PROXY_ADMIN_USER:-admin}\
3836
sed "s/cluster_password=\"admin\"/cluster_password=\"${PROXY_ADMIN_PASSWORD:-admin}\"/g" ${PROXY_CFG} 1<> ${PROXY_CFG}
3937
sed "s/monitor_password=\"monitor\"/monitor_password=\"${MONITOR_PASSWORD:-monitor}\"/g" ${PROXY_CFG} 1<> ${PROXY_CFG}
4038

41-
if [ "${SCHEDULER}" == "percona" ]; then
42-
sed "s/^user.*=.*\"$/user = '${PROXY_ADMIN_USER:-admin}'/" ${PROXY_SCHEDULER_CFG} | \
43-
sed "s/^password.*=.*\"$/password = '${PROXY_ADMIN_PASSWORD_ESCAPED:-admin}'/" | \
44-
sed "s/^clusterUserPassword.*=.*\"$/clusterUserPassword='${OPERATOR_PASSWORD_ESCAPED:-operator}'/" | \
45-
sed "s/^clusterUser.*=.*\"$/clusterUser = 'operator'/" | \
46-
sed "s/^clusterPort.*=.*\"$/clusterPort='${CLUSTER_PORT:-3306}'/" | \
47-
sed "s/^monitorUserPassword.*=.*\"$/monitorUserPassword='${MONITOR_PASSWORD_ESCAPED:-monitor}'/" | \
48-
sed "s/^monitorUser.*=.*\"$/monitorUser='monitor'/" > ${temp_proxy_scheduler_cfg}
49-
cp ${temp_proxy_scheduler_cfg} ${PROXY_SCHEDULER_CFG}
50-
else
51-
sed "s/PROXYSQL_USERNAME='admin'/PROXYSQL_USERNAME='${PROXY_ADMIN_USER:-admin}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
52-
sed "s/PROXYSQL_PASSWORD='admin'/PROXYSQL_PASSWORD='${PROXY_ADMIN_PASSWORD_ESCAPED:-admin}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
53-
sed "s/CLUSTER_USERNAME='admin'/CLUSTER_USERNAME='operator'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
54-
sed "s/CLUSTER_PASSWORD='admin'/CLUSTER_PASSWORD='${OPERATOR_PASSWORD_ESCAPED:-operator}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
55-
sed "s/CLUSTER_PORT='3306'/CLUSTER_PORT='${CLUSTER_PORT:-3306}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
56-
sed "s/MONITOR_USERNAME='monitor'/MONITOR_USERNAME='monitor'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
57-
sed "s/MONITOR_PASSWORD='monitor'/MONITOR_PASSWORD='${MONITOR_PASSWORD_ESCAPED:-monitor}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
58-
fi
39+
# Percona scheduler
40+
sed "s/^user.*=.*\"$/user = '${PROXY_ADMIN_USER:-admin}'/" ${PERCONA_SCHEDULER_CFG} | \
41+
sed "s/^password.*=.*\"$/password = '${PROXY_ADMIN_PASSWORD_ESCAPED:-admin}'/" | \
42+
sed "s/^clusterUserPassword.*=.*\"$/clusterUserPassword='${OPERATOR_PASSWORD_ESCAPED:-operator}'/" | \
43+
sed "s/^clusterUser.*=.*\"$/clusterUser = 'operator'/" | \
44+
sed "s/^clusterPort.*=.*\"$/clusterPort='${CLUSTER_PORT:-3306}'/" | \
45+
sed "s/^monitorUserPassword.*=.*\"$/monitorUserPassword='${MONITOR_PASSWORD_ESCAPED:-monitor}'/" | \
46+
sed "s/^monitorUser.*=.*\"$/monitorUser='monitor'/" > ${temp_proxy_scheduler_cfg}
47+
cp ${temp_proxy_scheduler_cfg} ${PERCONA_SCHEDULER_CFG}
48+
# proxysql-admin scheduler
49+
sed "s/PROXYSQL_USERNAME='admin'/PROXYSQL_USERNAME='${PROXY_ADMIN_USER:-admin}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
50+
sed "s/PROXYSQL_PASSWORD='admin'/PROXYSQL_PASSWORD='${PROXY_ADMIN_PASSWORD_ESCAPED:-admin}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
51+
sed "s/CLUSTER_USERNAME='admin'/CLUSTER_USERNAME='operator'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
52+
sed "s/CLUSTER_PASSWORD='admin'/CLUSTER_PASSWORD='${OPERATOR_PASSWORD_ESCAPED:-operator}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
53+
sed "s/CLUSTER_PORT='3306'/CLUSTER_PORT='${CLUSTER_PORT:-3306}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
54+
sed "s/MONITOR_USERNAME='monitor'/MONITOR_USERNAME='monitor'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
55+
sed "s/MONITOR_PASSWORD='monitor'/MONITOR_PASSWORD='${MONITOR_PASSWORD_ESCAPED:-monitor}'/g" ${PROXY_SCHEDULER_CFG} 1<> ${PROXY_SCHEDULER_CFG}
5956

6057
set -o xtrace
6158

@@ -67,18 +64,14 @@ fi
6764
SSL_DIR=${SSL_DIR:-/etc/proxysql/ssl}
6865
if [ -f "${SSL_DIR}/ca.crt" ]; then
6966
CA=${SSL_DIR}/ca.crt
70-
if [ "${SCHEDULER}" == "percona" ]; then
71-
sed "s:^sslCertificatePath.*= .*\"$:sslCertificatePath = \"${SSL_DIR}\":" ${PROXY_SCHEDULER_CFG} > ${temp_proxy_scheduler_cfg}
72-
cp ${temp_proxy_scheduler_cfg} ${PROXY_SCHEDULER_CFG}
73-
fi
67+
sed "s:^sslCertificatePath.*= .*\"$:sslCertificatePath = \"${SSL_DIR}\":" ${PERCONA_SCHEDULER_CFG} > ${temp_proxy_scheduler_cfg}
68+
cp ${temp_proxy_scheduler_cfg} ${PERCONA_SCHEDULER_CFG}
7469
fi
7570
SSL_INTERNAL_DIR=${SSL_INTERNAL_DIR:-/etc/proxysql/ssl-internal}
7671
if [ -f "${SSL_INTERNAL_DIR}/ca.crt" ]; then
7772
CA=${SSL_INTERNAL_DIR}/ca.crt
78-
if [ "${SCHEDULER}" == "percona" ]; then
79-
sed "s:^sslCertificatePath.*= .*\"$:sslCertificatePath = \"${SSL_INTERNAL_DIR}\":" ${PROXY_SCHEDULER_CFG} > ${temp_proxy_scheduler_cfg}
80-
cp ${temp_proxy_scheduler_cfg} ${PROXY_SCHEDULER_CFG}
81-
fi
73+
sed "s:^sslCertificatePath.*= .*\"$:sslCertificatePath = \"${SSL_INTERNAL_DIR}\":" ${PERCONA_SCHEDULER_CFG} > ${temp_proxy_scheduler_cfg}
74+
cp ${temp_proxy_scheduler_cfg} ${PERCONA_SCHEDULER_CFG}
8275
fi
8376

8477
KEY=${SSL_DIR}/tls.key
@@ -94,13 +87,12 @@ if [ -f "$CA" ] && [ -f "$KEY" ] && [ -f "$CERT" ] && [ -n "$PXC_SERVICE" ]; the
9487
sed "s^ssl_p2s_ca=\"\"^ssl_p2s_ca=\"$CA\"^" ${PROXY_CFG} 1<> ${PROXY_CFG}
9588
sed "s^ssl_p2s_key=\"\"^ssl_p2s_key=\"$KEY\"^" ${PROXY_CFG} 1<> ${PROXY_CFG}
9689
sed "s^ssl_p2s_cert=\"\"^ssl_p2s_cert=\"$CERT\"^" ${PROXY_CFG} 1<> ${PROXY_CFG}
97-
if [ "${SCHEDULER}" == "percona" ]; then
98-
sed "s:^sslCa.*=.*\"$:sslCa = \"${CA##*/}\":" ${PROXY_SCHEDULER_CFG} | \
99-
sed "s:^sslKey.*=.*\"$:sslKey = \"${KEY##*/}\":" | \
100-
sed "s:^sslClient.*=.*\"$:sslClient = \"${CERT##*/}\":" > ${temp_proxy_scheduler_cfg}
101-
cp ${temp_proxy_scheduler_cfg} ${PROXY_SCHEDULER_CFG}
102-
rm ${temp_proxy_scheduler_cfg}
103-
fi
90+
# Percona scheduler
91+
sed "s:^sslCa.*=.*\"$:sslCa = \"${CA##*/}\":" ${PERCONA_SCHEDULER_CFG} | \
92+
sed "s:^sslKey.*=.*\"$:sslKey = \"${KEY##*/}\":" | \
93+
sed "s:^sslClient.*=.*\"$:sslClient = \"${CERT##*/}\":" > ${temp_proxy_scheduler_cfg}
94+
cp ${temp_proxy_scheduler_cfg} ${PERCONA_SCHEDULER_CFG}
95+
rm ${temp_proxy_scheduler_cfg}
10496
fi
10597

10698
if [ -f "${SSL_DIR}/tls.key" ] && [ -f "${SSL_DIR}/tls.crt" ]; then

proxysql/dockerdir/usr/bin/add_pxc_nodes.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ function main() {
6868
sed "s/^clusterHost.*=.*\"$/clusterHost=\"$first_host\"/" /etc/config.toml > ${temp} && cp ${temp} /etc/config.toml
6969
rm ${temp}
7070

71+
proxysql-admin --config-file=/etc/proxysql-admin.cnf --disable || true
72+
7173
percona-scheduler-admin \
7274
--config-file=/etc/config.toml \
7375
--write-node="$pod_zero.$service:3306" \
@@ -89,6 +91,8 @@ function main() {
8991
--config-file=/etc/config.toml \
9092
--update-mysql-version
9193
else
94+
percona-scheduler-admin --config-file=/etc/config.toml --disable || true
95+
9296
proxysql-admin \
9397
--config-file=/etc/proxysql-admin.cnf \
9498
--cluster-hostname="$first_host" \

0 commit comments

Comments
 (0)