CN107665114A - 一种利用Rundeck监控应用服务存活的方法 - Google Patents

一种利用Rundeck监控应用服务存活的方法 Download PDF

Info

Publication number
CN107665114A
CN107665114A CN201710874439.0A CN201710874439A CN107665114A CN 107665114 A CN107665114 A CN 107665114A CN 201710874439 A CN201710874439 A CN 201710874439A CN 107665114 A CN107665114 A CN 107665114A
Authority
CN
China
Prior art keywords
parameter
rundeck
node
task
script
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710874439.0A
Other languages
English (en)
Inventor
陈灵敏
周建
韩庆宾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Agricultural Agel Ecommerce Ltd
Original Assignee
Nanjing Agricultural Agel Ecommerce Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Agricultural Agel Ecommerce Ltd filed Critical Nanjing Agricultural Agel Ecommerce Ltd
Priority to CN201710874439.0A priority Critical patent/CN107665114A/zh
Publication of CN107665114A publication Critical patent/CN107665114A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种利用Rundeck监控应用服务存活的方法,本发明采用了开源软件Rundeck作为监控工具,利用它的多节点分发任务的特性,以及定时任务CronTab的支持为基础,实现了一种监控服务存活并多渠道通知的方法。

Description

一种利用Rundeck监控应用服务存活的方法
技术领域
本发明涉及一种利用Rundeck监控应用服务存活的方法。
背景技术
目前,互联网飞速发展,单点应用已经悄然退出,集群化、微服务化的应用正在普及,面对集群化、微服务化的架构,服务的健康则至关重要,并且需要达到及时通知,及时响应的效果。
目前也存在不少监控的方案,有利用JMX,或者第三方监控工具进行监控。但这些方案不是对服务入侵较大,就是不够灵活,又或是通知渠道单一。
发明内容
为了应对灵活的服务存活监控,本发明方法公开了一种利用Rundeck监控应用服务存活的方法,包括如下步骤:
步骤1,编辑Rundeck中的resources.xml文件,定义需要监控的所有节点信息,
步骤2,在Rundeck中新建服务监控的任务A,此任务为监控的基础任务;
步骤3,定义任务参数,包括环境信息参数env和通知方式参数notify-mode;
步骤4,定义任务执行模式为派发到选择的节点,过滤节点的参数为“tags:${option.env}”,这样下面定义的脚本就会在过滤后的节点依次执行;
步骤5,添加一个脚本步骤,脚本为Shell脚本;
步骤6,脚本中使用Rundeck提供取参数的方式,取出步骤1定义的需要监控的所有节点信息和步骤3定义的任务参数;
步骤7,设置通知方法,如短信通知、钉钉通知、邮件通知等等,本发明使用了短信+钉钉通知,因为企业内部一般使用钉钉作为及时聊天工具;
步骤8,检查端口号是否存活,检测进程是否存在,如果端口号不存活或者进程不存在,调用对应的通知方式发送通知。
步骤1中所述节点信息包括ip地址、主机的认证方式、用户名、秘钥、节点的tag标签信息(标识节点的环境,与任务参数env关联)、节点需要监控的端口号或者进程文件位置,以及节点故障接收通知人的电话号码;
步骤6中,所述Rundeck提供取参数的方式为:
NODE_NAME=@node.name@
NODE_HOSTNAME=@node.hostname@
NODE_NAME表示节点名称,全局唯一不能重复;NODE_HOSTNAME表示节点ip。
步骤8中,脚本中使用netstat命令检查端口号是否存活,使用命令kill-0(脚本中操作进程的命令)检测进程是否存在。
步骤8中,根据通知方式参数notify-mode的值,选择对应的通知方式发送通知。
本发明还包括步骤9,根据用户的需要,定义一个新的监控任务B,新监控任务中没有参数,B任务的步骤定义成调用步骤2建立的监控任务A,并传入监控任务A的环境信息参数env和通知方式参数notify-mode;
步骤10,设置新的监控任务B为定时执行。可以使用Crontab表达式定义,例如定义3分钟检测一次,Crontab表达式为**/3***?*。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述或其他方面的优点将会变得更加清楚。
图1为本发明示意图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
实施例
本发明采用了开源软件Rundeck作为监控工具;利用它的多节点分发任务的特性,以及定时任务CronTab的支持为基础,创造了一种监控服务存活并多渠道通知的方法。
包括如下步骤:
步骤1,编辑Rundeck中的resources.xml文件,定义需要监控的所有节点信息,
步骤2,在Rundeck中新建服务监控的任务A,此任务为监控的基础任务;
步骤3,定义任务参数,包括环境信息参数env和通知方式参数notify-mode;
步骤4,定义任务执行模式为派发到选择的节点,过滤节点的参数为“tags:${option.env}”,这样下面定义的脚本就会在过滤后的节点依次执行;
步骤5,添加一个脚本步骤,脚本为Shell脚本;
步骤6,脚本中使用Rundeck提供取参数的方式,取出步骤1定义的需要监控的所有节点信息和步骤3定义的任务参数;
步骤7,设置通知方法,如短信通知、钉钉通知、邮件通知等等,本发明使用了短信+钉钉通知,因为企业内部一般使用钉钉作为及时聊天工具;
步骤8,检查端口号是否存活,检测进程是否存在,如果端口号不存活或者进程不存在,调用对应的通知方式发送通知。
步骤1中所述节点信息包括ip地址、主机的认证方式、用户名、秘钥、节点的tag标签信息(标识节点的环境,与任务参数env关联)、节点需要监控的端口号或者进程文件位置,以及节点故障接收通知人的电话号码;
步骤6中,所述Rundeck提供取参数的方式为:
NODE_NAME=@node.name@#节点名称,全局唯一不能重复
NODE_HOSTNAME=@node.hostname@#节点ip
步骤8中,脚本中使用netstat命令检查端口号是否存活,使用命令kill-0(脚本中操作进程的命令)检测进程是否存在。
步骤8中,根据通知方式参数notify-mode的值,选择对应的通知方式发送通知。
本发明还包括步骤9,根据用户的需要,定义一个新的监控任务B,新监控任务中没有参数,B任务的步骤定义成调用步骤2建立的监控任务A,并传入监控任务A的环境信息参数env和通知方式参数notify-mode;
步骤10,设置新的监控任务B为定时执行。可以使用Crontab表达式定义,例如定义3分钟检测一次,Crontab表达式为**/3***?*。
图1中是一个监控任务具体的流程,每隔3分钟会通过检测端口号的方式检测环境为prod(生产环境)的所有服务节点,并把异常信息通过Dingtalk(钉钉)、sms(短信)通知出去;
根据步骤1,定义了所有节点的信息,例如有一台需要监控的服务节点,节点名称为prod-1,所属的环境为prod,需要检测的端口号为8082,异常通知的接收人手机号码为138********,resource.xml如下配置:
<node name="prod-1"tags='prod,prod-server'description="节点1"
hostname="192.168.10.14"osArch="amd64"osFamily="unix"osName="Linux"
osVersion="3.10.0-327.el7.x86_64"username="prod-server"
ssh-password-storage-path="keys/test/192.168.10.14-prod-server"
ssh-authentication="password"destdir="/home/prod-server/prod-server"
healthPort="8082"mobile="138********"/>
根据步骤2-8,在Rundeck页面定义好基础的检测服务任务check-server;其中通知方法内容因通知通道、服务提供商而异;以检测端口号为服务存活条件,并通过短信、钉钉通知为例的脚本关键点:
利用netstat–lntp|grep“$HEALTH_PORT”判断端口号是否存活;
如果服务不存活,则调用的通知方法,通知提醒消息,通知方法接受自定义服务异常详细与通知对象的手机号码两个参数;
通知方法内部会根据中根据通道参数notify-mode,选择具体的通知通道进行通知;
具体的通道通知方法,因运营商而异。
定义监控prod(生产环境)的任务check-prod-server,check-prod-server的步骤定义为调用任务check-server,步骤的参数为-option.env=prod-option.notify-mode=Dingtalk,sms(表示监控prod环境服务节点,通知方式为钉钉+短信);
在任务check-prod-server页面,编辑任务为定时执行,Crontab中填入“**/3***?*”,保存后任务就会像图1每隔三分钟监控所有服务节点了。
本发明提供了一种利用Rundeck监控应用服务存活的方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

Claims (5)

1.一种利用Rundeck监控应用服务存活的方法,其特征在于,包括如下步骤:
步骤1,编辑Rundeck中的resources.xml文件,定义需要监控的所有节点信息,
步骤2,在Rundeck中新建服务监控的任务A;
步骤3,定义任务参数,包括环境信息参数env和通知方式参数notify-mode;
步骤4,定义任务执行模式为派发到选择的节点,过滤节点的参数为tags:${option.env};
步骤5,添加一个脚本步骤,脚本为Shell脚本;
步骤6,脚本中使用Rundeck提供取参数的方式,取出步骤1定义的需要监控的所有节点信息和步骤3定义的任务参数;
步骤7,设置通知方法;
步骤8,检查端口号是否存活,检测进程是否存在,如果端口号不存活或者进程不存在,调用对应的通知方式发送通知。
2.根据权利要求1所述的方法,其特征在于,步骤1中所述节点信息包括ip地址、主机的认证方式、用户名、秘钥、节点的tag标签信息、节点需要监控的端口号或者进程文件位置,以及节点故障接收通知人的电话号码。
3.根据权利要求2所述的方法,其特征在于,步骤8中,脚本中使用netstat命令检查端口号是否存活,使用命令kill-0检测进程是否存在。
4.根据权利要求3所述的方法,其特征在于,步骤8中,根据通知方式参数notify-mode的值,选择对应的通知方式发送通知。
5.根据权利要求4所述的方法,其特征在于,还包括步骤9,根据用户的需要,定义一个新的监控任务B,新监控任务中没有参数,B任务的步骤定义成调用步骤2建立的监控任务A,并传入监控任务A的环境信息参数env和通知方式参数notify-mode;
步骤10,设置新的监控任务B为定时执行。
CN201710874439.0A 2017-09-25 2017-09-25 一种利用Rundeck监控应用服务存活的方法 Pending CN107665114A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710874439.0A CN107665114A (zh) 2017-09-25 2017-09-25 一种利用Rundeck监控应用服务存活的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710874439.0A CN107665114A (zh) 2017-09-25 2017-09-25 一种利用Rundeck监控应用服务存活的方法

Publications (1)

Publication Number Publication Date
CN107665114A true CN107665114A (zh) 2018-02-06

Family

ID=61098530

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710874439.0A Pending CN107665114A (zh) 2017-09-25 2017-09-25 一种利用Rundeck监控应用服务存活的方法

Country Status (1)

Country Link
CN (1) CN107665114A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271291A (zh) * 2018-09-04 2019-01-25 山东浪潮通软信息科技有限公司 一种服务监控及管理的方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150124128A (ko) * 2014-04-28 2015-11-05 삼성전자주식회사 전자 장치 및 이의 작업 연계 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150124128A (ko) * 2014-04-28 2015-11-05 삼성전자주식회사 전자 장치 및 이의 작업 연계 방법

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ADR5970: "rundeck部署和基本使用", 《CSDN博客》 *
BIGUFO: "自动化管理工具Rundeck", 《简书》 *
海&叶: "rundeck email配置文件配置", 《博客园》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271291A (zh) * 2018-09-04 2019-01-25 山东浪潮通软信息科技有限公司 一种服务监控及管理的方法

Similar Documents

Publication Publication Date Title
US9699207B2 (en) Social engineering simulation workflow appliance
CN109525558B (zh) 数据泄露检测方法、系统、装置及存储介质
CN103430483B (zh) 用于确定通信系统中的关联事件的技术
US8812649B2 (en) Method and system for processing fault alarms and trouble tickets in a managed network services system
US11632320B2 (en) Centralized analytical monitoring of IP connected devices
US20150254969A1 (en) Method and system for providing aggregated network alarms
CN104767748B (zh) Opc服务器安全防护系统
CN104573520B (zh) 检测常驻式跨站脚本漏洞的方法和装置
CN106452955B (zh) 一种异常网络连接的检测方法及系统
US7502716B2 (en) Closed-loop diagnostic method
CN109922026A (zh) 一个ot系统的监测方法、装置、系统和存储介质
CN104899134B (zh) 域名注册服务器自动化测试系统和方法
WO2018001326A1 (zh) 故障信息获取方法及装置
CN103188115B (zh) 一种流量监控的方法和设备
ATE413745T1 (de) Alarm logfile meldung mittels xml tagging
CN103634166B (zh) 一种设备存活检测方法及装置
CN107665114A (zh) 一种利用Rundeck监控应用服务存活的方法
Yang et al. IKE vulnerability discovery based on fuzzing
CN106209456B (zh) 一种内核态下网络故障检测方法及装置
TWI644228B (zh) 伺服器及其監控方法
CN107517111A (zh) 一种动态虚拟局域网管理方法及其装置、网络设备
Lappanitchayakul Development of email and sms based notification system to detect abnormal network conditions: A case study of faculty of business administration, rajamangala university of technology phra nakhon, thailand
CN113448836A (zh) 软件接口测试方法、装置、电子设备及存储介质
CN110401559A (zh) 一种服务器修复方法及装置
ES2812152T3 (es) Un método y un sistema para habilitar una (re)configuración de una red de telecomunicaciones

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20180206

RJ01 Rejection of invention patent application after publication