飞天发布时刻:2024年 Forrester 公有云平台Wave™评估报告解读 了解详情
写点什么

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:002567

评论

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

低代码实现探索(四十九)重新梳理前端

零道云-混合式低代码平台

8月书讯 | 10 本新书上市,本本精选

图灵教育

每日一 R「17」类型系统进阶(一)

Samson

学习笔记 8月月更 ​Rust

云原生、云支持与基于云

CnosDB

时序数据库 开源社区 CnosDB infra

带你揭秘华为5G为何地表最强

乌龟哥哥

8月月更

让数据成为企业核心生产力

IT资讯搬运工

常用消息中间件对比

浅羽技术

RocketMQ MQ 消息队列 Rabbit MQ 8月月更

Grafana Labs CEO 关于 Grafana Mimir 的问题答复

Grafana 爱好者

Mimir

权限认证与授权三问三答

浅羽技术

框架 CSRF 认证授权 权限验证 8月月更

leetcode 647. Palindromic Substrings回文子串(中等)

okokabcd

LeetCode 算法与数据结构

分布式事务常见面试题解答

浅羽技术

分布式事务 事务 TCC 两阶段提交改进 8月月更

Hash 算法详细介绍与实现 (二)

迷彩

php 数据结构 hash算法 8月月更 Hash表

Spring @Autowired 注解静态变量

HoneyMoose

头脑风暴:翻转数位

HelloWorld杰少

算法 LeetCode 8月月更

React实战之数据流方向与项目初始化

恒山其若陋兮

8月月更

想不到吧,Mysql在项目中的优化场景这么多

知识浅谈

sql 8月月更

SpringCloud 服务的拆分及远程调用

微服务 SpringCould 8月月更

自定义 Hero 动画的路径

岛上码农

flutter 前端 移动端开发 安卓开发 8月月更

关键软件密码应用研讨会|海泰方圆国产浏览器密码应用分析研究

电子信息发烧客

Spring 最常用的几个注解

HoneyMoose

论企业级微服务架构必备能力

穿过生命散发芬芳

微服务架构 8月月更

Spring @Repository 注解

HoneyMoose

云原生(二十八) | Kubernetes篇之自建高可用k8s集群搭建

Lansonli

云原生 k8s 8月月更

[JS入门到进阶] 前端开发不能写undefined?这是误区!

HullQin

CSS JavaScript html 前端 8月月更

Python 教程之数据分析(2)—— 探索性数据分析

海拥(haiyong.site)

Python 8月月更

(WebFlux)003、多数据源R2dbc事务失效分析

编号94530

spring 事务 spring-data-r2dbc 多数据源 SpringWebflux

Spring @Autowired 注解静态变量

HoneyMoose

最常见的ES面试核心问答知识点

浅羽技术

搜索引擎 倒排索引 ES Elastic Search 8月月更

聊聊实际使用的电源转化电路,分享一些不同场合下的转3.3V电路

矜辰所致

电路设计 8月月更 电源转化

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