Как пользователь с аутентификацией ключей SSH может иметь полномочия sudo в Ansible? [Дубликат]

На этот вопрос уже есть ответ:

Неправильный пароль sudo в Ansible 4 ответаAnsible: sudo без пароля 2 ответа

Я создаю виртуальную машину в лазурном облаке с помощью следующего скрипта:

---

- name: azure playbook
  hosts: localhost
  vars_files: ['vars.yaml']
  tasks:
  - name: Create VM with defaults
    azure_rm_virtualmachine:
      resource_group: "{{account_prefix}}_rg"
      vm_size: Standard_D1
      name: "{{account_prefix}}-vm1"
      storage_account_name: "{{account_prefix}}store1"
      network_interface_names: "{{account_prefix}}vm1eth0"
      ssh_password_enabled: false
      admin_username: owen
      ssh_public_keys:
      - {  path: /home/owen/.ssh/authorized_keys,
        key_data: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDH0q4pmdkJcc/JPVJui5uWMV12GsJAsDCosfUSSFZfTIx92bb9FC3hx1zU7tD1+Zw3aQW13m6ZS2T ... YnvieSbdD3v}
      image:
        offer: CentOS
        publisher: OpenLogic
        sku: '7.2'
        version: latest

но при запуске другого скрипта для добавления другого пользователя:

---

- name: create user
  hosts: my-vm1.westeurope.cloudapp.azure.com
#  vars_files: ['vars.yaml']
  remote_user: owen
  tasks:
  - name: Create User
    user:
      name: andrea
      password: $6$rounds=656000$1AspdTb0lfOSc5yM$bAkPgHkuHwap/j6f0P88WxOdjxq3MCRO7/qgufYB.s/4t4k99wwtu/.../
      group: users
      shell: /bin/bash
    become: true

Я получаю сообщение об ошибке "sudo: требуется пароль":

PLAY [create user] *************************************************************

TASK [setup] *******************************************************************
fatal: [my-vm1.westeurope.cloudapp.azure.com]: FAILED! => {"changed": false, "failed": true, "module_stderr": "", "module_stdout": "sudo: a password is required\r\n", "msg": "MODULE FAILURE", "parsed": false}

NO MORE HOSTS LEFT *************************************************************
        to retry, use: --limit @8-add-admin-user-to-vm-with-userpswd-already.retry

Мой инвентарь выглядит так:

my-vm1.westeurope.cloudapp.azure.com ansible_ssh_private_key_file=/home/myuser/.ssh/id_rsa ansible_user=owen ansible_become=true

Так как пользователь может иметь права sudo и использовать ANSIBLE «становиться» и тому подобное?

Обратите внимание, что тот же результат происходит, когда ansible_user и ansible_become не включены в файл инвентаризации.

EDIT: Если я подключусь к виртуальной машине ssh как owen (из коробки с закрытым ключом ssh, который создал виртуальную машину), я смогу запустить sudo visudo -f / etc / sudoers и получить доступ к этому файлу. Так есть ли у Оуэна привилегии sudo или нет? Я сейчас запутался !! Я неправильно понимаю ошибку из сценария ANSIBLE A

EDIT2: я думаю, что этот вопрос недействителен - поскольку у пользователя есть привилегии sudo, добавленные вручную через портал. Я все еще не уверен, что происходит, но я не думаю, что этот вопрос является последовательным - или действительно представляет реальную проблему, которую я пытаюсь решить.

Ответы на вопрос(1)

Ваш ответ на вопрос