zoukankan      html  css  js  c++  java
  • fabric批量操作远程操作主机的练习

    fabric是python的一个基于命令行的自动化部署框架,用docker开了两个容器来学习fabric.

    #!/usr/bin/env python
    #-*- coding=utf-8 -*-
    
    from fabric.api import *
    
    env.hosts=[
        'root@114.215.86.228:22',
        'root@114.215.86.228:32',
    ]
    env.passwords={
        'root@114.215.86.228:22':'*****',
        'root@114.215.86.228:32':'***',
    }
    @task
    def task1():
        run('ps')
    
    @task
    def task2():
        run('uname -a')
    @task
    def dotask():
        execute(task1)
        execute(task2)

    执行结果

    root@0fe14b5400a8:/home# fab dotask
    [root@114.215.86.228:22] Executing task 'dotask'
    [root@114.215.86.228:22] Executing task 'task1'
    [root@114.215.86.228:22] run: ps
    [root@114.215.86.228:22] out:   PID TTY          TIME CMD
    [root@114.215.86.228:22] out: 26424 pts/2    00:00:00 ps
    [root@114.215.86.228:22] out:
    
    [root@114.215.86.228:32] Executing task 'task1'
    [root@114.215.86.228:32] run: ps
    [root@114.215.86.228:32] out:   PID TTY          TIME CMD
    [root@114.215.86.228:32] out:    59 pts/0    00:00:00 ps
    [root@114.215.86.228:32] out:
    
    [root@114.215.86.228:22] Executing task 'task2'
    [root@114.215.86.228:22] run: uname -a
    [root@114.215.86.228:22] out: Linux iZ2893wjzgyZ 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
    [root@114.215.86.228:22] out:
    
    [root@114.215.86.228:32] Executing task 'task2'
    [root@114.215.86.228:32] run: uname -a
    [root@114.215.86.228:32] out: Linux c368a2768e6b 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
    [root@114.215.86.228:32] out:
    
    [root@114.215.86.228:32] Executing task 'dotask'
    [root@114.215.86.228:22] Executing task 'task1'
    [root@114.215.86.228:22] run: ps
    [root@114.215.86.228:22] out:   PID TTY          TIME CMD
    [root@114.215.86.228:22] out: 26447 pts/2    00:00:00 ps
    [root@114.215.86.228:22] out:
    
    [root@114.215.86.228:32] Executing task 'task1'
    [root@114.215.86.228:32] run: ps
    [root@114.215.86.228:32] out:   PID TTY          TIME CMD
    [root@114.215.86.228:32] out:    63 pts/0    00:00:00 ps
    [root@114.215.86.228:32] out:
    
    [root@114.215.86.228:22] Executing task 'task2'
    [root@114.215.86.228:22] run: uname -a
    [root@114.215.86.228:22] out: Linux iZ2893wjzgyZ 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
    [root@114.215.86.228:22] out:
    
    [root@114.215.86.228:32] Executing task 'task2'
    [root@114.215.86.228:32] run: uname -a
    [root@114.215.86.228:32] out: Linux c368a2768e6b 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
    [root@114.215.86.228:32] out:
    
    
    Done.
    Disconnecting from 114.215.86.228... done.
    Disconnecting from 114.215.86.228:32... done.

    尽管如此,密码是明文,不安全,因此仍然推荐用加key的方式管理服务器。

  • 相关阅读:
    双谷人才财务管理(3)
    远程服务器上个人目录下python路径设置
    ubnutu16安装谷歌浏览器
    一个数组除了一个元素只出现一次,其他元素全都出现了三次,输出出现一次的元素
    一个整型数组里除了一个数字之外,其它的数字都出现了两次。请写程序找出这个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。
    滑动窗口的最大值
    360
    拼多多2018/8/5算法工程师笔试
    最小的K个数 C++(BFPRT,堆排序)
    CCF201312-3 最大的矩形(100分)
  • 原文地址:https://www.cnblogs.com/alexkn/p/4319573.html
Copyright © 2011-2022 走看看