在这之前,先把之前基于flat模式创建的虚机,全部删除

控制节点:

配置

修改/etc/neutron/neutron.conf的[DEFAULT]区域

core_plugin = ml2

service_plugins =

修改为

core_plugin = ml2

service_plugins = router

allow_overlapping_ips = True

修改/etc/neutron/plugins/ml2/ml2_conf.ini文件

[ml2]区域修改如下

type_drivers = flat,vlan

tenant_network_types =

mechanism_drivers = linuxbridge

修改为

type_drivers = flat,vlan,vxlan

tenant_network_types = vxlan

mechanism_drivers = linuxbridge,l2population

  

在[ml2_type_vxlan]区域增加一行

vni_ranges = 1:1000

  

最终的配置文件如下

[root@controller ~]# cat /etc/neutron/plugins/ml2/ml2_conf.ini

[DEFAULT]

[ml2]

type_drivers = flat,vlan,vxlan

tenant_network_types = vxlan

mechanism_drivers = linuxbridge,l2population

extension_drivers = port_security

[ml2_type_flat]

flat_networks = provider

[ml2_type_geneve]

[ml2_type_gre]

[ml2_type_vlan]

[ml2_type_vxlan]

vni_ranges = 1:1000

[securitygroup]

enable_ipset = True

  

修改/etc/neutron/plugins/ml2/linuxbridge_agent.ini文件

在[vxlan]区域下

enable_vxlan = False

  

修改为

enable_vxlan = True

local_ip = 172.16.0.11

l2_population = True

  

172.16.0.11这个IP还没有,马上就配,主机规划的第二块网卡,就是现在用的

最终的配置文件如下

[root@controller ~]# cat /etc/neutron/plugins/ml2/linuxbridge_agent.ini

[DEFAULT]

[agent]

[linux_bridge]

physical_interface_mappings = provider:eth0

[securitygroup]

enable_security_group = True

firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

[vxlan]

enable_vxlan = True

local_ip = 172.16.0.11

l2_population = True

  

[root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1

TYPE=Ethernet

BOOTPROTO=static

NAME=eth1

DEVICE=eth1

ONBOOT=yes

IPADDR=172.16.0.11

NETMASK=255.255.255.0

千万不要重启网卡!!!

我们使用ifconfig命令来添加网卡

ifconfig eth1 172.16.0.11 netmask 255.255.255.0

  

修改/etc/neutron/l3_agent.ini文件

在[DEFAULT]区域下,增加下面两行

interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver

external_network_bridge =

  

启动

systemctl restart neutron-server.service \

neutron-linuxbridge-agent.service neutron-dhcp-agent.service \

neutron-metadata-agent.service

systemctl start neutron-l3-agent.service

  

在vi /etc/rc.d/rc.local最后一行加上l3-agent的开机启动

systemctl start neutron-l3-agent.service
计算节点:

配置

修改/etc/neutron/plugins/ml2/linuxbridge_agent.ini文件

在[vxlan]区域下

enable_vxlan = False

  

修改为

enable_vxlan = True

local_ip = 172.16.0.31

l2_population = True

  

最终的配置文件如下:

[root@compute1 ~]# cat /etc/neutron/plugins/ml2/linuxbridge_agent.ini

[DEFAULT]

[agent]

[linux_bridge]

physical_interface_mappings = provider:eth0

[securitygroup]

enable_security_group = True

firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

[vxlan]

enable_vxlan = True

local_ip = 172.16.0.31

l2_population = True

  

这个ip暂时没有,所以也需要配置

[root@controller ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1

TYPE=Ethernet

BOOTPROTO=static

NAME=eth1

DEVICE=eth1

ONBOOT=yes

IPADDR=172.16.0.31

NETMASK=255.255.255.0

千万不要重启网卡!!!

我们使用ifconfig命令来添加网卡

ifconfig eth1 172.16.0.31 netmask 255.255.255.0

  

测试与控制节点的联通性

启动

重启agent服务

systemctl restart neutron-linuxbridge-agent.service

回到控制节点

vi /etc/openstack-dashboard/local_settings

将263行的

'enable_router': False,

修改为

'enable_router': True,

systemctl restart httpd.service memcached.service

在dashboard上开启三层路由

只有修改了/etc/openstack-dashboard/local_settings,才能开启三层路由器

查看网络拓扑

再次查看网络拓扑,发现图标已经变成外部网络了

再次查看网络拓扑

基于project01网络创建虚机

回到控制节点

到这里,有云主机的小伙伴们,是不是觉得时曾相识?没错!公有云也是这么干的!

这个浮动IP底层,还是使用的iptable技术

openstack mitaka开启三层网络vxlan的更多相关文章

  1. openstack neutron 二/三层网络实现

    引用声明:https://zhangchenchen.github.io/2017/02/12/neutron-layer2-3-realization-discovry/ 一.概述 Neutron是 ...

  2. openstack项目【day24】:OpenStack mitaka部署

    前言: openstack的部署非常简单,简单的前提建立在扎实的理论功底,本人一直觉得,玩技术一定是理论指导实践,网上遍布个种搭建方法都可以实现一个基本的私有云环境,但是诸位可曾发现,很多配置都是重复 ...

  3. Neutron三层网络服务实现原理

    Neutron 对虚拟三层网络的实现是通过其 L3 Agent (neutron-l3-agent).该 Agent 利用 Linux IP 栈.route 和 iptables 来实现内网内不同网络 ...

  4. OpenStack Mitaka HA部署方案(随笔)

    [Toc] https://github.com/wanstack/AutoMitaka # 亲情奉献安装openstack HA脚本 使用python + shell,完成了基本的核心功能(纯二层的 ...

  5. Win10+VirtualBox+Openstack Mitaka

    首先VirtualBox安装的话,没有什么可演示的,去官网(https://www.virtualbox.org/wiki/Downloads)下载,或者可以去(https://www.virtual ...

  6. Openstack Neutron:三层技术和实现

    目录 - 1.Neutron 三层技术简介 - 2.集中式router - 1.在节点上安装L3 agent - 2.配置外部网络 - 3.通过CLI或者Horizon 来创建路由 - 4.连接租户网 ...

  7. Neutron 理解 (6): Neutron 是怎么实现虚拟三层网络的 [How Neutron implements virtual L3 network]

    学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...

  8. OpenStack Mitaka安装

    http://egon09.blog.51cto.com/9161406/1839667 前言: openstack的部署非常简单,简单的前提建立在扎实的理论功底,本人一直觉得,玩技术一定是理论指导实 ...

  9. openstack-- neutron 二/三层网络实现探究

    引出 Neutron 是openstack 中提供网络虚拟化的组件,根据二层网络的实现方式不同(即agent的不同),可以分为Linux bridge的方式,Openvswitch的方式.而且,lay ...

随机推荐

  1. AXIS 1.4 自定义序列化/反序列化类

    axis1.4的CalendarDeserializer 使用的时区是GMT,导致日期显示不准确 private static SimpleDateFormat zulu = new SimpleDa ...

  2. WPF Slider Tickbar 中显示数值

    class CustomTickBar : TickBar { protected override void OnRender(System.Windows.Media.DrawingContext ...

  3. JAVA多线程程序ProgressBar

    JAVA多线程程序ProgressBar 题目简介: 思维导图: 实验代码:建议先看CalThread类,计算线程的实现,再作基本CalFrame类的界面, 然后作ReadThread类,结合CalF ...

  4. 绝对好用Flash多文件大文件上传控件

    本实例采用的是Uploadify上传插件,.NET程序,源程序是从网上找的,但是有Bug,已经修改好,并标有部分注释.绝对好用,支持单文件.多文件上传,支持大文件上传,已经过多方面测试,保证好用. 以 ...

  5. 【转】Spark History Server 架构原理介绍

    [From]https://blog.csdn.net/u013332124/article/details/88350345 Spark History Server 是spark内置的一个http ...

  6. CentOS 7 安装java 环境

    1.创建安装目录 mkdir /usr/local/java/ 2.将下载的安装包 上传到 安装目录   (可用Xftp 上传) 3.解压 tar -xzvf jdk-8u221-linux-x64. ...

  7. PI膜概述

    一.概述 1.简述 聚酞亚胺薄膜又称PI薄膜(polyimide filin)是一种含有酞亚胺或丁二酞亚胺的绝缘类高分子材料.是目前工程塑料中耐热性最好的品种之一. 2.发展简史 1908年,PI聚合 ...

  8. Autofac依赖注入容器

    依赖注入容器-- Autofac https://github.com/danielpalme/IocPerformance Unity 更新频率高,微软的项目Grace 综合性能更高 目录: 一.简 ...

  9. java中怎么调用python 脚本

    调用方法: import java.io.BufferedReader; import java.io.InputStreamReader; public class PythonInvoke { p ...

  10. 单例模式(一)static、final和单例模式

    static 那天我朋友问了我个问题,static和单例模式有什么区别,所以我觉得static可以讲一下 他的问题是,把对象弄成static是不是就不变了 显然,这是还没弄清楚引用和对象的区别 其实存 ...