【neutron】mitaka版本openstack网络之open vSwitch
作者:【吴业亮】
博客:http://blog.csdn.net/wylfengyujiancheng
一、硬件配置及服务拓扑
1. controller节点:一块网卡
2. 网络节点:四块网卡。
3. 计算节点:三块网卡
controller节点
1. 运行 neutron数据库
2. 运行消息队列服务
3. 运行认证。
4. 运行OpenStack计算nova相关网络,需配置nova.conf文件。
5. 运行插件ML2 。
网络节点
1. Neutron认证相关信息需配置neutron.conf文件。
2. Open vSwitch服务,Open vSwitch代理,L3代理,DHCP代理,元数据代理,一些依赖项。
计算节点
1. 运行OpenStack身份与合适的配置服务 需配置neutron.conf文件。
2. 运行OpenStack计算nova相关网络,需配置nova.conf文件。
3. Open vSwitch服务,Open vSwitch代理,一些依赖项。
二、各个节点服务关系及说明
网络节点网络包含以下组件:
1. open vswitch-agent
2. l3-agent
3. dhcp-aent
4. Metadata-agent
计算节点网络包含以下组件:
1. Open vSwitch-agent。
2. 网桥。
三、场景举例
Note请注意
南北网络:虚拟机内部数据到外部网络
东西网络:虚拟机之间通信
案例1:南北网络、实例对应一个固定的IP地址
案例2:南北网络,实例对应一个浮动IP地址
案例3:东西网络,实例在不同的网络上
案例4:东西网络、实例在同一网络
四、安装配置
(一)controller节点
1、安装组件
# yum install openstack-neutron openstack-neutron-ml2 python-neutronclient which
2、配置服务器组件
编辑 /etc/neutron/neutron.conf文件,并完成以下动作:
在[数据库]节中,配置数据库访问:
[database]
connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
替换 NEUTRON_DBPASS为你的密码
在[默认的]部分
[DEFAULT]
core_plugin = ml2
service_plugins = router
allow_overlapping_ips = True
在[默认的]和[oslo_messaging_rabbit]部分,配置RabbitMQ消息队列访问:
[DEFAULT]
rpc_backend = rabbit
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
替换 RABBIT_PASS为你的密码
在[默认的]和[keystone_authtoken]部分,配置身份服务访问:
[DEFAULT]
auth_strategy = keystone
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = neutron
password = NEUTRON_PASS
替换NEUTRON_PASS为你的密码
Note请注意
注释掉或删除任何其他选项 [keystone_authtoken]部分。
在[默认的]和[nova]部分,配置网络通知计算网络拓扑变化:
[DEFAULT]
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True
[nova]
auth_url = http://controller:35357
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = nova
password = NOVA_PASS
替换 NOVA_PASS 为你的密码
在[oslo_concurrency]节中,配置锁路径:
[oslo_concurrency]
lock_path = /var/lib/neutron/tmp
3、编辑/etc/neutron/plugins/ml2/ml2_conf.ini文件
在[ml2]部分,使平、VLAN和VXLAN网络:
[ml2]
type_drivers = flat,vlan,vxlan
在[ml2]部分,使VXLAN自助服务网络:
[ml2]
tenant_network_types = vxlan
在[ml2]部分
[ml2]
mechanism_drivers = openvswitch,l2population
在[ml2]部分,启用端口安全
[ml2]
extension_drivers = port_security
在[ml2_type_flat]部分,虚拟网络配置提供者平面网络:
[ml2_type_flat]
flat_networks = provider
在[ml2_type_vxlan]部分,配置VXLAN网络标识符范围自助服务网络:
[ml2_type_vxlan]
vni_ranges = 1:1000
在[securitygroup]部分,使ipset提高效率的安全组规则:
[securitygroup]
enable_ipset = True
编辑/etc/nova/nova.conf文件和执行以下操作:
在[nova]节中,配置访问参数,使元数据代理
[neutron]
url = http://controller:9696
auth_url = http://controller:35357
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = neutron
password = NEUTRON_PASS
service_metadata_proxy = True
4、创建链接
ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
5、同步数据库
su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron
6、重启nova服务
systemctl restart openstack-nova-api.service
7、启动neutron服务
# systemctl enable neutron-server.service
# systemctl start neutron-server.service
(二)网络节点
1. 编辑 /etc/sysctl.conf
net.ipv4.conf.all.rp_filter=0
net.ipv4.conf.default.rp_filter=0
2.执行下列命令,立即生效
# sysctl -p
3.安装软件包
# yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch
4.配置组件
编辑/etc/neutron/neutron.conf文件,并完成以下动作:
在[数据库]节中,删除配置数据库访问:
在[默认的]部分,使模块化层2)中打开(名为ML2插件,路由器的服务,和重叠的IP地址:
[DEFAULT]
core_plugin = ml2
service_plugins = router
allow_overlapping_ips = True
在[默认的]和[oslo_messaging_rabbit]部分,配置RabbitMQ消息队列访问:
[DEFAULT]
rpc_backend = rabbit
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
替换 RABBIT_PASS 为你的密码
在[默认的]和[keystone_authtoken]部分,配置身份服务访问:
[DEFAULT]
auth_strategy = keystone
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = neutron
password = NEUTRON_PASS
替换 NEUTRON_PASS为你的密码
Note请注意
注释掉或删除任何其他选项 [keystone_authtoken]部分。
在[oslo_concurrency]节中,配置锁路径:
[oslo_concurrency]
lock_path = /var/lib/neutron/tmp
5、编辑/etc/neutron/plugins/ml2/ml2_conf.ini文件
在[ml2]部分,使平、VLAN和VXLAN网络:
[ml2]
type_drivers = flat,vlan,vxlan
在[ml2]部分,使VXLAN自助服务网络:
[ml2]
tenant_network_types = vxlan
mechanism_drivers = openvswitch,l2population
extension_drivers = port_security
在[ml2_type_flat]部分,虚拟网络配置提供者平面网络:
[ml2_type_flat]
flat_networks = provider
在[ml2_type_vxlan]部分,配置VXLAN网络标识符范围自助服务网络:
[ml2_type_vxlan]
vni_ranges = 1:1000
在[securitygroup]部分,使ipset提高效率的安全组规则:
[securitygroup]
enable_ipset = True
6、编辑 /etc/neutron/plugins/ml2/openvswitch_agent.ini文件:
[ovs]
local_ip=TUNNEL_INTERFACE_IP_ADDRESS
bridge_mappings=vlan:br-vlan,external:br-ex
[agent]
tunnel_types=gre,vxlan
l2_population=True
prevent_arp_spoofing=True
[securitygroup]
firewall_driver=neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
enable_security_group=True
取代 TUNNEL_INTERFACE_IP_ADDRESS与接口的IP地址处理GRE / VXLAN项目网络。
1. 配置L3代理。编辑 /etc/neutron/l3_agent.ini文件:
[DEFAULT]
interface_driver=neutron.agent.linux.interface.OVSInterfaceDriver
external_network_bridge=
Note请注意
的 external_network_bridge选择故意不包含值。
2. 配置DHCP代理。编辑 /etc/neutron/dhcp_agent.ini文件:
[DEFAULT]
interface_driver=neutron.agent.linux.interface.OVSInterfaceDriver
dhcp_driver=neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata=True
- 配置元数据代理。编辑 /etc/neutron/metadata_agent.ini文件:
[DEFAULT]
nova_metadata_ip=controller
metadata_proxy_shared_secret=METADATA_SECRET
6、创建链接
# ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
7、启动服务
创建网桥
# ovs-vsctl add-br br-ex
将网卡加入到网桥中
# ovs-vsctl add-port br-ex INTERFACE_NAME
# systemctl restart openstack-nova-api.service
# systemctl start neutron-openvswitch-agent.service neutron-l3-agent.
service neutron-dhcp-agent.service neutron-metadata-agent.service
# systemctl enable neutron-openvswitch-agent.service neutron-l3-agent.
service neutron-dhcp-agent.service neutron-metadata-agent.service
(三)计算节点
1. 编辑 /etc/sysctl.conf
net.ipv4.conf.all.rp_filter=0
net.ipv4.conf.default.rp_filter=0
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
2.执行下列命令,立即生效
# sysctl -p
3.安装软件包
# yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch
4.编辑 /etc/neutron/neutron.conf文件,并完成以下动作:
• 在 [数据库]节中,注释掉 连接选项,因为计算节点不直接访问数据库。
• 在 [默认的]和 [oslo_messaging_rabbit]部分,配置RabbitMQ消息队列访问:
[DEFAULT]
rpc_backend = rabbit
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
替换 RABBIT_PASS为你的密码
• 在 [默认的]和 [keystone_authtoken]部分,配置身份服务访问:
[DEFAULT]
auth_strategy = keystone
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = neutron
password = NEUTRON_PASS
替换 NEUTRON_PASS为你的密码
Note请注意
注释掉或删除任何其他选项 [keystone_authtoken]部分。
• 在 [oslo_concurrency]节中,配置锁路径:
[oslo_concurrency]
lock_path = /var/lib/neutron/tmp
5.编辑 /etc/neutron/plugins/ml2/openvswitch_agent.ini
[ovs]
local_ip = TUNNEL_INTERFACE_IP_ADDRESS
bridge_mappings = vlan:br-vlan
[agent]
tunnel_types = gre,vxlan
l2_population = True
prevent_arp_spoofing = True
[securitygroup]
firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
enable_security_group = True
6.编辑/etc/neutron/plugins/ml2/ml2_conf.ini文件
在[ml2]部分,使平、VLAN和VXLAN网络:
[ml2]
type_drivers = flat,vlan,vxlan
在[ml2]部分,使VXLAN自助服务网络:
[ml2]
tenant_network_types = vxlan
在[ml2]部分,使Linux桥和2层人口机制:
[ml2]
mechanism_drivers = openvswitch,l2population
在[ml2]部分,启用端口安全扩展司机:
[ml2]
extension_drivers = port_security
在[ml2_type_flat]部分,虚拟网络配置提供者平面网络:
[ml2_type_flat]
flat_networks = provider
在[ml2_type_vxlan]部分,配置VXLAN网络标识符范围自助服务网络:
[ml2_type_vxlan]
vni_ranges = 1:1000
在[securitygroup]部分,使ipset提高效率的安全组规则:
[securitygroup]
enable_ipset = True
配置nova配置文件
•7编辑 /etc/nova/nova.conf文件,并完成以下动作:
o 在 [neutron]节中,配置访问参数:
[neutron]
url = http://controller:9696
auth_url = http://controller:35357
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = neutron
password = NEUTRON_PASS
替换 NEUTRON_PASS为你的密码
8.启动服务
# systemctl enable neutron-openvswitch-agent.service
# systemctl start neutron-openvswitch-agent.service
# systemctl restart openstack-nova-compute.service
【neutron】mitaka版本openstack网络之open vSwitch相关推荐
- 【neutron】mitaka版本openstack网络之linux bridge
作者:[吴业亮]云计算开发工程师 博客:http://blog.csdn.net/wylfengyujiancheng 一.硬件配置及服务拓扑 1. controller节点:一块网卡 2. 网络节点 ...
- OpenStack网络指南(17)IPAM配置
从Liberty版本开始,OpenStack Networking包括用于IP地址管理(IPAM)功能的可插拔接口. 此接口创建用于子网和IP地址的分配和取消分配的驱动程序框架,从而实现替代IPAM实 ...
- OpenStack 网络项目(Neutron)的历史、现状与未来
转载请注明:http://blog.csdn.net/yeasy/article/details/41788795 微信订阅版本:http://mp.weixin.qq.com/s?__biz=MzA ...
- openstack网络服务neutron
一.环境准备 1.虚拟机准备 IP地址 主机名 操作系统 192.168.56.11 linux-node1 CentOS7 192.168.56.12 linux-node2 CentOS7 其中, ...
- 深入理解 Neutron -- OpenStack 网络实现(2):VLAN 模式
问题导读 1.br-int.br-ethx的作用是什么? 2.安全组策略是如何实现的? 3.VLAN 模式与GRE模式有哪些不同点?流量上有哪些不同? 4.L3 agent实现了什么功能? 接上篇深入 ...
- 玩转OpenStack网络Neutron(1)--热身
转载自:http://blog.csdn.net/yanheven1/article/details/44788581#0-tsina-1-32631-397232819ff9a47a7b7e80a4 ...
- 绝不能错过的10款最新OpenStack网络运维 监控工具
摘要 今天我们要推荐给大家的是关于奥斯汀OpenStack Summit的OpenStack网络方面功能与工具相关的技术演讲. 希望可以帮助国内的开发者.架构师和用户更好地了解OpenStack在SD ...
- openstack 网络更改版
Openstack环境部署 (参考文献:http://www.cnblogs.com/kevingrace/p/5707003.html 和 https://docs.openstack.org/mi ...
- OpenStack网络 - 使用vlan模式来剖析openstack网络相关概念及原理
OpenStack网络 - 使用vlan模式来剖析openstack网络相关概念及原理 OpenStack网络 OpenStack网络设置比较复杂,阅读了一些文档,主要是采用两种网络 flat net ...
- SDN实战团分享(一):OpenStack网络服务数据平面加速
[编者的话]本文系SDN实战团微信群(团主张宇峰@brocade)组织的首次线上技术分享整理而成,由IBM云网络服务团队资深架构师唐刚将其团队内部对于如何在openstack环境下实现高性能的网络服务 ...
最新文章
- 【小心勿喷,吃饭中的小朋友最好别看】史上最搞笑的前端vue文件命名,没有之一,呵呵哒
- delphi中的第三方控件如何安装 (转)
- 在EXCEL中怎么将多个CSV文件合并成一个文件
- 微软拼音输入法2007状态栏无法显示!
- 魔兽三国服务器维护,魔兽三国开服七天技巧
- 数据导入时遭遇 ORA-01187 ORA-01110
- Flink的并行度和Kafka的partition的结合
- 用计算机用语说唯美的话,好听唯美的说说句子
- [backbone] Getting Started with Backbone.js
- vue中使用echarts地图
- 印象笔记使用方法————印象笔记下载安装以及浏览器插件下载安装
- 浙江电信张涛:天翼阅读未来将收费 资费采用包月形
- mybatis Sql查询 返回对象或者list数据中包含一个对象的list集合
- IT人的架构书单:如何赋予软件以灵魂
- 王者服务器修改,王者荣耀
- 【DDOS 防御小建议】
- 【HTML系列】之HTML字体颜色设置
- MapX编程详解(C++)----MapX发布技术
- Arduino 播放音乐教程
- 用CentOS 7打造合适的科研环境 :zhuan