写点什么

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

评论

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

分布式事务

C++后台开发

分布式 分布式事务 后端开发 linux开发 C++开发

SAP | 常见的命令字段格式

暮春零贰

SAP abap 10月月更

Vue 全部生命周期组件整理

默默的成长

Vue 前端 10月月更

转转推荐场景EE题解决思路

转转技术团队

深度学习 推荐系统

基于 openEuler 22.09 版本构建的 NestOS 全新发布!

openEuler

镜像 操作系统 openEuler

从 0 到 1 上手阿里云服务器 ECS(四)

六月的雨在InfoQ

Docker 阿里云 容器技术 ECS 10月月更

【一Go到底】第十三天---循环控制

指剑

Go golang 10月月更

【kafka问题】记一次kafka消费者未接收到消息问题

石臻臻的杂货铺

Kafk 10月月更

Baklib|FAQ页面是什么?为什么它是必要的?

Baklib

算法评测在本地生活地图技术领域的探索和实践

阿里技术

算法 可解释

煤矿上的女孩

脑极体

FinClip | 2022 年 9月产品更新放送

FinClip

容器云PaaS平台建设中应关注的重点和难点

穿过生命散发芬芳

10月月更 容器云PaaS

Dataphin V3.6版来了!多项能力升级,助力企业提升全链路数据治理能力

瓴羊企业智能服务

IaC示例:Terraform & Ansible自动化创建K3S集群

mengzyou

DevOps ansible IaC Terraform

Vue 状态过度

默默的成长

前端 Vue 3 10月月更

零信任时代企业如何提升访问权限的安全?

FinClip

Vue组件入门(四)组件注册

Augus

Vue 3 10月月更

Spring Boot「05」Annotations 02

Samson

Java Spring Boot 学习笔记 技术笔记 10月月更

从一个工程师成长看自动化运维的过程

阿泽🧸

自动化运维 10月月更

运维监控管理平台 TASKCTL 流程启动的3种不同模式

敏捷调度TASKCTL

大数据 数据仓库 自动化运维 TASKCTL DevOps工具

数据库改造方案 | 同花顺、弘源泰平真实案例分享

TDengine

数据库 tdengine 时序数据库

Bklib|客户体验数字化转型成未来企业升级的新目标

Baklib

数字化转型

免杀实战之面向PHP的WebShell免杀

网络安全学海

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

Baklib|还在为客户服务繁琐感到麻烦?快用帮助中心

Baklib

《新手测试正确的打开方式》

测吧(北京)科技有限公司

软件测试 测试

Baklib|企业文档管过不来?试试新型文档管理

Baklib

基于 Impala 的高性能数仓实践之物化视图服务

网易数帆

大数据 impala 企业号十月 PK 榜 物化视图 Calcite

Vue 组件通信六种方法

默默的成长

Vue 前端 10月月更

37手游基于云平台的大数据建设实践

Apache Flink

大数据 flink 实时计算

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