У меня есть база данных RDS (Postgresql) в частной подсети. Я хочу запросить эту базу данных с помощью программы Python Это возможно ? У меня есть бастион с SSM, и я могу легко подключиться к бастиону без каких-либо ключей, а затем подключиться к БД. Есть ли способ переадресации портов в программе python?
БЛАГОДАРНОСТЬ





Я следил за этой статьей -
https://aws.amazon.com/blogs/aws/new-port-forwarding-using-aws-system-manager-sessions-manager/
Я могу начать сеанс с моим ec2, но сеанс ожидает подключения -
aws ssm start-session --target $INSTANCE_ID \
--document-name AWS-StartPortForwardingSession \
--parameters '{"portNumber":["80"],"localPortNumber":["9999"]}'
Starting session with SessionId: <cccccc-12cdddd>
Port 9999 opened for sessionId <fffdggdgggg>
Waiting for connections...
Как мне теперь запустить, запуск другого терминала не помогает
psql -h <> .....
На самом деле это очень просто, если воспользоваться статьей - https://aws.amazon.com/blogs/aws/new-port-forwarding-using-aws-system-manager-sessions-manager/
просто беги,
aws ssm start-session --target $INSTANCE_ID
это создаст соединение с ec2. После этого вы можете запустить любую программу на Python с помощью psycopg2.
import psycopg2
connection = psycopg2.connect(user = "joe",
password = "joe",
host = "######",
port = "5432",
database = "stackdb")
Просто ставлю сюда, может кому поможет