Fabric 的安装

Fabric 支持 pip、easy_install 或源码安装方式,很方便解决包依赖的问题,具体安装命令如下(根据用户环境,自行选择 pip 或 easy_install):

pip install fabric
easy_install fabric

Fabric 依赖第三方的 setuptools、Crypto、paramiko 包的支持,源码安装步骤如下:

# yum -y install python-setuptools
#  wget  https://pypi.python.org/packages/source/F/Fabric/Fabric-1.8.2.tar.gz --no-check-certificate
# tar -zxvf Fabric-1.8.2.tar.gz
# cd Fabric-1.8.2
# python setup.py install

校验安装结果,如果导入模块没有提示异常,则说明安装成功:

# python
Python 2.6.6 (r266:84292, Jul 102013, 22:48:45)
[GCC 4.4.720120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import fabric
>>>

官网提供了一个简单的入门示例:

fabric/fabfile.py
#!/usr/bin/env python
from fabric.api import run
def host_type():    #定义一个任务函数,通过run方法实现远程执行‘uname -s’命令
    run('uname -s')

运行结果如图7-1所示。

image 2023 12 08 16 14 01 670
Figure 1. 图7-1 程序执行结果

其中,fab 命令引用默认文件名为 fabfile.py,如果使用非默认文件名称,则需通过 "-f" 来指定,如:fab -H SN2013-08-021,SN2013-08-022-f host_type.py host_type。如果管理机与目标主机未配置密钥认证信任,将会提示输入目标主机对应账号登录密码。