fabric

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fabric相关的知识,希望对你有一定的参考价值。

Fabric模块

fabric是基于paramiko模块封装开发的,paramiko更底层

安装,依赖pytcrypto,paramiko,要卸载python-pycrypto与python-paramiko

pip uninstall python-pycrypto

pip uninstall python-paramiko

pip uninstall pycrypto

yum install -y python-devel


一、安装fabric

[[email protected] ~]# pip install pycrypto==‘2.3‘
[[email protected] ~]# pip install paramiko==‘1.12.4‘
[[email protected] ~]# pip install fabric==‘1.8.3‘
[[email protected] ~]# pip list
DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
ansible (2.1.0.0)
backports.shutil-get-terminal-size (1.0.0)
cffi (1.9.1)
cryptography (1.7.2)
decorator (4.0.11)
Django (1.10.7)
ecdsa (0.13)
enum34 (1.1.6)
Fabric (1.8.3)
idna (2.2)
ipaddress (1.0.18)
ipython (5.3.0)
ipython-genutils (0.2.0)
Jinja2 (2.9.5)
MarkupSafe (0.23)
mysql-connector-python (2.1.1)
MySQL-python (1.2.3)
paramiko (1.12.4)
pathlib2 (2.2.1)
pexpect (4.2.1)
pickleshare (0.7.4)
pip (9.0.1)
prompt-toolkit (1.0.14)
ptyprocess (0.5.1)
pyasn1 (0.2.2)
pycparser (2.17)
pycrypto (2.3)
Pygments (2.2.0)
PyYAML (3.12)
scandir (1.5)
setuptools (19.6)
simplegeneric (0.8.1)
site (0.0.1)
six (1.10.0)
traitlets (4.3.2)
wcwidth (0.1.7)
[[email protected] ~]# python
Python 2.7.3 (default, Jan 18 2017, 18:39:36)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import paramiko
>>> import fabric
>>>


二、fabric的使用

[[email protected] managehosts]# vim fabfile.py
from fabric.api import run

def host_type():
    run(‘uname -a‘)
[[email protected] managehosts]# fab -H 112.65.140.13 host_type
[112.65.140.133] Executing task ‘host_type‘
[112.65.140.133] run: uname -a
[112.65.140.133] out: Linux 133 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[112.65.140.133] out:
Done.


[[email protected] managehosts]# vim fabfile.py
from fabric.api import run, env
env.hosts = [‘112.65.140.133‘,‘112.65.140.132‘]
env.user = ‘root‘
env.password = ‘****‘
def host_type():
    run(‘uname -a‘)
[[email protected] managehosts]# fab host_type
[112.65.140.133] Executing task ‘host_type‘
[112.65.140.133] run: uname -a
[112.65.140.133] out: Linux 133 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[112.65.140.133] out:

[112.65.140.132] Executing task ‘host_type‘
[112.65.140.132] run: uname -a
[112.65.140.132] out: Linux client 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[112.65.140.132] out:


Done.
Disconnecting from 112.65.140.133... done.
Disconnecting from 112.65.140.132... done.


本文出自 “梅花香自苦寒来!” 博客,请务必保留此出处http://daixuan.blog.51cto.com/5426657/1919270

以上是关于fabric的主要内容,如果未能解决你的问题,请参考以下文章

特约专栏Hyperledger Fabric 源代码解读系列

Angular.js 和 Fabric.js:一旦代码移动到 Angular 指令,Fabric 画布就会改变行为

手把手教你编译Fabric源代码

区块链教程Fabric1.0源代码分析blockfile区块文件存储一

Hyperledger Fabric密码模块系列之BCCSP

区块链教程Fabric1.0源代码分析配置交易-生成通道配置二