fabric 安装及使用
1.安装
pip install fabric
依赖 Paramiko 、PyCrypto库
以下依赖肯能要手动安装
#安装 pycrypto 密码库
pip install pycrypto
#安装 pycrypto 依赖
pip install ecdsa
ps:【windows7 x64 ,python2.7 】Windows下pip安装包报错:Microsoft Visual C++ 9.0 is required Unable to find vcvarsall.bat
可以安装一个Micorsoft Visual C++ Compiler for Python 2.7的包
2.fabric使用
新建py脚本:fabfile.py
def hello():
print("Hello world!")
执行fab命令
fab hello
如果当前模块下没有fabfile.py文件,那么需要指定-f参数
fab -f test.py hello
使用参数
def hello(name, value):
print("%s = %s!" % (name, value)) fab hello:name=age,value=20
执行本地操作
from fabric.api import local, lcd def lsfab():
with lcd('~/tmp/fab'):
local('ls')
远程操作
def setting_ci():
local('echo "add and commit settings in local"') def update_setting_remote():
print "remote update"
with cd('~/temp'): #cd用于进入某个目录
run('ls -l | wc -l') #远程操作用run
多服务器操作
#!/usr/bin/env python
# encoding: utf-8 from fabric.api import *
env.roledefs = {
'testserver': ['user1@host1:port1',],
'productserver': ['user2@host2:port2', ]
} @roles('testserver')
def task1():
run('ls -l | wc -l') @roles('productserver')
def task2():
run('ls ~/temp/ | wc -l') def do():
execute(task1)
execute(task2)
用不同颜色打印
from fabric.colors import * def show():
print green('success')
print red('fail')
print yellow('yellow')
fabric 命令行工具
装饰器作用?
@task
@parallel 命令行常用: fab --help
fab -l -- 显示可用的task(命令)
fab -H -- 指定host,支持多host逗号分开
fab -R -- 指定role,支持多个
fab -P -- 并发数,默认是串行
fab -w -- warn_only,默认是碰到异常直接abort退出
fab -f -- 指定入口文件,fab默认入口文件是:fabfile/fabfile.py
更多参见官网
fabric 安装及使用的更多相关文章
- MySQL:Fabric 安装
MySQL Fabric安装 MySQL Fabric是Oracle提供的用于辅助进行ha\sharding的工具,它的基本架构: 从上面看出,借助于Fabric, 可以搭建 HA 集群.Sharin ...
- 002_HyperLedger Fabric安装部署
上一次我们把HyperLedger Fabric的环境全部搭建好了,下面开始正式的HyperLedger Fabric安装部署 首先需要安装编译工具gcc,用命令yum install -y gcc安 ...
- fabric 安装
fabric 是一个python的库,fabric可以通过ssh批量管理服务器. 第一步安装依赖包 安装fabric依赖及pip yum install -y python-pip gcc pytho ...
- fabric安装使用
可以使用pip安装fabric,注意使用pip 安装fabric时,一定要指定版本,不要安装2.0版本的,无论怎样都会提示没有api这样模块,所以指定安装 pip install fabric==1. ...
- fabric 安装及简单使用 (centos6)
fabric 是一个python的库,fabric可以通过ssh批量管理服务器. 第一步安装依赖包 安装epel源 1 wget -O /etc/yum.repos.d/epel.repo http: ...
- python fabric安装
1 安装epel wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo 2 安装pip yum i ...
- 安装 python 的 pip install fabric 库 问题
安装 pip install fabric 安装依赖需要 gcc 并且不能单独的安装gcc 还要安装完整的gcc依赖 yum -y install gcc gcc-c++ kernel-devel y ...
- python安装paramiko模块
一.简介 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 由于使用的是python这样的能够跨平台运行的语言,所以所有python支 ...
- Python Fabric远程自动部署简介
Fabric是一个Python(2.5-2.7)库,用于简化使用SSH的应用程序部署或系统管理任务. 它提供的操作包括:执行本地或远程shell命令,上传/下载文件,以及其他辅助功能,如提示用户输入. ...
随机推荐
- Asp.Net的核心对象
原文地址:http://www.cnblogs.com/fish-li/archive/2011/08/21/2148640.html 1.HttpRuntime 对象在处理Http请求的asp.ne ...
- Jquery时间快捷控件(Jtime)配置v1.1
1.插件代码 /** * @title 时间工具类 * @note 本类一律违规验证返回false * @author {boonyachengdu@gmail.com} * @date 2013-0 ...
- 解决cognos以远程db2数据库为数据源的连接失败问题
问题现象为使用远程的db2来创建数据源时,测试连接时不通,好多人都说是驱动问题,将db2cc.jar拷贝到某lib目录下,实验不通: 在看到某哥们的博客时最后提了一句,说需要将数据库catalog到本 ...
- Java中取小数点后两位(四种方法)
摘自http://irobot.iteye.com/blog/285537 Java中取小数点后两位(四种方法) 一 Long是长整型,怎么有小数,是double吧 java.text.D ...
- IOS开发之---触摸和手势
Touch:在与设备的多点触摸屏交互时生成. 响应者对象 响应者对象就是可以响应事件并对事件作出处理.在iOS中,存在UIResponder类,它定义了响应者对象的所有方法.UIApplication ...
- Android Studio代码自己主动提示无效(not available in Power Save mode)
针对一位博友提的问题,我这边写出来,预计还是非常多人会碰到这个问题,可是不知道怎样解决的. 就是在设置了代码自己主动提示功能后,发现不生效的,怎样设置代码自己主动提示请戳这:Android Studi ...
- RMAN备份各种物理文件
RMAN运行脚本的方式:RMAN TARGET / @backup_db.rmanRMAN TARGET / cmdfile=backup_db.rman在RMAN中执行操作系统中保存的脚本:RMAN ...
- Xshell同时向多个会话发送指令的方法
我们平时使用XSHELL.SecureCRT.putty等ssh连接工具连接到远程主机,每次输入指令都是在单一会话窗口,如果有很多台会话,需要同时输入同样的指令,我们就不用一一输入,浪费时间和精力.可 ...
- NET基础课--NET中程序集0-1
程序集 1.表现形式:.dll 和. exe . 2.程序集组成:PE头,CLR头,清单,元数据,CIL代码,资源文件.实际上这些内容包含在一个叫做Module的逻辑结构中. 单模块程序集:程序集就 ...
- Hibernate 查询:HQL查询(Hibernate Query Languge)
HQL是一种面向对象的查询语言,其中没有表和字段的概念,只有类,对象和属性的概念. 使用HQL查询所有学生: public static void main(String[] args) { Sess ...