当前位置: 首页 > 工具软件 > Chaos Mesh > 使用案例 >

【Chaos Mesh官方文档】Chaosd Introduction

袁翰池
2023-12-01

总目录

  1. 读我
  2. 关于CM
    CM介绍:这篇文档介绍ChaosMesh的概念,用例,核心优势和架构
    基本功能:这篇文档描述了CM的基本特性,包括错误注入,混沌工作流,可视化操作和安全保证
  3. 安装&部署
    快速开始:这篇文章介绍如何在测试或本地环境开始CM
    使用Helm安装:这篇文章讲如何在生产环境安装CM
    离线安装:这份文档讲如何离线安装CM
    卸载CM:这篇文档讲如何卸载CM,包括使用helm卸载或手工卸载
  4. 管理用户许可:这篇文章讲如何在CM中管理用户许可,包括创建不同角色的用户账号,绑定许可,管理令牌,启用或停用许可授权
  5. 配置混沌实验命名空间:这个章节带你在指定的命名空间配置混沌实验,从而避免其他没有指定的命名空间里注入错误
  6. 运行一个混沌实验
    定义混沌实验范围:这篇文档讲如何定义混沌实验的范围从而精确的控制混沌错误爆炸范围
    定义调度规则:这篇文档讲如何使用CM创建调度任务,从而在一个固定时间创建混沌实验
    运行混沌实验:这篇文档讲如何在CM中创建,运行,观察,暂停,更新和删除混沌实验
    查看混沌实验结果:这篇文档讲如何使用CM查看混沌实验的运行状态和结果
  7. 编排多个混沌实验
    创建CM工作流:
    并行&串行实验
    向工作流发送HTTP请求:类似K8s Job,CM工作流对任何任务都支持任务节点,为了让用户体验更方便,CM在web界面提供一个基于Task的模板创建HTTP请求
    检查工作流状态:
  8. 混沌实验类型
    • Kubernetes
      • Pod错误:这篇文档讲如何使用CM将错误注入pod中从而模拟pod或容器错误
      • 网络错误:这篇文章讲如何使用NetworkChaos模拟网络错误
      • 压力场景:CM提供StressChaos在容器内模拟压力场景,这篇文章将如何创建StressChaos实验和准备相应配置文件
      • 文件IO错误:这篇文档讲如何使用CM创建IO混沌
      • DNS错误:这篇文档讲如何在CM中创建DNS混沌实验从而模拟DNS错误
      • 时间错误:CM提供TimeChaos实验类型,你可以使用这个类型模拟时间偏移场景,这篇文章讲如何创建一个TimeChaos实验及相关配置文件
      • JVM应用错误:
      • Linux内核错误:这篇文章讲如何使用KernelChaos模拟内核错误,这个特性使用BPF在内核相关路径注入IO相关,内存相关错误
      • HTTP错误:这篇文章讲如何通过CM创建HTTPChaos来模拟HTTP错误
    • 物理节点
      • Chaosd介绍:Chaosd是CM提供的混沌引擎测试工具
      • 物理机错误:这篇文档讲如何通过CM制造物理机混沌来在物理机或虚拟机上模拟网络,硬盘,时间,jvm等错误
      • 进程错误:这篇文章讲如何使用chaosd模拟进程错误,这个错误使用go语言提供的杀死指令来模拟进程被杀死或停止的场景
      • 网络错误:这篇文章讲如何使用chaosd模拟网络错误,这个模拟可以使用 iptables, ipsets, tc等通过修改路由和流量控制来完成
      • 宿主机错误:这篇文章讲如何使用chaosd模拟宿主机关闭的错误
      • 压力场景:这篇文章讲如何使用chaosd模拟压力场景,这个特性使用stress-ng在宿主机上产生CPU和内存压力
      • 硬盘错误:这篇文章讲如何通过Chaosd来模拟硬盘错误,这个特性帮助你模拟硬盘读写负载(通过dd)和硬盘填充(通过dd或者fallocate)
      • JVM应用错误:chaosd使用Byteman模拟jvm错误
      • 时间错误:这篇文章描述如何使用chaosd模拟时间偏移的场景.你可以通过命令行模式或者服务模式创建该场景
      • 查找和恢复Chaosd实验:你可以通过条件来查找实验并通过Chaosd使用UID来恢复实验.这篇文档讲如何通过chaosd查找和恢复实验并提供相关例子

正文

原文翻译
Chaosd introductionChaosd介绍
Chaosd is a Chaos Engineering testing tool provided by Chaos Mesh. You need to download and deploy it separately (see Download and deploy). It is used to inject faults into physical machine environments and also recover faults.Chaosd是由CM提供的一个混沌引擎测试工具,你需要单独的下载和部署它(参见下载和部署).它用来向屋里机器环境注入错误和恢复错误.
Chaosd has the following core strengths:Chaosd有以下核心优势
Easy-to-use: You only need to execute simple commands in Chaosd to create and manage Chaos experiments.易于使用: 你只需要在Chaosd中执行简单指令就能创建和管理混沌实验
Various fault types: Chaosd provides various fault types to be injected into physical machines at different levels, including process, network, pressure, disk, host, etc. More fault types are to be added.多样错误类型: Chaosd提供向物理机注入不同级别的多种错误,包括进程,网络,压力,硬盘,主机等,更多的错误将被添加
Multiple work modes: Chaosd can be used both as a command-line tool and as a service to meet the needs of different scenarios.多种工作模式: Chaosd能以命令行和服务林总方式使用来适应不同场景
Supported fault types支持的错误类型
You can use Chaosd to simulate the following fault types:你可以使用Chaosd来模拟以下错误类型
Process: Injects faults into the processes. Operations such as killing the process or stopping the process are supported.**进程:**向进程中注入错误.支持像杀死进程和停止进程这样的操作
**Network: **Injects faults into the network of physical machines. Operations such as increasing network latency, losing packets, and corrupting packets are supported.**网络:**向物理机网络注入错误.支持像增加网络延时,丢包,包损坏这样的操作
Pressure: Injects pressure on the CPU or memory of the physical machines.压力向物理机CPU和内存注入压力
Disk: Injects faults into disks of the physical machines. Operations such as increasing disk load of reads and writes, and filling disks are supported.**磁盘:**向物理机磁盘注入错误.支持像增加磁盘读写负载,填充磁盘
Host: Injects faults into the physical machine. Operations such as shutdown the physical machine are supported.主机:,向物理机注入错误.支持像关闭物理机这样的操作
For details about the introduction and usage of each fault type, refer to the related documentation.参见相关文档获得各种错误类型说明和使用的细节
Operating environment操作环境
Your glibc version must be v2.17 or later versions.你的glibc必须是v2.17或更高版本
Download and deploy​下载和部署
1 Set the version of Chaosd to be downloaded as the environment variable. For example, v1.0.0:

export CHAOSD_VERSION=v1.0.0

To view all released versions of Chaosd, refer to releases.

To download the latest version (not stable), use latest:

export CHAOSD_VERSION=latest

为将下载的Chaosd的版本设置为环境变量,例如v1.0.0

export CHAOSD_VERSION=v1.0.0

参见发布查看所有Chaosd发布版本

使用latest来下载最新版本(不稳定)

export CHAOSD_VERSION=latest

2 Download Chaosd:

curl -fsSL -o chaosd-$CHAOSD_VERSION-linux-amd64.tar.gz https://mirrors.chaos-mesh.org/chaosd-$CHAOSD_VERSION-linux-amd64.tar.gz

2 下载Chaosd

curl -fsSL -o chaosd-$CHAOSD_VERSION-linux-amd64.tar.gz https://mirrors.chaos-mesh.org/chaosd-$CHAOSD_VERSION-linux-amd64.tar.gz

3: Unzip the Chaosd file and move it to the /usr/local directory:

tar zxvf chaosd-$CHAOSD_VERSION-linux-amd64.tar.gz && sudo mv chaosd-$CHAOSD_VERSION-linux-amd64 /usr/local/

3 解压Chaosd文件并移动到 /usr/local文件夹

tar zxvf chaosd-$CHAOSD_VERSION-linux-amd64.tar.gz && sudo mv chaosd-$CHAOSD_VERSION-linux-amd64 /usr/local/

4: Add the Chaosd directory to the PATH environment variable:

export PATH=/usr/local/chaosd-$CHAOSD_VERSION-linux-amd64:$PATH

**4:**添加CHaosd文件夹到PATH环境变量:

export PATH=/usr/local/chaosd-$CHAOSD_VERSION-linux-amd64:$PATH

Work modes​工作模式
You can use Chaosd in the following modes:

Command-line mode: Run Chaosd directly as a command-line tool to inject and recover faults.

Service mode: Run Chaosd as a service in the background, to inject and recover faults by sending HTTP requests.

你可以以以下模式使用Chaosd

命令行模式: 直接以命令行工具运行Chaosd来注入和恢复错误

**服务模式:**以后台运行的服务来运行Chaosd,通过发送HTTP请求来注入和恢复错误

 类似资料: