8)
столкнулся с проблемой авторизации ансибла на целевых серваках.
имеется такая таска:
tasks:
- name: install vim
yum: name=vim state=present
become: yes
become_method: sudo
become_user: user
получаю такую ошибку:
fatal: [kube1.home]: FAILED! => {"changed": false, "msg": "This command has to be run under the root user.", "results": []}
fatal: [kube2.home]: FAILED! => {"changed": false, "msg": "This command has to be run under the root user.", "results": []}
На обоих серваках пользователь user входит в группу wheel.
на первом серваке прописано даже в sudoers: (что никак не влияет на ошибку)
user ALL=(ALL) NOPASSWD: ALL
пускать ансибл под рутом очень не хочется.
подскажите, есть ли способ заставить ансибл всё таки использовать пользователя user?
а у тебя наоборот в ansible.cfg для become не root указан?
На самом клиенте из под пользователя yam install работает?
там все закомментировано [privilege_escalation] #become=True #become_method=sudo #become_user=root #become_ask_pass=False
нет. он требует повышения прав а вот sudo yum install работает: [user@kube1 ~]$ yum install vim Error: This command has to be run under the root user. [user@kube1 ~]$ sudo yum install vim Last metadata expiration check: 1:01:08 ago on Sun 18 Oct 2020 03:06:05 PM EDT. Package vim-enhanced-2:8.0.1763-13.el8.x86_64 is already installed. Dependencies resolved. Nothing to do. Complete!
Так вам нужно не become_user: user, а просто ansible_user: user для этой таски сделать
не, такая конструкция не работает. ругается на синтаксис: ERROR! conflicting action statements: yum, ansible_user The error appears to be in '/home/user/k8s-ansible/playbook/playbook.yml': line 3, column 7, but may be elsewhere in the file depending on the exact syntax problem. The offending line appears to be: tasks: - name: install vim ^ here
Обсуждают сегодня