轻量级自动化运维工具fabric使用与安装

Fabirc是基于python实现的SSH命令行工具,简化了SSH的应用程序的部署与系统管理服务。

Fabric的安装

首先需要配置好python的pip工具
使用wget命令下载好,然后解压

 wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb" --no-check-certificate

然后解压,进入解压目录中,执行setup的python代码,然后尝试更新pip

tar -xzvf pip-1.5.4.tar.gz
cd pip-1.5.4/
python setup.py install
pip install --upgrade pip

在pip安装完成之后,需要使用yum安装好一些依赖性

yum install make gcc gcc-c++ python-devel python-setuptools -y

直接使用pip安装python的Fabric模块

pip install Fabric

然后即可进行Fabirc的源码安装

cd /usr/local/src/
wget https://pypi.python.org/packages/source/F/Fabric/Fabric-1.3.0.tar.gz --no-check-certificate #下载压缩包
tar xvf Fabric-1.3.0.tar.gz   #解压
cd Fabric-1.3.0/
python setup.py  install  #执行安装脚本

最后出现如下提示,即表示安装成功

Using /usr/lib/python2.7/site-packages/pycrypto-2.6.1-py2.7-linux-x86_64.egg
Finished processing dependencies for Fabric==1.3.0

fab命令行的使用

fab是fabric的命令行入口
命令的格式为
fab [options] – [shell command]
参数有

-l 定义好的函数名
-f 指定的fab入口文件,默认为fabfile.py,也可以自己指定
-g 指定网关设备
-H 指定目标主机,多台主机的话使用“,”分隔
-P 以异步的方式来运行多个主机任务
-R 指定角色
-t 指定timeout,连接超时的时间
-T 设置远程主机命令执行超时的时间
-w 执行失败时发出警告,默认终止服务


通过远程主机查询172.25.254.45的主机名

touch fabfile.py
fab -p testroot -H 172.25.254.45 -- 'hostname'

执行结果为

[172.25.254.45] Executing task '<remainder>'
[172.25.254.45] run: hostname
[172.25.254.45] out: saltstack


Done.
Disconnecting from 172.25.254.45... done.

在Fabric中支持的常用命令有如下.
local:执行本地命令
lcd:切换本地目录
cd:切换远程目录
run:执行远程命令
sudo:下放权力
put:上传文件
get:下载文件
@task:函数修饰符,将函数转化为task子类
@runs_once:函数修饰符,标示此修饰符的函数只执行一次

几个函数修饰符的使用方式

@task:
为任务添加别名
我们在fab入口文件fabfile.py中编写如下

from fabric.api import task
@task(alias='test')
def deploy_with_migrantions():
      pass 

执行命令

fab -f fabfile.py --list

结果如下

Available commands:

    deploy_with_migrantions
    test

其中–list参数为列出入口文件中存在的命令
设置默认的任务
入口文件编写如下

from fabric.api import task
@task      
def migrate(): 
     pass   
@task      
def push():
     pass   
@task(default=True)
def full_deploy():
     provision()
     push() 
     migrate()    
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值