Files
rsop-k8s/cluster1/configmap-replication-scripts.yaml

48 lines
1.5 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
apiVersion: v1
kind: ConfigMap
metadata:
name: cluster1-replication-scripts
namespace: cluster1
data:
entrypoint-replica.sh: |
#!/bin/sh
set +e # Не останавливаться при ошибках в фоновых процессах
# Запускаем PostgreSQL в фоновом режиме
echo "Запуск PostgreSQL..."
docker-entrypoint.sh postgres &
POSTGRES_PID=$!
# Ждем запуска PostgreSQL
echo "Ожидание запуска PostgreSQL..."
sleep 15
# Проверяем, что PostgreSQL запущен
RETRY_COUNT=0
MAX_RETRIES=30
until PGPASSWORD=postgres123 psql -h localhost -U postgres -c '\q' 2>/dev/null; do
RETRY_COUNT=$((RETRY_COUNT + 1))
if [ $RETRY_COUNT -ge $MAX_RETRIES ]; then
echo "Ошибка: PostgreSQL не запустился за отведенное время"
exit 1
fi
echo "Ожидание PostgreSQL... ($RETRY_COUNT/$MAX_RETRIES)"
sleep 2
done
echo "PostgreSQL запущен!"
# Настраиваем репликацию
echo "Настройка репликации..."
/replication-scripts/setup-replica.sh
# Запускаем периодическую репликацию в фоне
echo "Запуск службы периодической репликации..."
/replication-scripts/replication-cron.sh &
REPLICATION_PID=$!
# Ждем завершения PostgreSQL (главный процесс)
wait $POSTGRES_PID