packstack allinone + vxlan 用vbox的虚拟机搭建openstack(单节点双网卡)

来源:互联网 发布:图片整理软件lr 编辑:程序博客网 时间:2024/05/16 12:58

1.实验环境

vbox先创一台虚拟机,环境如下:

条目 配置 os centos66 64bit 内存 4G 处理器 3 磁盘大小 30G

网络配置

这里写图片描述

vbox所建虚拟机网卡配置:
net0(网卡1):10.20.0.0/24 Host-Only#2 PCnet-PCI II 混杂模式:全部允许
net1(网卡2):72.16.0.0/24 Host-Only#3 PCnet-PCI II 混杂模式:全部允许
net2(网卡3):192.168.4.0/24 Host-Only#4 PCnet-PCI II 混杂模式:全部允许
网卡4:NAT

2.搭建openstack

1.启动虚拟机(当物理机用)后,为其配置网卡(eth2暂时先别设置onboot=no,以后有别的用途)
eth0 : 10.20.0.201 management network
eth1 : 172.16.0.201 public/external network
eth2 : 192.168.4.201 private network

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED=yesBOOTPROTO=staticIPADDR=10.20.0.201NETMASK=255.255.255.0
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1TYPE=EthernetONBOOT=yesNM_CONTROLLED=yesBOOTPROTO=staticIPADDR=172.16.0.201NETMASK=255.255.255.0
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth3
DEVICE=eth3TYPE=EthernetONBOOT=yesNM_CONTROLLED=yesBOOTPROTO=dhcp
[root@localhost ~]# service network restart

3.安装packstack

[root@localhost ~]# yum install -y https://repos.fedorapeople.org/repos/openstack/openstack-icehouse/rdo-release-icehouse-4.noarch.rpm
[root@localhost ~]# yum -y install openstack-packstack
[root@localhost ~]# packstack --allinone
这个过程有点漫长,一般网络稳定的话还是比较顺利的,如果报错并且每次错点都不一样,但都是关于包下载失败的,极有可能是网络不好的原因,因为都是国外的源,建议使用好的网络执行这一步。这一步执行成功后会出现以下内容:

这里写图片描述

这时ls会看到

这里写图片描述

[root@localhost ~]# cat keystonerc_admin export OS_USERNAME=adminexport OS_TENANT_NAME=adminexport OS_PASSWORD=77f0f98899ce4cdaexport OS_AUTH_URL=http://10.20.0.201:5000/v2.0/export PS1='[\u@\h \W(keystone_admin)]\$ ']\$ '

在这里可以看到登录用户名和密码

4.登录dashboard+创建网络

这里写图片描述

登陆以后删除默认的网络和路由,创建我们自己的网络

这里写图片描述

并添加路由,最后形成的网络拓扑如下:

这里写图片描述

然后创建虚拟机,创建失败,报如下错误:

这里写图片描述

此时可以去查看日志,创建虚拟机失败一定与nova有关,可以去以下几个日志去查看究竟是哪一个出了错

[root@localhost ~]# vi /var/log/nova/api.log          cert.log         compute.log      conductor.log    consoleauth.log  nova-manage.log  scheduler.log 

我发现在我的scheduler.log 里有error,内容如下

这里写图片描述

这个错的最后一句是关键:raise e\n’, u”libvirtError: internal error no supported architecture for os type ‘hvm’\n”],经查证,packstack默认用的hypervisor类型是KVM,物理机搭建使用这个,而我们是用的虚拟机,所以要将这个参数改为qemu

[root@localhost ~]# vi /etc/nova/nova.conf 
...#virt_type=kvmvirt_type=qemu...
[root@localhost ~]# service openstack-nova-compute restart[root@localhost ~]# service openstack-nova-scheduler restart

现在启动云主机成功
然后为其绑定浮动ip,并添加安全组规则

这里写图片描述

这里写图片描述

这里写图片描述
接下来再ping虚拟机vm1的浮动ip172.16.0.3,发现ping不通,就连router01的网关172.16.0.2dou ping不通,我想起来还没有为eth1添加网桥

5.添加网桥,修改网卡配置

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1TYPE=OVSPortDEVICETYPE=ovsOVS_BRIDGE=br-exONBOOT=yes
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-br-exDEVICE=br-exTYPE=OVSBridgeDEVICETYPE=ovsONBOOT=yesBOOTPROTO=staticIPADDR=172.16.0.201NETMASK=25.255.255.0

还要修改一个配置文件,默认的type_drivers=vxlan

[root@localhost ~]# vi /etc/neutron/plugin.ini 
[ml2_type_vlan]network_vlan_ranges = physnet1bridge_mappings = physnet1:br-ex

一定要重启网络和neutron相关服务

[root@localhost ~]# service network restart[root@localhost ~]# service neutron-openvswitch-agent restart[root@localhost ~]# service neutron-metadata-agent restart[root@localhost ~]# service neutron-dhcp-agent restart[root@localhost ~]# service neutron-l3-agent restart

再ping vm 的浮动ip,能Ping通了,而且可以ssh连接虚拟

这里写图片描述

这里写图片描述

1 0
原创粉丝点击