Публично доступная база данных CDK RDS

Я хочу создать общедоступную базу данных с помощью cdk (dev db). Я знаю, как это сделать через веб-интерфейс. Мне нужно установить для общедоступной доступности значение true и разрешить мой IP-адрес как входящий в группе безопасности.


        const vpc = new ec2.Vpc(this, 'Vpc')

        const postgres = new rds.DatabaseInstance(this, 'Postgres', {
            engine: rds.DatabaseInstanceEngine.POSTGRES,
            instanceClass: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO),
            masterUsername: 'postgres',
            vpc,
        })

это мой текущий статус, он работает нормально, но нет публичного доступа


person Jonny Rimek    schedule 28.04.2020    source источник
comment
Отвечает ли это на ваш вопрос? в aws -rds на aws-cdk, где можно сделать базу данных общедоступной?   -  person Amit Baranes    schedule 28.04.2020
comment
отчасти да, мне просто нужно разобраться с проблемой группы безопасности. добавление порта 5432 с любого ip   -  person Jonny Rimek    schedule 28.04.2020
comment
похоже, postgres.connections.allowFromAnyIpv4 (ec2.Port.tcp (5432)) делает свое дело. Я отправлю полное решение, как только закончу   -  person Jonny Rimek    schedule 28.04.2020
comment
Рад, что вы решили свою проблему :)   -  person Amit Baranes    schedule 28.04.2020
comment
Спасибо за вашу помощь   -  person Jonny Rimek    schedule 28.04.2020


Ответы (1)


        const vpc = new ec2.Vpc(this, 'Vpc')

        const postgres = new rds.DatabaseInstance(this, 'Postgres', {
            engine: rds.DatabaseInstanceEngine.POSTGRES,
            instanceClass: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO),
            masterUsername: 'postgres',
            vpc,
            vpcPlacement: { subnetType: ec2.SubnetType.PUBLIC }
        })

        postgres.connections.allowFromAnyIpv4(ec2.Port.tcp(5432))

vpcPlacement: { subnetType: ec2.SubnetType.PUBLIC } устанавливает для общего доступа значение true postgres.connections.allowFromAnyIpv4(ec2.Port.tcp(5432)) разрешает входящий трафик с порта 5432

person Jonny Rimek    schedule 28.04.2020
comment
или даже проще: postgres.connections.allowDefaultPortFromAnyIpv4 () - person Logemann; 08.05.2020