配置完成后的网络拓扑如下:

当前环境:

X86服务器1台

Ubuntu 16.04

DevStack搭建OpenStack

网络拓扑:

外部网络:192.168.98.0/24

内部网络:10.0.0.0/24

网络连接: Flat Bridge

1.    通过Horizon按顺序删除已有的Router、Public和Private网络。

注:DevStack默认安装的Public网络为172.24.4.1/24,经常都不能与生产或者实验环境的网络匹配,故先删除掉当前已用网络。

2.    编辑/etc/network/interfaces,填写如下内容。

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(). # The loopback network interface
auto lo
iface lo inet loopback # The primary network interface
auto p4p1
iface p4p1 inet static
address 0.0.0.0
netmask 0.0.0.0 auto br-ext
iface br-ext inet static
address 192.168.98.122
netmask 255.255.255.0
gateway 192.168.98.1
dns-nameservers 218.6.200.139

注:p4p1为X86服务的物理网卡名称,br-ext为待使用的bridge。

3.     删除DevStack默认创建的虚拟bridge。

注:OpenStack Neutron默认使用Openvswitch进行网络虚拟化。

使用下述命令查看DevStack默认创建的虚拟bridge。

$ ovs-vsctl show

使用下述命令删除DevStack默认创建的虚拟bridge。

$ ovs-vsctl del-br br-ex

$ ovs-vsctl del-br br-int

$ ovs-vsctl del-br br-tun

4.     修改Neutron原有的Physical Network(从Public修改ext)。

编辑/etc/neutron/plugins/ml2/ml2_conf.ini,修改下述蓝色部分。

[ml2_type_flat]
flat_networks = ext,

[ml2_type_vlan]

network_vlan_ranges = ext

[ovs]
datapath_type = system
bridge_mappings = ext:br-ext
tunnel_bridge = br-tun

5.     添加新的虚拟bridge。

使用下述命令创建的新的虚拟bridge。

$ ovs-vsctl add-br br-ext

$ ovs-vsctl add-port br-ext p4p1

注:p4p1为X86服务的物理网卡名称,br-ext为待使用的bridge。

6.     重启Network和Neutron主服务。

$ service networking restart

$ service devstack@q-svc restart

$ service devstack@q-agt restart

7.     通过Horizon重新创建PublicSite。


8.     通过Horizon重新创建PrivateSite。

9.     通过Horizon重新创建Router。

10.     创建虚拟机并分配Floating IP。

11.     设置Security Group保证可以Ping和SSH到Floating IP。

注:Security Group Rules如下:
ALL ICMP INGRESS CIDR 0.0.0.0
ALL TCP INGRESS CIDR 0.0.0.0
 
12.     完成后测试创建的虚拟机能否访问外网以及外网能否通过Floating IP访问创建的虚拟机。

OpenStack Neutron配置虚拟机访问外网的更多相关文章

  1. OpenStack创建网络和虚拟机、dhcp设备、虚拟路由器、虚拟机访问外网原理分析

    创建网络和虚拟机流程: 1.创建网络和子网 背后发生了什么: Neutron让控制节点上针对此子网的dhcp(虚拟设备)启动,用于给该子网下的实例分配ip 2.生成虚拟机 背后发生了什么: 用户通过G ...

  2. ubuntu 配置dns访问外网

    我新建了一个虚拟机后采用的net模式 一 先配置虚拟机ip使其能在局域网内通信 1.vmware 编辑->虚拟网络编辑器 可以看到网关.掩码等信息 可以看到我们配置的ip应该在192.168.1 ...

  3. 在OpenStack里怎样配置Neutron,让虚拟机访问外网

    http://blog.csdn.net/zhangli_perdue/article/details/50264681 OpenStack里虚机(或者叫instance)只有在分配floating ...

  4. CloseableHttpClient方式配置代理服务器访问外网

    小编最近在负责银行内部项目.其中有模块需要访问天眼查API接口,但由于公司全部内网,所以需要配置代理服务器才可以访问外网接口. 又到了激动人心的上码时刻! public void Connect(Ht ...

  5. VMware配置Linux虚拟机访问外网

    [虚拟机版本] 系统版本 : Centos 6.8 [连接方法] 网络模式:桥接模式 ps:本人比较喜欢用桥接,直接NAT也是可以的 [配置步骤] 1.配置网卡 #配置命令 vi /etc/sysco ...

  6. VirtualBox - NAT虚拟机访问外网 + Host-Only物理主机虚拟机互访

    [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-System_eth0 # 未手动设定HOST-ONLY静态IP时的默认值 #T ...

  7. 虚拟机固定IP访问外网配置

    大家都知道虚拟机网络连接有三种模式,桥接,host-only,NAT,不再赘述. 这里说一下桥接模式下,实现主机与虚拟机通讯,虚拟机与虚拟机通信,虚拟机访问外网,废话不多说,直接说解决方案: 1.本地 ...

  8. VMware安装Ubuntu配置NAT模式下静态IP,解决访问外网问题

    安装好VMware后,打开网络连接可以看到有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两个网络适配器,VMnet1是针对桥接 ...

  9. 本地虚拟机在NAT网络连接模式下如何设置才可以访问外网以及使用Xshell远程连接

    本文演示环境: 笔记本电脑系统:windows 7 虚拟机系统:CentOS 7 虚拟化软件:VMware Workstation 12 远程连接工具:Xshell 5 第一步: 打开虚拟网络编辑器 ...

随机推荐

  1. Word文档如何发CSDN博客

    目前大部分的博客作者在写博客这件事情上都会遇到以下3个痛点:1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.2.发布到博客或公众号平台 ...

  2. 编写高质量代码改善C#程序的157个建议——建议151:使用事件访问器替换公开的事件成员变量

    建议151:使用事件访问器替换公开的事件成员变量 事件访问器包含两部分内容:添加访问器和删除访问器.如果涉及公开的事件字段,应该始终使用事件访问器.代码如下所示: class SampleClass ...

  3. 【图解HTTP】第一章 了解web及网络基础

    [图解HTTP]了解Web及网络基础 Web页面是如何呈现的?根据Web浏览器地址栏中指定的URL,Web浏览器从Web服务器端获取文件资源(resource)等信息,从而显示出Web页面. 这种通过 ...

  4. 5、Semantic-UI之基础按钮样式

    5.1 基础按钮样式   在Semantic-UI中定义了很多的按钮样式,可以通过class="ui button"来指定,也可以在class中指定颜色. 示例:定义基础按钮样式 ...

  5. redis整理の配置

    redis有一个很强大也很重要的配置文件redis.conf.此文件可以随服务启动,为服务配置各种不同场景所需的参数: daemonize: 默认情况下,redis 不是在后台运行的,如果需要在后台运 ...

  6. python抓网页数据【ref:http://www.1point3acres.com/bbs/thread-83337-1-1.html】

    前言:数据科学越来越火了,网页是数据很大的一个来源.最近很多人问怎么抓网页数据,据我所知,常见的编程语言(C++,java,python)都可以实现抓网页数据,甚至很多统计\计算的语言(R,Matla ...

  7. win10家庭版系统安装SQL2005

    安装sql2005花了两天的时间,现在总结下,刚开始不知道win10家庭版系统没有本地用户和组的(详细说明 https://www.kafan.cn/A/5vz17o5jne.html) 一定要升级到 ...

  8. eclipse可以调试但是无法打开网页,提示一直在加载

    工作过程中遇到了eclipse调试可以正常执行,也没有报错,但是通过浏览器打开网页就是打不开,还提示一直加载.这个问题找了很多网页和搜索引擎,大多数的方法就是重新配置elipse里的tomcat的we ...

  9. 【转】Android - 线程同步

    什么是线程同步? 当使用多个线程来访问同一个数据时,非常容易出现线程安全问题(比如多个线程都在操作同一数据导致数据不一致),所以我们用同步机制来解决这些问题. 实现同步机制有两个方法: 1.同步代码块 ...

  10. jQUery 常用实例

    1. 如何创建嵌套的过滤器 //允许你减少集合中的匹配元素的过滤器, //只剩下那些与给定的选择器匹配的部分.在这种情况下, //查询删除了任何没(:not)有(:has) //包含class为“se ...