开发者社区官方技术圈

阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。

阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。

集群状态(value): 集群状态是监控指标中最重要的指标之一,表示集群的健康度。当数值为2.00(RED),代表集群状态异常,该集群存在不可用的主分片,此时执行查询虽然部分数据仍然可以查到,但实际上已经影响到索引读写,需要重点关注。这种情况Elasticsearch集群至少一个主分片(以及它的全部副本)都在缺失中。这意味着索引已缺少数据,搜索只能返回部分数据,而分配到这个分片上的请求都返回异常。可能会影响业务。当数值为1.00(YELLOW),代表集群状态异常,主分片可用,但是副本分片不可用。这种情况Elasticsearch集群所有的主分片已经分配了,但至少还有一个副本是未分配的。所以不会影响业务,但是集群高可用性会被降低。当数值为0.00(GREEN),代表集群状态正常,所有主分片和副本分片都可用。当搜索业务不可用的时候, 第一时间看该监控指标, 如果是2 . 0 0(RED),调用ES接口,使用GET /_cat/health?v 命令,查看status的值是否是red,如果是,优先排查ES集群问题,因为监控页面的数据可能存在延迟。如果该指标为非2.00(RED),优先排查ES客户端应用问题。当该指标是2.00(RED)。

快照状态:该指标是指自动备份功能的快照状态,当数值为-1或者0时,代表服务正常。-1代表没有快照,0代表有快照,1表示正在进行快照,2表示快照任务失败。快照任务失败一般是由于集群不健康或者节点磁盘使用率较高原因导致。

集群写入QPS(Count/Second):集群写入QPS是指集群每秒钟写入的文档数量,通过_bulk API也是计算的写入文档数量,而不是写入请求次数。集群如果出现CPU、内存等资源使用突然增高,优先看下相应时间点,写入或者查询QPS是否有突增。

集群查询QPS(Count/Second):集群查询QPS是指集群每秒钟查询请求QPS数量,查询请求QPS数量是计算的主shard维度,所以查询请求QPS数量与查询的索引主分片数量有关,例如查询的索引有5个主分片,则一次查询请求对应5个QPS。

这里可能会造成疑惑的地方,一是我业务上明明没有这么多请求,但是监控上能看到更多。二是集群中有一些系统默认的索引,kibana、.monitoring-es 也会产生一定的QPS。

节点CPU使用率(%):展示了集群节点CPU使用百分比,当CPU使用率波动较大时,尤其是超过90%,需要重点关注,可能会导致ES服务异常。

节点HeapMemory使用率(%):展示了集群节点内存使用百分比,当内存使用率波动较大时,尤其是超过90%,需要重点关注,可能会导致ES服务异常。另外,当内存使用过高时,会产生GC。

节点磁盘使用率(%):节点磁盘使用率是指各节点的磁盘使用率,建议控制在75%以下,如果没有调整过,集群默认设置是磁盘使用率超过85%,会导致新的分片无法分配。超过90%:ES会尝试将对应节点中的分片迁移到其他磁盘使用率比较低的数据节点中。超过95%:系统会对Elasticsearch集群中的每个索引强制设置read_only_allow_delete属性,此时索引将无法写入数据,只能读取和删除对应索引。不过这个默认设置是支持修改的,修改参数cluster.routing.allocation.

disk.watermark.low、cluster.routing.allocation.disk.watermark.high、cluster.routing.allocation.disk.watermark.flood_stage。

节点load_1m(value):展示了集群中各节点在1分钟内的负载情况,这个字段并不是表示CPU的繁忙程度,而是度量系统整体负载。该指标的正常数值,应该低于对应节点规格的CPU核数。

FullGc次数(count):FullGc次数指标展示了集群中1分钟内的full gc总次数,如果gc次数为0需要关注下。

Exception次数(count):Exception次数指标展示了集群的主日志中,一分钟内出现的ERROR和WAEN级别日志的总个数。

节点网络流入包(count):是指每分钟集群中各节点网络流入流量包的数量,集群如果出现CPU、内存等资源使用突然增高,并且QPS没有增多的情况时,可以关注下节点网络流入包监控趋势。

节点网络流出包(count):是指每分钟集群中各节点网络流入流量包的数量。

集群如果出现CPU、内存等资源使用突然增高,并且QPS没有增多的情况时,可以关注下节点网络流入包监控趋势。

数据流入率(KB/s):是指集群中各节点每秒数据包的流入速率,周期是1分钟。集群如果出现CPU、内存等资源使用突然增高,并且QPS没有增多的情况时,可以关注下节点网络流入包监控趋势。

数据流出率(KB/s):是指集群中各节点每秒数据包的流出速率,周期是1分钟。集群如果出现CPU、内存等资源使用突然增高,并且QPS没有增多的情况时,可以关注下节点网络流入包监控趋势。

节点TCP链接数(count):节点TCP链接数指标展示了集群中各节收到客户端每次发起TCP连接请求的数量。该指标能在一定成都上反应出客户端使用ES的程度,当该指标有增加的情况,要在业务上确认下,是否符合预期。如果不符合预期,要检查下,是否是客户端发起TCP连接长时间未释放,导致节点TCP连接数量突增等原因。

个IO的能力的,所以即使IOUtil达到了100%,也无法说明磁盘的IO打满了,所以无法通过这个指标来衡量磁盘的饱和度,不过可以通过IOUtil的使用趋势,反映出磁盘IO的压力变化。

每秒完成的读请求数量(count):每秒完成的读请求数量是指集群中各节点每秒完成的读请求的数量。

每秒完成的写请求数量(count):每秒完成的写请求数量是指集群中各节点每秒完成的写请求的数量。

每秒钟读取的大小(MB/s):每秒钟读取的大小指标展示了集群中各节点每秒读取的数据量。

每秒钟写入的大小(MB/s):每秒钟写入的大小指标展示了集群中各节点每秒写入的数据量。

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

在实例的基本信息页面下方的节点可视化页签中,将鼠标移动到可用区上,单击迁移。

image.png

然后选择目标可用区,迁移后集群中的节点IP地址会发生变化。如果您在集群配置中指定了节点的IP地址,需要在迁移后更新。迁移成功后,集群将迁移到新可用区下。但控制台基本信息和升降配页面依旧显示旧可用区,此显示不影响在新可用区下使用集群。

image.png

注意:可用区迁移会触发集群滚动重启,迁移时长与集群规模、数据量及负载情况等相关,建议在业务低峰期做迁移。如果集群索引存在副本分片且集群负载处于正常水平(CPU使用率在60%左右,堆内存使用率在50%左右,load_1m低于CPU核数),一般情况下,可用区迁移过程中,集群可持续对外提供服务。如果集群负载过高且索引没有副本,同时业务中存在大量的写入或查询等场景,在可用区迁移过程中,业务可能会出现偶发的访问超时现象。建议在可用区迁移前,在客户端访问机制中配置重试机制,以减小对业务的影响。

确保集群处于健康状态。可通过GET _cat/health?v命令查看集群健康状态。另外,需要检查集群中是否存在状态为close的索引。如果存在,需要open对应索引,否则千亿不成功。

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

image.png

跨可用区部署可以提升集群的容灾能力,系统会自动选择库存充足的可用区创建集群。在索引配置了副本的情况下,当某一可用区出现故障时,剩余的可用区依然可以不间断地提供服务,显著增强了集群的可用性。同时,您可以通过控制台的切流操作,将出现故障的可用区隔离,这时系统会自动在剩余的可用区中补充计算资源,满足业务对资源的需求。

跨可用去部署的操作是在购买阿里云Elasticsearch实例时,可以选择可用区数量。当选择两个或三个可用区时,系统将部署跨可用区的Elasticsearch实例。部署时,系统会自动配置对应个数的可用区,无需手动选择。

跨可用区部署支持单可用区、跨2个可用区、跨3个可用区三种部署方式,各部署方式的适用场景如下单可用区:普通部署模式,适用于非关键任务型的工作(默认)。

跨2个可用区:跨可用区容灾部署模式,适用于生产型的工作,索引的副本个数至少为1。

跨3个可用区:高可用部署模式,适用于具有更高可用性要求的生产型的工作,索引的副本个数至少为2。

注意:必须购买3个专有主节点。所选择的数据节点、冷数据节点及协调节点个数必须为可用区个数的整数倍。

切流与恢复:跨可用区实例部署完成后,如果发现实例中某一可用区中的节点出现问题,可通过切流操作,将来自客户端的流量只传输到剩余的在线状态的可用区中,并从集群中隔离被切流可用区中的节点。当被切流的可用区恢复正常后,可通过恢复操作,将来自客户端的流量传输到所有正常状态的可用区中,并在集群中重新加入被恢复的可用区中的节点。

在基本信息页面底部的节点可视化页签中,完成切流操作,确认后,集群会重启,重启成功后即可完成切流操作。切流成功后,被切流的可用区状态会从在线状态变为下线状态。

image.png

如果切流前,索引是有副本的,而切流后集群健康状态为非正常(黄色)。那么当确认完成切流后,您可以登录Kibana控制台,参考以下命令设置集群参数,使得被切流可用区中的分片分配到剩余的可用区中。分片分配完成后,集群的健康状态就会变为正常(绿色)。

PUT /_cluster/settings
{ ""persistent"" :
{ ""cluster.routing.allocation.awareness.force.zone_id.values"" :
{""0"": null, ""1"": null, ""2"": null}
}
}

如果想恢复,可以在节点可视化页签中,恢复被切流的可用区中的节点。操作提示对话框中,单击确认。确认后,集群会重启,重启成功后即可完成恢复操作。恢复成功后,被恢复的可用区状态会从下线状态变为在线状态。

image.png

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

ES实例基本信息,右上角"更新与升级"。

image.png

操作类型支持更新内核补丁和Elasticsearch版本升级。

更新内核补丁:当系统检测到内核有新特性发布时,会在实例基本信息页面的版本右侧显示有可更新的内核补丁提示,也可以单击该提示升级内核版本。内核升级到最新版本后,该提示隐藏。更新内核补丁不会改变阿里云Elasticsearch实例的版 本。

Elasticsearch版本升级:对Elasticsearch服务的版本进行更新。目前版本升级是比较固定的,并且最多只支持升级到6.7.0。目前只支持5.5.3 -> 5.6.16、5.6.16-> 6.3.2、6.3.2 -> 6.7.0,如果要升级的目标版本超过6.7.0,需要购买一个新的ES实例,然后进行数据迁移,然后释放老的实例。

注意:在升级操作前,必须完成人工检查,建议同时完成集群状态检查和兼容性检查,以便升级操作可以顺利进行。也可以在升级操作的过程中,触发系统自动进行集群状态检查和兼容性检查,并根据页面提示处理异常结果,完成后再重新检查。其中兼容性检查主要适用于版本跨度较大的升级场景,例如5.x升级至6.x。

当升级操作失败时,您可以通过备份的快照还原数据。快照备份所消耗的时间与集群数据量相关,如果集群未开启自动快照备份,且数据量较大,那么第一次快照时间会比较长。主要是为了当升级操作失败时,可以通过备份的快照还原数据。快照备份所消耗的时间与集群数据量相关,如果集群未开启自动快照备份,且数据量较大,那么第一次快照时间会比较长。

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

在实例列表中,找到目标实例,点击其右侧的更多,然后选择降配。

image.png

进入降配界面,能看到当前配置,以及下面截图中的信息。

image.png

配置项具体说明如下,可按需进行配置。

选择变更项:可以选择节点的规格或存储类型,以及存储大小,具体含义同升级配置页面基本一致,系统只展示可变更的规格。每次只能变更一种节点类型的配置,同时支持同一类型节点的多种变更。例如支持变更数据节点规格的同时,变更其存储类型。变更节点数后,集群不会自动重新规划分片,可能导致数据在分片上的分配不均匀。云盘类型降配支持存储性能较高的云盘降配到存储性能较低的云盘,云盘存储性能由高到低依次为:ESSD云盘、SSD云盘、高效云盘,但是系统不支持将ESSD-PL0降配到SSD。降配操作集群会重启,重启成功后即可完成集群降配,降配操作触发的重启方式为滚动重启。滚动重启不会中断集群服务,但可能会影响集群的稳定性,建议在业务低峰期操作。

强制变更:同升级配置强制变更基本一致。

最后勾选服务协议,立即购买。

注意:需要提前检查集群中是否存在状态为close的索引。如果存在,需要将对应索引的状态暂时设置为open,否则变更不成功。

节点磁盘空间和Kibana节点规格,不支持降配操作。

•目前不支持弹性数据节点降配。

•集群需满足以下条件才可降配:

o操作时间间隔对于同一集群,两次降配操作时间间隔不得少于30分钟。

o集群负载集群中可能包含多种类型的节点。节点类型不同,当前CPU使用率和JVM堆内存使用率的要求不同,具体如下。

image.png

o规格降配所选的目标规格的CPU和内存均需大于或等于当前规格的1/2,且不支持将节点规格降配至1核2 GB、2核2 GB、4核4GB和2核4 GB。

o云盘类型降配支持存储性能较高的云盘降配到存储性能较低的云盘,云盘存储性能由高到低依次为:ESSD云盘、SSD云盘、高效云盘,您可以根据需求进行降配。

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

在实例列表中,找到目标实例,点击其右侧的升配。

image.png

进入升配界面,能看到当前配置,以及下面截图中的信息。

image.png

配置项具体说明如下,可按需进行配置。

OpenStore存储:支持升配时开启OpenStore存储功能,或者升配已购买的OpenStore存储冷节点的数量。但是如果集群已开启非OpenStore的冷数据节点,不支持切换至OpenStore存储。另外,目前只有华东2(上海)、华北3(张家口)、华东1(杭州)、华南 1(深圳)、华北 2(北京)地域支持,并且内核小版本需要升级到1.5.0及以上,才可开启OpenStore存储。

实例类型:按需选择。

选择变更项-节点规格:每次只能变更一种节点类型(数据节点、冷数据节点、协调节点、专有主节点、Kibana节点、弹性节点)的规格配置。

选择变更项-磁盘规格:支持存储性能较低的云盘升配到存储性能较高的云盘,云盘存储性能由低到高依次为:高效云盘、SSD云盘、ESSD云盘,您可以根据需求进行升配。系统不支持将SSD升配到ESSD-PL0。

强制变更:如果实例为非正常状态(红色或黄色),且服务已受到严重影响,急需通过扩容来解决,建议使用强制变更(忽略实例的健康状态,耗时较短)。未启用强制变更时,系统默认使用重启方式升配集群。

智能变更:默认开启。开启智能变更时,后端会根据变更操作类型自动选择合适的变更方式。也可以手动关闭智能变更,关闭后,可以指定变更方式,支持蓝绿变更和原地变更。蓝绿变更是指为集群添加相同数量的新节点并拷贝数据,之后无缝切换到新节点,变更过程相对平滑但耗时较长。蓝绿变更会导致节点IP地址发生变化,如果在集群配置中指定了节点IP地址,请在变更完成后及时更新。原地变更是指对集群中所需变更的节点逐个滚动变更。变更无需拷贝数据,时间不受数据规模影响,但会对集群的性能产生一定影响。

最后勾选服务协议,点击立刻购买。

注意:需要提前检查集群中是否存在状态为close的索引。如果存在,需要将对应索引的状态暂时设置为open,否则变更不成功。

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

日志服务目前已支持50多种数据接入方案,其采集对象包括服务器与应用相关日志、物联网设备日志、阿里云产品日志、移动端数据以及多种开源产品中的数据。采集的日志可以通过HTTP、HTTPS、Syslog、Kafka、Prometheus等标准协议存入日志服务。针对海量的数据,日志服务支持千亿级数据实时采集和查询与分析能力,支持多种机器学习语法与函数,可对数据进行变点检测、预测与异常检测、时序聚类、异常对比以及根因分析等处理。为满足不同业务上的数据需要,日志服务还提供了独特的数据加工能力,可用于海量数据的规整、富化、流转、脱敏和过滤。为应对海量数据存储以及查询带来的压力,日志服务支持设置Scheduled SQL作业,对时间窗口为 , 的数据持续连续进行数据特征抽取以及数据量压缩,在保留有效数据特征的基础上极大的降低数据存储投入的成本。

日志服务除了日志采集以及查询的基本功能外还提供其独特的消费与投递功能。

存储在日志服务的数据支持通过多语言多版本SDK、API进行实时消费。同时日志服务可以对接开源以及云上流式计算产品(Storm、Flink、Spark)进行数据实时分析、数据特征抽取以及数据转存等功能。为满足用户对不同数据存储的需要,日志服务支持将数据投递到阿里云OSS、MaxCompute、AnalyticDB MySQL以及 TSDB。而在日志数据的展示方面,日志服务有其独特的可视化解决方案,用户可以快速构建对应的监控服务。为了满足多样的监控系统需要,日志服务支持将数据投递到Grafana、云监控等监控类产品,用户可以基于对应的监控产品构建适合自己的监控预警系统。

日志服务的另一大功能就是告警。日志服务提供了多样的告警渠道,支持通过短信、语音、邮件、钉钉、企业微信、飞书、Slack、通用Webhook等渠道告警,可以满足大多数日常业务预警的渠道需要。同时日志服务的查询与分析功能提供了十多种机器学习算法,开发人员和IT运维人员可结合业务实际需要来使用日志服务的机器学习服务,对海量的日志以及时序数据进行智能监控,包括智能聚类、异常检测、异常预测等。通过结合机器学习流式统计或图算法等进行业务异常检测,当发现异常数据后可以将结果可以直接应用在告警监控任务中。日志服务多样的告警行动策略也使得告警的灵活性以及告警的准确性上更加贴合业务的需要。日志服务支持配置多样的告警行动策略,可以对告警进行指纹去重、分组合并、合并集合去重、告警抑制、告警静默等,解决了同一问题重复告警等问题。

日志服务的数据存储方面支持冷热分层存储,以及时序数据存储两种存储形式。

通过冷热分层存储可以合理降低非热点数据的存储成本。时序数据存储也为对接Grafana等监控提供了可靠的支持。

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

用户访问业务时,整个访问过程大致可以分为三个阶段:页面生产时(服务器端状态)、页面加载时以及页面运行时。为了保证线上业务稳定运行,传统监控方式会在服务器端对业务的运行状态进行各种监控,目前现有的服务器端监控技术体系相对已经很成熟,但是页面加载和页面运行时的状态监控一直比较欠缺。例如:业务方无法第一时间获知用户访问站点时遇到的错误,各个国家、各个地区的用户访问站点的真实速度,不同终端设备访问站点的请求情况。同时每个应用内又有大量的异步数据调用,而它们的性能、成功率都是未知的。ARMS前端监控重点监控页面的加载过程和运行时状态,同时将页面加载性能、运行时异常以及API调用状态和耗时等数据,实时上报到日志服务器。之后业务方可以借助ARMS提供的海量实时日志分析和处理服务,对当前线上所有真实用户的访问情况进行监控。例如可以通过不同页面的访问情况来定位业务瓶颈;通过不同地理位置的访问情况来判断是否区域网络存在问题、系统是否需要针对某些地域访问做出优化等;通过不同网络可以分析系统在不同网络下的表现,从而定位整个应用系统非业务瓶颈问题以及整个应用在复杂环境下的性能情况。

image.png

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

ARMS应用监控探针能够自动发现应用的上下游依赖关系。具体而言,该探针能够有效捕获、智能计算、自动展示不同应用之间通过RPC框架(例如Dubbo、HTTP、HSF等协议)组成的调用链。ARMS支持展示接口调用链路拓扑、数据库调用链路拓扑、NoSQL调用链路拓扑、MQ调用链路拓扑。可以通过相关的应用拓扑轻松发现系统中的性能瓶颈和异常调用。以下是ARMS的调用链路拓扑图,从此链路图中可以看到系统各个组件的请求数量、请求错误数、以及请求响应时长。用户可以根据具体对比具体链路的请求错误数量来发现业务异常,通过查看请求响应时长来查看影响系统性能提升的具体模块,然后根据具体模块接口调用情况分析接口慢调用情况,结合SQL调用分析日志以及业务日志来具体定位出慢调用模块的系统性能瓶颈。当然并不是所有瓶颈都发生在业务层面,当出现系统调用瓶颈是查看对应的业务部署环境也是必要的。ARMS对部署环境监控支持JVM监控、主机监控、Pod监控。通过JVM监控可以看到JAVA应用的GC情况、堆栈使用情况、JVM线程数,这对分析JAVA应用网络调用慢、应用OOM等JAVA应用问题是很有帮助的。主机监控则展示了主机的CPU、物理内存、磁盘、网络流量等重要指标,用户可以根据这些指标来判断是否需要增加业务使用的依赖资源。

image.png

image.png

以上内容摘自《企业级云原生白皮书项目实战》电子书,点击https://developer.aliyun.com/ebook/download/7774可下载完整版

胡嘞嘞 评论 0

公告

阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。

展开