gpt4 book ai didi

ansible - 为用户建立 SSH 连接 : None when specify a single host on the command line

转载 作者:行者123 更新时间:2023-12-02 16:04:18 31 4
gpt4 key购买 nike

在命令行上指定单个主机时如何设置 ssh 或 ansible_user?

当我如下指定单个主机时:

$ansible-playbook -i "ceph1," jdk.yml
TASK [hadoop : create hadoop group] ********************************************
task path: /playbooks/yarn/roles/hadoop/tasks/install.yml:2
<ceph1> ESTABLISH SSH CONNECTION FOR USER: None

ssh 连接用户和 {{ansible_user}} 都没有,但我已经在 ssh/config 中定义了它

$cat jdk.yml
- hosts: all
vars_files:
- default.yml
roles:
- role: jdk

$cat role/jdk/tasks/main.yml

- name: set java home
lineinfile: dest=/home/{{ ansible_ssh_user }}/.bashrc
line={{ item }}
with_items:
- export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

$cat hosts
ceph1 ansible_user=ubuntu

$cat ~/.ssh/config
Host ceph1
User ubuntu

当然运行下面的就可以了

$ansible-playbook  jdk.yml

最佳答案

您可以传递-e参数:

# ansible -m ping web1 -i inventory/a2  -vvv -e "ansible_user=ceph"
<a2-web1> ESTABLISH SSH CONNECTION FOR USER: ceph

关于ansible - 为用户建立 SSH 连接 : None when specify a single host on the command line,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35024576/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com