zoukankan      html  css  js  c++  java
  • Ansible基础

    Ansible是什麽?

    简要来说,是一款自动化运维工具。假如有一百台服务器安装nginx,一台一台装累死,这里就可以用ansible批量安装部署,你想删除你们公司所有Linux服务器的 / ,建议用Ansible,批量删除,从运维小白到监狱风云,一步之遥,就用Ansible。

    配置文件hosts

    server:192.168.28.31

    client:192.168.28.30

    ansible最简单的使用是在Linux命令行中使用,我要测试ansible与被管理的客户端联通性:

    [root@localhost ansible]# ansible webs -m ping 
    192.168.28.30 | SUCCESS => {
        "ansible_facts": {
            "discovered_interpreter_python": "/usr/bin/python"
        }, 
        "changed": false, 
        "ping": "pong"
    }

     如果出现绿绿的就代表服务端和客户端可以联通并且模块命令正常执行,但是如果是最下面红色的,就表示没有连接通,并且报错。

     在上面这个例子我用的最简单的模块ping,但在使用模块执行命令的时候也是需要配置ansible的一个文件的。

     上图,文件名为hosts,位置/etc/ansible/hosts(二进制安装)

    ansible只能管理那些它明确了解的服务器,你只需要在Inventory文件中指定服务器的信息就可以将这些信息提供给ansible。
     vim /etc/ansible/hosts
    [webs]                                #组名webs,可以将你要管理的服务器写在下面
    192.168.0.101      #组中的一台主机
    192.168.28.30      

    可以分很多组来管理
    ============================================
    也可以这样写配置:192.168.28.30   ansible_ssh_user=root ansible_ssh_pass=woshuai
    解释  
    #ansible_ssh_user=root 是ssh登陆用户  
    #ansible_ssh_pass=redhat 是ssh登陆密码
    这两个可以不写在配置文件中,默认就是使用root执行,可以通过-k选项指定提示输入密码,下面有例子
    注:除了账号密码之外,可以使用sshkey的方式免密码执行操作。

    使用sshkey的方式免密码执行

     ]# ssh-copy-id -i .ssh/id_rsa.pub 192.168.28.30
    root@172.16.254.200's password:
    -i:后面写要传给对方的文件的路径

    模块

    ping:可以测试远程主机的连通性
    command: 远程执行命令
    copy:拷贝文件到远程主机
    cron:添加计划任务
    file:设置文件的属性、创建、删除文件、目录、链接文件等
    shell:可以执行命令或写好的shell脚本
    script:执行本地脚本(即脚本在ansible上的意思,未来得及测试)
    setup:收集远程主机信息
    group:管理组
    user:管理用户
    yum:安装、升级、卸载及列出yum包管理器管理的软件包
    service:管理服务
    get_url:下载文件

  • 相关阅读:
    Oracle(日期函数)
    Oracle(数值函数)
    Oracle(字符函数)
    Oracle(order by)
    Oracle(限定查询2)
    Oracle(限定查询1)
    Oracle其他简单查询
    Oracle简单语句查询
    SQLPlus
    解决方案
  • 原文地址:https://www.cnblogs.com/5444de/p/12447994.html
Copyright © 2011-2022 走看看