tencent cloud

云顾问 - 混沌演练

产品简介
产品概述
产品优势
应用场景
购买指南
购买说明
快速入门
控制台快速上手
API 快速上手
操作指南
经验库
演练任务
故障动作
护栏监控
标签
探针管理
故障动作库
计算
数据库
网络
容器
大数据
负载均衡
消息队列
专线
自定义动作
云直播
权限管理指南
概述
授权策略语法
可授权资源类型
服务授权与角色权限
子用户与授权
API 文档
History
Introduction
API Category
Making API Requests
Task APIs
Template Library APIs
Data Types
Error Codes
常见问题
产品特性问题
动作执行问题
探针问题 FAQ
相关协议
PRIVACY POLICY MODULE CHAOTIC FAULT GENERATOR
DATA PRIVACY AND SECURITY AGREEMENT MODULE CHAOTIC FAULT GENERATOR
联系我们

探针问题 FAQ

PDF
聚焦模式
字号
最后更新时间: 2024-09-26 15:34:19

问题1:探针资源占用情况

CVM 探针

CVM 的故障注入探针为预装在 CVM 主机上的可执行程序(位于 /data/cfg/chaos-executor 目录下),选择特定故障时,会要求安装故障注入探针。故障注入时会执行该程序,探针占用磁盘资源小于1M,在网络故障注入时 CPU 内存占用不超过系统1%,内存和 CPU 压力场景下基本等同于当前配置的压测目标值。

容器探针

安装容器的故障注入探针后,会在集群创建以下资源:
1. 命名空间:tchaos。
2. ClusterRole: chaosmonkey,角色的 rules 如下,这表示探针 operator 将获得对 K8S Api 的相应权限。
rules:
- apiGroups:
- ""
resources:
- namespaces
- nodes
verbs:
- get
- list
- apiGroups:
- ""
resources:
- pods
verbs:
- get
- list
- update
- delete
- create
- patch
- apiGroups:
- ""
resources:
- pods/exec
verbs:
- create
3. ServiceAccount: chaosmonkey,注意在 tchaos 命名空间下。
4. ClusterRoleBinding:绑定 ClusterRole 和 ServiceAccount。
5. Operator:在 tchaos 命名空间下启动名称为 chaos-operator 的 deployment,副本数为1,pod 使用的 ServiceAccount 为上一步创建的 chaosmonkey,最大资源占用为1核2G (Limit)。探针安装后,chaos-operator 会一直处于运行中,消耗集群资源。当考虑控制成本时,请在故障注入后及时卸载探针。
6. 故障注入时,operator 会在目标节点临时创建一个 helperpod 注入故障,helperpod 对目标 pod 没有侵入性(不是 sidecar),此外,为了达到指定压力场景,helperpod 资源占用未做限制;在故障恢复时,临时创建的 helperpod 会被自动删除
7. helperpod 的故障注入日志及实验记录将保存在节点 /var/log/chaos 目录下,通常小于10K。
注意:
helperpod 的故障注入日志数据不会随探针卸载删除,必要时,请手动删除该日志。

问题2:检测发现存在探针状态异常

问题示例

检测探针失败,检测返现存在探针状态异常,请参考文章解决:探针问题FAQ,具体报错信息:NotTriggerScaleUp:1 occurrences in the last 10 minutes;

解决方案

请检查命名空间 tchaos 下的 deployment 负载 chaos-operator,查看 Pod 是否启动。如未启动则查看时间中的异常信息。以下是一些可能限制 Pod 启动的事件类型和对应的解决办法:
事件类型
解决方法
OutOfMemory 或 OutOfCPU
请检查集群中是否有足够的资源来运行探针。您可能需要增加集群的资源或者调整其他工作负载以释放资源。
InsufficientStorage
请检查集群中是否有足够的存储空间来运行探针。您可能需要增加存储空间或者清理无用的数据以释放存储空间。
FailedScheduling
可能是由于集群中没有节点能满足 Pod 的调度需求。请检查 Pod 的调度约束以及集群中节点的状态和标签。
CrashLoopBackOff 或 Error
可能是由于探针的程序错误或者配置问题。请查看 Pod 的日志以获取更多详细信息,并根据日志中的错误信息进行相应的排查和解决。
ImagePullBackOff
可能是由于无法从镜像仓库拉取镜像。请检查您的镜像仓库地址和凭证是否正确,以及网络连接是否正常。
NotTriggerScaleUp
可能是由于集群的自动扩缩容策略没有触发。请检查您的集群自动扩缩容策略配置,以确保在需要时可以正确触发扩容。

问题3:检测发现存在无法自动卸载的探针,需要您先手动卸载

问题示例

安装探针失败,检测发现存在无法自动卸载的探针,需要你先手动卸载。具体请参考文档:探针问题FAQ。

解决方案

在这种情况下,您需要手动删除以下 Kubernetes 资源:
clusterrole: chaosmonkey
clusterrolebinding: chaosmonkey
serviceaccount: chaosmonkey(位于 tchaos 命名空间下)
namespace: tchaos
deployment: cloudchaos-operator(位于 tchaos 命名空间下)
注意:
在手动卸载探针后,您无需自行手动安装新的探针。跳转至探针管理页面进行安装即可。
在卸载探针后,请确保您的集群状态正常,以便新的探针能够顺利安装。如果在安装过程中遇到任何问题,请查看相关日志以获取更多详细信息,并根据日志中的错误信息进行相应的排查和解决。


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈