`

Python运维脚本

 
阅读更多
#!/usr/bin/env python
# ueage: python tomcat.py start|stop|restart"
import paramiko
import threading
import sys


def ssh2(ip, username, passwd, cmd):
    try:
        ssh = paramiko.SSHClient()
        ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        ssh.connect(ip, 22, username, passwd, timeout=5)
        for m in cmd:
            stdin, stdout, stderr = ssh.exec_command(m)
            out = stdout.readlines()
            for o in out:
                print o,
            print '###%s has done\n' % (ip)
        ssh.close()
    except:
        print '%s\tError\n' % (ip)


def usage():
    print "ueage: python tomcat.py start|stop|restart|diskcheck|tomcatcheck|rmolddir"
    sys.exit(1)


if __name__ == '__main__':
    argc = len(sys.argv)
    if argc < 2:
        usage()
    else:
        for i in sys.argv[1:]:
            if i == 'status':
                cmd = ['/nfs/tomcat/tomcat.sh status && ls -l /opt/tomcat/webapps/']
            elif i == 'start':
                cmd = ['/nfs/tomcat/tomcat.sh start']
            elif i == 'stop':
                cmd = ['/nfs/tomcat/tomcat.sh stop']
            elif i == 'restart':
                cmd = ['/nfs/tomcat/tomcat.sh restart']
            elif i == 'diskcheck':
                cmd = ['df -h']
            elif i == 'tomcatcheck':
                cmd = ['/nfs/tomcat/tomcat.sh tomcatcheck']
            elif i == 'rmolddir':
                cmd = ['cd /opt/tomcat/webapps/; rm -rf admin trade admin']
            elif i == 'rmtrade':
                cmd = ['cd /opt/tomcat/webapps/; rm -rf trade']
            else:
                usage()

        username = "tomcat"
        passwd = "tomcat"
        print "Begin......"
        for i in range(1, 5):
            ip = 'tomcat' + str(i)
            run = threading.Thread(target=ssh2, args=(ip, username, passwd, cmd))
            run.start()

 

Python资料: 

http://www.cnblogs.com/gannan/archive/2012/02/06/2339883.html

http://letong.me/category/python

分享到:
评论

相关推荐

    一个简单的Python运维脚本示例,用于自动化管理Kubernetes集群中的Pods

    一个简单的Python运维脚本示例,用于自动化管理Kubernetes集群中的Pods 这个脚本使用了 kubernetes Python客户端库来与Kubernetes集群进行交互,实现了以下功能: 加载Kubernetes配置文件。 创建Kubernetes API...

    python 运维脚本分享(csdn)————程序.pdf

    Python 运维脚本分享(csdn)————程序 在这份资源中,我们可以看到一个 Python 运维脚本,用于查询 MySQL 进程的信息,包括进程 ID、工作目录、CPU 使用率和内存使用率。下面我们将对该脚本进行详细的分析和...

    Linux运维自动化运维脚本.zip

    Linux运维自动化运维脚本.zip,自动化运维脚本 介绍 Linux系统运维中各种一键脚本 使用教程 openssh一键升级脚本,支持centos6、centos7、centos8。 Linux运维自动化运维脚本.zip,自动化运维脚本 介绍 Linux系统...

    python常用运维脚本实例小结

    以下是一些常用的Python运维脚本实例,涵盖了进程内存占用统计和LVS(Linux Virtual Server)与Keepalived的一键部署。 **一、进程内存占用统计** 在Linux系统中,`ps`命令用于查看系统中的进程状态,`aux`选项...

    Python运维工程师12期培训教程

    5. **自动化脚本**:编写自动化脚本是Python运维的核心。你将学习如何使用Python编写shell脚本,实现批量处理任务,如定时备份、系统监控等。 6. **配置管理工具**:如Ansible,它使用Python编写,可以帮助你自动化...

    生产环境,线上使用)shell python运维web脚本db 安全脚本.7z

    Shell脚本和Python脚本在此扮演着重要角色,因为它们能够自动化许多日常运维任务,提高效率并减少人为错误。以下是对这些脚本及其在运维工作中的应用的详细阐述。 首先,让我们关注"shell"标签。Shell脚本是Linux/...

    Python运维开发.zip

    Python运维开发是IT行业中一个重要的领域,它结合了Python编程语言和系统运维技术,使得运维工作更加高效、自动化。在本压缩包中,"Python运维开发.zip"包含了关于Python安装的相关资料,以及一个名为"py-op-master...

    项目基于shell、python,运维脚本工具库,收集各类运维常用工具脚本

    快捷运维,代号kjyw,项目基于shell、python,运维脚本工具库,收集各类运维常用工具脚本,实现快速安装nginx、mysql、php、redis、nagios、运维经常使用的脚本等等...

    python运维实例

    Python运维实例中首先介绍的是系统基础信息模块。这部分内容强调了系统性能信息的重要性,以及如何利用Python轻松获取这些关键运营指标数据。系统资源的状况,比如CPU、内存、磁盘和网络的使用情况,是衡量业务服务...

    Python运维

    Python运维是一门结合了Python编程语言与系统运维工作的技术领域。Python语言以其简洁易学的特性,成为运维工程师进行自动化脚本编写、系统管理以及网络监控等工作的首选工具。运维必备Python基础入门到精通视频课程...

    Python程序设计:运维脚本(案例).pptx

    运维脚本 任务 运维脚本 任务背景 在网络管理中很多时候需要了解设备的IP地址信息,管理员希望可以编写一个脚本可以自动根据所采集的IP地址信息获得该地址的相关属性信息,可以用于后续的网络管理。 任务 运维脚本 ...

    快捷运维,代号kjyw,项目基于shell、python,运维脚本工具库,收集各类运维常用工具脚本

    快捷运维,代号kjyw,项目基于shell、python,运维脚本工具库,收集各类运维常用工具脚本,实现快速安装nginx、mysql、php、redis、nagios、运维经常使用的脚本等等...

    项目基于shell、python,运维脚本工具库

    【标题】:“项目基于shell、python,运维脚本工具库” 这个标题揭示了一个关于IT运维自动化的重要主题,即使用shell脚本和Python编程语言来构建一个工具库。在IT环境中,自动化是提升效率的关键,而shell和Python...

    基于shell、python,运维脚本工具库,收集各类运维常用工具脚本,实现快速安装nginx、mysql运维经常使用的脚本等、

    快捷运维,代号kjyw,项目基于shell、python,运维脚本工具库,收集各类运维常用工具脚本,实现快速安装nginx、mysql、php、redis、nagios、运维经常使用的脚本等等...

    2023年《网络建设与运维》国赛脚本文件及导出答案视频

    接下来,让我们关注“2023年网络建设与运维脚本文件”。这些文件可能包含了实现特定网络功能的代码,例如,通过SSH连接到网络设备,执行CLI命令获取网络状态,或者使用SNMP协议收集网络设备信息。参赛者需要熟悉至少...

    python运维故障管理系统

    在IT行业中,Python运维故障管理系统是一种用于自动化管理和解决IT基础设施中出现的问题的工具。这个系统集成了多种功能,包括故障管理、用户管理、邮件管理以及统计Dashboard,而且它还能够与Zabbix这样的监控系统...

    快捷运维,代号kjyw,项目基于shell、python,运维脚本工具库,收集各类运维常用工具脚本.zip

    快捷运维,代号kjyw,项目基于shell、python,运维脚本工具库,收集各类运维常用工具脚本,实现快速安装nginx、mysql、php、redis、nagios、运维经常使用的脚本等等.... 软件开发设计:应用软件开发、系统软件开发、...

    Python⾃动化运维脚本实例

    Python自动化运维就是使用Python编写自动化脚本,帮助IT运维人员自动化执行日常维护和管理任务,从而提高效率和准确性。这种自动化通常使用Python编写脚本,涉及到各种IT任务,如服务器配置、部署、监控、日志分析、...

    运维脚本

    运维脚本通常使用Shell(如bash、sh)、Python、Perl或Ansible等语言编写。Shell脚本是Linux/Unix系统中最常见的,因为它们简单易学且直接与系统命令交互。Python则因其强大的数据处理能力和丰富的库支持而受到青睐...

Global site tag (gtag.js) - Google Analytics