如何在物理机上运行混沌试验?

如何在物理机上运行混沌试验?

译文
作者:布加迪 2021-09-28 08:00:00

云计算 借助开源Chaos Mesh,您可以模拟种种故障,并使用Chaos Dashboard这个Web UI直接管理混沌试验。

[[426176]]

【51CTO.com快译】Chaos Mesh®是一个云原生混沌工程(Chaos Engineering)平台,负责编排Kubernetes环境中的混沌。借助Chaos Mesh,您可以模拟种种故障,并使用Chaos Dashboard这个Web UI直接管理混沌试验。自开源以来,Chaos Mesh已被许多公司采用,以确保其系统的弹性和稳健性。但在过去的一年,我们常听到社区的要求,询问服务没有部署在Kubernetes上时如何运行混沌试验。

什么是chaosd?

chaosd是一个增强的工具包,可满足物理机上的混沌测试日益增长的需求。您可能会觉得这个名字很熟悉!那是由于它是从Chaos Mesh中的一个关键组件chaos-daemon演变而来的。

在TiDB黑客马拉松2020上,我们重构了chaosd,使其不仅仅是一个命令行工具。现在有了chaosd v1.0.1,您可以模拟针对物理机的特定错误,然后像什么没发生一样撤消混沌试验。

chaosd的功能特性

chaosd的最新升级版拥有广泛的功能,以下是最突出的几项:

  • 易于使用:可以使用chaosd 命令轻松创建和管理混沌试验。
  • 多种故障类型:可以在不同级别模拟物理机上注入的故障,包括进程故障、网络故障、Java虚拟机(JVM)应用程序故障、压力场景、磁盘故障和主机故障。
  • 多种工作模式:可以将chaosd 用作命令行工具或服务。

事不宜迟,不妨试一试。

如何使用chaosd?

这部分将逐步介绍如何使用chaosd注入网络故障。您的Linux内核版本必须是v2.17或更高版本。

1.下载并解压chaosd

要下载chaosd,请运行以下命令: 

  1. curl -fsSL -o Chaosd-v1.0.1-linux-amd64.tar.gz https://mirrors.chaos-mesh.org/chaosd-v1.0.1-linux-amd64.tar.gz 

解压缩文件。它含有两个文件夹:

  • chaosd含有chaosd的工具入口。
  • tools含有进行混沌试验所需的工具,包括stress-ng(模拟压力场景)、Byteman(模拟JVM应用程序故障)和PortOccupyTool(模拟网络故障)。

2. 创建混沌试验

在这个混沌试验中,服务器将无法访问chaos-mesh.org。

运行以下命令:

  1. sudo ./chaosd attack network loss --percent 100 --hostname chaos-mesh.org --device ens33 

示例输出:

  1. Attack network successfully, uid: c55a84c5-c181-426b-ae31-99c8d4615dbe 

在该模拟中,ens33网络接口卡无法向chaos-mesh.org发送网络数据包或无法从chaos-mesh.org接收数据包。之所以要使用sudo命令,是由于混沌试验修改了网络规则,这需要root权限。

另外,别忘了保存混沌试验的uid。您稍后将在恢复过程中输入该信息。

3. 验证结果

使用ping命令查看服务器是否可以访问chaos-mesh.org:

  1. ping Chaos-mesh.org 
  2. PING Chaos-mesh.org (185.199.109.153) 56(84)  bytes of data. 

执行该命令后,该网站很可能不会响应。按CTRL+C组合键以停止ping进程。您应该可以看到ping命令的统计信息:100% packet loss(100%丢包)。

示例输出:

  1. 2 packets transmitted, 0 received, 100% packet loss, time 1021ms 

4. 恢复试验

要恢复试验,运行以下命令:

  1. sudo ./chaosd recover c55a84c5-c181-426b-ae31-99c8d4615dbe 

示例输出:

  1. Recover c55a84c5-c181-426b-ae31-99c8d4615dbe successfully 

这一步还需要使用sudo命令,因为需要root权限。完成恢复试验后,再次尝试ping chaos-mesh.org,以验证连接。

下几步

1.支持仪表板Web

如您所见,chaosd易于使用。但是我们可以让它变得更简单——面向chaosd的仪表板Web目前正在积极开发中。

我们将继续增强其可用性,并实现更多的功能,比如管理使用chaosd运行的混沌试验以及使用Chaos Mesh运行的混沌试验。这将为Kubernetes和物理机上的混沌测试提供一致且统一的用户体验。

下面的架构只是一个简单的例子:

图1. Chaos Mesh的优化后架构

2.添加更多的故障注入类型

目前,chaosd提供六种故障注入类型。我们计划开发得到Chaos Mesh支持的更多类型,包括HTTPChaos和IOChaos。

如果您有兴趣帮助我们改进chaosd,欢迎选择一个问题单,开始入手!

试一试!

如果您有兴趣使用chaosd,并想探索更多,请查看文档。如果您在运行chaosd时遇到问题,或者有功能请求,请随时创建问题单。我们很想听到您的声音!

原文标题:How to Run Chaos Experiments on Your Physical Machine,作者:Xiang Wang

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/230595.html<

(0)
管理的头像管理
上一篇2025-04-19 07:34
下一篇 2025-04-19 07:36

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注