Ansible'daki tüm ana bilgisayarlar için varsayılan ssh kullanıcısı nasıl ayarlanır?


11

Ansible 2.1 sürümü

Bir envanter dosyam var hosts

[nodes]
host1
host2
...

Ve basit bir oyun kitabı site.yml

---
- hosts: all
  tasks:
    - include: tasks/main.yml

Oyuna yeni başlasam,

ansible-playbook -i hosts site.yml -vvvv

Bu hatayı tüm ana bilgisayarlar için alıyorum,

ESTABLISH SSH CONNECTION FOR USER: None
fatal: [host1]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh.", "unreachable": true}
...

Ancak, okuma yanıtlayıcı 'Envanter doc, diye ekledim ansible_useriçin hosts, dosyanın

[nodes]
host1    ansible_user=root
host2    ansible_user=root
...

Bu SSH CONNECTION UNREACHABLEhatayı çözer . Ancak, ansible_user=roottüm ana bilgisayarların yanına eklemek zorunda mıyım ? Yoksa bunu yapmanın daha basit bir yolu var mı?

Yanıtlar:


11

Örnek / varsayılan ansible.cfgdosyayı kontrol edin, bunu altında bulabilirsiniz [defaults]:

# default user to use for playbooks if user is not specified
# (/usr/bin/ansible will use current user as default)
#remote_user = root

Uncomment remote_userve siz oturum istediklerini kullanıcıyı ayarlayın.

Ansible nereden geliyor ansible.cfg? Aynı dosya şunları açıklıyor:

# nearly all parameters can be overridden in ansible-playbook 
# or with command line flags. ansible will read ANSIBLE_CONFIG,
# ansible.cfg in the current working directory, .ansible.cfg in
# the home directory or /etc/ansible/ansible.cfg, whichever it
# finds first

Teşekkür @Deltik, cevap mümkün olacaktır bu bir sıra?
Howard Lee

@HowardLee: Diğer sorunuz öncelikle görüş temelli ve Süper Kullanıcı için uygun değil.
Deltik

4

Başka bir yol, --useruzak ssh kullanıcısını tanımlamak için kullanmaktır . Tip ansible-playbook --helpfazla okumak için. Bu benim tipik komutum:

ansible-playbook -i hosts site.yml --user <user> --ask-pass -vvvv

--ask-pass için şifre girmeniz istenir --user


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.