自动化部署测试环境

接口项目部署

  1. 下载部署的war包
    链接: https://pan.baidu.com/s/1Ldwgg7QjS-GiDO4IHQ5JEA 提取码: km66
  2. 项目部署
    第一步:安装java
    yum list openjdk
    yum install java-1.8.0-openjdk.x86_64
    第二步:安装tomcat
    官网地址:https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-8/v8.5.56/bin/apache-tomcat-8.5.56.zip
    (也可以在war包下载的网盘地址里面下载)
    进入你的本地文件路径
    cd /usr/local/will
    下载tomcat
    wget https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-8/v8.5.56/bin/apache-tomcat-8.5.56.zip
    解压zip包
    unzip apache-tomcat-8.5.56.zip
    修改用户组
    chown -R tomcat:tomcat apache-tomcat-8.5.56
    第三步:部署inter-1.0.1.war
    上传war包到/usr/local/will (可以使用rz或者xftp上传)
    解压war包到apache-tomcat-8.5.56/webapps目录
    unzip inter-1.0.1.war -d apache-tomcat-8.5.56/webapps/inter
    进入tomcat目录
    chmod +x bin/*.sh
    启动tomcat
    ./bin/startup.sh
    查看tomcat是否启动
    tail -200f logs/catalina.out
    第四步:访问网站
    curl本机访问
    curl http://localhost:8080/inter/index.html
    关闭防火墙
    service firewalld stop
    远程访问(在外部电脑输入下面的地址)
    http://yourip:8080/inter/index.html
    shell编程与自动化部署
  3. shell基础语法
    1.1定义
    它是一个脚本,并不能作为正式的编程语言。因为是跑在linux的shell中,所以叫shell脚本。说白了,shell脚本就是一些命令的集合。
    创建一个shell脚本:vi test.sh
    输入:#!/bin/bash
    保存退出
    #! 是一种约定标记, 它可以告诉系统这个脚本需要什么样的解释器来执行;
    bash:是Linux标准默认的shell。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个。
    执行:sh test.sh
    ./test.sh (注意,是用./运行的文件,必须要要有x权限)
    1.2变量
    a. 变量的定义和使用
    注意: 1, 变量名和等号之间不能有空格;
    2, 首个字符必须为字母(a-z,A-Z)。
    3, 中间不能有空格,可以使用下划线(_)。
    4, 不能使用标点符号。
    5, 不能使用bash里的关键字(可用help命令查看保留关键字)
    6, #是注释一行
    #!/bin/bash
    #定义变量
    x=1
    #使用值
    echo $x
    b.特殊变量
    特殊变量列表
    $0
    当前脚本的文件名
    $n
    传递给脚本或函数的参数。 η是一个数字,表示第几个参数。例如,第一个参数是$1, 第二个参数是$2。
    $#
    传递给脚本或函数的参数个数。
    $*
    传递给脚本或函数的所有参数。
    $?
    上个命令的退出状态,或函数的返回值。
    $$
    当前Shell进程ID。对于Shell脚本,就是这些脚本所在的进程ID.
    传参:sh test.sh 1 “a b”
    #!/bin/bash
    echo $1
    echo 21.3 运 算 a . 运 算 方 式 1 : 2 1.3 运算 a. 运算 方式1: 21.3a.1((……))计算结果
    #!/bin/bash
    a=2
    b=3
    #加减乘除算术运算
    c= ( ( (( ((a + $b))
    echo c c = c c= cc=(($a - $b))
    echo c c = c c= cc=(($a * $b))
    echo c c = c c= cc=(($a / $b))
    echo c c = c c= cc=(($a <= $b))
    echo $c
    方式二:expr 命令将它的参数当做一个表达式来求值,可以用来进行数学运算。
    注意:在 expr 命令所支持的操作符中,“ | 、 & 、< 、<= 、> 、 >= 、 * ” 这几个需要用 \ 符进行转义再使用。此外,表达式的各字符之间需要用空格隔开。
    #!/bin/bash
    a=2
    b=3
    #expr实现加减乘除
    c=expr $a + $b
    echo $c
    c=expr $a - $b
    echo $c
    c=expr $a \* $b
    echo $c
    c=expr $a / $b
    echo $c
    c=expr $a \<= $b
    echo $c

b. 运算符详解
expr1 | expr2
若 expr1 非零,则等于 expr1 ,否则等于 expr2。
expr1 & expr2  
只要有一个表达式为零,则等于零,否则等于 expr1。
expr1 = expr2
等于(与 == 是同义的),若两式相等则结果为1,不等结果为0
expr1 > expr2
大于
expr1 >= expr2
大于等于
expr1 < expr2
小于
expr1 <= expr2
小于等于
expr1 != expr2
不等于
expr1 + expr2

expr1 - expr2

expr1 * expr2

expr1 / expr2
整除
expr1 % expr2
取余
c. 浮点数(小数)运算
bash 计算器允许在命令行中输入浮点表达式,然后解释并计算该表达式,最后返回结果。可以使用 yum 安装 bc 命令:yum install bc
#!/bin/bash
a=4
b=3
c= ( e c h o " s c a l e = 4 ; (echo "scale=4; (echo"scale=4;a/$b" | bc)
echo c c = c c= cc=(echo “scale=4; a ∗ a* ab” | bc)
echo $c

1.4 if分支
if语句的三种写法

  1. if [ 表达式 ] then 语句 fi
  2. if [ 表达式 ] then 语句 else 语句 fi
  3. if [ 表达式] then 语句 elif[ 表达式 ] then 语句 elif[ 表达式 ] then 语句 …… fi
    注意:[]前后都要有空格,then需要换行
    #!/bin/bash
    a=4
    b=3
    if [ $a == 4 ]
    then
    echo “判断成功!”
    fi
    if [ $a == 3 ]
    then
    echo “判断成功!”
    else
    echo “判断失败!”
    fi
    if [ $a == 3 ]
    then
    echo “a判断成功!”
    elif [ $b == 3 ]
    then
    echo “b判断成功!”
    else
    echo “ab判断失败!”
    fi

1.5 for循环

  1. 下标循环
    从1~10,循环10次
    #!/bin/bash

for((i=1;i<=10;i++));
do
echo $i;
done
2. in遍历
#!/bin/bash

for i in f1 f2 f3 ;
do
echo $i;
done
更多基础语法,大家可以查看帮助文档《Linux命令大全(Linuxidc.com修改版).chm》
2. 自动化运维脚本
2.1 需求分析
自动化的概念就是把手动操作,变成以脚本去完成部署。
我们编写自动化运维脚本的需求就是:把项目部署里面的四步,以shell脚本实现
需求分析:
第一步和第二步都只需要做一次,所以不用写入脚本
主要就是完成第三步。
2.2 deploy脚本实现
上传war包到/usr/local/will (可以使用rz或者xftp上传)
(这一步考虑可以使用手动完成,持续集成的时候,可以借助Jenkins完成)
解压war包到apache-tomcat-8.5.56/webapps目录
(在解压之前,需要先停止tomcat,然后删除项目源文件,再解压)
(在解压之前,需要知道部署的war包路径,处理未输入路径和路径错误的情况)
unzip inter-1.0.1.war -d apache-tomcat-8.5.56/webapps/inter
进入tomcat目录
chmod +x bin/*.sh
(这一步,如果一直用tomcat用户执行,则不需要去操作。)
启动tomcat
./bin/startup.sh
查看tomcat是否启动
tail -200f logs/catalina.out
最终实现结果:
#!/bin/bash
if [ $# == 0 ]
then
echo “未指定部署包”
exit
fi
if [ -f $1 ]
then
echo “正在部署…”
else
echo “部署包不存在”
exit
fi
#关闭tomcat
./bin/shutdown.sh
sleep 2

删除原项目

rm -rf webapps/inter

解压war包

unzip $1 -d webapps/inter

启动tomcat

./bin/startup.sh
sleep 5
echo “部署完成…”

猜你喜欢

转载自blog.csdn.net/weixin_45503499/article/details/108564839