相关疑难解决方法(0)

为什么 Ansible 会忽略我的“sudo: False”?

我打算使用ansible来部署远程文件,因为远程位置只能用'root'写入,而不能用'root'下载本地文件,我使用以下剧本:

# in the main playbook

- hosts: master
  user: ec2-user
  sudo: yes
Run Code Online (Sandbox Code Playgroud)
# in role definition

# download only in the ansible master node
- local_action: get_url url={{ hadoop_mirrors|random }}/hadoop-{{ hadoop_version }}/hadoop-{{ hadoop_version }}.tar.gz dest=/opt/hadoop-{{ hadoop_version }}.tar.gz force=no
  sudo: False
  register: result
  until: result|success
  retries: 5
  delay: 2
  when: hadoop_type_of_node == 'master'
Run Code Online (Sandbox Code Playgroud)

但是 Ansible 似乎无法阅读该行sudo: False。当我运行这个剧本时,我仍然遇到这个错误:

TASK [ansible-role-hadoop : get_url] **************************************************************************************************
FAILED - RETRYING: ansible-role-hadoop : get_url (5 retries left).
FAILED - RETRYING: ansible-role-hadoop : get_url (4 …
Run Code Online (Sandbox Code Playgroud)

ansible ansible-2.x

1
推荐指数
1
解决办法
3803
查看次数

具有SSH密钥身份验证的用户如何在Ansible中具有sudo权限?

我使用以下ansible脚本在azure云中创建一个vm:

---

- 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
Run Code Online (Sandbox Code Playgroud)

但是在运行其他脚本以添加其他用户时:

---

- 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 …
Run Code Online (Sandbox Code Playgroud)

ansible

0
推荐指数
1
解决办法
1863
查看次数

标签 统计

ansible ×2

ansible-2.x ×1