问题一:sandbox mgr模块.jar \chaosblade-java-agent-0.1.0.jar
问题描述
当我执行“./blade prepare jvm-j/home/work/java8/jdk1.8.0_211--process 14585”时抛出异常
发生的问题
2019-07-23 11:58:45 default WARN loading module-jar occur error! module-jar=/home/work/chaosblade/chaosblade-0.1.0/lib/sandbox/module/chaosblade-java-agent-0.1.0.jar; java.io.IOException: No such file or directory at java.io.UnixFileSystem.createFileExclusively(Native Method) at java.io.File.createTempFile(File.java:2024) at java.io.File.createTempFile(File.java:2070) at com.alibaba.jvm.sandbox.core.classloader.ModuleJarClassLoader.copyToTempFile(ModuleJarClassLoader.java:42) at com.alibaba.jvm.sandbox.core.classloader.ModuleJarClassLoader.(ModuleJarClassLoader.java:49) at com.alibaba.jvm.sandbox.core.manager.impl.ModuleJarLoader.load(ModuleJarLoader.java:120) at com.alibaba.jvm.sandbox.core.manager.impl.ModuleLibLoader.load(ModuleLibLoader.java:76) at com.alibaba.jvm.sandbox.core.manager.impl.DefaultCoreModuleManager.reset(DefaultCoreModuleManager.java:590) at com.alibaba.jvm.sandbox.core.server.jetty.JettyCoreServer.bind(JettyCoreServer.java:196) at com.alibaba.jvm.sandbox.core.server.ProxyCoreServer.bind(ProxyCoreServer.java:39) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.alibaba.jvm.sandbox.agent.AgentLauncher.install(AgentLauncher.java:255) at com.alibaba.jvm.sandbox.agent.AgentLauncher.agentmain(AgentLauncher.java:108) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:386) at sun.instrument.InstrumentationImpl.loadClassAndCallAgentmain(InstrumentationImpl.java:411)
如何复制
1、 准备tomcat服务并运行
2、 ./blade 准备jvm-j/home/work/java8/jdk1.8.0_211——进程pid
3、 查看sandbox日志
环境信息
tomcat 7 spring service1 spring version 4.3.12 os :centos CentOS release 6.4 (Final) blade version 0.1.0
原提问者GitHub用户wanglinan133
参考回答:
问题已解决 在 -Djava.io.tmpdir=/home///**Governance/temp 创建一个temp目录即可 一般这个目录是项目发布目录
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/520454
问题二:无法删除chaosblades.chaosblade.io
我一个月前安装了chaosblade 0.4.0 alpha,我发现无法删除chaosblades.chaosblade.io。当我今天想安装Chaosblad 0.4.0时,我删除了大约三个小时,但它只是保持删除状态,并没有真正删除。
我先执行helm delete,然后它建议我执行kubectl delete crd chaosblades.chaosblade.io
原提问者GitHub用户AnyuanLuo
参考回答:
您可以尝试以下命令重新安装:
1、 使用helm install--set blade.pullPolicy=Always--namespace kube system--name chaosblade operator chaosblade-operator-0.4.0.tgz--no crd hook安装chaosblad operator
2、 重新执行kubectl delete crd chaosblades.chaosblade.io命令以删除chaosblade crd。
3、 等待返回。如果超过5分钟仍未完成,请使用kubectl getblade-o json查看具体的实验信息。你也可以把结果发给我(x.caspar@gmail.com)
4、 如果删除crd成功,则执行helm delete--purge chaosblade操作符来删除chaosblad操作符。
5、 执行helm install--namespace kube system--name chaosblade operator chaosblade-operator-0.4.0.tgz以重新安装chaosblad operator。
原回答者GitHub用户xcaspar
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/520435
问题二:如何将chaosblade工具复制到k8s中的容器?
问题描述
“重点是,对运行中的容器(业务容器,没有 chaosblade 工具)如何做。”
请问你是怎么把故障注入到容器中的呢? 很多业务模块没有golang环境, 你是怎么让你构建故障的脚本在容器中生效的呢?
目前基础资源的故障程序不需要 golang 的环境,直接将工具 copy 到目标容器内执行。
我在前几期看到了这条评论,我想知道你是怎么做到的?容器启动时,您是否将chaosblade工具(如burncpu)放入容器中,这意味着这些工具与您的业务服务一起构建?或者您可以将这些工具动态复制到容器中?
我对chaos工程项目很感兴趣,提前感谢您的支持。
原提问者GitHub用户nkguoym
参考回答:
Dynamic copy chaosblade tools to the running container. You can see the code file: https://github.com/chaosblade-io/chaosblade-exec-docker/blob/master/exec/executor_execin.go
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/520433
问题四:chaosblade服务器模式是如何工作的?
chaosblade服务器模式是如何工作的?在哪里可以看到服务器模式的更多信息或源代码?
参考回答:
可以从下面链接中找到代码: https://github.com/chaosblade-io/chaosblade/tree/master/cli/cmd
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/520432
问题五:chaosblade在redis上做测试。
1、 我想在我的服务器的redis集群上做一些测试,chaosblade能做到吗?
2、 如果它能做到,我该如何执行它。
参考回答:
您必须在redis集群中的每台机器上部署chaosblade工具,并且您可以执行网络、cpu、进程实验来进行测试。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/520429