前言
本文主要探讨政务云下,使用容器方式部署服务时,整体配套的阿里云产品,同时介绍主要使用的基础产品及这些产品使用的一些建议。
下文对于阿里云产品的使用介绍基于目前的政务云版本,与公有云版本存在一定差异,仅供参考。
部署架构
-阿里云
arms
业务实时监控服务
客器
Java服务
Arms-agent
三
监控报菩服务
acs
edas
logtail
容器服务
企业级分布式应用服务
SlS
日志服务
拨测服务
STb
负载均衡
由于线上环境稳定要求较高,因此加入了拨测 和 监控报警服务,为项目单独开发,本文暂不做介绍。
产品介绍
EDAS(企业级分布式应用服务)
使用方式
edas的发布主要有两种方式基于ESC集群部署和基于k8s集群部署(需要配合阿里云的容器服务使用)
同时,edas也提供了微服务的注册中心和配置中心
tips
- 使用edas+acs实现无损发布(发布期间流量不中断)
滚动发布 + Readiness配置,配置健康检查的接口,只有通过了Readiness检测,流量才会打到此pod。
应用生合元销告理
Prestop配
Poststart配置
Liveness配置
Readiness配置
lnitiaIDelaySeconds
C
10
PeriodSeconds
1
SuccessThreshold
1
TimeoutSeconds
3
FallureThreshold
TcpSocket
HttpGet
选将模式
不设置时默认为PODIP
Host
*Path
语机入1000以上的端口
HTTP
Scheme
变量值
名称
HttpHeaders
添加
ACS(容器服务)
使用方式
容器需要对外暴露服务时,是不可使用pod Ip + 端口的,这只在k8s集群内部可识别,正确的做法是使用容器服务配置服务,容器服务本身是提供了slb负载均衡的地址段的。(使用EDAS发布时,EDAS也可直接配置负载均衡,但需要关联SLB,较为不便,不推荐)
向阿里云
页
合运芒局
Changzhouzwynetdol
岗体中文
产品
全郎黄医件
ApsaraUn-mana0er
创生服务
旺
@
服务-Kubermeles
高称:
荐空
default
Dot-aD0-36-300-0wy
合名神日
四:
缝订肉
公网
口
名
天
外新
橄吉
新产小
应用
口
关长:
dockerLyw71225188
天状市
详
LoadDal
10.147.9109:80
更新
外东东旺:
有状
Lacal
23478118:81
Laad8
情!丸新
哈冷迎星牛
天
沈口捷印:
阳分口
议
名本0
计传
平新
22347862:80
LOBdBE
定时63
TCP
98080
详
10.147.9.139:5001
Loadcal
更新
品合淘
降信明
加血地批配名款
Tee
10.147.9108-60
午店
灾奇
振越
加
发布
companent-apioawe
市份
kubernares
Cuserl
安新
姓业与安线
创出
详伯
更新
御
子YAML
济由
Let-dlng:00TOP
口
乐
223477.20:80
kwding
应用配
Lhywding-30075To
店喷
Llaywwdinginterns:B0TCD
10:1479.106:80
llyw-ding-ntemal
10:171223.94
净传史所
byw-cng-nteinal:304301CP
营家7
口lhwr-openr-ap
10.171.101.235
半伯1无新
223.4元7.145:80
中
LW00+1+30830522TOP
实排龙挡
应用门卖
SLB (负载均衡)
使用方式
基于k8s发布的服务,SLB中无法直接选择相应的服务器,需要手动添加服务ip地址(上面容器服务中配置服务的负载均衡地址)
选择服务器
配置端口和权重
IDC服务器IP
与IDC连通的VPC
操作
IDC服务器名称
移除
请选择
添加
SLS(日志服务)
使用方式
集群部署时,日志分散在各个节点上,查看日志时,需要切换各个节点查看,极为不便(容器方式还需要多一步进入容器,更为麻烦)。
sls采集容器服务的日志时,需要把logtail配置到镜像内,同时采用机器组格式,多台服务器通过同一个自定义标识实现机器组弹性伸缩。(容器每次重启pod ip会变更,不适合使用固定IP)
# 获取安装logtail的脚本 wget http://data.cn-hangzhou-zwynet-d01.sls-pub.internet.cloud.zj.gov.cn/logtail.sh # 安装logtail sh logtail.sh install # 修改机器组标识 echo dayu-compute-yufa > /etc/ilogtail/user_defined_id
tips
- sls的默认全文索引,基于分词查询的,可以根据需要配置分词符 (默认配置中 . 并不是分词符)
查询分析
Logstore名称
dayu-comoute-yufa
日志聚类
全文素引
大小写敏感
包含中文
分词符
:0N02@8<Antr
指定字段查询
自动生成索引
开启查询
包含中文
开启统计
出除
字段名称
大小写敏感
类型
分词符
别名
1.全文索引性和字段素引性必须至少启用一种
2,素引类型为long/double时,大小写教感和分词符属性无效
3.如何设置素引请参考文档说明
4.打开对应列的统计功能,才能使用SQL进行快速统计分析.
以默认配置为例,以下日志搜IOException并不能搜到日志, 需要搜java.io.IOException,因为默认 . 并不是分词符,需要按完整分词搜索
内容
source_10.172.2.241
lyw-compute-pre-http-7686dd94b-6rhk8
tag_:hostname_
tag_:path_:hogs/lkyw-compute/lkyw.og
tag_:receive_time_:
1616381451
tag_user_defined_id_:dayu-compute-yufa
topic_
content:m/20210220509ORU
exception
java.io.oException:
Connectionresetbypeer
atsuN.CI.HEDISPATCHERIMPI.EADoNativeMethod)
atsun.nio.ch.SocketDispatcher.readiathrja:
atsun.nio.ch.JoUtil.readlntoNativeBuffer(otijava:223)
atsun.nio.ch.JoUtil.read(ioutijava:192)
atsun.nio.ch,SocktchnnelmpL.readckhlja
ationetybuerPooledUnsaDcuseBysooleUneircyeutjava288
ationettybufferAbstraciByteBu.wteBytes(AbstractByteButava:115)
ationetychanelsocketnioNosockechaj
AIM
atiotyChaLnioNj
ationetty.channeinioNiovLoop.processele...展开
source101722.241
- 基于格式化字段的搜索 如 ElapseTime > 1000,需要给该字段加数值索引,否则不生效
ElapseTime:85
Requestld:342529196911086237
Result:s
ResultCode:SUCCEss
ServiceType:QUERY_SECURITYCODE
StartTime:1616381537554
StartTimeFommat:2021-03-2210:52:17
source10.170.2.166
tag_.hostnamedo
dockerlkyw-7dia22514812-4b796
Nogs/kyw/monitor.log
path_:/o
tag
userdefined_id_lkyw-service-prd
tag
topic
Nprdkwserv
Bpdhtaiv
zkpt-gyy-logs
坏垫
Qprd-kyww-servicemonitor
查间分析
日吉库
+
LoDNo名标
pra-isws-fervee-monect
口表质类
379257
41分
40分15秒
36分45秒
它
e
大小能区
统计医
原烛日志
日志耀类
零数照入
狼通间
快分折
以中文
@IogtanR
回
1
0322105217
3亚开
Q
T
:20002@&2AnV
分讯片
B快无间
ElapseTime
@毛外家
指定手贸香询
自动牛版梦引
Reguestia
开白单习
G可视化贩示重
开启保计制除
塑份名件
包含中文
贵名
实型
大小弓敏1店
分订符
long
ElaoseTime
T日xI
DO070&AnLE
REquEstld
03221052:17
2048
计段(上9)人长女
1,全让出:公品
2x2为egitel,大小三菲40分日,日伴无效
1如何借三充专车文佳尊期
打开对应列的统计功,才便川SQ坛行快运统计分析,
0322105217
<1-1下贝>
取消
确定
- 基于分词符,索引的修改只能对后续接入的日志生效,并能不影响之前的数据
- 同一个文件,只能被一个Logtail的配置收集,不支持同时被多个logtail配置收集
- 不要使用极简模式(单行) 模式采集日志,异常栈会被认作是多行日志,集群模式下,会出现错序,使用极简-多行 或正则模式匹配行首即可
ARMS(应用实时监控服务)
使用方式
使用jar包方式部署时,不需要额外的配置即可接入arms;使用容器部署时,需要将探针拷贝到镜像中,同时指定相应的启动命令。
# 拷贝ARMS探针 COPY ArmsAgent.zip ArmsAgent.zip # 启动命令 # 启动后端服务 java -javaagent:/data/arms/ArmsAgent/arms-bootstrap.jar -Darms.licenseKey=#{licenceKey} -Darms.appName=#{appName} -jar java.jar --spring.profiles.active=${activeProfile}
tips
- 慢SQL巡检优化 (可以使用接口快照查看是由哪些接口引起的)
4天
prod-lkxyw
成用息资
SCL分析
二饭话产
按口快监
相觉
异华分析
L千时自日家致民品板具
京用订佑
透时入
SQ调用统计/每小时
按口月
533m8/50891810
172.31.43.563306kyw
张招汽月
172314383306vzw)
843m/710
INO
500
No
应月资蛋
300
03220000
032205.00
昨作
SO1百句
所三东用
只用次效北
平均样时!
SELECT
ARACOOELPEIEDRATEMOPTECOORELAMBDSODMERLOUOMEDTACDY
E.GOODS.NAME
678ms
安军线计楼口快
orec-yw
LOADPICELOAODEUILCELLCOUBOOUECOUPOYCOOECOUOECOMACOO
mWEEDHIEFQRDRUTLD1
?
andarea.codeE?
vhdepte-numAs1s.ehiclapte.colorAs25.
vEhicla.5ouco
VehIDaDLATEIDAS0S.
wehiclo.comnane
SelEct
AS35
vehidleightA
gpslatgpsangle
WEHIcJOCOMAS'4S
淘电统计接口快误
599ms
oroc-llzyw
677
here
LEFTJOINGPS.-cUTENT9OSON
baseownarvehiclaNehica
oNVEhicle.plate_idgpepatod
andwahiclenightin
velclecomname
vehiclepllecolorAs25
ehidesource
YGdepte_nummAs*15
AS35
welclelnighlAS55
DrcCIyw
LEFTJOINPECUTERLOPS
baseawerwchidewchida
GIVEhiclepLaleidHOps
gpsplutea
Wee
andwehideareaplava?
andwehidelnightin
Andwehidesouee?
W.oRlgLnKamIng_Ope
selectwid
WpLATENO
WeWTLEvEl
WImn_Spoed
W.SP9Ad
w.createtlme
562.7m
步手关计二
orcc-kyw
WObLIO
wevtenD_UIME
WdCLnAmE
w.comP_NO
W.OBLoPO.NO
WAItHude
wloEPdlnt
- 异常分析,可以辅助测试发现一些隐蔽的问题(可以使用接口快照查看是由哪些接口引起的)
今天
应月期片
异三分析
误分析
杭觉
按口恢监
SOL分析
成时间:/住工放/异常效具
京用伴估
果云统计/每小时
8入
接口转用
iapl..playbackiquery-waybll...578.5oms/200
16K
系空讯
laplrvebloverviewivehicle
12K
8K
Lapi...icomplancwcnts/41352
应用设三
4K
iaph.Mw-yenicle-statisuciouer.
032205.00
03-2210.00
03220000
fapt.iquerLwwehicleDistnbu.10
api./lv-vehiclestalisticquer01.92ms/13/00
用e-日
教
B作
632.70ms/80/0/13
秘品mcm
iaph.Acompanystatishcqu47650ms/10/010
:地
71260
调用的计按口快照详店
172.23ms/69/0/0
心赔五生地起
laplyvebyammos/search
39100m5/210/0
iaptnicomplainlevents/4378
mmthlloztLwcmmm
383.71ms/93/0/0
rapl.iplayback/query-linack-lime
lm.itarb
st.rotiog.ta
消用汁口快盛牛病
mnrutinc.atch
36207ms/191/0/0
js8Lwe.rtioo.ghxom
0TrmwRi
33017m5/527070
YapNEncecua/staTstc
328.02m5/471070
apizlby3/personal-info
JAVEELLc
SOOELOAeAYo心
LSLSLEALJVEO
调用计将口快盛详伯
S
?iapt.micomplainlevents(4386
时LLLGISNNSooL
AEELUSERSNIGWEEEEERLORSLERLSIVE249
284.00ms/1/0/0
Lapi...icomptainevenls4376
- 调用链路,耗时分析优化 & 错误排查, 调用栈中会将每一步的耗时打印出来,另外,如果该接口出错,调用栈也会展示在哪个方法中抛出了异常
业务外体
prod-lkywtlapilopen-apiwv2isecunitycode)
中表
podIYIN
行号
时非菲(单3
用方法
152ml
ToMCatSaNKaIP1ocoas
152ms
111
CipawacacadmacorestanoardHostwawemok(orgapach..
152m`
908
AgsrnglaneucrkwsbsendFaneworkSerlelcoPos
52
152ms
comANGIdauCAoPhEA.cLent.V2.openaPl.OpenAPIC...
coniwnaecoudlywacokcsuonsenicaimcLsgn..
152
oms
163
0ms
GomMAaacloudlkywaafplicalionserviceimclSqn
63
mg
77
152M5
151ms
68
6m
62
6ns
ims
ot:saihmtinoms
30
saCTm.en5ms
235
0ms
145mm
47
35m8
44
44
5mE
argspinglraneAarkhbodienlAbsind
52ms