IT评测·应用市场-qidao123.com

标题: 基于Serverless云函数站点监控的方法 [打印本页]

作者: 玛卡巴卡的卡巴卡玛    时间: 2024-8-16 11:37
标题: 基于Serverless云函数站点监控的方法


背景

      现代化企业与互联网软件IT运维监控范畴,传统的方法是手动编写监控脚本,手动编写监控代码。现代化体系基于B/S架构设计,网站运维过程需要基于HTTP端点进行应用层监控。传统运维监控需要搭建运维监控软件平台,有的使用Zabbix,有的使用其他厂商运维监控工具,这种方法效率低下,还需要自己部署服务器与利用体系,数据库等基础设施,消耗时间成本较大。
解决方案

     核心技术是 云函数(Serverless Cloud Function,SCF)是云为企业和开发者们提供的无服务器实行环境,帮助您在无需购买和管理服务器的情况下运行代码。您只需使用平台支持的语言编写核心代码并设置代码运行的条件,即可在云基础设施上弹性、安全地运行代码。云函数可以实行任何类型的计算使命,从服务网页和处理数据流到调用API和与其他云服务集成。
Serverless 计算的概念是指不需要维护自己的服务器来运行这些功能。云函数 SCF 是一个可完全托管的服务,为你处理全部的基础设施。因此,serverless 并不意味着不涉及任何服务器:它只是意味着服务器、利用体系、网络层和其他基础设施已经被处理好了,以是您可以专注于编写应用代码。
高弹性
根据哀求的并发数量主动调度资源运行函数,实现透明、正确和及时的伸缩,应付业务峰值的访问。用户无需关心峰值和空闲时段的资源需要申请多少资源,体系根据哀求的数量主动扩容/缩容。主动负载平衡将哀求分发到函数运行实例。同时体系会根据流量负载的模式来智能预热实例,以缓解冷启动对业务的影响。
变乱触发
通过变乱触发机制,集成多种云服务,满意差别场景需求,获得高效的开发体验。与云日记服务、云监控服务对接,无需任何配置,即可查询函数日记和监控告警信息,快速排查故障。
高可用
函数运行实例出现异常,体系会启动新的实例处理后续的哀求,故障函数实例占用资源将会接纳使用。
按量计费
根据代码的调用次数和运行时长计费,代码未运行时不产生费用。
a. 解决基于HTTP接口快速运维监控,过程如下:
1、编写简单脚本片段代码
2、部署脚本到serverless无服务器环境
3、配置云函数
4、配置定时器
5、配置消息通知渠道



基于Serverless实现主动化监控的优点

1、无需部署运维监控软件与独立服务器资源,直接使用公有云
2、监控程序与应用体系是分离的
3、可灵活配置多渠道通知
4、支持以下多种语言,编写即可使用, 如
Node.js, Python
概要示例:
(1) 最原始的技术方案:

A、服务端编写监控HTTP接口:根据监控需求编写与设计HTTP协议的REST服务接口,如JAVA应用中在SpringBoot项目中Actuator模块提供了众多HTTP接口端点(Endpoint),来提供应用程序运行时的内部状态信息。;
B、部署服务器搭建监控软件:安装服务器利用体系如Liunx,进行相关防火墙配置,
利用体系配置,基础设施软件安装与部署。部署监控应用软件, 如Zabbix。
C、配置监控HTTP端口:为了确保体系应用运维监控流程,需要测试监控HTTP接口功能,编写脚本代码,然后在运维监控软件Zabbix配置HTTP端点的监控。创建新的Web场景,添加一个场景来监控Zabbix的Web界面。该场景将实行多个步骤。点击配置->主机->选择主机->单击Web监测->创建Web监测。场景第2步,界说场景的步骤,界说场景的步骤->点击步骤->点击添加按钮。
D、持续运维监控:基于运维监控软件配置定时监控目的网站的URL是否触达
(2)进一步的技术方案:更换步骤B:直接接纳无服务器架构下云函数功能,省去部署服务器利用体系,部署运维监控软件过程。

A、服务端HTTP接口:根据业务逻辑编写与设计HTTP协议的REST服务;
B、基于无服务器云函数配置:为了便于运维监控,基于无服务器的云函数,我们可以快速配置监控脚本,实现接口监控。
C、配置监控HTTP端口:函数工作流(FunctionGraph)是一项基于变乱驱动的函数托管计算服务。通过函数工作流,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行
D、持续运维监控:基于运维监控软件配置定时监控目的网站的URL是否触达
(3)进一步的技术方案:如果步骤B是核心创新点,则针对步骤 C、主动生成接口测试代码进一步细化描述,
具体实施例1:基于无服务器架构,快速构建一个一键主动部署的无服务器告警推送解决方案,实现将华为云的资源告警信息推送到客户指定的通知平台(如企业微信)。

具体的子流程步骤如下:

该解决方案部署如下资源:
1. 监控HTTP端点,当网站监控HTTP接口状态变化触发告警规则设置的阈值时,您将收到告警通知。
2. 编写监控脚本代码片段,包含需要拨测目的网站HTTP端点。(可选)消息通知服务 SMN,用于担当来自云监控服务 CES的告警数据,并触发函数工作流 FunctionGraph进行告警推送。
3. 函数工作流 FunctionGraph,该方案使用函数工作流 FunctionGraph调用第三方接口推送告警信息,以消息通知服务 SMN主题作为触发器。
查看已创建函数的“调用次数”、“成功率”和“平均时延”指标的统计数据,并可点击“查看详情”进入函数详情页查询具体的函数类和实例类指标监控数据,比如“服务端错误”、“函数错误”、“触发器哀求入队”、“触发器哀求积压数”、“超时次数”、“平均CPU使用情况”等。
实践

基于企业微信群呆板人webhook集成

     在终端某个群组添加呆板人之后,创建者可以在呆板人详情页看的该呆板人特有的webhookurl。开发者可以按以下说明a向这个地址发起HTTP POST 哀求,即可实现给该群组发送消息。下面举个简单的例子.
假设webhook是:https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa
<a name="4571-1673944763615">特殊特殊要注意:一定要保护好呆板人的webhook地址,避免走漏!不要分享到github、博客等可被公开查阅的地方,否则坏人就可以用你的呆板人来发垃圾消息了。
以下是用curl工具往群组推送文本消息的示例(注意要将url更换成你的呆板人webhook地址,content必须是utf8编码):
<a name="4089-1673944764184">
1. curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693axxx6-7aoc-4bc4-97a0-0ec2sifa5aaa' \
<a name="9278-1673944770742">2. -H 'Content-Type: application/json' \
3. -d '
<a name="8480-1673944770742">4. {
5. "msgtype": "text",
<a name="4424-1673944770742">6. "text": {
7. "content": "hello world"
<a name="2753-1673944770742">8. }
9. }'


函数工作流(FunctionGraph)是一项基于变乱驱动的函数托管计算服务。通过函数工作流,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。别的,按函数现实实行资源计费,不实行不产生费用
<a name="5848-1673944943080">https://www.huaweicloud.com/product/functiongraph.html


以下是基于拨测模板 ,修改编写的本地函数python脚本:

函数概述

主要步骤



在企业微信群告警通知效果
<a target="_blank" href="https://img2023.cnblogs.com/blog/15172/202408/15172-20240816115209013-590204815.png">



函数监控数据



配置定时器


现在通过 smn_topic_urn 参数配置企业微信群呆板人Webhook-KEY


参考函数调用
<a name="2640-1673948048539">https://support.huaweicloud.com/api-functiongraph/functiongraph_06_0125.html


      通过这个方案极大节约资源成本,时间成本,效率高,可靠性高实现网站HTTP端口监控。该方案集成第三方平台,实现低成本、及时完成告警推送,进一步解锁“端·云一体化”的企业化运维场景。接纳无服务器架构,无需运维底层计算资源,无需思量服务可用性、可扩展性等技术问题。Serverless架构在运维层面有着得天独厚的上风,不仅仅因为其变乱触发可以有针对性的获取、响应一些变乱,也因为其轻量化、低运维的特性让许多运维开发者甚是喜好。在现实生产中,如果可以将线上环境的变更以变乱的情势触发函数,由函数进行系列的运维行为利用,那么Serverless将会在主动化运维的过程中发挥出更紧张的作用和更大的价值,也会让传统服务的主动化运维变得更加简单,轻便。


今天先到这儿,盼望对云原生,技术领导力, 企业管理,体系架构设计与评估,团队管理, 项目管理, 产物管理,信息安全,团队建设 有参考作用 , 您大概感兴趣的文章:
<a target="_blank" href="http://www.cnblogs.com/wintersun/p/7912373.html">构建创业公司突击小团队
国际化环境下体系架构演化
微服务架构设计
视频直播平台的体系架构演化
微服务与Docker介绍
Docker与CI持续集成/CD
互联网电商购物车架构演变案例
互联网业务场景下消息队列架构
互联网高效研发团队管理演进之一
消息体系架构设计演进
互联网电商搜刮架构演化之一
企业信息化与软件工程的迷思
企业项目化管理介绍
软件项目成功之要素
人际沟透风格介绍一
精益IT构造与分享式领导
学习型构造与企业
企业创新文化与品级观念
构造目的与个人目的
初创公司人才招聘与管理
人才公司环境与企业文化
企业文化、团队文化与知识共享
高效能的团队建设
项目管理沟通计划
构建高效的研发与主动化运维
某大型电商云平台实践
互联网数据库架构设计思路
IT基础架构规划方案一(网络体系规划)
餐饮行业解决方案之客户分析流程
餐饮行业解决方案之采购战略制定与实施流程
餐饮行业解决方案之业务设计流程
供应链需求调研CheckList
企业应用之性能及时度量体系演变 如有想相识更多软件设计与架构, 体系IT,企业信息化, 团队管理 资讯,请关注我的微信订阅号:

作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保存此段声明,且在文章页面明显位置给出原文连接,否则保存追究法律责任的权利。 该文章也同时发布在我的独立博客中-Petter Liu Blog。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4