liukun2009 发表于 2018-7-28 14:21:02

ansible插件之统计任务处理时间

  ansible插件之【统计任务处理时间】
  在做性能优化之前首先需要做的是收集一些统计数据,这样才能为后面做的性能优化提供数据支持,对比优化前后的结果。非常不错的是,在 github 发现一个 Ansible 任务计时插件“ansible-profile”,安装这个插件后会显示 ansible-playbook 执行每一个任务所花费的时间。
  在ansible2.2版本以上,ansible自带了/usr/lib/python2.6/site-packages/ansible/plugins/callback/profile_tasks.py文件,所以,只需在callback_whitelist开启这个插件,从而不需要下载这个文件,就可以实现统计任务处理时间的功能。
  Github 地址:https://github.com/jlafon/ansible-profile
  这个插件安装很简单,只需要简单的三个命令即可完成安装。在你的 playbook 文件的目录下创建一个目录,目录名 callback_plugins 然后将下载的 profile_tasks.py 文件放到该目录下。
  cd /etc/ansible
  mkdir callback_plugins
  cd callback_plugins
  wget https://raw.githubusercontent.com/jlafon/ansible-profile/master/callback_plugins/profile_tasks.py
  vim /etc/ansible/ansible.cfg
  添加如下:
  callback_needs_whitelist = False
  callback_plugins = /etc/ansible/callback_plugins
  bin_ansible_callbacks = True
  ansible 2.0版本需要在ansible.cfg 中加入:
   下面加入
  callback_whitelist= profile_tasks
  再次执行ansbile-playbook时显示执行时长
  ansible--version                  #查看ansible版本

  执行剧本后,效果如图:

页: [1]
查看完整版本: ansible插件之统计任务处理时间