IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux下搭建jmeter+svn+jenkins+ant持续集成(CI)框架 -> 正文阅读

[系统运维]Linux下搭建jmeter+svn+jenkins+ant持续集成(CI)框架



前言

提示:基于Linux下搭建的ci框架


一、Linux下部署svn

1.阿里云开放端口并加入安全组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
因为我之前开放过3690端口,这里就不继续了。
在这里插入图片描述
后面加入安全组
在这里插入图片描述
在这里插入图片描述

2.通过yum命令安装svnserve

<1>进入Linux服务器的根目录下:

cd /

在这里插入图片描述

<2>输入yum命令:

yum -y install subversion

在这里插入图片描述

3.创建svn仓库

<1> 创建连级目录,作为svn的根目录

mkdir -p /var/svn/svnrepos

<2>创建svn仓库,名字为:test

svnadmin create /var/svn/svnrepos/test

4.编辑svn账号、密码、配置文件

<1>进入svn配置目录中

cd  ../var/svn/svnrepos/test/conf

<2>vim authz :创建账号,给账号赋予权限,读写

vim authz

在文件结尾添加 账号 = rw
账号自己任意设置,可创建多个账号:
账号1 = rw
账号2 = rw
在这里插入图片描述添加好后保存退出
<3>vim passwd:给创建的账号设置密码

vim passwd

原文不动,在文件结尾追加新建的账号密码 账号 = 密码
保存退出
在这里插入图片描述
<4>vim svnserve.conf:将截图中内容去掉注释,注意,每行前面不要留空格
只是去掉注释!!不是删除整行!!
在这里插入图片描述
保存退出

5.打开防火墙

/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

6.启动svn

svnserve -d -r /var/svn/svnrepos

7.下载svn客户端

进官网:https://tortoisesvn.net/
在这里插入图片描述
在这里插入图片描述
下载速度如果过慢,可以复制下载链接,用迅雷下载

8.安装svn客户端

步骤略,无脑下一步即可

9.svn基础使用

安装好后,鼠标右击Windows桌面
在这里插入图片描述
在这里插入图片描述

输入:svn://ip地址:3690/test ip地址是你服务器的地址

确定后,见此页面,恭喜你,离完活儿不远了
在这里插入图片描述
右键创建库文件夹
在这里插入图片描述
名字可以叫 test
在这里插入图片描述
点击ok后
写备注,说明这个库是干嘛滴
在这里插入图片描述
再点ok,后输入账号密码(前面我们在服务器中配置的账号密码都可以登录)

在这里插入图片描述
SVN Update:更新仓库内容
SVN Commit:提交仓库内容

二、安装docker

1.阿里云开放端口并加入安全组

<1>添加:8000、9000、50000的端口(后面jenkins会用到)

在这里插入图片描述

在这里插入图片描述
<2> 加入安全组
在这里插入图片描述
在这里插入图片描述

2.安装docker

<1>清理旧版本 :

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

在这里插入图片描述
之后敲回车~

<2>安装依赖:

yum install -y yum-utils    

<3>设置镜像仓库:

yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

在这里插入图片描述
<4>安装docker引擎

yum install docker-ce docker-ce-cli containerd.io

<5>linux命令-启动docker

systemctl start docker

<6>查看docker版本

docker version

<7>拉取hello-world镜像

docker run hello-world

<8>查看镜像

docker images

3.配置镜像加速地址,创建daemon.json文件

<1> 创建连级目录

sudo mkdir -p /etc/docker

<2>创建daemon.json文件

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://ukbwllh8.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、部署jenkins

1.docker安装jenkins

<1>运行 Jenkins,并命名为jenkins001的容器

docker run -u 0 -d -p 9000:8080 -p 50000:50000 --name jenkins001 -v v_jenkins:/srv/jenkins_home  jenkins/jenkins:centos7

<2>查看docker日志

docker logs jenkins

2.进入jenkins容器

docker exec -it jenkins001 /bin/bash

在这里插入图片描述

四、jenkins容器内部署jmeter、ant

1.本地上传ant和jmeter的zip压缩包,并复制到jenkins容器内

<1>前置:在Linux的根目录中的opt目录放入压缩包

<2>进入Linux的根目录

cd /

<3>查看Docker中已有容器

docker ps -a

<4>使用docker命令挪动两个zip包到jenkins容器内的opt目录下

docker cp /opt/apache-ant-1.9.16-bin.zip jenkins001:/opt
docker cp /opt/apache-jmeter-5.3.zip jenkins001:/opt

<5>进入jenkins容器内

docker exec -it jenkins001 /bin/bash

2.jenkins容器内解压ant和jmeter压缩包

<1>进入jenkins容器内的opt目录

cd opt

<2>创建jmeter、ant目录

mkdir ant jmeter

<3>移动jmeter的zip包到/opt/jmeter目录下

mv /opt/apache-jmeter-5.3.zip /opt/jmeter

<4>移动ant的zip包到/opt/ant目录下

mv /opt/apache-ant-1.9.16-bin.zip /opt/ant

<5>解压jmeter的zip包

cd jmeter
unzip apache-jmeter-5.3.zip

<6>解压ant的zip包

cd ..
cd ant
unzip apache-ant-1.9.16-bin.zip

3.配置jmeter环境变量

<1>打开文件

vi /etc/profile

<2> 添加jmeter环境变量

export JMETER=/opt/jmeter/apache-jmeter-5.3 
export PATH=$JMETER/bin:$PATH 

export JMETER=/opt/jmeter/apache-jmeter-5.3 。路径改为你安装jmeter的绝对路径
在这里插入图片描述
最后,使用 source /etc/profile 刷新环境变量:

source /etc/profile

<3>进入jmeter的bin目录下,给予jmeter.sh最高权限

cd  /opt/jmeter/apache-jmeter-5.3/bin
chmod 777 jmeter.sh

<4>验证jmeter是否配置成功

jmeter -v

在这里插入图片描述

4.配置ant环境变量

<1>打开文件

vi /etc/profile

<2>在文件末尾添加下面这两行

export Ant=/opt/ant/apache-ant-1.9.16 
export PATH=$Ant/bin:$PATH

export Ant=/opt/ant/apache-ant-1.9.16 .路径改为你安装ant的绝对路径
在这里插入图片描述
最后,使用 source /etc/profile 刷新环境变量:

source /etc/profile

<3>验证ant是否配置成功输入:

ant -version

<4>给予ant文件最高权限

cd /opt/ant
chmod 777 apache-ant-1.9.16

5.将 jmeter/extras 文件夹下的 ant-jmeter-1.1.3.jar 文件拷贝到 ant/lib 路径下

cp /opt/jmeter/apache-jmeter-5.3/extras/ant-jmeter-1.1.1.jar /opt/ant/apache-ant-1.9.16/lib

/opt/jmeter/apache-jmeter-5.3/extras 路径改为你安装jmeter的绝对路径
/opt/ant/apache-ant-1.9.16/lib 路径改为你安装ant的绝对路径

五、Jenkins配置插件+job配置

1.新建项目,空构建,并找到job的工作空间

<1>打开jenkins
在浏览器中,输入:http://你的阿里云ip地址:9000/
输入账号密码,点击登录

<2>空构建job(这里的任务名称为我练习的项目哈)
点击新建Item
任务名称为:不二掌柜持续集成
在这里插入图片描述
不做任何操作,点击保存
在这里插入图片描述
点击立即构建,并查看jenkins的工作空间路径
在这里插入图片描述
点击下面的构建历史,查看此job的工作空间

2.在Linux内,job的工作空间下,放入build.xml文件和jmx脚本,进行本地验证

<1>获取build.xml内容(可以直接拉取我的并使用,但是大家不要上传东西哈)
build.xml文件,请用svn拉取
地址: svn://47.104.65.165/test/Jmeter_API
账号:admin
密码:123456
在这里插入图片描述

<2>编辑build.xml文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<3>进入Linux内,jenkins容器中的job的工作空间内,放入build.xml和jmx脚本

docker exec -it jenkins001 /bin/bash

上传xml和jmx脚本需要用到lrzsz库,所以这里我们安装一下

yun install lrzsz

使用xshell,直接将文件拖进窗口内就ok
在这里插入图片描述
<4>Linux上,本地验证下环境是否可用
进入工作空间路径,输入ant

ant

在这里插入图片描述
当出现上述情况时,需要刷新下环境变量

source /etc/profile

之后再去执行ant

ant

在这里插入图片描述
至此,本地验证ok,下面配置job

3.配置jenkins的svn、ant插件

<1> 配置JDK环境变量
进入jenkins—Manage Jenkins
在这里插入图片描述
点击Global Tool Configuration
在这里插入图片描述
配置JDK,点击JDK安装
在这里插入图片描述
Name名称为:JAVA_HOME
JAVA_HOME为:/opt/java/openjdk (在jenkins容器的根目录里,使用命令:find -name java可以找到)

<2>配置Ant环境变量
点击ant安装:
在这里插入图片描述
Name名称为:ant
ANT_HOME为:/opt/ant/apache-ant-1.9.16 (在jenkins容器的根目录里,使用命令:find -name ant可以找到)

<3>安装svn插件
点击Dashboard中的Manage Jenkins——>Manage Plugins
在这里插入图片描述
选择可选插件tab
在这里插入图片描述
搜索SVN 1.3 Compatibility Plugin,点击Install without restart

注意:1.4的SVN有时候会报错!!!

4.Jenkins内配置邮件发送

进入管理jenkins
在这里插入图片描述
在这里插入图片描述

配置自己的邮件、邮箱通道
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
至此,发送成功
在这里插入图片描述

5.job内配置svn、邮件发送、shell脚本、ant

<1>进入jenkins,点击job
在这里插入图片描述

点击配置
在这里插入图片描述
<2> 配置svn
我的svn路径是:svn://47.104.65.165/test/Jmeter_API
在这里插入图片描述
添加凭证
在这里插入图片描述
在这里插入图片描述
<2> 配置增加构建步骤
点击增加构建步骤——>点击 Invoke Ant
在这里插入图片描述
Ant Version 选择ant(之前在系统设置中配置的ant名称)
在这里插入图片描述
点击高级
在这里插入图片描述
Build File :放入build.xml在Linux中的绝对路径
在这里插入图片描述

<3>配置 执行shell
点击增加构建步骤,选择 执行shell
在这里插入图片描述
写入以下内容
使用/bin/bash来解释执行,#!/bin/bash只能放在第一行:

 #!/bin/bash -il

Jenkins容器进入job工作空间内:

cd /var/jenkins_home/workspace/不二掌柜持续集成

刷新ant环境变量:

source /etc/profile

执行ant脚本

ant

在这里插入图片描述
<4>Job内配置邮件发送
在这里插入图片描述
在这里插入图片描述
最后,应用、保存

邮件发送逻辑
构建失败会发送邮件
如果上次构建失败了,那么第一次构建成功也会发送邮件
如果上次构建成功了,那么后续不会收到邮件

六、部署CI遇到的坑 Q & A

Q:cp /opt/jmeter/apache-jmeter-5.3/extras/ant-jmeter-1.1.1.jar /opt/ant/apache-ant-1.9.16/lib;这步执行的时候,有时候会报错。

A:将步骤拆分,最后将ant-jmeter-1.1.1.jar,复制到了apache-ant-1.9.16/lib下

Q:构建报错

A:jenkins的job工作空间内,没有build.xml文件。后来我是在svn的仓库里加了build.xml文件

Q:构建报错。报了svn、java的一大堆错误

A:安装1.3的svn,1.4版本的不兼容,所以会报错

Q:job配置的系统环境中,ant路径配置错误

A:修改正确的路径

Q:构建报错

A:在后面选择执行shell时,在cd和ant前面加了空格。
配置完环境变量应该及时刷新(source?/etc/profile??刷新环境变量)

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-06 13:35:20  更:2022-03-06 13:37:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:14:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码