在这之前,先把之前基于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. Android和jS互调技术Demo实现

    package com.loaderman.webviewdemo; import android.os.Bundle; import android.support.v7.app.AppCompat ...

  2. Nginx 日志打印POST数据

    在工作中,开发希望能从Nginx日志中获取POST的数据信息,先记录下来 在日志格式后面加上 $request_body 配置信息 log_format main '$remote_addr - $r ...

  3. 程序员查问题还是要找stackoverflow

    今天定位了一个问题,其实也不是多复杂. 现场的数据是postgres dump出来的,想拿到本地服务器restore后定位问题. 本地restore后报错,报sequence as data_type ...

  4. 12@365 java上传文件(word、图片等)至服务器

    这种方法是servlet,编写好在web.xml里配置servlet-class和servlet-mapping即可使用 后台(服务端)java服务代码:(上传至ROOT/lqxcPics文件夹下) ...

  5. PI膜概述

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

  6. PhpMyAdmin提示未加密

    新版本的PhpMyAdmin 增强了安全性,需要在配置文件设置一个短语密码.否则进入之后会有“配置文件现在需要一个短语密码.”的红色警叹提示. 解决方法: .将 phpMyAdmin/librarie ...

  7. Java内存模型 (一)什么是进程?什么是线程?进程和线程之间的区别是什么?

    什么是进程?什么是线程? 进程是系统中正在运行的一个程序,程序一旦运行就是进程. 进程可以看成程序执行的一个实例.进程是系统资源分配的独立实体,每个进程都拥有独立的地址空间.一个进程无法访问另一个进程 ...

  8. hadoop3.1.2启动和停止

    1/  启动 启动zookeeper: 三个节点上都zkServer.sh start 启动hdfs和yarn: 101上start-dfs.sh  102上start-yarn.sh 启动hive: ...

  9. 单页面应用 之 项目中集成插件vue-router

    \es6\my-complex-project>npm install  vue-router -S    (S 表示这个包下载到,当前的项目中) 导入写好的  router 这里尽量使用  @ ...

  10. 关于时间日期的程序,主要datetime模块

    以每年的立春作为起始点,每N天为一个单元,任给一个日期,返回该日期所在单元的起始和结束日期.例如:N=3, 输入日期20180208,返回 20180207,20180209(2018年的立春是201 ...