Я пытаюсь настроить автоматизацию для школьного проекта. Суть этого:
- Установите экземпляр EC2 через CloudFormation. затем
- Используйте
cfn-init
для
- Установка очень простой конфигурации Ansible
- Скачать сборник пьес Ansible с S3
- Запустите указанную книгу воспроизведения, чтобы установить кластер Redshift через CloudFormation
- Установите необходимые пакеты
- Установите некоторые необходимые модули Python
- Загрузите скрипт Python, который будет
- Подключение к базе данных Redshift
- Создать таблицу
- Используйте команду
COPY
для импорта данных в таблицу
Все это работает до момента выполнения скрипта. Это позволяет работать вручную, но это потому, что я могу скопировать созданную конечную точку Redshift в сценарий для подключения к базе данных. У меня проблема в том, что я не знаю, как извлечь это выходное значение из CloudFormation, чтобы его можно было вставить в сценарий для полностью автоматизированного (за исключением первоначального развертывания EC2) решения.
Я вижу, что у Ansible есть по крайней мере один способ сделать это (например, cloudformation_facts
), но я немного запутался, как его реализовать. Я посмотрел на примеры, но это не стало более понятным. Без контекста я потерян, и пока все, что я видел, это отдельные фрагменты.