opensack-mitaka网络性能测试shaker
一、项目介绍
Shaker项目是由Mirantis发起,专门针对OpenStack网络性能的测试工具。通过模拟不同的网络场景和heat模板,创建虚拟机,并在虚拟机里运行iperf、iperf3、netperf等工具来对网络进行自动化性能测试,并且把测试的结果以网页的形式输出。
目前OpenStack的另外一个著名测试工具Rally, 也是由Mirantis发起,可以针对OpenStack进行整体测试,也可以对OpenStack的功能,存储的性能进行压力测试,以及测试磁盘的IOPS,并提供很好的Web展示。
Rally与Shaker各自的侧重点,两个工具结合起来,在OpenStack交付给用户的场景下,可以提供一份相对客观的验收报告。
二、环境说明
需要有一个可用的OpenStack环境,并配置好Heat服务,因为Shaker需要使用编排服务来启动各种场景下的虚拟机,本文环境如下:
controller/shaker | 172.20.5.15/24 |
compute01 | 172.20.5.16/24 |
compute02 | 172.20.5.17/24 |
三、安装配置
1、openstack安装配置
、基础配置 使用本次安装教程,会安装ceilometer+gnocchi集成、heat、FWAAS、VPNAAS、LBAASv1等 # 所有节点全部执行
mkdir /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*repo /etc/yum.repos.d/bak
cat >> /etc/yum.repos.d/openstack-mitaka.repo << EOF
[base]
name=CentOS-$releasever - Base
baseurl=http://172.20.2.44/base enabled=1
gpgcheck=0 [mitaka]
name=mitaka
baseurl=http://172.20.2.44/openstack-mitaka enabled=1
gpgcheck=0 [epel]
name=epel
baseurl=http://172.20.2.44/epel enabled=1
gpgcheck=0
EOF yum install python-cheetah python-gnocchi python-nova libvirt libvirt-devel libvirt-client -y
2、安装配置openstack环境 # 控制节点执行
yum install -y openstack-packstack
packstack --gen-answer-file=openstack.txt
/usr/bin/sleep 5 # 这里第一行修改compute节点对应的IP地址,这里测试compute节点IP地址是172.20.5.16,172.20.5.17,IP地址之间用逗号(,)隔开
sed -i \
-e 's@CONFIG_COMPUTE_HOSTS=.*@CONFIG_COMPUTE_HOSTS=172.20.5.16,172.20.5.17@g' \
-e 's@CONFIG_CEILOMETER_METERING_BACKEND=.*@CONFIG_CEILOMETER_METERING_BACKEND=gnocchi@g' \
-e 's@CONFIG_NAGIOS_INSTALL=.*@CONFIG_NAGIOS_INSTALL=n@g' \
-e 's@CONFIG_SWIFT_INSTALL=.*@CONFIG_SWIFT_INSTALL=n@g' \
-e 's@CONFIG_HEAT_INSTALL=.*@CONFIG_HEAT_INSTALL=y@g' \
-e 's@CONFIG_HEAT_CLOUDWATCH_INSTALL=.*@CONFIG_HEAT_CLOUDWATCH_INSTALL=y@g' \
-e 's@CONFIG_HEAT_CFN_INSTALL=.*@CONFIG_HEAT_CFN_INSTALL=y@g' \
-e 's@CONFIG_NEUTRON_FWAAS=.*@CONFIG_NEUTRON_FWAAS=y@g' \
-e 's@CONFIG_NEUTRON_VPNAAS=.*@CONFIG_NEUTRON_VPNAAS=y@g' \
-e 's@CONFIG_LBAAS_INSTALL=.*@CONFIG_LBAAS_INSTALL=y@g' \
-e 's@CONFIG_MARIADB_PW=.*@CONFIG_MARIADB_PW=root1234@g' \
-e 's@CONFIG_KEYSTONE_ADMIN_PW=.*@CONFIG_KEYSTONE_ADMIN_PW=admin@g' \
-e 's@CONFIG_KEYSTONE_API_VERSION=.*@CONFIG_KEYSTONE_API_VERSION=v3@g' openstack.txt
3、安装前后配置 # 控制节点执行
packstack --answer-file=openstack.txt # 安装过程会修改yum源。这里需要执行如下指令,修改过来
sed -i 's@enabled=.*@enabled=1@g' /etc/yum.repos.d/openstack-mitaka.repo # 漫长的等待之后,如果不报错,进行下面操作 sed -i \
-e 's@type_drivers =.*@type_drivers = flat,vxlan@g' \
-e 's@#flat_networks =.*@flat_networks = *@g' /etc/neutron/plugins/ml2/ml2_conf.ini # 对接gnocchi后期配置
openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT event_dispatchers gnocchi
openstack-config --set /etc/ceilometer/ceilometer.conf api gnocchi_is_enabled true
openstack-config --set /etc/ceilometer/ceilometer.conf dispatcher_gnocchi filter_project services
openstack-config --set /etc/ceilometer/ceilometer.conf dispatcher_gnocchi archive_policy low
openstack-config --set /etc/ceilometer/ceilometer.conf dispatcher_gnocchi resources_definition_file gnocchi_resources.yaml openstack-service restart ceilometer # 在计算节点1上执行ssh互信
sed -i \
-e 's@nova.*@nova:x:162:162:OpenStack Nova Daemons:/var/lib/nova:/bin/bash@g' /etc/passwd echo nova | passwd --stdin nova su - nova # 在计算节点2上执行ssh互信
sed -i \
-e 's@nova.*@nova:x:162:162:OpenStack Nova Daemons:/var/lib/nova:/bin/bash@g' /etc/passwd # 修改成自己的计算节点IP地址 echo nova | passwd --stdin nova su - nova # 修改成自己的计算节点IP地址
ssh-keygen -t rsa -f ~/.ssh/id_rsa -P '' ssh-copy-id -i .ssh/id_rsa.pub nova@172.20.5.17 ssh-keygen -t rsa -f ~/.ssh/id_rsa -P '' ssh-copy-id -i .ssh/id_rsa.pub nova@172.20.5.16
4、在控制节点上配置NFS共享存储 # 在公司openstack上创建一个cinder卷,挂载到controller节点上,作为共享存储盘使用。如果只是作为测试建议100G可用 # 分区,格式化 # 分区
fdisk /dev/vdc <<EOF
n
p
1 w
EOF # 格式化
mkfs.xfs /dev/vdc1 # 挂载
mount /dev/vdc1 /opt/nova/instances/ # NFS共享
yum -y install nfs-utils rpcbind -y mkdir -p /opt/nova/instances
echo "/opt/nova/instances 172.20.0.0/16(rw,no_root_squash,no_all_squash,sync)" > /etc/exports
exportfs -r
chmod -R 777 /opt/nova/instances/
systemctl enable rpcbind.service
systemctl start rpcbind.service
systemctl enable nfs-server.service
systemctl start nfs-server.service
5、2个计算节点使用NFS showmount -e 172.20.5.15
mount -t nfs 172.20.5.15:/opt/nova/instances /var/lib/nova/instances/
chown -R nova.nova /var/lib/nova
openstack-mitaka安装配置
2、shaker安装配置
yum install git gcc-c++ python-devel
git clone http://git.trystack.cn/openstack/shaker
cd shaker
pip install . cd ..
source keystonerc_admin export ELEMENTS_PATH=shaker/shaker/resources/image_elements
disk-image-create -o shaker-image.qcow2 centos vm shaker
ubuntu16.04源
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
ubuntu16.04源
opensack-mitaka网络性能测试shaker的更多相关文章
- TCP/UDP网络性能测试工具 - Netperf (zz) ..网络测试工具
在构建或管理一个网络系统时,我们更多的是关心网络的可用性,即网络是否连通,而对于其整体的性能往往考虑不多. 除了netperf以外. 还有很多其它的网络性能测试工具. 如db, ...
- 网络性能测试工具iperf详细使用图文教程
Iperf是一个网络性能测试工具.Iperf可以测试TCP和UDP带宽质量.Iperf可以测量最大TCP带宽,具有多种参数和UDP特性. Iperf可以报告带宽,延迟抖动和数据包丢失.利用Iper ...
- 网络性能测试工具iperf详细使用图文教程【转载】
原文:http://blog.163.com/hlz_2599/blog/static/142378474201341341339314/ 参考:http://man.linuxde.net/iper ...
- 微软Azure云主机及blob存储的网络性能测试
http://www.cnblogs.com/sennly/p/4137024.html 微软Azure云主机及blob存储的网络性能测试 1. 测试目的 本次测试的目的在于对微软Azure的云主机. ...
- 网络性能测试工具Iperf/Jperf解读
Iperf 是一个网络性能测试工具.Iperf 可以测试TCP 和UDP 带宽质量.Iperf 可以测量最大TCP 带宽,具有多种参数和UDP 特性. Iperf 可以报告带宽,延时抖动和数据包丢失. ...
- 网络性能测试工具-Iperf
一.简单介绍 Iperf是一个网络性能测试工具,Iperf可以测试TCP和UDP带宽质量,Iperf可以测量最大TCP带宽,具有多种参数和UDP特性.Iperf可以报告带宽,延迟抖动和数据包丢失.利用 ...
- netperf 网络性能测试
Netperf是一种网络性能的测量工具,主要针对基于TCP或UDP的传输.Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求 ...
- IPERF 网络性能测试
Iperf 是一个网络性能测试工具.Iperf可以测试最大TCP和UDP带宽性能.Iperf具有多种参数和UDP特性,可以根据需要调整.Iperf可以报告带宽,延迟抖动和数据包丢失. Iperf 参数 ...
- ethr 微软开源的tcp udp http 网络性能测试工具
ethr 是微软开源的tcp udp http 网络性能测试工具包包含的server 以及 client 我们可以远程测试 同时对于https icmp 的支持也在开发中,tcp 协议支持连接.带宽. ...
随机推荐
- eclipse欺骗了我
Java源文件(.java)和Java的字节码文件(.class)跟 package 是个什么关系? 平时使用 eclipse 的时候,发现 .java 文件目录必须和 package 包名保持一致, ...
- Java Synchronized 与 ThreadLocal 异同
同:都是为了线程安全 异:synchronized是利用锁的机制,使变量或代码块在某一时该只能被一个线程访问.而ThreadLocal为每一个线程都提供了变量的副本, 使得每个线程在某一时间访问到的并 ...
- Python高级教程-生成器
生成器(Generator) 通过列表生成式,可以直接创建一个列表.但是,受内存限制,列表的容量肯定是有限的.而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几 ...
- sql server等待类型
sql server 各种等待类型-转 sql server各个等待类型及解决办法:https://www.sqlskills.com/help/waits/writelog/其他等待类型的描述和解决 ...
- 008-CentOS添加环境变量
在Linux CentOS系统上安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到环境变量之前,执行“php -v”命令查看当前php版本信息时时, ...
- Linux学习笔记—文件与文件系统的压缩与打包(转载)
压缩文件的用途与技术 例如,计算机都是以byte单位来计量的,1byte占8bit.如果存储数字1,那么1byte就会空出7bit.采用一定的计算方式,压缩这些空间可以大大降低文件存储. Linux系 ...
- easymake cmake xmake nmake ...
最简单的Makefile,但是还是大程序少不了makefile工具 #CC=arm-linux-gnueabihf-CC=target: $(CC)gcc -o algo_main algo_m ...
- GIT学习笔记(5):变基
GIT学习笔记(5):变基rebase 变基 引入变基 在Git中整合来自不同分支的修改主要有两种方法:merge以及rebase. 整合分支最容易的方法是merge,他会把两个分支的最新快照以及两者 ...
- nginx ip无法访问
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙步骤. 1.关闭firewall: systemctl stop firewalld.service #停止f ...
- python中命令行参数
python中的命令行参数 python中有一个模块sys,sys.argv这个属性提供了对命令行参数的访问.命令行参数是调用某个程序时除程序名外的其他参数. sys.argv是命令行参数的列表 le ...