Как использовать клиент локальной базы данных с облачной базой данных, если доступ осуществляется только через бастионную капсулу
У меня есть база данных MySql RDS, которая не публикуется. У меня также есть капсула, которая может выступать в роли бастиона с
kubectl exec
. Как я могу подключить мою локальную MySql Workbench к этой базе данных RDS?
1 ответ
Вы можете подключиться к своей БД с локального компьютера с помощью команды kubectl port-forward. Если у вас еще нет запущенного модуля в кластере, вы можете создать его с помощью команды:
kubectl run ${NAME} --image=alpine/socat -it --tty --rm --expose=true --port=${DB_PORT} tcp-listen:${DB_PORT},fork,reuseaddr tcp-connect:${DB_ENDPOINT}:${DB_PORT}
Как только модуль запущен и запущен, используйте команду:
kubectl port-forward service/<NAME> ${DB_PORT}:${DB_PORT}
В MySql Workbench замените DB_URL на localhost, и соединение должно быть перенаправлено с вашего компьютера в базу данных, а модуль будет действовать как бастион.