【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Gremlin 发布原生 Kubernetes 混沌测试功能

  • 2020-01-16
  • 本文字数:1276 字

    阅读完需:约 4 分钟

Gremlin 发布原生 Kubernetes 混沌测试功能

混沌工程平台 Gremlin 发布了原生 Kubernetes 支持,可用于识别、定位和测验 Kubernetes 对象,以便主动识别服务弱点。由于自动发现可以跨主机编排容器,所以它可以在 Kubernetes 基础设施上运行实验。


Gremlin 是一个平台服务,它可以为 Kubernetes、云环境、裸机和无服务器(Serverless )提供混沌实验。混沌工程是一种研究复杂系统在压力下是如何运行的测试方法,其目标是在故障发生之前就能识别出故障。Gremlin 提供了一个攻击框架,可将故障注入到系统中,例如限制关键资源或模拟不可靠的网络。攻击可以按场景分组,且这些场景可运行并记录攻击的结果。


Gremlin 的原生 Kubernetes 支持通过 Gremlin 用户界面或 API 提供对 Kubernetes 对象的测试。在此版本之前,要对 Kubernetes 中的服务进行 Gremlin 攻击,需要定位该服务的容器。由于 Kubernetes 对容器编排进行了抽象,并定期销毁和创建容器,因此尝试定位特定服务的容器可能会比较困难。现在 Gremlin 允许在服务级别而不是容器级别对指定的 Kubernetes 应用程序进行混沌测试。Gremlin 首席技术官(CTO)兼联合创始人 Matthew Fornaciari 表示:


我们的目标是为正在构建和部署现代应用程序的 SRE(Site Reliability Engineer ,网站可靠性工程师)和 DevOps 团队提供必要的工具和流程,以帮助他们在故障影响客户和业务之前,就可以了解系统是如何处理故障的。


Gremlin 的 Kubernetes 测试框架自动化了识别并定位 Kubernetes 原语(例如,node 和 Pod)的过程。配置了网络攻击的用户还可以控制他们想要中断的 Kubernetes 服务流量。


要启用 Kubernetes 测试,用户必须首先通过 helm chart 升级他们的 Gremlin 客户端。Gremlin 客户端升级后,就可以通过 UI 创建攻击,在 UI 中可以使用一个新的 Kubernetes 选项。提供了 Kubernetes 集群和命名空间的列表,可用于过滤要测试的 Kubernetes 对象。这些对象按 Deployment、DaemonSet、ReplicaSet、StatefulSet 和 Pod 进行细分,可以精确定位混沌实验的目标。选择对象后,Gremlin 将提供集群地图,并会突出显示受该实验影响的区域。



来自 Gremlin 博客 Gremlin 攻击用户界面


定义好实验后,Gremlin 将定位底层容器。测试运行时,受影响的容器将会体现在测试结果报告中,并按其所属的 Kubernetes 对象分组。容器的详细信息和日志也会作为实验结果的一部分被提供。


随着 Netflix 的混沌猴子(Chaos Monkey)的出现, 混沌工程开始流行起来。混沌猴子通过随机终止线上的实例来测试服务是如何处理故障的。kube-monkey,一个社区驱动的 Kubernetes 实现工具,同样可以删除集群中的 Kubernetes pod。开源工具 Litmus 提供了一个比 Gremlin 框架更容易配置的测试套件。Litmus 允许用户在 Kubernetes 环境中运行测试套件、捕获日志、生成报告及执行混沌测试。Litmus 还可以作为端到端测试方法的一部分添加到 CI/CD 管道中。


Gremlin 与 Kubernetes 的集成可用于免费版和专业版用户。在某个场景中定位 Kubernetes 还不可用。有关在 Gremlin 中使用 Kubernetes 的更多信息,请查看 Gremlin 文档


原文链接:


Gremlin Releases Native Kubernetes Chaos Testing


2020-01-16 09:002387

评论

发布
暂无评论
发现更多内容

系统学习 TypeScript(一)——认识 TypeScript

编程三昧

typescript

医疗保健行业如何从区块链中受益?

CECBC

AI安全技术总结与展望| 社区征文

herosunly

人工智能 新春征文 2月月更

当前主流视频编码技术浅析| 社区征文

王强

视频编解码 新春征文

扔掉 Electron,拥抱基于 Rust 开发的 Tauri

百瓶技术

rust 前端 框架开发 tauri

虎符Hoo研究院:Cosmos是如何实现链与链的“港口”相连的?

区块链前沿News

Hoo 虎符交易所 虎符研究院 Cosmos

基于CC2530(ZigBee设计)的温度报警器

DS小龙哥

2月月更

晟盾科技加入龙蜥社区,共建开源新生态

OpenAnolis小助手

Linux 开源

学生管理系统模块4作业

刘洋

#架构实战营 「架构实战营」

提权方式及原理简介(面试)

喀拉峻

黑客

Bloom Filter 优化- CrimsonDB系列论文(一)

Emc

存储 LSM-Tree

2022年1月视频行业用户洞察:假期影响下活跃用户开始回升

易观分析

移动视频 视频app

netty系列之:EventExecutor,EventExecutorGroup和netty中的实现

程序那些事

Java Netty 程序那些事 2月月更

你知道MySQL InnoDB 的内存组件有哪些吗?

程序猿阿星

MySQL MySQL InnoDB Buffer Pool

面试突击24:为什么wait和notify必须放在synchronized中?

王磊

面试 java面试

【漏洞分析】反序列化漏洞

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

从冬奥看中国科技(六):千里光伏初长成

脑极体

【架构训练营-模块三】

默光

架构训练营5期

模块 8 作业

miliving

IDP深度 | 企业到底需要何种数据分析挖掘工具?

Baihai IDP

人工智能 数据挖掘 商业智能

网络安全kali渗透学习 web渗透入门 如何进行NESSUS漏洞检测

学神来啦

浪潮国资云:国资为引,助力国企上云用数赋智

浪潮云

云计算运维

记录一些Oracle操作命令

wong

oracle

安卓隐私沙箱来了!Android Privacy Sandbox简介

XCG00

android

网络损伤工具大乱斗

声网

Dev for Dev 网络损伤 网络仿真 网络与传输

迁移学习综述与未来展望 | 社区征文

战场小包

人工智能 迁移学习 新春征文 2月月更

如何理解用户的行为?

石云升

产品经理 用户研究 用户模型 2月月更

浅谈 AI 物联网基础常识 | 社区征文

liuzhen007

AI 新春征文 2月月更

再谈 AI 及未来的趋势 | 社区征文

宇宙之一粟

AI 新春征文 2月月更

Spring Boot AOP 扫盲,实现接口访问的统一日志记录

沉默王二

Java

会声会影2022美颜功能介绍 教你玩转视频美颜

懒得勤快

Gremlin 发布原生 Kubernetes 混沌测试功能_容器_K Jonas_InfoQ精选文章