Как автоматизировать создание новых экземпляров AWS в файле Salt top.sls - PullRequest
0 голосов
/ 05 июля 2019

Я хочу иметь возможность автоматически создавать новые экземпляры EC2-AWS из pillar / top.sls при выполнении высокого состояния.

Вот моя структура столба:

pillar
|
|-Company A
| |-init.sls
|
|-Company B
| |-init.sls
|
|-Company C
| |-init.sls
|
|-top.sls
|

Каждая папка под папкой-столбом соответствует миньону. Таким образом, в вышеупомянутом случае у меня есть 3 миньона («Компания A», «Компания B» и «Компания C»).

Все миньоны настроены правильно при запуске highstate ...

Я установил salt-cloud и успешно создал новые экземпляры AWS, позвонив по номеру:

salt-cloud -p {profile} {new minion name}

Проблема:

Теперь я хотел бы автоматически создавать новые экземпляры AWS при добавлении новой папки (например, «Компания D»).

  1. Расследовать, нужно ли создавать машину
  2. Создание машины с использованием соленого облака
  3. продолжение

pillar/top.sls:
---------------
# 'Company D' has just been added to the list
{% set machines = ['Company A', 'Company B', 'Company C', 'Company D']%}
base:
{% for machine in machines %}
  # The below is pseudo-code that will test if the minion already exists
  {% if not machine.exists %}
    # Create the minion using salt-cloud
    {% salt-cloud -p 'profileX' machine %}
  {% endif %}
  '{{machine}}':
    - {{machine}}
{% endfor %}
...