Как мы можем создать межрегиональную реплику чтения RDS, используя шаблон формирования облака AWS?

Я легко нашел способ создать реплику чтения RDS в том же регионе с помощью облачного формирования AWS, но:
1. Можем ли мы создать то же самое в другом регионе, используя шаблон CF?
2. Также можем ли мы продвинуть его до основного использования шаблона CF?

1 ответ

1) Да, вы можете создать реплику чтения RDS в другом регионе, используя CloudFormation. Создайте шаблон CloudFormation в целевой области (где вы хотите создать реплику для чтения) и укажите исходный экземпляр базы данных arn (который находится в исходной области) в качестве входных данных для SourceDBInstanceIdentifier,

Resources:
  # Create Data DB
  myReplciaDB:
    Type: AWS::RDS::DBInstance
    Properties:
      DBInstanceIdentifier: "read-replica"
      PubliclyAccessible: false
      SourceDBInstanceIdentifier: "arn:aws:rds:us-east-1:XXXXXX:db:source-database"
      StorageType: gp2

Проверьте эту ссылку для получения дополнительной информации.

2) В настоящее время я не думаю, что можно продвигать реплику чтения с использованием облачной информации. Но вы можете добиться этого с помощью лямбда-функции.

  • Создайте лямбда-функцию в целевой области, которая использует promote-read-replica API в SDK на ваш выбор.
  • Создайте тему sns в исходной области и добавьте ее в качестве триггера для лямбда-функции. Не забудьте добавить разрешение на запуск SNS для Lambda с помощью SNSTopicArn.

  • В исходной консоли RDS перейдите к подписке на события и выберите тему sns arn, которую вы создали выше, в качестве целевого arn для получения событий. Под категориями событий выберите deletion, failure для вас исходная база данных.

Другие вопросы по тегам