实验环境及部署参考这里,heapster及influxdb相关配置参考 Influxdb.md.
进入 cassandra 节点, cassandra 容器
执行:
/usr/share/clearwater/crest-prov/src/metaswitch/crest/tools/stress_provision.sh 1000
1)进入 stress-ng 节点, stress-ng 容器 2)删掉 /var/log/clearwater-sip-stress 目录下所有文件 3)进入 /root 目录下创建 stress.sh 脚本,内容为 node_stress.sh 文件内容,其中 stress_time 变量代表每次压力测试的执行时间,单位为分钟。执行:
nohup sh stress.sh &
接下来等待实验结束,开始收集数据即可。
删除 ./data/sla/node , ./data/sla/pod_container, ./data/sla/stress_log 目录下的文件
1)拷贝文件到宿主机:在 stress-ng 节点执行
docker cp $(docker ps | grep rainlf/clearwater-stress-ng |awk {'print $1'}):/var/log/clearwater-sip-stress ./
docker cp $(docker ps | grep rainlf/clearwater-stress-ng |awk {'print $1'}):/root/nohup.out ./clearwater-sip-stress
2)从stress-ng节点拷贝数据到master节点:在master节点执行
mkdir clearwater-sip-stress
scp root@192.168.1.33:/root/clearwater-sip-stress/* ./clearwater-sip-stress
cd clearwater-sip-stress
rm -f *_errors.log # 删除无用的 error log
注:若已经存在clearwater-sip-stress目录,则第1条不需要,但需要删除该目录下的所有文件。
192.168.1.33 为stress-ng 节点的ip地址
3)从master节点拷贝数据到本地:在本地执行
mkdir ~/Desktop/clearwater-sip-stress
scp -P 9000 root@lab205.jios.org:/root/clearwater-sip-stress/\* ~/Desktop/clearwater-sip-stress
4)将 *_caller_status.log 文件拷贝到 ./data/sla/stress_log 目录下
查看 node_metrics.sh 文件
查看 data_request.py, 修改 main 函数中对应路径, 修改 get_container_data 函数中 startTime 和 endTime
并执行之。
这一步包括了将 stress_log 数据合并的操作,需要在步骤6之前进行
查看 data_combine.py,修改 main 函数中对应调用的函数,并执行之。
查看 data_label.py, 修改 main 函数中对应的调用函数,并执行之。
这一步是删除 sla_level == -1 的数据和 successful rate < 0 的数据
执行 data_wash.py
进入 stress-ng 节点, stress-ng 容器,执行
nohup /usr/share/clearwater/bin/run_stress default.svc.cluster.local \
500 120 --initial-reg-rate 100 \
--multiplier 450 &
在 master 节点执行:
nohup ./stress.py 120 &
删除 ./data/fault_load/node , ./data/fault_load/pod_container, ./data/fault_load/stress_log 目录下的文件
参考实验一中方法将stress.log数据从master节点下载到本地,并放入 ./data/fault_load/fault_log 目录下,要求文件名必须为stress.log。
执行 stress_seprate.py 将数据分离
查看 data_label.py,修改 main 函数
查看 data_combine.py,修改 main 函数
@author:lyqun
SLA 实验:lab2_sla.ipynb
faultload 实验:lab3_faultload.ipynb