美文网首页Ansible
Ansible性能优化

Ansible性能优化

作者: GoGooGooo | 来源:发表于2018-05-18 16:29 被阅读16次

关闭 gathering facts


如果您观察过 ansible-playbook 的执行过程中,您会发现 ansible-playbook 的第 1 个步骤总是执行 gather facts,不论你有没有在 playbook 设定这个 tasks。如果你不需要获取被控机器的 fact 数据的话,你可以关闭获取 fact 数据功能。关闭之后,可以加快 ansible-playbook 的执行效率,尤其是你管理很大量的机器时,这非常明显。关闭获取 facts 很简单,只需要在 playbook 文件中加上“gather_facts: no”即可。如下

--- 
 - hosts: 172.16.64.240 
 gather_facts: no 
  remote_user: liheng 
  sudo: yes 
  roles: 
  - {role: profile_test}

好的,来看关闭前后的执行时间变化。

SSH PIPElinING


SSH pipelining 是一个加速 Ansible 执行速度的简单方法。ssh pipelining 默认是关闭,之所以默认关闭是为了兼容不同的 sudo 配置,主要是 requiretty 选项。如果不使用 sudo,建议开启。打开此选项可以减少 ansible 执行没有传输时 ssh 在被控机器上执行任务的连接数。不过,如果使用 sudo,必须关闭 requiretty 选项。修改 /etc/ansible/ansible.cfg 文件可以开启 pipelining


pipelining=False
修改为
pipelining=True
修改完后,可以批量对机器执行命令试下,可以明显感受到速度的提升。

ControlPersist


ControlPersist 特性需要高版本的 SSH 才支持,CentOS 6 默认是不支持的,如果需要使用,需要自行升级 openssh。ControlPersist 即持久化 socket,一次验证,多次通信。并且只需要修改 ssh 客户端就行,也就是 Ansible 机器即可。

升级 openssh 的过程这里不做介绍。这里只介绍下 ControlPersist 设置的办法。
cat ~/.ssh/config

 Host * 
  Compression yes 
  ServerAliveInterval 60 
  ServerAliveCountMax 5 
  ControlMaster auto 
  ControlPath ~/.ssh/sockets/%r@%h-%p
  ControlPersist 4h

在开启了 ControlPersist 特性后,SSH 在建立了 sockets 之后,节省了每次验证和创建的时间。在网络状况不是特别理想,尤其是跨互联网的情况下,所带来的性能提升是非常可观的。有这边需求的,试试就知道了。

相关文章

  • Ansible性能优化

    关闭 gathering facts 如果您观察过 ansible-playbook 的执行过程中,您会发现 an...

  • 3个让Ansible性能飞起的简单优化方案!

    Ansible 性能优化 在使用 Ansible 的过程中,当管理的服务器数量增加时,不得不面对一个无法避免的问题...

  • 【ansible】ansible配置优化

    ansible配置优化 https://www.cnblogs.com/mauricewei/tag/ansible

  • Android性能优化 - 消除卡顿

    性能优化系列阅读 Android性能优化 性能优化 - 消除卡顿 性能优化 - 内存优化 性能分析工具 - Tra...

  • Android性能优化 - 内存优化

    性能优化系列阅读 Android性能优化 性能优化 - 消除卡顿 性能优化- 内存优化 性能分析工具 - Trac...

  • 前端性能优化(中)

    性能优化调研系列文章 《前端性能优化(上)》 《前端性能优化(中)》 《前端性能优化(下)》 《前端性能优化(上)...

  • 前端性能优化(下)

    性能优化调研系列文章 《前端性能优化(上)》 《前端性能优化(中)》 《前端性能优化(下)》 《前端性能优化(中)...

  • Awesome Extra

    性能优化 性能优化模式 常见性能优化策略的总结 Spark 性能优化指南——基础篇 Spark 性能优化指南——高...

  • 常用的后端性能优化六种方式:缓存化+服务化+异步化等

    性能优化专题 前端性能优化 数据库性能优化 jvm和多线程优化 架构层面优化 缓存性能优化 常用的后端性能优化六大...

  • ansible速度优化

    文章来自于 carey的博客:ansible速度优化 有人说ansible的执行效率比价差,但是可以通过很多的优化...

网友评论

    本文标题:Ansible性能优化

    本文链接:https://www.haomeiwen.com/subject/fhwgdftx.html