Статическая конечная точка базы данных RDS - PullRequest
0 голосов
/ 11 декабря 2019

Я создал стек при формировании облака, который отвечает за создание стека приложений, включая бэкэнд, экземпляры веб-интерфейса, балансировщик нагрузки, подсети, базу данных RDS и т. Д. Во время создания бэкэнд-экземпляра я определил некоторые команды для запуска своего приложения, например. получить репозиторий от Github, распаковать его и запустить приложение Scala. Проблема в том, что Scala требуются некоторые переменные среды (например, конечная точка кластера базы данных), которых у меня нет при создании серверного приложения, потому что база данных еще не создана.

Я пытался использовать передачу DependsOn в качестве аргумента Ресурс базы данных, но он не работает, он говорит, что это поле не может быть пустым - это означает, что поле

"OutDBIClusterHostname": {
  "Description": "Hostname of the RDS-Cluster (Database) in Region I",
  "Value": { "Fn::GetAtt": [ "ResRootStackDatabaseI", "Outputs.OutDBIClusterHostname"] }
},

пусто.

Как вы думаете, существует ли что-то вроде "статического URL-адреса конечной точки?"Это может быть очень легко, перед созданием стека я мог бы ввести статическую конечную точку в Cloud Formation, и бэкэнд узнал бы о хосте базы данных RDS. есть предложения как с этим бороться?

Ответы [ 2 ]

0 голосов
/ 11 декабря 2019

Вы можете попытаться создать запись CNAME в Route53 и связать ее с вашей БД, как только она будет создана. Поскольку вы знаете «статический» DNS, вы можете передать его в свое приложение Scala.

0 голосов
/ 11 декабря 2019

Конечная точка RDS должна иметь этот формат.

CLUSTER_INDENTITY.cluster-xxxxxxxxxx.REGION_CODE.rds.amazonaws.com

xxxxxxxxxx = фиксированные шестнадцатеричные символы для каждой учетной записи. (То же самое для всех конечных точек RDS в вашей учетной записи / не может измениться)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...