文档章节

openstack havana vlan安装成功

蓝狐乐队
 蓝狐乐队
发布于 2014/04/18 18:03
字数 1692
阅读 548
收藏 5
Local模式:一般测试时使用,只需一台物理机即可。
GRE模式:隧道数量没有限制,性能有点问题。
Vlan模式:vlan数量有4096的限制
VXlan模式:vlan数量没有限制,性能比GRE好。
Flat模式:管理员创建租户直接到外网,不需要NAT了。
目前的几个项目正好用到了这种Flat模式的网络结构,我觉得小项目中还是比较方便的,Openstack的体系和框架越来越稳定,项目中用用虚拟化和存储,直接借助Openstack还是很方便。这时网络结构可能就不需要用租户、或者在细分其它,Flat模式反而更简洁直观,毕竟外网IP直接到了instance。
下面以我实验环境配置为例,存储部分配置省略。
环境:controller node一台       compute node一台       OS:Centos6.4
系统逻辑结构如下
一、controller node 配置
1、网络
[root@controller ~]# more /etc/hosts
192.168.3.98    controller
192.168.3.95    compute
[root@controller ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0   #外部网络
DEVICE=eth0
HWADDR=10:BF:48:B7:8F:A0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.3.98
NETMASK=255.255.255.0
GATEWAY=192.168.3.1
[root@controller ~]# more /etc/sysconfig/network-scripts/ifcfg-eth1  #vm 及node之间通讯使用
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
[root@controller ~]#  more /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=controller
GATEWAY=192.168.3.1
[root@controller ~]#  more /etc/resolv.conf 
nameserver 202.102.134.68
nameserver 202.102.128.68
2、添加源
yum install wget
cd /etc/yum.repos.d/
wget 
yum list
3、LVM配置 [我单独拿出一个分区给cinder使用,同时我的控制和计算节点也都是cinder节点]
[root@controller ~]# umount /dev/sda5
[root@controller ~]# pvcreate /dev/sda5
  Physical volume "/dev/sda5" successfully created
[root@controller ~]# vgcreate cinder-volumes /dev/sda5
  Volume group "cinder-volumes" successfully created
4、安装packstack
yum install -y 
yum install -y openstack-packstack
yum -y update
重启机器
5、Packstack配置
创建一个应答文件
packstack --gen-answer-file=multi-node.txt
修改应答文件,由于我已经有专门的cinder volume, 所以不需要创建。如果没有手工创建cinder volume,那么这就不修改就可以。
CONFIG_CINDER_VOLUMES_CREATE=n              #不在创建volume
CONFIG_HEAT_INSTALL=y
CONFIG_NAGIOS_INSTALL=y
CONFIG_KEYSTONE_ADMIN_PW=admin
CONFIG_NOVA_COMPUTE_HOSTS=192.168.3.98  #此处可以添加compute node IP ,号分割
CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=vlan
CONFIG_NEUTRON_OVS_VLAN_RANGES=physnet1:100:200
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-eth1
CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-eth1:eth1
CONFIG_HEAT_CLOUDWATCH_INSTALL=y
CONFIG_HEAT_CFN_INSTALL=y
CONFIG_NAGIOS_PW=admin
6、安装 [RDO的方式部署简直太简单了,我值截取部分]
[root@controller ~]# packstack --answer-file=multi-node.txt           #安装过程,开始会输入密码,多节点的话会依此类推。安装过程有可能因为源的原因中断,可以重复运行。
Welcome to Installer setup utility
Packstack changed given value  to required value /root/.ssh/id_rsa.pub
Installing:
Clean Up...                                            [ DONE ]
7、 装完后,有可能由于RDO的问题,没有创建br-ex,需要我们手工来创建。
【目前看2014年后,redhat已经修复这个bug,剩下的只是我们对应的创建网卡配置文件和启动port】
[root@controller network-scripts]# more ifcfg-br-ex 
DEVICE=br-ex
IPADDR=192.168.3.98
PREFIX=24
GATEWAY=192.168.3.1
DNS1=202.102.134.68
ONBOOT=yes
修改 /etc/sysconfig/network-scripts/ifcfg-eth0,  注意:一定要加上eth0 的mac地址,不然会出错。
[root@controller network-scripts]# more ifcfg-eth0
DEVICE=eth0
HWADDR=00:90:27:E0:61:14
#TYPE=Ethernet
ONBOOT=yes
#BOOTPROTO=none
#IPADDR=192.168.3.98
#NETMASK=255.255.255.0
ovs-vsctl add-port br-ex eth0; service network restart
当运行 ovs-vsctl add-port的时候,网络就会中断,所以你两条命令需要一起执行。
8、改变桥接网络配置,此处主要修改neutron配置,我们的flat网络模式是依赖在vlan的基础上改进的,也是此文重点之处。
编辑
vi /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini 
原安装完初始内容如下
[OVS]
network_vlan_ranges=physnet1:100:200
tenant_network_type=vlan
enable_tunneling=False
integration_bridge=br-int
bridge_mappings=physnet1:br-eth1
修改成
[OVS]
network_vlan_ranges=physnet1,physnet2:100:200
tenant_network_type=vlan
enable_tunneling=False
integration_bridge=br-int
bridge_mappings=physnet1:br-ex,physnet2:br-eth1
然后重启相关服务,如果为省事,重启机器
之后检查网络和桥接情况查询
[root@controller ~]# ovs-vsctl show
9、创建Flat模式网络,目前都可以在web界面操作
[root@controller ~(keystone_admin)]# neutron net-create Public --provider:network_type flat --provider:physical_network physnet1
Created a new network:
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | 3c5eca6f-aeb4-451b-9fa2-ed70d8bab9e9 |
| name                      | Public                               |
| provider:network_type     | flat                                 |
| provider:physical_network | physnet1                             |
| provider:segmentation_id  |                                      |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tenant_id                 | 2cfb66b8a9524cc68c2e1bf424bda943     |
+---------------------------+--------------------------------------+
[root@controller ~(keystone_admin)]# neutron subnet-create Public 192.168.3.0/24 --disable-dhcp --allocation-pool start=192.168.3.100,end=192.168.3.110
Created a new subnet:
+------------------+----------------------------------------------------+
| Field            | Value                                              |
+------------------+----------------------------------------------------+
| allocation_pools | {"start": "192.168.3.100", "end": "192.168.3.110"} |
| cidr             | 192.168.3.0/24                                     |
| dns_nameservers  |                                                    |
| enable_dhcp      | False                                              |
| gateway_ip       | 192.168.3.1                                        |
| host_routes      |                                                    |
| id               | 8d089754-3764-4249-98f2-402f62a872bc               |
| ip_version       | 4                                                  |
| name             |                                                    |
| network_id       | 3c5eca6f-aeb4-451b-9fa2-ed70d8bab9e9               |
| tenant_id        | 2cfb66b8a9524cc68c2e1bf424bda943                   |
+------------------+----------------------------------------------------+
10、cinder配置
查询部署的服务是否正常
[root@controller ~(keystone_admin)]# cinder-manage service list
Binary           Host                                 Zone             Status     State Updated At
cinder-volume    controller                           nova             enabled        2014-02-10 07:42:22
cinder-scheduler controller                           nova             enabled        2014-02-10 07:42:30
[root@controller ~(keystone_admin)]# cinder-manage host list
host                            zone           
controller                      nova
然后查询论证是否成功
[root@controller ~(keystone_admin)]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/cinder-volumes/volume-0a9cc8fc-d3fd-4dd1-9501-9c3813056415
  LV Name                volume-0a9cc8fc-d3fd-4dd1-9501-9c3813056415
  VG Name                cinder-volumes
  LV UUID                zbGuJa-3bdk-V6UZ-ZBsx-FWeA-dlys-qMphas
  LV Write Access        read/write
  LV Creation host, time controller, 2014-02-10 15:46:44 +0800
  LV Status              available
  # open                 1
  LV Size                5.00 GiB
  Current LE             1280
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     4096
  Block device           253:0
[root@controller ~(keystone_admin)]# cinder list
+--------------------------------------+-----------+--------------+------+-------------+----------+-------------+
|                  ID                  |   Status  | Display Name | Size | Volume Type | Bootable | Attached to |
+--------------------------------------+-----------+--------------+------+-------------+----------+-------------+
| 0a9cc8fc-d3fd-4dd1-9501-9c3813056415 | available |     oak      |  5   |     SSD     |  false   |             |
+--------------------------------------+-----------+--------------+------+-------------+----------+-------------+
[root@controller ~(keystone_admin)]#
此时,启动一个instance
可以在云硬盘中,选择挂载,挂载到相应的instance上。
二、compute node 配置
1、网络,参考控制节点,其次检查ntp,时间是否与控制节点同步
2、添加源和Openstack软件环境都参考控制节点的前期准备
3、RDO应答文件,填写了compute node IP后,一般nova-compute、openstack-neutron-openvswitch和MySQL-python都已经安装
4、因为我的环境是Flat模式,所以此处neutron配置文件还需修改,然后创建相应的桥
修改neutron
vi /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini 
[OVS]
network_vlan_ranges=physnet1,physnet2:100:200
tenant_network_type=vlan
enable_tunneling=False
integration_bridge=br-int
bridge_mappings=physnet1:br-ex,physnet2:br-eth1
创建桥
[root@compute neutron]# cd /etc/sysconfig/network-scripts/
[root@compute network-scripts]# more ifcfg-br-ex 
DEVICE=br-ex
IPADDR=192.168.3.95
PREFIX=24
GATEWAY=192.168.3.1
DNS1=202.102.134.68
ONBOOT=yes
[root@compute network-scripts]# more ifcfg-eth0
DEVICE=eth0
HWADDR=00:90:27:E0:61:14
#TYPE=Ethernet
ONBOOT=yes
#BOOTPROTO=none
#IPADDR=192.168.3.95
#NETMASK=255.255.255.0
#GATEWAY=192.168.3.1
[root@compute network-scripts]# ovs-vsctl add-br br-ex
[root@compute network-scripts]# ovs-vsctl add-port br-ex eth0; service network restart
[root@compute network-scripts]# ovs-vsctl show
3875869a-c249-4514-aadc-b95b92e7f304
    Bridge br-ex
        Port br-ex
            Interface br-ex
                type: internal
        Port "eth0"
            Interface "eth0"
    Bridge br-int
        Port br-int
            Interface br-int
                type: internal
    ovs_version: "1.11.0"
5、cinder 配置
[root@compute ~]# umount /dev/sda4
[root@compute ~]# pvcreate /dev/sda4
  Physical volume "/dev/sda4" successfully created
[root@compute ~]# vgcreate cinder-volumes /dev/sda4
  Volume group "cinder-volumes" successfully created
yum install openstack-cinder openstack-utils
vi  /etc/cinder/api-paste.ini 参考拷贝控制节点内容
[filter:authtoken]
paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory
# signing_dir is configurable, but the default behavior of the authtoken
# middleware should be sufficient.  It will create a temporary directory
# in the home directory for the user the cinder process is running as.
#signing_dir = /var/lib/cinder/keystone-signing
admin_tenant_name=services
auth_host=192.168.3.98
service_port=5000
auth_uri=http://192.168.3.98:5000/
auth_port=35357
service_host=192.168.3.98
service_protocol=http
admin_user=cinder
auth_protocol=http
admin_password=570fe4a9f7bd4e2d
# openstack-config --set /etc/cinder/cinder.conf DEFAULT rpc_backend cinder.openstack.common.rpc.impl_qpid
# openstack-config --set /etc/cinder/cinder.conf DEFAULT qpid_hostname 192.168.3.98
vi  /etc/cinder/api-paste.ini 参考拷贝控制节点内容
sql_connection=mysql://cinder:0ba1a335f2834e1a@192.168.3.98/cinder
qpid_reconnect_timeout=0
qpid_reconnect_limit=0
qpid_reconnect=True
qpid_reconnect_interval_max=0
qpid_reconnect_interval_min=0
sql_idle_timeout=3600
qpid_reconnect_interval=0
notification_driver=cinder.openstack.common.notifier.rpc_notifier
vi /etc/tgt/targets.conf  增加如下内容
include /etc/cinder/volumes/*
# service openstack-cinder-volume start
# service tgtd start
# chkconfig openstack-cinder-volume on
# chkconfig tgtd on
[root@controller ~(keystone_admin)]# cinder-manage service list
Binary           Host                                 Zone             Status     State Updated At
cinder-volume    controller                           nova             enabled        2014-02-11 06:31:08
cinder-scheduler controller                           nova             enabled        2014-02-11 06:31:06
cinder-volume    compute                              nova             enabled        2014-02-11 06:30:40
[root@controller ~(keystone_admin)]#

本文转载自:

下一篇: devStack
蓝狐乐队
粉丝 107
博文 325
码字总数 94335
作品 0
昌平
程序员
私信 提问
加载中

评论(1)

y
yehuifzu
您好 我按照你的这个文档进行了安装 但是当我在controller和compute建了桥以后,他们之间就无法ping通了
所以全部执行完以后,controller和compute成为两个互相独立的节点
[root@compute network-scripts]# cinder-manage service list
Binary Host Zone Status State Updated At
cinder-volume compute nova enabled :-) 2014-07-02 09:24:07
cinder-scheduler compute nova enabled :-) 2014-07-02 09:24:07
cinder-backup compute nova enabled
我的这些cinder服务都来自compute自己,我不知道如何让这两个节点联系起来,成为多节点的openstack平台,求大神指导啊9
OpenStack安装前的准备

安装前的准备(CentOS) 最近跟一个大数据团队折腾,接触了一些OpenStack的东西,随手写下来,其实都是官方文档里的东西,没什么新意。 操作系统:CentOS 6.5 几个个人习惯使用的便利工具 open...

有理想的猪
2014/03/13
1K
0
译:块设备和 OpenStack

libvirt 配置了 librbd 的 QEMU 接口,通过它可以在 OpenStack 中使用 Ceph 块设备镜像。Ceph 块设备镜像被当作集群对象,这意味着它比独立的服务器有更好的性能。 在 OpenStack 中使用 Ceph...

Jerry_Baby
2015/02/09
3.5K
0
Mirantis OpenStack fuel 物理机部署

理机上使用fuel 5.1部署openstack HA 存储使用ceph 2014年12月5日 15:58 新浪博客 How to Install Mirantis Fuel 5.1 Openstack wihceph 作者:@法不荣情 本人刚开始接触openstack,对一切还...

剑气满天
2015/08/18
4.7K
3
OpenStack 的分页查询

Heat 在 Havana 版本首次成为正式模块,为 OpenStack 提供了令人兴奋的资源编排功能,但是和成熟项目相比,它缺失了某些小特性,比如不支持分页查询。随着用户的 instance、volume 和 stack ...

koala bear
2014/03/20
0
0
OpenStack centos版安装(二)

在OpenStack第一天文档翻译后,丁丁努力坚持每晚抽时间翻译OpenStack官方网站提供的安装与部署指南,本文翻译自官方安装与部署指南的前四章内容,前四章内容主要是对OpenStack整体安装步骤以...

蓝狐乐队
2014/04/18
284
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周日乱弹 —— 谨以此文怀念逝去的人

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 今天没歌曲 手机党少年们想听歌,请使劲儿戳(这里) 今天是周六, 刚想开始写乱弹的时候, 翻到了巴叔新建的话题上, @ 巴拉迪维:宏哥,一路...

小小编辑
今天
25
4
判断php变量是否定义,是否为空,是否为真的一览表

使用 PHP 函数对变量 $x 进行比较 表达式 gettype() empty() is_null() isset() boolean : if($x) $x = ""; string TRUE FALSE TRUE FALSE $x = null; NULL TRUE TRUE FALSE FALSE var $x; N......

Grayk
今天
19
0
服务器监控

1. 服务器监控内容有哪些? 答: 主要有服务监控 和 流量监控 2. 监控重点是? 答: 是 磁盘 和 流量,cpu是浮动的,意义不大 3. 怎样 实现 监控? 答:将 服务器 分为:监控者 和 被监管协议...

杨凯123
昨天
246
0
Apollo开发指南

一、准备工作 二、本地启动 2.1 Apollo Config Service和Apollo Admin Service 2.2 Apollo-Portal 2.3 Java样例客户端启动 2.4 .Net样例客户端启动 三、开发 3.1 Portal 实现用户登录功能 3....

Ciet
昨天
307
0
英文词汇 计算机网络中的专业英语单词及其缩写

学习计算机网络时,会阅读相关的专业文献。对于文献中经常出现的缩写形式的专业名词,做了一些积累。现于此博文中做个简单的分享,希望能对后来人有所帮助,平稳地入门计算机网络。 注:博文...

志成就
昨天
186
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部