建议参考:

http://www.cnblogs.com/jackchen001/p/6514018.html

这个代码清晰,效果佳!

参考链接:

http://www.cnblogs.com/caoguo/p/5351127.html

备注下,其实 不需要执行 rsync_key2.yml

执行ansible前会遇到 ssh首次连接时,提示 是否continue,需要输入yes,这个问题,得需要个解决办法

1. 首先确认要远程打通ssh无秘钥的用户,是否有生成相应的key

比如 test用户,ls /home/test/.ssh/

是否有这些文件

authorized_keys  id_rsa  id_rsa.pub  known_hosts

如果没有的话,执行: ssh-keygen,然后一路回车即可(前提是在 test用户下操作)

2. 准备 ansible执行所需要的 hosts文件,文件内容主要是 [test] 组标记, ips 要远程操作的服务器ip 每个ip是一行,ip后面跟上 指定的 ssh信息:ansible_ssh_user=test ansible_ssh_pass=test ansible_ssh_port=22

test 文件内容如下:

[test]
0.0.0.1 ansible_ssh_user=test ansible_ssh_pass=test ansible_ssh_port=22
0.0.0.2 ansible_ssh_user=test ansible_ssh_pass=test ansible_ssh_port=22

3. 准备playbook文件 ,yml结尾

3.1. 拷贝ssh :

rsync_key.yml

文件内容如下:

- hosts: test
  remote_user: test
  tasks:
  - name: copy ssh key
    authorized_key:
      user: test
      key: "{{ lookup('file', '/home/test/.ssh/id_rsa.pub') }}"

3.2.  传送key到远程服务器:

rsync_key2.yml

文件内容如下:

- hosts: test
  remote_user: test
  tasks:
  - name: mkdir /home/test/.ssh
    command: mdkir -p /home/test/.ssh
  - name: copy ssh key
    copy: src=/home/test/.ssh/id_rsa.pub dest=/home/test/.ssh owner=test group=test mode=0644

3.3. 执行 playbook

-i test ,是指  指定 ansible playbook 需要执行远程服务器, test 相对于 默认的hosts文件

ansible-playbook  -i test rsync_key.yml

ansible-playbook  -i test rsync_key2.yml (不需要执行了,第一个足矣)

添加 hadoop用户

useradd.yml

---
- hosts: hadoop_devops_hosts
  remote_user: test
  sudo: yes
  vars:
    user: hadoop
 
  tasks:
    - name: add user
      action: user name={{ user }}  home=/home/{{ user }}
  tags:
    - user

执行完后,查看下

ansible -i ./hosts hadoop_hosts -m shell -a "id hadoop"

接下来准备 远程生成hadoop key

并在 各服务器上,让 hadoop来去自如

ansible-playbook 打通ssh无秘钥的更多相关文章

  1. ssh无秘钥登录

    服务器1:172.16.20.136 服务器2:172.16.20.134 在服务器2上输入:ssh-keygen -t rsa           (一路回车) scp /root/.ssh/id_ ...

  2. 配置SSH无秘钥登录

    [hadoop@hadoop01 ~]$ cd .ssh [hadoop@hadoop01 .ssh]$ ls authorized_keys id_rsa id_rsa.pub known_host ...

  3. ssh 无秘钥登录

    三台centos 一台服务器192.168.2.152 一台客户端192.168.2.142 一台客户端192.168.2.151 (1)产生无密钥 [root@localhost ~]#  ssh- ...

  4. Hadoop.2.x_无秘钥设置

    1.在实际生产环境中为Hadoop配置无秘钥登录非常有必要 # 在没有配置时: [liuwl@linux-66-64 hadoop-2.5.0]$ jps 26163 Jps [liuwl@linux ...

  5. ssh分发秘钥时出现错误“Permission denied (publickey,gssapi-keyex,gssapi-with-mic)”

    因为公司的服务器连接是通过xshell公钥和密码连接的,今天在ssh分发秘钥的时候出现了,下面的错误: [root@iZ2ze97cumk8opqm28h8Z .ssh]# ssh-copy-id - ...

  6. ansible主机组配置及秘钥分发

    ansible主机组配置及秘钥分发 ansible主机组文件位于/etc/ansible/hosts文件中 1 hosts主机经常使用到的变量为: 2 ansible_ssh_host #用于指定被管 ...

  7. Linux SSH 免秘钥登录

    SSH 免秘钥登录 ssh:是一种安全加密协议 ssh  username@hostname     ssh gongziyuan.com:以当前用户登录该机器(如果不是当前用户,需要这么干:ssh ...

  8. linux下ssh免秘钥登录

    1.检查防火墙是否关闭 (1)切换到root用户 (2)查看防火墙状态 service iptables status 这是没有关闭 (3)设置关闭 service iptables stop 2.检 ...

  9. ssh 多秘钥管理和坑

    概述 很久之前就想研究一下 ssh 的多秘钥管理,今天正好有时间就研究了一下,挺简单的,记录下来,供以后开发时参考,相信对其他人也有用. 参考资料: Git - 生成 SSH公钥 , Linux 下多 ...

随机推荐

  1. nfs详解及实现全网备份

    1.统一hosts cat /etc/hosts 172.16.1.5 lb01 172.16.1.6 lb02 172.16.1.7 web02 172.16.1.8 web01 172.16.1. ...

  2. Java过滤HTML标签工具类

    过滤HTML标签能有效的放置XSS攻击. 封装: import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springf ...

  3. 一个能让你了解所有函数调用顺序的Android库

    http://mobile.51cto.com/android-536059.htm 原理 本库其实并没有什么黑科技,本库也没有java代码,核心就是2个build.gradle中的task.首先,原 ...

  4. Android 你应该注意的开发规范

    本文由Blankj投稿. Blankjd的博客地址: http://www.jianshu.com/u/46702d5c6978 为了利于项目维护以及规范开发,促进成员之间Code Review的效率 ...

  5. Spring核心(ioc控制反转)

     IoC,Inversion Of Control 即控制反转,由容器来管理业务对象之间的依赖关系,而非传统方式中的由代码来管理. 其本质.即将控制权由应用程序代码转到了外部容器,控制权的转移就是 ...

  6. 判断用户Input输入的事件来进行登陆

    我们是通过键盘按的object.keyCode获取的 Html <input onkeydown="keydownMsg(event)" type="text&qu ...

  7. JS推断浏览器类型与版本号

    在JS中推断浏览器的类型,预计是每一个编辑过页面的开发者都遇到过的问题.在众多的浏览器产品中.IE.Firefox.Opera.Safari........众多品牌却标准不一,因此时常须要依据不同的浏 ...

  8. odoo 有哪些文档资源

    // openbook [覆盖 openerp 7 及之前版本] https://doc.odoo.com/     // 最新的 odoo documentation user[覆盖 odoo 9] ...

  9. Ubuntu下安装libsvm

    在安装LibSVM前需要先装 python 和 gnuplot linux 一般都自带了python2.7,所以python的安装不再赘述 在 ubuntu 下安装 gnuplot 不能直接 sudo ...

  10. 递归计算战士打靶S次打了N环一共同拥有多少种可能的问题

    问题描写叙述 一个战士打了10次靶.一共打了90环,问一共同拥有多少种可能,并输出这些可能的组合. 思路 首先.嵌套10层循环进行穷举是不可取的,一是由于速度太慢,二是假设改成打20次靶就完蛋了. 事 ...