热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ansible安装及介绍

Ansible使用标准的SSH连接来执行自动化流程,不需要代理(其他描述可自行搜索)本文系统:centos6.5x64ip:172.16.162.129hostname:vm.la

    Ansible使用标准的SSH连接来执行自动化流程,不需要代理 (其他描述可自行搜索)

本文系统:

    centos 6.5 x64 

   ip:172.16.162.129

 hostname:vm.lansgg.com

  测试client主机:

   centos 6.5 x64

  ip : 172.16.162.130

  hostname:vm1.lansgg.com


#####摘自网友总结#####

        一、Ansible介绍

ansible是一款的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:

1、连接插件connection plugins:负责和被监控端实现通信;

2、host inventory:指定操作的主机,是一个配置文件里面定义监控的主机;

3、各种模块核心模块、command模块、自定义模块;

4、借助于插件完成记录日志邮件等功能;

5、playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。

二、Ansible特性

1、no agents:不需要在被管控主机上安装任何客户端;

2、no server:无服务器端,使用时直接运行命令即可;

3、modules in any languages:基于模块工作,可使用任意语言开发模块;

4、yaml,not code:使用yaml语言定制剧本playbook;

5、ssh by default:基于SSH工作;

6、strong multi-tier solution:可实现多级指挥。

三、Ansible优点

1、轻量级,无需在客户端安装agent,更新时,只需在操作机上进行一次更新即可;

2、批量任务执行可以写成脚本,而且不用分发到远程就可以执行;

3、使用python编写,维护更简单,ruby语法过于复杂;

4、支持sudo。

四、Ansible工作机制

技术分享

五、安装ansible

依赖模块paramiko、PyYAML、Jinja2、httplib2、simplejson、pycrypto、crypto2.6、pyasn1、keyczar、sshpass等

rpm -vhi python-yaml-3.09-3.el6.rf.x86_64.rpm
rpm -vhi python-jinja2-2.2.1-1.el6.rf.x86_64.rpm
yum install ansible

ansible示例:

 首先打通此主机到测试主机的ssh key

[root@vm ansible]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ae:b1:ef:46:d8:e4:3f:38:38:8d:8b:e7:e3:a2:4c:c2 root@vm.lansgg.com
The key‘s randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|                 |
|        .        |
|       =S        |
|.     ..+        |
|.E.   .=.o       |
| +  ..*+= o      |
|  o..=*Bo. .     |
+-----------------+
[root@vm ansible]# ssh-copy-id -i 172.16.162.130
The authenticity of host ‘172.16.162.130 (172.16.162.130)‘ can‘t be established.
RSA key fingerprint is 1e:76:f9:17:93:20:f1:be:06:48:02:3b:7c:80:41:07.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘172.16.162.130‘ (RSA) to the list of known hosts.
Address 172.16.162.130 maps to localhost, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
root@172.16.162.130‘s password: 
Now try logging into the machine, with "ssh ‘172.16.162.130‘", and check in:
  .ssh/authorized_keys
to make sure we haven‘t added extra keys that you weren‘t expecting.

进行命令测试

[root@vm ansible]# ansible testhost -m ping
172.16.162.130 | success >> {
    "changed": false, 
    "ping": "pong"
}
[root@vm ansible]#

而testhost代表的则是 

[root@vm ansible]# pwd
/etc/ansible
[root@vm ansible]# cat hosts
[testhost]
172.16.162.130
[root@vm ansible]#


具体命令介绍下节说明





本文出自 “大風” 博客,请务必保留此出处http://lansgg.blog.51cto.com/5675165/1744316

ansible安装及介绍


推荐阅读
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 第二十五天接口、多态
    1.java是面向对象的语言。设计模式:接口接口类是从java里衍生出来的,不是python原生支持的主要用于继承里多继承抽象类是python原生支持的主要用于继承里的单继承但是接 ... [详细]
  • 使用Jsoup解析并遍历HTML文档时,该库能够高效地生成一个清晰、规范的解析树,即使源HTML文档存在格式问题。Jsoup具备强大的容错能力,能够处理多种异常情况,如未闭合的标签等,确保解析结果的准确性和完整性。 ... [详细]
  • CentOS 7 中 iptables 过滤表实例与 NAT 表应用详解
    在 CentOS 7 系统中,iptables 的过滤表和 NAT 表具有重要的应用价值。本文通过具体实例详细介绍了如何配置 iptables 的过滤表,包括编写脚本文件 `/usr/local/sbin/iptables.sh`,并使用 `iptables -F` 清空现有规则。此外,还深入探讨了 NAT 表的配置方法,帮助读者更好地理解和应用这些网络防火墙技术。 ... [详细]
  • 自动验证时页面显示问题的解决方法
    在使用自动验证功能时,页面未能正确显示错误信息。通过使用 `dump($info->getError())` 可以帮助诊断和解决问题。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • Spark中使用map或flatMap将DataSet[A]转换为DataSet[B]时Schema变为Binary的问题及解决方案
    本文探讨了在使用Spark的map或flatMap算子将一个数据集转换为另一个数据集时,遇到的Schema变为Binary的问题,并提供了详细的解决方案。 ... [详细]
  • 解决Parallels Desktop错误15265的方法
    本文详细介绍了在使用Parallels Desktop时遇到错误15265的多种解决方案,包括检查网络连接、关闭代理服务器和修改主机文件等步骤。 ... [详细]
  • 解决 Windows Server 2016 网络连接问题
    本文详细介绍了如何解决 Windows Server 2016 在使用无线网络 (WLAN) 和有线网络 (以太网) 时遇到的连接问题。包括添加必要的功能和安装正确的驱动程序。 ... [详细]
  • 在使用Eclipse进行调试时,如果遇到未解析的断点(unresolved breakpoint)并显示“未加载符号表,请使用‘file’命令加载目标文件以进行调试”的错误提示,这通常是因为调试器未能正确加载符号表。解决此问题的方法是通过GDB的`file`命令手动加载目标文件,以便调试器能够识别和解析断点。具体操作为在GDB命令行中输入 `(gdb) file `。这一步骤确保了调试环境能够正确访问和解析程序中的符号信息,从而实现有效的调试。 ... [详细]
  • 在 LeetCode 的“有效回文串 II”问题中,给定一个非空字符串 `s`,允许删除最多一个字符。本篇深入解析了如何判断删除一个字符后,字符串是否能成为回文串,并提出了高效的优化算法。通过详细的分析和代码实现,本文提供了多种解决方案,帮助读者更好地理解和应用这一算法。 ... [详细]
  • 系统数据实体验证异常:多个实体验证失败的错误处理与分析
    在使用MVC和EF框架进行数据保存时,遇到了 `System.Data.Entity.Validation.DbEntityValidationException` 错误,表明存在一个或多个实体验证失败的情况。本文详细分析了该错误的成因,并提出了有效的处理方法,包括检查实体属性的约束条件、调试日志的使用以及优化数据验证逻辑,以确保数据的一致性和完整性。 ... [详细]
  • MySQL的查询执行流程涉及多个关键组件,包括连接器、查询缓存、分析器和优化器。在服务层,连接器负责建立与客户端的连接,查询缓存用于存储和检索常用查询结果,以提高性能。分析器则解析SQL语句,生成语法树,而优化器负责选择最优的查询执行计划。这一流程确保了MySQL能够高效地处理各种复杂的查询请求。 ... [详细]
  • 装饰者模式(Decorator):一种灵活的对象结构设计模式
    装饰者模式(Decorator)是一种灵活的对象结构设计模式,旨在为单个对象动态地添加功能,而无需修改原有类的结构。通过封装对象并提供额外的行为,装饰者模式比传统的继承方式更加灵活和可扩展。例如,可以在运行时为特定对象添加边框或滚动条等特性,而不会影响其他对象。这种模式特别适用于需要在不同情况下动态组合功能的场景。 ... [详细]
  • 本项目通过Python编程实现了一个简单的汇率转换器v1.02。主要内容包括:1. Python的基本语法元素:(1)缩进:用于表示代码的层次结构,是Python中定义程序框架的唯一方式;(2)注释:提供开发者说明信息,不参与实际运行,通常每个代码块添加一个注释;(3)常量和变量:用于存储和操作数据,是程序执行过程中的重要组成部分。此外,项目还涉及了函数定义、用户输入处理和异常捕获等高级特性,以确保程序的健壮性和易用性。 ... [详细]
author-avatar
o0大大脸么么小小鱼0o
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有