工作需要,为了快捷部署,节省时间,避免部署可能出现的错误问题(数据库的备份,应用的备份),一次写好Linux和Python的脚本,多次使用,原创做个笔记:
Linux shell script:
#!/bin/bash ###dennis zhao linux shell script automatic deploy application server(svn) ###2013-07-21 ###27202787@qq.com source /etc/profile export LC_ALL='en_US.UTF-8' echo "==$1==#####################################`date "+%F %H:%M:%S"`" echo "dev parametre=====stress,local" echo "stage parametre=====staging" echo "prod parametre=====prod" backup_sql_path=/data2/backup/sql backup_war_path=/data2/backup/war current_date=`date +"%Y%m%d%H%M"` db_name=laneige password=xxxx2011 if [ ! -d "${backup_sql_path}" ]; then mkdir -p "${backup_sql_path}" fi if [ ! -d "${backup_war_path}" ]; then mkdir -p "${backup_war_path}" fi if [ "$1" = "local" -o "$1" = "" -o "$1" = "stress" ]; then password=xxxx2012 mysqldump -uroot -p${password} ${db_name} > ${backup_sql_path}/${current_date}.sql cd ${backup_sql_path} tar -zcvf ${current_date}.tar.gz ${current_date}.sql --remove-files sleep 3 #ls -lth ${backup_sql_path} echo "backup database ${db_name} OK........." elif [ "$1" = "staging" ]; then password=xxxx2011 elif [ "$1" = "prod" ]; then password=xxxx2011 fi echo "------------------------------------------------------------------------------------------" echo "compile class file.............begin............." resource=/data/src/laneige tomcat_home=/opt/app/tomcat webapps=${tomcat_home}/webapps echo "backup war file.............begin............." cp ${webapps}/laneige_Web.war ${backup_war_path}/laneige_Web_${current_date}.war sleep 6 echo "backup war file.............end............." echo "SVN update ...........start..............." cd ${resource} svn up sleep 1 svn up echo "SVN update .............end............." if [ "$1" = "" -o "$1" = "local" -o "$1" = "stress" ]; then mvn -U clean package -PSTRESS echo "dev complie completed-----------------" elif [ "$1" = "staging" ]; then mvn -U clean package -PSTAGING echo "staging complie completed-----------------" elif [ "$1" = "prod" ]; then mvn -U clean package -PPROD echo "prod complie completed-----------------" fi echo "compile class file.............end............." echo "------------------------------------------------------------------------------------------" sleep 5 if [ "$1" = "" -o "$1" = "local" -o "$1" = "stress" ]; then echo "stop tomcat application server.....begin.........." echo "stop tomcat application server..............." process_id=`ps -ef | grep tomcat | awk '{print $2,$8}' | grep 'java$'| awk '{print $1}'` #echo "process_id=========================${process_id}" if test -z "${process_id}" then echo "The tomcat stopped already.................`pwd`" else kill ${process_id} echo "kill tomcat process finish.............." #ps -ef | grep tomcat fi echo "stop tomcat application server.....end.........." sleep 2 rm -rf ${webapps}/laneige_Web* cp -rf ${resource}/laneige-web/target/laneige_Web.war ${webapps}/ sleep 3 echo "------------------start tomcat---------`pwd`---------------------------" ${tomcat_home}/bin/startup.sh echo "------------------finish tomcat------------------------------------" sleep 3 ps -ef | grep tomcat elif [ "$1" = "staging" ]; then echo "Copy files to stage environment........................" echo "Start copying files takes a few minutes........................" scp -P 61 /data/src/laneige/laneige-web/target/laneige_Web.war root@192.168.10.125:/data/src/temp echo "Copy file finished, please check it-----------------" #sleep 10 #ssh -t -p 61 root@192.168.10.125 '/tmp/sh/stageStart.sh' echo "You should start the tomcat application server in the stage server.........." #echo "The staging environment has been deployed already, please check it, thank you!!!!!!!" elif [ "$1" = "prod" ]; then echo "Copy files to production environment........................" echo "Start copying files takes a few minutes........................" scp -P 65 /data/src/laneige/laneige-web/target/laneige_Web.war root@192.168.11.185:/data/src/temp echo "Copy file finished, please check it-----------------" #sleep 10 #ssh -t -p 65 root@192.168.11.185 '/tmp/sh/prodStart.sh' echo "You should start the tomcat application server in the production server.........." #echo "The production environment has been deployed already, please check it, thank you!!!!!!!" fi echo "==$1==#####################################`date "+%F %H:%M:%S"`"
相关推荐
一、让Python随Linux开机自动运行 准备好要自启的脚本auto.py 用root权限编辑以下文件 sudo vim /ect/rc.local 在exit 0上面编辑启动脚本的命令 /usr/bin/python3.5 /home/edgar/auto.py > /home/edgar/auto....
目前Linux下有一些使用Python语言编写的Linux系统监控工具比如inotify-sync(文件系统安全监控软件)、glances(资源监控工具)在实际工作中,Linux系统管理员可以根据自己使用的服务器的具体情况编写一下简单实用的...
自动例化verilog模块的python脚本
统信桌面操作系统PXE部署Python脚本 统信桌面操作系统PXE部署Python脚本 统信桌面操作系统PXE部署Python脚本
通过Python脚本,自动巡检网络设备,并将巡检结果输出到附件,邮件发送。使用的是Python的telnetlib模块
容易上手,广泛使用,拥有海量“开箱即用”的模块(它是一组包含Python语句的外部文件),Python理所当然地成为了美国计算机专业大学生在一年级时所上的程序设计课所用语言的不二之选。在这个由两篇文章构成的系列中,
Linux运维自动化运维脚本.zip,自动化运维脚本 介绍 Linux系统运维中各种一键脚本 使用教程 openssh一键升级脚本,支持centos6、centos7、centos8。 Linux运维自动化运维脚本.zip,自动化运维脚本 介绍 Linux系统...
py交换机自动备份脚本。支持华为、思科、华三、 Aruba交换机。将设备ip、账号、密码、写入配置文件运行即可。多台设备一键备份。记录日志,自定义备份位置。需要先安装调用的模块,怎么安装自行百度。
settings.ini配置文件: [group_weblogicgp] group = weblogicgp group_id = 1001 [user_weblogic] group = weblogicgp user = weblogic user_id = 1001 home_dir = /weblogic shell = /bin/bash ...
一、Python开机自动运行 假如Python自启动脚本为 auto.py 。那么用root权限编辑以下文件: sudo vim /etc/rc.local 如果没有 rc.local 请看 这篇文章 在exit 0上面编辑启动脚本的命令 /usr/bin/python3 /home/...
c#远程调用linux服务器的Python脚本(csdn)————程序
ceph一键部署python脚本
本文档主要讲述的是Python脚本使用详解;
为了监控 NAS主机的运行状态, 以流量和CPU温度为主.应该可运行所有linux环境. 参考网上资料整理代码 , 供参考. 监控 CPU 温度, 内存使用量MB, CPU单核使用率(此项不太准), 网络流入差量KB , 流出差量KB, 运行时间...
从win服务器上传文件到linux服务器的Python脚本
用python脚本过滤文本中的关键字并显示,例子
linux python 2.7.18 环境部署项目发布运行
可自动填写腾讯问卷的Python脚本,基于selenium实现,同时考虑了防止被封ip,进行了动态调整秒数,用户可根据自己的对选项的概率进行调整,再也不用发红包请别人填问卷啦!!
【安装部署】-linux安装python3.10教程 默认linux 系统上就有python2 存在,我们不要去删除他,否则yum 和防火墙等无法使用,可以通过如下命令查看 python -V 一、安装依赖包 yum install -y gcc patch libffi-...