环境说明

myv myv2 是配置在/etc/hosts 的两台 虚拟机 虚拟机ip.

参考英文文档

官方文档的例子不是给的很详细..

http://docs.fabfile.org/en/1.13/usage/env.html

实例

  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. from fabric.api import *
  4. #只有 student@myv2 这个机器用的是密码
  5. env.hosts = ['gsx@myv','student@myv2','gsx@myv2']
  6. # This dictionary is largely for internal use, and is filled automatically as a per-host-string password cache. Keys are full host strings and values are passwords (strings).
  7. env.passwords = {
  8. 'student@myv2:22':'1',
  9. }
  10. # http://docs.fabfile.org/en/1.13/usage/env.html
  11. # May be a string or list of strings, referencing file paths to SSH key files to try when connecting. Passed through directly to the SSH layer. May be set/appended to with -i.
  12. env.key_filename = ['~/.ssh/test','~/.ssh/test8']
  13. def remoteRun():
  14. print "ENV %s" %(env.hosts)
  15. out = run('whoami')
  16. print "Output %s"%(out)
  17. @hosts('gsx@myv2','gsx@myv')
  18. def taskSelectHost():
  19. run('ifconfig')

测试执行

  1. fab -f ./multi_user_and_secret.py remoteRun taskSelectHost

说明

密码的填写 evn.passwords

student@myv 这个用户是使用密码登录,单独在 evn.passwords里面配置. 注意配置的方式是 full host strings 即 用户@IP:port 和 密码.

密钥的填写 env.key_filename

gsx@myv 使用 密钥 ./ssh/test

gsx@myv2 使用 密钥 ./ssh/test8

将连接使用到的密钥 填入 env.key_filename 列表中,密钥填写顺序无关. 不需要hosts与 key_filename 对应起来, 也不需要长度相等 , fabric 会自己尝试密钥.(May be a string or list of strings, referencing file paths to SSH key files to try when connecting. Passed through directly to the SSH layer. May be set/appended to with -i.)

# fabirc 配置多组服务器 密码与密钥一起使用 key_filename的设置的更多相关文章

  1. 阿里云apache服务器外网无法访问(配置安全组,添加80服务)

    CentOS的系统 ,已经安装好了 apache php mysql 常规排错过程(ps:没耐心的童鞋请直接看最后一步,学习在阿里云控制台配置 安全组,允许 http服务) 第一步:检查apache ...

  2. Linux的rsync 配置,用于服务器之间远程传大量的数据

    [教程主题]:rsync [课程录制]: 创E [主要内容] [1] rsync介绍 Rsync(Remote Synchronize) 是一个远程资料同步工具,可通过LAN/WAN快速同步多台主机, ...

  3. SSH配置私钥登陆服务器

    前言 本文基于实际Linux管理工作,实例讲解工作中使用ssh证书登录的实际流程,讲解ssh证书登录的配置原理,基于配置原理,解决实际工作中,windows下使用SecureCRT证书登录的各种问题, ...

  4. Linux 安装及配置 Nginx + ftp 服务器

    Nginx 安装及配置 一.Nginx 简介: Nginx("engine x") 是一款是由俄罗斯的程序设计师 Igor Sysoev 所开发高性能的 Web和 反向代理服务器, ...

  5. Linux下安装Nginx并配置一个图片服务器

    首先安装nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境. gcc 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没 ...

  6. Ansible playbook 批量修改服务器密码 先普通后root用户

    fsckzy   Ansible playbook 批量修改服务器密码 客户的需求:修改所有服务器密码,密码规则为Rfv5%+主机名后3位 背景:服务器有CentOS6.7,SuSE9.10.11,r ...

  7. DNS BIND配置 配置基本缓存服务器 DNS正向解析 DNS反向解析

    一. 缓存服务器配置 1.DNS:BIND    Berkeley Internet Name Domain    版本bind97: RPM服务器端包的名字  安装bind-libs    bind ...

  8. 如何配置远程mysql服务器

    如何配置远程mysql服务器 分配用户权限 可以先看一下目前的用户权限状况: use mysql; select host,user,password from user; 然后分配新的权限给某一用户 ...

  9. VNC配置连接远程服务器桌面-linux\windows

    一.VNC配置连接远程服务器桌面 1.服务器安装VNC-server # yum -y install vnc-server 2.配置VNC连接登陆密码 # vncpasswd 回车 3.配置VNC- ...

随机推荐

  1. ELK basic---http://udn.yyuap.com/doc/logstash-best-practice-cn/filter/grok.html

    http://blog.csdn.net/lgnlgn/article/details/8053626 elasticsearch学习入门 input {stdin{}}filter { grok { ...

  2. golang 系统包自动填写插件

    Make sure $GOPATH/bin is in your $PATH (Windows: %GOPATH%\bin goes in your %PATH%). [保证你的golang环境正常] ...

  3. 爬虫之UserAgent

    UserAgent简介 UserAgent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,UserAgent也简称UA.它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及 ...

  4. django中同源策略和跨域解决方案

    一  同源策略 1.1何谓同源? 如果两个页面的协议,端口(如果有指定)和域名都相同,则两个页面具有相同的源. 举个例子: 下表给出了相对http://a.xyz.com/dir/page.html同 ...

  5. 又一次认识java(四) — 组合、聚合与继承的爱恨情仇

    有人学了继承,认为他是面向对象特点之中的一个,就在全部能用到继承的地方使用继承,而不考虑到底该不该使用,无疑.这是错误的.那么.到底该怎样使用继承呢? java中类与类之间的关系 大部分的刚開始学习的 ...

  6. Shiro出现的问题

    报错java.lang.IllegalArgumentException: Line argument must contain a key and a value.  Only one string ...

  7. Linux cal命令

    cal命令时查看日历的相关命令 1.用法 cal [选项] [[[日] 月] 年] 2.命令选项 -1, --one 只显示当前月份(默认) -3, --three  显示上个月.当月和下个月 -s, ...

  8. C语言字符串/数组去重

    输入: hello 输出: helo 第一种实现: 不新开数组, 也就是原地去重. #include <stdio.h> #include <string.h> void re ...

  9. HTML5游戏开发系列教程5(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-5/ 最终我决定准备下一篇游戏开发系列的文章,我们将继续使用can ...

  10. android 22.3 环境

    http://developer.android.com/tools/sdk/eclipse-adt.html 要求 22.3https://dl.google.com/android/android ...