Fabric是一个Python(2.5-2.7)库和命令行工具,可以通过SSH在多个host上批量执行任务, 用于简化应用程序部署或系统管理任务的SSH使用。
fabric官方英文文档: http://www.fabfile.org/
1. pip安装
2. fabric安装
建议在虚拟环境virtualenv或virtualenvwrapper下安装fabric
# pip install fabric
安装完fabric即可使用fab
命令
3. fabric变量
from fabric.api import env
- env.user: 用于登录服务器的用户名
- env.password: 用户名对应的密码
- env.hosts: 服务器的 IP 地址,也可以是解析到这个 IP 的域名
- env.port: SSH 远程服务器的端口号
4. fabric传参
p.s. 默认文件名为fabfile.py
文件名不为fabfile.py
时需使用-f
进行指定.
vim fabfile.py
:
def hello(name):
print 'Hello %s!'%name
以下两种方式可以传参:
$ fab hello:name=fab
Hello fab!
$ fab hello:fab
Hello fab!
5. 本地操作
执行本地操作命令使用local
vim fabfile.py
:
# coding: utf-8
from fabric.api import local
def test():
local('cd /home/')
local('ls -l|wc -l')
执行fab test
, 结果如下:
$ fab test
[localhost] local: cd /home/
[localhost] local: ls -l|wc -l
16
Done.
6. 远程操作
执行远程操作命令使用run
未完, 待续…