AWS MemoryDB 可观测最佳实践

AWS MemoryDB 介绍

Amazon MemoryDB 是一种完全托管的、内存中数据存储服务,专为需要极低延迟和高吞吐量的应用程序而设计。它与 Redis 和 Memcached 相似,但具有更高的可靠性和可扩展性。MemoryDB 提供了与 Redis 完全兼容的 API,同时结合了分布式、高可用、持久化和安全性等优势,适用于需要高速缓存、会话存储、实时分析等场景的应用。

观测云

观测云是一款专为 IT 工程师打造的全链路可观测产品,它集成了基础设施监控、应用程序性能监控和日志管理,为整个技术栈提供实时可观察性。这款产品能够帮助工程师全面了解端到端的用户体验追踪,了解应用内函数的每一次调用,以及全面监控云时代的基础设施。此外,观测云还具备快速发现系统安全风险的能力,为数字化时代提供安全保障。

部署 DataKit

DataKit 是一个开源的、跨平台的数据收集和监控工具,由观测云开发并维护。它旨在帮助用户收集、处理和分析各种数据源,如日志、指标和事件,以便进行有效的监控和故障排查。DataKit 支持多种数据输入和输出格式,可以轻松集成到现有的监控系统中。

登录观测云控制台,在「集成」 - 「DataKit」选择对应安装方式,当前采用 Linux 主机部署 DataKit。

采集器配置

  1. 登陆观测云控制台
  2. 点击【集成】菜单,选择【云账号管理】
  3. 点击【添加云账号】,选择【AWS】,填写界面所需的信息,如之前已配置过云账号信息,则忽略此步骤
  4. 点击【测试】,测试成功后点击【保存】,如果测试失败,请检查相关配置信息是否正确,并重新测试
  5. 点击【云账号管理】列表上可以看到已添加的云账号,点击相应的云账号,进入详情页
  6. 点击云账号详情页的【集成】按钮,在未安装列表下,找到 AWS MemoryDB,点击【安装】按钮,弹出安装界面安装即可。

关键指标

指标名称 描述 单位
CurrConnections 客户端连接数,不包括来自只读副本的连接。MemoryDB 使用两到四个连接来监控各种情况下的集群。这是根据 Redis INFO 中的 connected_clients 统计数据得出的。 计数
DatabaseMemoryUsagePercentage 正在使用的集群的可用内存的百分比。这是使用 used_memory/maxmemoryRedis INFO 计算得来的。 百分比
Evictions 由于 maxmemory 限制而被驱逐的密钥数。这是根据 Redis INFO 中的 evicted_keys 统计数据得出的。 计数
PrimaryLinkHealthStatus 此状态有两个值:0 或 1。值为 0 表示 MemoryDB 主节点中的数据未与 EC2 上的 Redis 同步。值为 1 表示数据已同步。 布尔值
NetworkConntrackAllowanceExceeded 由于连接跟踪超过实例的最大值且无法建立新连接而形成的数据包的数量。这可能会导致进出实例的流量丢失数据包。 计数
KeyspaceHits 主字典中成功的只读键查找次数。这是从 Redis INFOkeyspace_hits 统计数据中得出的。 计数
KeyspaceMisses 主字典中失败的只读键查找次数。这是从 Redis INFOkeyspace_misses 统计数据中得出的。 计数
NewConnections 在此期间,服务器接受的连接总数。这是根据 Redis INFO 中的 total_connections_received 统计数据得出的。 计数

场景视图

登录观测云控制台,点击「场景」 -「新建仪表板」,输入 "AWS MemoryDB", 选择 "AWS MemoryDB 监控视图",点击 "确定" 即可添加视图。

监控器(告警)

观测云内置了监控器模板,可以选择从模版创建监控器,并开启适合业务的监控器以及时通知相关成员关注问题,触发条件、频率等信息可以依据实际业务进行调整。

登录观测云控制台,点击「监控」 -「新建监控器」,输入 "AWS MemoryDB", 选择对应的监控器,点击 "确定" 即可添加。

AWS MemoryDB 连接数突增突降异常

AWS MemoryDB 当前被驱逐的密钥过多

总结

通过将 AWS MemoryDB 的原生监控数据集成到观测云平台,用户可以对 MemoryDB 资源水位预警、连接数异常告警、密钥异常告警,提供保障服务稳定性的技术手段,实现业务的连续性,成本优化和性能迭代,企业可以从被动应用故障到主动优化系统,最终提升用户体验和产品竞争力。

相关推荐
zhojiew1 天前
使用Redis Stream订阅HUATUO发布SSE内核可观测性事件并进行AI分析的数据管道实践
运维·hbase·aws
yyuuuzz4 天前
谷歌云使用的几个常见注意事项
运维·服务器·网络·安全·web安全·云计算·aws
zhojiew4 天前
在AWS中国区的EMR集群中实现基于向量语义搜索的HBase运维诊断系统
运维·hbase·aws
yyuuuzz4 天前
独立开发者线上服务运维的几点实践经验
运维·服务器·网络·云计算·aws
zhojiew4 天前
使用DBT(data build tool)集成AWS Athena完成数据处理的实践
云计算·aws
yyuuuzz5 天前
aws的核心概念与常见使用场景
运维·服务器·网络·云计算·aws
zhojiew6 天前
在AWS云上使用EC2 嵌套虚拟化实例部署Cube Sandbox的实践和问题
云计算·aws
yyuuuzz7 天前
国际云服务器的技术特点与使用经验
运维·服务器·网络·数据库·云计算·aws
我是小邵8 天前
从 Supabase 迁移到 AWS 的云架构演进实践
架构·云计算·aws
炸裂狸花猫8 天前
开源身份认证与访问管理平台 - Keycloak(三)公有云Console集成实践(AWS / 阿里云 / OCI)
阿里云·云原生·keycloak·aws·oci·sso