使用公私钥实现ssh无密码登录

  1. 生成公钥和私钥

    ssh-keygen -t rsa

    公钥相当于锁id_rsa.pub,私钥相当于钥匙id_rsa

  2. 借用ssh-copy-id工具实现无密码登录

    ssh-copy-id -i /root/.ssh/id_rsa.pub 39.105.47.177 #公钥上传到服务器

    ssh -i /root/.ssh/id_rsa 39.105.47.177 #使用对应的私钥登录服务器

Ansible配置

Ansible的默认配置文件路径是在/etc/ansible/hosts

  1. 创建Ansible配置文件

    [root@vagrant2 local]# mkdir /etc/ansible/
    [root@vagrant2 local]# touch hosts
  2. 配置Ansible配置文件

    [test]
    vm_01 ansible_ssh_port=22 ansible_ssh_host=127.0.0.1 ansible_ssh_pass='vagrant'
    vm_02 ansible_ssh_port=10022 ansible_ssh_host=39.105.47.177 ansible_ssh_pass='sxsds231AA'

    [test]代表test主机组,vm_01,vm_02代表主机,属于test主机组。其余为主机IP,端口以及密码

    如果机器免密码都做好的话,配置文件可以省略密码配置。

  3. 使用ping模块查看在主机是否连接正常,ping模块不需要 -a 指定参数

    ansible test -m ping # test 为指定主机组,可用all参数代替,指定所有主机组主机, -m为指定ping模块

    用密码操作的话必须安装”sshpass“工具,yum装一下yum install -y sshpass,然后再来操作一下。

    这个大概意思说需要把主机的指纹添加到known_hosts里,命令行ssh 这个主机输入yes,将主机的指纹添加到known_hosts里。

    然后再用ansible test -m ping 查看主机是否连接正常。

    测试的两台主机均已联通,代表我们现在可以批量管理这两台服务器了。

    Ansible命令模块

    ansible的三个命令模块:command、shell、raw,这三个模块的参数就直接输入命令即可。

    1. ansible模块command(不支持管道,不建议使用)

      ansible [指定主机or主机组or全部主机] -m command -a 'shell命令'

      输出两台主机的磁盘空间情况

      ansible的command模块不支持管道,使用就会报错

    2. ansible模块shell(支持管道)

      ansible [指定主机or主机组or全部主机] -m shell -a 'shell命令'

    3. ansible模块raw,最原始ssh的方式运行命令

      ansible [指定主机or主机组or全部主机] -m raw -a 'shell命令'

      raw指定主机安装yum

Ansible配置及使用的更多相关文章

  1. Ansible配置详解

    目录 Ansible配置详解 参考 配置优先级 配置参数说明 Ansible配置详解

  2. ansible 配置运行环境

    P34 2.3.1 配置ansible的环境 ansible的配置文件是以ini格式存储配置数据的,在ansible中几乎所有的配置都可以通过playbook或者环境变量来重新赋值 运行ansible ...

  3. 二、ansible配置简要介绍

    [defaults] # some basic default values… hostfile = /etc/ansible/hosts \\指定默认hosts配置的位置 # library_pat ...

  4. 第三篇: Ansible 配置节点认证

    应用场景:          有如下4台主机:               cpy01.dev.xjh.com              cpy02.dev.xjh.com              ...

  5. ansible配置mysql主从复制

    配置主机1.下载安装所需安装包 [root@server1 ansible]# lsansible-2.7.8-1.el7.noarch.rpmansible-tower-setup-bundle-3 ...

  6. Ansible配置批量推送公钥到被管理端

    01.yum安装ansible(推荐) sudo yum install ansible 02.配置被管理端主机IP清单 [root@ansible_50 ansible]$ cp /etc/ansi ...

  7. Ansible配置执行远程主机的ssh端口号

    在线上的环境中,服务端的ssh会有进行变更的情况 例如:有些服务器的ssh端口号是 34567 等情况,那么该如何配置呢? 编辑 /etc/ansible/hosts [servers] 配置完毕后, ...

  8. 003.Ansible配置文件管理

    一 配置文件的优先级 ansible的配置文件名为ansible.cfg,它一般会存在于四个地方: ANSIBLE_CONFIG:首先,Ansible命令会检查该环境变量,及这个环境变量将指向的配置文 ...

  9. linux中级之ansible配置(roles)

    一.roles介绍 什么情况下用到roles? 假如我们现在有3个被管理主机,第一个要配置成httpd,第二个要配置成php服务器,第三个要配置成MySQL服务器.我们如何来定义playbook? 第 ...

随机推荐

  1. Spring 学习笔记 IoC 基础

    Spring IoC Ioc 是什么 IoC -- Inversion of Control(控制反转)什么是控制?什么是反转? 控制反转了什么? 在很早之前写项目不用 Spring 的时候,都是在 ...

  2. mybatis的实际应用

    简单基本的增删改查语句就不说了,直接从一对一,一对多的关系开始: association联合:联合元素用来处理“一对一”的关系; collection聚集:聚集元素用来处理“一对多”的关系; MyBa ...

  3. 微信小程序开发之https服务器搭建三步曲

    本篇文章主要讲述3个方面的内容,如下: 1.SSL证书的获取 2.服务器 Nginx SSL 证书的配置. 3.如何兼容80端口和443端口以及为什么要同时兼容这两个端口. 1.SSL证书的获取 ht ...

  4. Simple example of use of __setstate__ and __getstate__

    class Foo(object): def __init__(self, val=2): self.val = val def __getstate__(self): print ("I' ...

  5. [转]mybatis-generator 代码自动生成工具(maven方式)

    由于MyBatis属于一种半自动的ORM框架,所以主要的工作将是书写Mapping映射文件,但是由于手写映射文件很容易出错,mybatis-gennerator插件帮我们自动生成mybatis所需要的 ...

  6. Python自学:第四章 复制列表(1)

    # -*- coding: GBK -*- my_foods = ['pizza', 'falafel', 'carrot cake'] friend_foods = my_foods[:] prin ...

  7. leetcode-126-单词接龙

    题目描述: class Solution: def findLadders(self, beginWord: str, endWord: str, wordList: list) -> list ...

  8. leetcode-回溯

    题17: 方法一:回溯 class Solution: def letterCombinations(self, digits: str) -> List[str]: res = [] dic ...

  9. 帝国cms过滤采集内容

    在过滤广告正则的[!--ad--]标识处,加上过滤正则即可 https://jingyan.baidu.com/article/c275f6bae3ea0de33d75671c.html

  10. 后缀自动机求LCS——spoj-LCS

    经典题 注意匹配的时候:用t串去s串的SAM里进行匹配,和字典树一样遍历t中字符,用cur记录当前已经匹配的长度,如果能当前字符能匹配则cur++(这里不能直接用cur=len[now]),反之用li ...