自动化运维工具:ansible 多进程调用ansible api的应用场景:   应用系统检查 一个应用系统可能具有20—50台服务器的集群,初步的系统层面检查可以用一个统一的playbook来检查,比如(df -h这种命令).但是深入到应用层的话,就有些个性化的应用了,比如有2台http服务器,有20台中间件服务器在加4台数据库服务器等等,检查项都是不同的.如果现在还要进行批量的系统检查,就不能用同一个playbook了.另外,如果顺序执行的话,等待时间就会非常长,而且没有必要,因为中间件的检…
自动化运维工具:ansible 多进程调用ansible api的应用场景:   应用系统检查 一个应用系统可能具有20—50台服务器的集群,初步的系统层面检查可以用一个统一的playbook来检查,比如(df -h这种命令).但是深入到应用层的话,就有些个性化的应用了,比如有2台http服务器,有20台中间件服务器在加4台数据库服务器等等,检查项都是不同的.如果现在还要进行批量的系统检查,就不能用同一个playbook了.另外,如果顺序执行的话,等待时间就会非常长,而且没有必要,因为中间件的检…
在第二篇文章中虽然可以执行adhoc和playbook但是执行结果的输出并不是特别直观,虽然没有报错但是到底什么结果其实你是不知道的尤其是在执行adhoc的时候,这时候我们要利用callback来设置一下执行结果的输出. 执行adhoc #!/usr/bin/env python # -*- coding: utf-8 -*- from collections import namedtuple # 核心类 # 用于读取YAML和JSON格式的文件 import sys from ansible…
Python 3.6.0的sqlite3模块存在一个bug(见issue 29003),无法执行VACUUM语句. 一执行就出现异常: Traceback (most recent call last):  File "D:\desktop\cannot_vacuum.py", line 25, in <module>    conn.execute('VACUUM')sqlite3.OperationalError: cannot VACUUM from within a…
本文目录:1.1 ansible执行过程分析1.2 ansible并发和异步1.3 ansible的-t选项妙用1.4 优化ansible速度 1.4.1 设置ansible开启ssh长连接 1.4.2 开启pipelining 1.4.3 修改ansible执行策略 1.4.4 设置facts缓存 1.1 ansible执行过程分析 使用ansible的-vvv或-vvvv分析执行过程.以下是一个启动远程192.168.100.61上httpd任务的执行过程分析.其中将不必要的信息都是用"..…
一.多线程 1.顺序执行单个线程,注意要顺序执行的话,需要用join. #coding=utf-8 from threading import Thread import time def my_counter(): i = 0 for _ in range(100000000): i = i + 1 return True def main(): thread_array = {} start_time = time.time() for tid in range(2): t = Thread…
一.python并发编程之多进程 1.1 multiprocessing模块介绍 由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程. multiprocessing包是Python中的多进程管理包.与threading.Thread类似,它可以利用multiprocessing.Process对象来创建一个进程.该进程可以运行在Python程序内部编写的函数. 该Process对象与Thread对象的用法…
本文来源于我在InfoQ中文站翻译的文章,原文地址是:http://www.infoq.com/cn/news/2016/02/ansible-2-released 经过了一年的开发工作后,Ansible 2.0最终公布.如今已经是GA版了.这是眼下为止最为闪耀的一个Ansible版本号,它折射出了社区所贡献的巨大力量.这一切也令全部人感动万分.大约有300个用户对这个版本号贡献了代码:自上一个基本的Ansible版本号公布后,约有500个用户贡献了代码. 我们为何要開始V2的开发? 重构软件的…
一.什么是ad-hoc和playbook  ad-hoc : 如果我们敲入一些命令去快速的完成一些操作,而不需要将这些执行过的命令刻意保存下来,这样的命令就叫做as-hoc命令,这里不做过多赘述. playbook : 简单的说,playbook是一种简单的配置管理系统与多机器部署系统的基础.与现有的其它系统有不同之处,且非常适用于复杂的应用部署.playbook可适用于声明配置,更强大的地方在于playbook中可以编排有序的执行过程,甚至于做到在多组机器间来回有序的执行特别指定的步骤,并且可…
Python 3.8.0 正式版发布,新特性初体验 北京时间 10 月 15 日,Python 官方发布了 3.8.0 正式版,该版本较 3.7 版本再次带来了多个非常实用的新特性. 赋值表达式 PEP 572: Assignment Expressions 新增一种新语法形式::=,又称为"海象运算符"(为什么叫海象,看看这两个符号像不像颜表情),如果你用过 Go 语言,应该对这个语法非常熟悉. 具体作用我们直接用实例来展示,比如在使用正则匹配时,以往版本中我们会如下写: impor…