изменить размер типа ec2 с ansible - PullRequest
0 голосов
/ 05 сентября 2018

Я хочу изменить размер типа ec2 из ansible.

Это мой код:

- name: resize the instance
  ec2: 
    aws_access_key: "{{ aws_access_key_var }}"
    aws_secret_key: "{{ aws_secret_key_var }}"
    region: "{{ region }}"
    instance_ids:
      - "{{ instance_id }}"
    instance_type: "{\"Value\": \"t2.small\"}"
    wait: True
  register: ec2_result_file

Но я получаю эту ошибку:

fatal: [localhost]: FAILED! => {"changed": false, "msg": "image parameter is required for new instance"}

Я пытаюсь с командной строкой все хорошо

aws  ec2 modify-instance-attribute --region reg  --instance-id i-xx  --instance-type "{\"Value\": \"t2.small\"}

С уважением,

1 Ответ

0 голосов
/ 05 сентября 2018

Как прийти к решению:

  1. Ansible сообщает, что хочет создать «новый экземпляр», но вы уже указали существующий идентификатор экземпляра.

  2. Перейдите в документы для модуля ec2 и проверьте аргумент, в котором вы указали идентификатор текущего экземпляра:

    instance_ids список идентификаторов экземпляров, используемых в настоящее время для состояний: absent, running, stopped

  3. Проверьте, что state вы указали - вы этого не сделали, поэтому это значение по умолчанию.

  4. Проверьте те же документы, что и по умолчанию для аргумента state: это present.

    present не указан в описании instance_ids, поэтому instance_ids полностью игнорируется.

Ansible думает, что вы действительно хотите создать новый экземпляр.


Решение:

Добавьте state: running к аргументам модуля ec2.

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