zoukankan      html  css  js  c++  java
  • ansible实现批量建立互信

    Ansible:自动化运维工具

    为什么要建立互信:ansible批量配置管理的前提是管理机和被管理机ssh互信,即通过将管理主机的公钥(id_rsa.pub)添加到目标主机上,实现管理机不通过交互式输入密码就可以登录目标主机。

    建立互信

    1、生成秘钥对

    $ ssh-keygen -t rsa

    一路回车即可

    2、建立互信:

    格式: ssh-copy-id -i ~/.ssh/id_rsa.pub username@[ip,hostname]  //[]内为目标主机的信息

    $ ssh-copy-id -i ~/.ssh/id_rsa.pub username@192.168.1.2

    根据提示完成操作即完成了互信。

    批量建立互信

    通过上面方法建立少量的互信操作起来还OK,但是如果目标主机数量多的情况下再手动的执行就太慢了,所以这里采用ansible的authoried_keys 模块进行批量建立互信

    参考:http://docs.ansible.com/authorized_key_module.html

    1、配置hosts文件(ansible的目标主机定义文件)

    $ cat /etc/ansible/hosts
    
    [test]
    192.168.12.5[1:4]       #表示192.168.12.51-192.168.12.54
    192.168.12.5[6:9]
    192.168.13.101
    192.168.13.103

    2、建立playbook(称为剧本,ansible按它中的配置批量执行命令)

    $ cat pushssh.yaml
    --- - hosts: test #test对呀hosts文件中的主机组名称 # 互信用户 user: abm tasks: - name: ssh-copy authorized_key: user=hoxis key="{{ lookup('file', '/home/abm/.ssh/id_rsa.pub') }}"

    3、执行

    $ ansible-playbook pushssh.yaml

    4、测试

    命令:ansible test -m ping

    返回绿色SUCCESS,代表互信成功可以批量执行ansible命令了。

  • 相关阅读:
    uva 11294 Wedding
    uvalive 4452 The Ministers’ Major Mess
    uvalive 3211 Now Or Later
    uvalive 3713 Astronauts
    uvalive 4288 Cat Vs. Dog
    uvalive 3276 The Great Wall Game
    uva 1411 Ants
    uva 11383 Golden Tiger Claw
    uva 11419 SAM I AM
    uvalive 3415 Guardian Of Decency
  • 原文地址:https://www.cnblogs.com/-abm/p/11224902.html
Copyright © 2011-2022 走看看