Search code examples
ansibleansible-2.xansible-inventoryansible-facts

Ansible playbook only working with root user and failing when running with other sudo user


I had a working playbook in my test environment, where my user was root user itslef and didnt have any issue. When i moved my playbook to staging environment , there my login user account is "admin" which is sudo user. But all of my playbooks are failing in this environment.

---

- name: Replace the silent-install-server_ file to each Application Servers
  hosts: localhost,CCM,RM
  vars: 
    jts_file: /etc/ansible/roles/IBM2/files/silent-install-server_JTS.xml
    ccm_file: /etc/ansible/roles/IBM2/files/silent-install-server_CCM.xml
    rm_file: /etc/ansible/roles/IBM2/files/silent-install-server_RM.xml
    dest_dir: /opt/CLM-Web-Installer-Linux-6.0.5/im/linux.gtk.x86_64
  tasks:
    - name: check the folder existance
      stat: path=/opt/CLM-Web-Installer-Linux-6.0.5/im/linux.gtk.x86_64
      register: folder_exist

    - name: JTS Server
      copy:
        src: "{{ jts_file }}"
        dest: "{{ dest_dir }}/"
        mode: 777
        backup: yes
      delegate_to: localhost
      when: folder_exist.stat.exists == True

    - name: CCM Server
      copy:
        src: "{{ ccm_file }}"
        dest: "{{ dest_dir }}/"
        mode: 777
        backup: yes
      delegate_to: 10.16.24.102`enter code here`
      when: folder_exist.stat.exists == True

    - name: RM Server
      copy:
        src: "{{ rm_file }}"
        dest: "{{ dest_dir }}/"
        mode: 777
        backup: yes
      delegate_to: 10.16.24.103
      when: folder_exist.stat.exists == True

getting below error.

PLAY [Replace the silent-install-server_ file to each Application Servers] **********************************************************************************

TASK [Gathering Facts] **************************************************************************************************************************************
ok: [localhost]
fatal: [10.16.24.102]: FAILED! => {"msg": "Timeout (12s) waiting for privilege escalation prompt: "}
fatal: [10.165.240.103]: FAILED! => {"msg": "Timeout (12s) waiting for privilege escalation prompt: "}

TASK [check the folder existance] ***************************************************************************************************************************
ok: [localhost]

TASK [JTS Server] *******************************************************************************************************************************************
ok: [localhost -> localhost]

TASK [CCM Server] *******************************************************************************************************************************************
fatal: [localhost]: FAILED! => {"msg": "Failed to get information on remote file (/opt/CLM-Web-Installer-Linux-6.0.5/im/linux.gtk.x86_64/silent-install-server_CCM.xml): Shared connection to 10.16.24.102 closed.\r\n"}
        to retry, use: --limit @/etc/ansible/roles/IBM2/tasks/best/silentiInstallerfile.retry

PLAY RECAP **************************************************************************************************************************************************
10.16.24.102             : ok=0    changed=0    unreachable=0    failed=1
10.16.24.103             : ok=0    changed=0    unreachable=0    failed=1
localhost                  : ok=3    changed=0    unreachable=0    failed=1

my hostfile is as below

[IHS]
10.16.24.100
[JTS]
10.16.24.101
[CCM]
10.16.24.102
[RM]
10.16.24.103

Solution

  • I will suggest making for admin@10.16.24.102 and admin@10.165.240.103 sudo access without password:

    You can add to /etc/sudoers file:

    admin ALL=(ALL:ALL) NOPASSWD:ALL