zoukankan      html  css  js  c++  java
  • Ansible- 批量linux管理工具

    from http://blog.chinaunix.net/uid-20642150-id-4096719.html

    Ansible- 批量linux管理工具

    https://github.com/ansible/ansible
    无意中看到这个项目,感觉跟puppet很相似,花时间了解了一下,发现还是很不错,而且支持使用python添加自己需要的模块,很简单。
    而且相对来说,ansible有如下优点:
    1、轻量级,他不需要去客户端安装agent,更新时,只需要在操作机上进行一次更新即可
    2、批量任务执行可以写成脚本,而且不用分发到远程就可以执行
    3、使用python编写的,维护更简单,ruby语法过于复杂
    4、支持sudo

    缺点:
    1、对于几千台、上万台机器的操作,还不清楚性能、效率情况如何,需要进一步了解。

    简要使用方法如下:
    ansible 在centos 6.2上的安装


    源码安装,源码去github上下载即可
    yum install PyYAML.x86_64 python-paramiko.noarch python-jinja2.x86_64 
    python setup.py build
    python setup.py install


    rpm 安装
    git clone git://github.com/ansible/ansible.git
    cd ./ansible
    make rpm
    sudo rpm -Uvh ~/rpmbuild/ansible-*.noarch.rpm

    在/etc/profile下面添加上下面的环境变量
    export ANSIBLE_HOSTS=/etc/ansible/ansible_hosts
    export ANSIBLE_CONFIG=/etc/ansible/ansible.cfg
    其中/etc/ansible/ansible_hosts里面就是要操作的主机列表,当然,在执行命令时,也可以带【-i】参数来指定主机列表文件名


    ansible all -m command -a "/bin/echo hello" --ask-pass
    ansible all -m ping --ask-pass -u root
    ansible all -m script -a "/root/hequan/shell/t.sh" -k
    ansible all -m copy -a "src=/root/hequan/shell/t.sh dest=/tmp/ mode=755 owner=root group=root" -k -u root
    ansible all -m file -a "dest=/tmp/t.sh mode=755 owner=root group=root" -k -u root
    ansible all -i /etc/ansible/serverlist -m shell -a "/tmp/t.sh" -k -u root
    ansible all -m user -a "name=foo password="
    ansible all -m user -a "name=foo state=absent"


    性能不知道如何,后续用脚本做一下压力测试。

  • 相关阅读:
    php 本周的起始时间
    获取微信公众号素材模板id
    复活贴
    Net 4.0 Parallel 编程(四) Task(上)
    Windows Phone 实用开发技巧120合集(电子书+源代码)
    Net 4.0 Parallel 编程(九)Task中的数据共享(下)
    收藏别人的小类库
    将DLL程序集加入GAC后的一系列问题汇总,及解决方法
    Net 4.0 Parallel 编程(七)Task中的数据共享(上)
    内存做硬盘,开启readyboost加速,全面提升系统性能!
  • 原文地址:https://www.cnblogs.com/zhangqiang1981/p/5513698.html
Copyright © 2011-2022 走看看