千家信息网

如何使用DevOps流水线进行拨测

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,这期内容当中小编将会给大家带来有关如何使用DevOps流水线进行拨测,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1. 为什么要拨测对于系统中的一些关键服务,我们通
千家信息网最后更新 2024年11月11日如何使用DevOps流水线进行拨测

这期内容当中小编将会给大家带来有关如何使用DevOps流水线进行拨测,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1. 为什么要拨测

对于系统中的一些关键服务,我们通常会配置监控服务。当故障发生时,能够尽快被检测到,发送通知给关注人。当故障发生后,能够有效地追溯故障过程。
拨测是监控系统中的一个重要环节,能够检测服务的网络质量,并提供实时告警。
在公有云上,云厂商通过广泛分布的拨测节点,提供拨测服务。KubeSphere 是一个以应用为中心的开源容器平台,那么在 KubeSphere 上如何实现拨测功能呢?
这里主要使用 KubeSphere 中的 DevOps 流水线实现拨测功能。

2. 使用 DevOps 进行拨测

主要使用的流水线功能包括:
  • 邮件通知
  • 新建流水线
  • 定时构建

2.1 开启邮件通知

KubeSphere 中 DevOps 的邮件通知不同于通知模块,需要单独配置。可以参考文档,Jenkins 系统设置。
这里,我使用的是 Poste 搭建的独立域名邮件服务。下图是配置页面, EMAIL_ 开头的变量即邮件相关配置。
如果无法确认相关参数,可以先到 Jenkins 系统配置页面对参数进行调试。

2.2 新建一个流水线

这里的拨测,主要分为服务状态码和响应时间两部分,分别由两个并行的 Stage 构成。
测试的原理是,通过 curl 命令获取服务链接的状态码和响应时间,然后与预期值比较。如果满足触发条件,则发送异常通知邮件。
下面是 Jenkinsfile 文件内容:
    
pipeline {
agent any
parameters {
string(name: 'LINK', defaultValue: 'https://kubesphere.io/', description: '待拨测链接')
string(name: 'HTTP_CODE', defaultValue: '200', description: '预期状态码')
string(name: 'TIME_TOTAL', defaultValue: '1', description: '超时时间,单位:秒')
string(name: 'EMAIL', defaultValue: 'kubesphere@mail.xxxx.com', description: '异常时,邮件通知人')
}
stages {
stage( 'default') {
parallel {
stage( '状态测试') {
steps {
script {
try{
sh '' '
export _HTTP_CODE=$(curl --connect-timeout 120 -s -o /dev/null -w \'%{http_code}\ ' $LINK)
if [ "$_HTTP_CODE"> then
exit -1
fi
' ''
}catch(err){
currentBuild.result = 'FAILURE'
mail(subject: "$LINK 访问状态码错误", body: "消息来自 DevOps 流水线,请检查相关服务是否异常。", to: "$EMAIL")
}
}
}
}
stage( '超时测试') {
steps {
script {
try{
sh '' '
_TIME_TOTAL=$(curl --connect-timeout 120 -s -o /dev/null -w \'%{time_total}\ ' $LINK)
TIME_TOTAL=`echo $TIME_TOTAL| awk '{ print int( $0)} '`
_TIME_TOTAL=`echo $_TIME_TOTAL| awk '{ print int( $0)} '`
if [ $_TIME_TOTAL -ge $TIME_TOTAL ]
then
exit -1
fi
' ''
}catch(err){
currentBuild.result = 'FAILURE'
mail(subject: "$LINK 访问超时", body: "消息来自 DevOps 流水线,请检查相关服务是否异常。", to: "$EMAIL")
}
}
}
}
}
}
}
}

2.3 定时构建

成功创建拨测流水线之后,只能人工触发。拨测需要的是, 24 小时无间断地监控。
这时,就需要使用到 DevOps 的定时构建功能。
在流水线页面,依次选择【更多操作】-> 【编辑配置】->滚动页面->【构建触发器】。勾选定时构建,设置每 5 分钟触发一次流水线,填入参数:

*/5 * * * *
最后,点击【确认】,保存即可。

3. 开始拨测你的服务吧

3.1 SUCCESS

在流水线,直接使用预期的参数,进行测试。
执行完毕之后,在【活动】-> 【状态运行】中可以看到执行状态:

3.2 FAILURE

这里我们,有意地将状态码设置为 201,超时时间设置为 0 秒,以触发通知逻辑。
查看执行状态:

上述就是小编为大家分享的如何使用DevOps流水线进行拨测了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

流水 流水线 服务 状态 邮件 配置 功能 参数 时间 系统 测试 内容 故障 页面 监控 更多 消息 链接 分析 检查 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 银行网络安全标准 内蒙古呼和浩特互联网科技 福建推荐服务器租用云主机 数据库数据块和表空间的关系 管理独立的服务器题机试 不用写字的网络安全手抄报 移动互联网创业者服务器怎么选 云服务器安全管理配置 龙潭区网络安全宣传周 威海有几家外企软件开发公司 游戏的数据库在哪里找 济南移动城管软件开发电话 二手书交易数据库课程设计 湖南计算机网络技术那个学校好 国服ptr服务器 青海云超算套料软件开发商 安康软件开发报价 旧服务器 利用 杭州视睿信息科技软件开发 魔兽世界末日行者服务器 数据库技术与应用张千帆 网络安全咨询前景 2020网络安全一封信 成都网络安全生态圈政策 亳州医疗软件开发定制公司 电脑本地数据库突然连不上了 花都网络安全服务 公司软件开发作业流程文档 asp表格显示新增数据库 dnf团本是在一个服务器上吗
0