shell脚本自动化部署服务】的更多相关文章

shell脚本自动化部署 !/bin/bash #export PATH=$PATH:/export/maven/bin run_flag_dir="/data0/shell/deploy_workspace/Test" if [ ! -d "$run_flag_dir" ]; then mkdir -p "$run_flag_dir" fi #判断是否正在部署,如果是则退出 if [ -f "$run_flag_dir/.run&qu…
由于公司技术部团队较小,没有专门的运维团队,所以运维工作技术部承包了. 一.纯人工部署是这样的: 1. 本地打包:一般 maven clean package 2. 借助xftp上传到服务器对应目录 3. 借助 xshell连接到服务器 4.开始部署: a.找到程序运行的进程id:ps -ef | grep java b.杀死进程: kill -9 pid c.启动新的jar包: java -jar  包名  --spring.profiles.active=test & 二.使用shell脚本…
在Java开发项目时经常要把正在开发的项目发布到测试服务器中去测试,一般的话是要把项目先打成war包,然后把war包发布到服务器中,关闭服务器, 最后重新启动服务器,虽然这过程不是很繁琐,但如果是多个工程都要发布的时候,发布的过程就会比较繁琐,所以福音来了…… 通过 编写shell 脚本来完成这些操作,只要执行一个shell脚本,项目就可以自动发布到服务器了,用起来还是比较方便的. 第一步:在linux中安装svn.(这个可以参照另外一篇博客:http://simplelife.blog.51c…
#! /bin/ ] then echo "#### 参数有误,\$1:构建号必填" exit fi cd /root/workspace/xinya_erp/xinya_web git checkout developer git fetch --all git reset --hard origin/master git pull docker rm -f xinyar_erp_web_test cd /root/workspace/xinya_erp/ mvn install c…
部署nginx反向代理三个web服务,调度算法使用加权轮询(由于物理原因只开启两台服务器) AutoNginxNfsService.sh #/bin/bash systemctl status nginx )) then yum install -y nginx )) then #echo 'Yes!' systemctl start nginx )) then echo "Congratulations!! Nginx start OK!!" else echo "Sorr…
#!/bin/bash # 检查操作系统版本,该脚本只能运行在 Centos 7.x 系统上 cat /etc/redhat-release |grep -i centos |grep '7.[[:digit:]]' >/dev/null if [[ $? != 0 ]] then echo -e "不支持的操作系统,该脚本只适用于CentOS 7.x x86_64 操作系统" exit 1 fi # 配置无人值守的安装,定义安装过程中需要用到的一些信息 DBPassword=a…
#!/bin/sh #Auto Make install MFS Files # cat <<EOF ++++++++++++++++Welcome To Use Auto Install MFS Scripts ++++++++++++++++++ +++++++++++++++++++++This MFS Install Version 1.6.27++++++++++++++++++++++ +++++++++++++++++++++++++2013-12-04 Author wugk…
上一篇文章介绍了如何通过添加用户名和密码的方式实现自动化部署服务中与Azure Subscription的连接. 本文将介绍如何使用证书的方式实现Azure Automation与Azure的Subscription的连接方式. 一. 创建证书 通过openssl创建Private Key.Certification和pfx文件: a. 创建Private Key openssl genrsa -out hwazure.key b. 根据Private Key生成crt证书 openssl re…
Azure中已经发布了自动化部署服务的PaaS功能. 本文将介绍自动化服务Automation初始化过程. 在Azure Management Portal上左边可以看到Azure的各种服务,其中一项为自动化,就是Automation的PaaS服务. 选中"自动化",然后点击"创建" 为自动化取名"mytest",目前只有中国北部有Automation的服务: 点击"mytest"进入此Automation: 创建后,先添加用…
Shell脚本一键部署--源码编译安装MySQL及自动补全工具 编译安装MySQL 1.软件包 Mysql安装包 将安装包拖至/opt目录下,编辑一个脚本文件,将以下内容复制进去,然后source或者. 执行脚本,等脚本执行完成,即可使用mysql -u root -p点击回车即可进入. 2.MySQL及自动补全工具一键部署脚本(使用source或./执行脚本!) #!/bin/bash echo -e "----正在验证当前为仅主机还是NAT模式----" ping -c 2 -w…
最近工作需要用到对硬盘进行shell脚本自动化分区和mount的操作,google了一些资料,下面做个总结. 如果硬盘没有进行分区(逻辑分区或者扩展分区,关于两者概念,自行google),我们将无法将使用该硬盘来进行读写.我们要使用一块硬盘需要进行下面三步: 将该硬盘进行分区: 对分区进行格式化: 将分区mount到系统某个目录,便可以访问. 本笔记会着重讲一下第一步中涉及的fdisk分区功能以及如何来使用shell进行自动化处理,过程也会涉及后面两步操作的简单说明. fdisk对硬盘进行分区…
shell脚本编写自动启动服务方法 前言 ln :创建连接文件 默认创建的是硬连接,好比复制 ,但是两个文件会同步命令:ln ./java/android/aa.txt aaa s :创建的是软连接变为指向(类似于windows的快捷方式:In -s 软链接: 1.软链接,以路径的形式存在.类似于Windows操作系统中的快捷方式2.软链接可以 跨文件系统 ,硬链接不可以3.软链接可以对一个不存在的文件名进行链接4.软链接可以对目录进行链接 硬链接: 1.硬链接,以文件副本的形式存在.但不占用实…
公司项目使用了SpringBoot.开发的应用需要自动上传到服务器.虽然目前对热部署还没完全掌握.先使用shell简化一下部署吧. # 上传密钥 sshLoginKey=/f/MyFile/root.key # 项目在本机的目录 MyProject=/d/MyProject/comment # 远程主机上的路径 RemoteHost=root@domainName.com RemotePath=$RemoteHost:/data/ if [ -f "$sshLoginKey" -a -…
1.编写脚本自动部署反向代理.web.nfs: 要求: I.部署nginx反向代理三个web服务,调度算法使用加权轮询: 反向代理服务器脚本配置脚本 #!/bin/bash #安装eple和nginx function install(){ rpm -qa | grep epel &> /dev/null if [ $? != 0 ] then yum install epel -y fi rpm -qa | grep nginx &> /dev/null if [ $? !=…
https://yq.aliyun.com/articles/685931 1.官网下载war包:jenkins本质上就是一个web应用,直接下载jenkins的war包通过tomcat运行即可.http://mirrors.jenkins.io/war-stable/2.150.1/2.将jenkins.war放置在webapps目录下,修改几个参数配置文件编辑conf/tomcat-users.xml 配置tomcat manager用户信息:jenkins自动部署war包时需要到这些配置.…
一.shell脚本部署nginx反向代理和三个web服务 1 对反向代理服务器进行配置 #!/bin/bash #修改用户交互页面 用户输入参数执行相应的参数 #安装epel扩展包和nginx function ng_yum_install(){ yum install epel-release -y yum install nginx -y yum install rpcbind nfs-utils -y } #nginx init function #nginx status #nginx…
最近用jenkins+gitlab+ansible做持续化集成,自动化部署和版本回滚.然而deploy plugin没能做到增量升级和回滚操作,折腾了很久决定自己写个脚本来简单实现. 环境: centos 7.0 64位 gitlab:v2.9.0 git:2.9 jenkins .git plugin.GitLab Plugin.Dynamic Parameter Plug-in等 ansible:2.1.0.0 各工具职能: 1.gitlab做版本管理 2.jenkins根据指定参数,分别执…
监控MySQL服务是否正常,通常的思路为:检查3306端口是否启动,ps查看mysqld进程是否启动,命令行登录mysql执行语句返回结果,php或jsp程序检测(需要开发人员开发程序)等等: 方法1:监听3306端口 方法2:查看mysqld进程 注意注意:如果使用进程过滤的话,脚本名称如果里面包含mysql的话,脚本执行有坑,切记!!!因为会把脚本也grep了一次,导致结果不准确: 执行结果如下: 方法3:双保险,进程和端口都成功才算mysql服务正常 方法4:使用客户端登录mysql执行命…
日常运维工作中,需要给几十上百台服务器批量部署软件或者是重启服务器等操作, 这样大量重复性的工作一定很苦恼,本文给大家提供了最基本的批量操作的方法,虽然效率不高,对于初学者来说还是好理解.由于刚开始学习写脚本,什么 puppt这样的高级工具还不会使用,就简单的利用shell脚本.ssh-keygen.expect来实现.希望能给各位带来帮助,不足之处还请留言 指出,大家共同进步. 首先,需要检查expect是否安装:rpm -qa|grep expect 然后,在操作机上创建公钥:ssh-key…
如果一个系统管理员花费大量的时间解决问题以及做重复的工作,你就应该怀疑他这么做是否正确.一个高效的系统管理员应该制定一个计划使得其尽量花费少的时间去做重复的工作.因此尽管看起来他没有做很多的工作,但那是因为 shell 脚本帮助他完成了大部分任务,这也就是我们将要探讨的东西. 什么是 shell 脚本? 简单的说,shell 脚本就是一个由 shell 一步一步执行的程序,而 shell 是在 Linux 内核和最终用户之间提供接口的另一个程序. 默认情况下,RHEL 7 中用户使用的 shel…
#!bin/bash#功能:自动化部署 varnish 源码包软件,运行脚本前,需提前下载 varnish-5.0.0.tar.gz#作者:liusingbonyum -y install gcc readline-devel pcre-develuseradd -s /sbin/nologin varnishtar -xf varnish-5.0.0.tar.gzcd varnish-5.0.0#使用 configure,make,make install 源码安装软件包./configure…
1.在linux操作系统上手动备份数据库 mysqldump -h 服务器IP地址 -u root -p数据库密码 --databases 所要备份的数据库名称 > /路径/数据库.sql(自定义要生成的sql名称) 2.在linux操作系统上手动还原数据库 mysql -uroot -p密码 < 数据库.sql(如果不是在当前目录下要进行添加具体路径)我是在当前目录下存储运行的 记得要查生成的sql文件,可以进行更改的(不建议进行修改库名,但是大多数可以在表中进行造数据) 3.在linux操…
背景 通过shell判断是否存在补丁更新,进行自动化的部署 代码 #!/bin/sh #Edit:何彦霆 #version: beta #执行环境初始化 source /hxspace/production/bin/setenv.sh #变量说明 #$-外部提供,日期补丁(格式要求BD_2017--) #Paths_Way-补丁存放目录 #Tomcat_Way-tomcat中间件目录 #Tomcat_Start_Way-tomcat中间件启动文件位置(加载so存在该限制,不能直接使用工程下的启动…
[前言] 现在我们的项目发布(从git上拉代码部署到Linux上)是通过脚本来完成,生产和测试环境都是运维在控制,开发联调环境由开发来负责,之前开发环境每次部署都是先在本地打好jar包然后传到服务器上: 每次发布都打包上传,非常的麻烦:于是自己仿照测试环境的脚本改造一下在开发环境下也可以自动部署. [自动化脚本]        一.基本环境(基本环境东西若没有自行百度) 1.Linux操作系统:CentOS 6.8 2.JDK版本:1.8.0_144 3.Maven版本:3.5.2 4.Git版…
在Linux系统中,可以使用fdisk 对硬盘进行分区,但是要手动执行很多命令,这样使用有很麻烦,现在记一个用fdisk 的脚本自动执行. #make partition dd count= fdisk /dev/mmcblk1 << EOF n p +100M n p t c a w EOF 我的硬盘的话是/dev/mmcbl1k1 先对他进行擦除分区表, 然后用fdisk 命令对他进行重新分区. 这里有个小命令就是  << EOF 这个命令是让即将跳到别的shell 终端的命令…
监控httpd服务端口状态,根据端口判断服务器是否启动,如果没有启动则脚本自动拉起服务,如果服务正在运行则退出脚本程序:如果换成别的服务端口也可以,但是脚本程序需要做调整. #!/bin/bash #实时每隔3秒监控HTTP服务状态,服务异常输出报警信息,并尝试启动,服务正常时提示正常运行. web=`netstat -ant | | awk '{print $4}' | awk -F : '{print $4}'` apachelog=/var/log/httpd/service.log '…
一键部署nginx 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 #!/…
这里是举例监控httpd服务端口状态,根据端口判断服务器是否启动,如果没有启动则脚本自动拉起服务,如果服务正在运行则退出脚本程序:如果换成别的服务端口也可以,但是脚本程序需要做调整. #!/bin/bash #实时每隔3秒监控HTTP服务状态,服务异常输出报警信息,并尝试启动,服务正常时提示正常运行. web=`netstat -ant | grep 80 | awk '{print $4}' | awk -F : '{print $4}'` apachelog=/var/log/httpd/s…
设备需要开启Network Boot功能.具体PXE技术就另外提,本文主要讲解配置. 在搭建该服务器之前需要关闭SELinux和iptables不然可能dhcp服务都起不来,客户端收不到IP地址,无法正确访问目录等问题. 关闭SELinux [root@localhost html]# setenforce 0 或者[root@localhost selinux]# vim /etc/selinux/config   # 置为disabled 关闭IPtables [root@localhost…
#!/bin/bash#auto make install LAMP#by authors yehailun #arp和apr-util依赖APR_FILES=apr-1.6.2.tar.gz APR_FILES_DIR=/usr/local/src/apr-1.6.2APR_URL=http://mirrors.ustc.edu.cn/apache/aprAPR_PREFIX=/usr/local/apr APR_UTIL_FILES=apr-util-1.6.0.tar.gzAPR_UTIL…