zoukankan      html  css  js  c++  java
  • Ansible实现批量管理服务器

    Ansible介绍:

    a. ansible是一个基于Python开发的自动化运维工具
    b. ansible是一个基于ssh协议实现远程管理的工具
    c. ansible软件可以实现多种批量管理操作(批量系统配置、批量软件部署、批量文件拷贝、批量运行命令)
    saltstack puppet (都是类似软件)

    批量管理服务特征介绍.

    客户端不需要启动任何服务,服务端不需要任何的配置.

    Server端安装(管理端): yum -y install ansible.

    ansible客户端(受控端):没有客户端软件安装.

    部署安装流程(ansible自动化批量管理服务器部署流程)CentOS6.9环境:

    a.管理主机: 10.0.0.61 m01

    受控主机:

    10.0.0.41 backup(备份主机)

    10.0.0.31 nfs01(nfs服务器)

    Ansible软件自动化部署条件:

    b.建议基于ssh密钥方式建立远程连接.

    @1.ssh-keygen 创建密钥对(管理主机上) ssh-keygen -t dsa

    @2.分发公钥文件(管理主机进行分发)

    ssh-copy-id -i /root/.ssh/id_dsa.pub 172.16.1.31

    ssh-copy-id -i /root/.ssh/id_dsa.pub 172.16.1.41

    ssh-copy-id -i /root/.ssh/id_dsa.pub 172.16.1.51

    @3.检查是否可以进行基于密钥远程管理;

      ssh ip uptime (ssh tony@172.16.1.x)

     免交互进行创建密钥对和 免交互进行密钥分发.

    >/root/.ssh/known_hosts 追加输出重定向, 清空 known_hosts 已连接主机列表.

    ssh-keygen -t dsa (创建密钥,需要进行人为干预)

    ssh-keygen -t dsa -f /root/.ssh/id_rsa

    -N/-P -N ""/-P""

     免交互实现密钥的创建到指定的目录下:   ssh-keygen -t dsa -f /root/.ssh/id_dsa -N ""

    man ssh ssh-keygen

    ssh-keygen - authentication key generation, management and conversion

    需要安装sshpass 软件 yum -y install sshpass

     

    免交互进行密钥分发.

    sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub 172.16.1.31

    sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no 172.16.1.31"

    批量创建密钥对和批量分发密钥脚本:

    #!/bin/bash

    rm -f /root/.ssh/id*

    ssh-keygen -t dsa -f /root/.ssh/id_dsa -N ""

    for ip in 31 41 51 8

    do

    sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no $ip"

    done

    重新分发之前 cd /root/.ssh .

    [root@nfs01 .ssh]# rm -f authorized_keys

    删除之后再在管理主机上执行免密钥分发文件.

    ssh -o StrictHostKeyChecking 参数,实现免交互认证

    基于ssh口令方式建立远程连接(也可以)

     通过对vim /usr/bin/ssh-copy-id 修改这个文件的端口,可以更改远程SSH的端口

    { eval "$GET_ID" ; } | ssh  -p 52113 $1 "exec sh -c 'cd; umask 077; test -d .ssh || mkdir .ssh ; cat >> .s
    sh/authorized_keys && (test -x /sbin/restorecon && /sbin/restorecon .ssh .ssh/authorized_keys >/
    dev/null 2>&1 || true)'" || exit 1

    c. ansible 软件下载安装

    yum -y install ansible  服务端安装软件(ansible)

    yum -y install libselinux-python 受控主机需要安装这个软件 

    需要修改ansible.cfg  文件

    d.ansible软件应用过程.

    ansible-doc -l  查看ansible的模块

    博文阅读密码felix
  • 相关阅读:
    观众查询界面
    排球积分程序
    产品会议
    本周工作量及进度统计
    排球积分规则
    我与计算机
    排球记分员
    怎样成为一个高手观后感
    第十八周冲刺
    十六周
  • 原文地址:https://www.cnblogs.com/Enzoo/p/10110455.html
Copyright © 2011-2022 走看看