ITPub博客

首页 > 大数据 > 数据挖掘 > 博睿数据首家支持阿里云函数计算 为Serverless环境赋能

博睿数据首家支持阿里云函数计算 为Serverless环境赋能

数据挖掘 作者:CaraSun 时间:2020-12-10 17:39:24 0 删除 编辑

中国APM(应用性能管理)技术领导厂商博睿数据(股票代码:688229)今天宣布,已在业内率先与阿里云达成合作,成为首家支持阿里云函数计算的厂商,从而能够为阿里云用户的Serverless运行环境赋予完整的APM、应用全局监控和管理能力,助推云计算相关业务的发展。


发布于2017年的阿里云函数计算,是中国最早的Serverless云产品。其免运维、极速、自动、弹性扩缩容、按需付费等优势吸引了大批开发者和企业。2019年,CNCF基金会的调查问卷显示, 46%的回 应者选择了阿里云函数计算部署 Serverless 应用,位居中国第一。


然而,Serverless在简化开发者运维负担的同时,也对可观测性提出了诸多新的挑战。FaaS无实例的概念,运行环境和关键指标(如 CPU)的黑盒,细粒度单一责任多函数互相调用,函数访问其他云服务分布式链路追踪等都让传统开发者感到不适应,也加大了发现,调查分布式系统中问题的难度。


秉持“让IT运营更智能”的品牌理念,博睿数据 认为,对APM技术的应用不应仅限于传统的服务器、虚拟机或容器之中,而在Serverless运行时更加需要 APM技术的全面监控与管理能力。

本文将重点介绍在函数计算运行环境内启动Bonree APM探针,并将函数计算指标收集至博睿数据产品服务端的过程,以提供完整的APM体验。


01、部署、测试函数

使用函数计算自定义镜像功能完成函数的构建和部署。

FROM  golang:1.12.17

RUN  apt update && apt install -y zip && apt install -y vim
ADD  ./bonree-golang-sdk-v1.3.97444-x64 /go/src/bonree-golang-sdk-v1.3.97444-x64
RUN  cd /go/src/bonree-golang-sdk-v1.3.97444-x64/bonree-agent-sdk && sh ./install.sh
RUN  go get github.com/bonreeapm/go && go get github.com/bonreeapm/go/common && go get github.com/garyburd/redigo/redis && go get github.com/go-sql-driver/mysql
RUN  cd /go/src/bonree-golang-sdk-v1.3.97444-x64/github.com/bonreeapm/go/sample && go build -o /fc-app ./main.go && chmod -R 777 /opt/bonree-agent-sdk/
ADD  ./start.sh /start.sh
ENTRYPOINT  [ "/start.sh" ]


调用函数

while   true ;  do   curl  https://{account-id}.{region}.fc.aliyuncs.com/2016-08-15/proxy/test-apm/bonree-golang/setURL;  done


02、查看函数请求监控

函数计算具有事件驱动、请求粒度的成本计费,因此对于请求数量和延迟的追踪是FaaS监控的基础能力。博睿数据APM探针支持HTTP请求数量,状态,延迟的显示、报警。博睿数据APM提供的的百分位延迟(P95, P99)指标简化对函数计算的长尾、冷启动等事件的发现。

图片

03、实例级别监控

函数计算默认不提供实例(函数容器)级别的监控,博睿数据基础监控无需额外配置即可对函数单个容器实例展示CPU、内存使用、连接数、文件打开数等指标进行监控。实例级别的监控可以清楚地观测到函数计算的冷启动、扩缩容时机和行为。单个实例级别的CPU、网络带宽、负载、文件打开数等指标也极大地丰富了函数计算的默认监控指标集,帮助开发者在Serverless黑盒中定位性能和可用性问题。

图片

图片
04、链路追踪

Tracing能力对于Serverless FaaS服务是可观测性的刚需,Serverless FaaS应用通常有以下特点:


//
· 函数责任单一
· 应用中涉及多个函数调用
· 函数会调用其他云服务或第三方服务
//


在函数计算中借助博睿数据APM探针可以实现无侵入,零代码改动对HTTP服务,SQL/NoSQL数据库,MQ进行链路追踪,分析长延迟链路,在复杂的分布式系统中快速定位,响应问题。


图片


05、函数调用链Profiling

与基于传统常驻实例虚拟机或容器环境不同,函数计算实例拉起、销毁十分频繁。开发者不允许进行SSH或是exec进入容器中查看日志、性能profiling等操作。因此将细粒度的代码调用链可以简化调查问题难度。然而调用链埋点技术门槛偏高,博睿数据APM无侵入模式支持代码调用链,让分布式性能profiling在Serverless环境中变成可能。

图片


Serverless FaaS对于运维效率提成和成本优化的同时,其请求级别的运行模式对可观测性提出了诸多新的挑战。 阿里云函数计算使用中,博睿数据APM获得以下高级可观测能力:



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69948960/viewspace-2741195/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-09-20

  • 博文量
    49
  • 访问量
    27943