zoukankan      html  css  js  c++  java
  • ansible 简介

    1 ansible 简介

    服务

    • mysql的主从

    • lnmp

    • 执行命令、脚本

    什么是ansible

    • 批量管理主机软件

    ansible的用法

    • 命令:ad-hoc

      • 执行一个操作

    • 脚本:playbook

      • 执行一组操作

    • 模块:期望执行操作类型

      • yum模块

      • service模块 等等。。

    2 安装ansible

        ansible的安装包在epel源中,可以使用本地下载epel源,

    • yum -y install epel-release

      1. 安装ansible

    1 [root@master ~]# cd /etc/yum.repos.d/
    2 [root@master yum.repos.d]# rm -rm epel*
    3 [root@master yum.repos.d]# wget http://mirrors.aliyun.com/repo/epel-6.repo
    4 [root@master yum.repos.d]# yum clean all
    5 [root@master ~]# yum install ansible -y

    ansible的简单使用

    • /etc/ansible/ansible.cfg:ansible的主配置文件

      • 禁用查看指纹信息:host_key_checking = False

    • /etc/ansible/hosts:被管理主机清单文件

      • 定义被管理节点的地址列表

      • 主机数量多,需要定义主机组

    3 免密认证

    1 # 1)在管理节点,生成密钥对
    2 [root@master ~]# ssh-keygen -t rsa
    3 4 # 2)将公钥文件发送到被管理节点
    5 [root@master ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.177.246
    6 [root@master ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.177.247

    4 管理被管理节点

    1)在管理节点安装ansible

    1 [root@master ~]# cd /etc/yum.repos.d/
    2 [root@master yum.repos.d]# rm -rm epel*
    3 [root@master yum.repos.d]# wget http://mirrors.aliyun.com/repo/epel-6.repo
    4 [root@master yum.repos.d]# yum clean all
    5 [root@master ~]# yum install ansible -y

    2)配置免密认证

    1 # 1)在管理节点,生成密钥对
    2 [root@master ~]# ssh-keygen -t rsa
    3 4 # 2)将公钥文件发送到被管理节点
    5 [root@master ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.177.246
    6 [root@master ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.177.247

    3)修改主机清单文件

    1 # 1)在管理节点,生成密钥对
    2 [root@master ~]# ssh-keygen -t rsa
    3 4 # 2)将公钥文件发送到被管理节点
    5 [root@master ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.177.246
    6 [root@master ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.177.247

    4)检查被管理节点是否在线

    1 [root@master ~]# ansible myserver -m ping
    2 192.168.177.246 | SUCCESS => {
    3     "changed": false, 
    4     "ping": "pong"
    5 }
    6 192.168.177.247 | SUCCESS => {
    7     "changed": false, 
    8     "ping": "pong"
    9 }

    5)在被管理节点安装apache

    1 [root@master ~]# ansible myserver -a "yum install httpd -y"
    2 [root@master ~]# ansible myserver -a "rpm -q httpd"
    3 192.168.177.246 | SUCCESS | rc=0 >>
    4 httpd-2.2.15-69.el6.centos.x86_64

    6)启动被管理节点上的apache

    1 [root@master ~]# ansible myserver -a "yum install httpd -y"
    2 [root@master ~]# ansible myserver -a "rpm -q httpd"
    3 192.168.177.246 | SUCCESS | rc=0 >>
    4 httpd-2.2.15-69.el6.centos.x86_64

    7)关闭被管理节点的防火墙和selinux

     1 [root@master ~]# ansible myserver -a "service iptables stop" 2 [root@master ~]# ansible myserver -a "setenforce 0" 

     

  • 相关阅读:
    增加Tomcat内存大小
    JAVA中的JSON
    js判断中文字符长度
    2016总结
    JavaScript 字符串实用常用操作
    Java文件操作
    hadoop中hbase出现的问题
    static_cast静态类型转换指针导致Release程序随机崩溃报错
    解决: error C2236: 意外的标记“class”。是否忘记了“;”?
    游戏操作杆代码
  • 原文地址:https://www.cnblogs.com/wendyluo/p/13137588.html
Copyright © 2011-2022 走看看