测试环境:

5个节点(( controller,2  network,2 compute nodes))

采用VXLAN+Linux Bridge

1. 确定所有的neutron和nova服务都在运行

Nova service-list

Neutron agent-list

2. 创建2个networks

  1. a) neutron net-create private
  2. neutron subnet-create name private-subnet private 10.0.0.0/
  3.  
  4. b) neutron net-create private1
  5. neutron subnet-create name private1-subnet private1 10.0.1.0/

3. 创建一个共享的public网络连接到物理网络physnet1

  1. Neutron net-create shared public router:external=True provide:network_type flat provider:physical_network physnet1
  2.  
  3. Neutron subnet-create name public-subnet public allocation-pool start 172.16.0.33,end-172.16.0.66 gateway=172.16.0.5 enable-dhcp=False 172.16.0.0/

4. 创建一个router,–distributed为 False, –ha 为True

  1. Neutron router-create MyRouter distributed False ha True

5. 把private和private1加入到MyRouter,并设置router的网关到public网络

  1. Neutron router-interface-add MyRouter private-subnet
  2.  
  3. Neutron router-interface-add MyRouter private1-subnet
  4.  
  5. Neutron router-gateway-set MyRouter public

6. 查看各种节点上的namespace

7. Open ICMP 和port 22 in security group

  1. Neutron security-group-rule-create protocol icmp direction ingress default
  2.  
  3. Neutron security-group-rule-create protocol tcp port-range-min port-range-max direction ingress default

8. 启动VMs

  1. nova boot image cirros-qcow2 flavor nic net-id=<private net is> private one
  2.  
  3. nova boot image cirros-qcow2 flavor nic net-id=<private net is> private two
  4.  
  5. nova boot image cirros-qcow2 flavor nic net-id=<private1 net is> private1 three
  6.  
  7. nova boot image cirros-qcow2 flavor nic net-id=<private1 net is> private1 four

9. Neutron port-list

10. Add floating IP

网络节点上:

Neutron floatingip-create –port-id=<port ID>

11. Neutron net-list

注意:HA network已经自动创建了。如何创建的

12. Keepalived用来监控每个HA router,VIP会随着master failes而移动

  1. Ssh networknode
  2.  
  3. Less /var/lib/neutron/ha_confs/router_UUDI/keepalived.conf
  4.  
  5. Less /var/lib/neutron/ha_confs/router_UUDI/state

13. 看看qrouter
namespace中VIP在那个node上

  1. Networknode1$ Ip netns exec qrouter-id ip a
  2.  
  3. Networknode2$ Ip netns exec qrouter-id ip a

14. Down 所有active router上的interfaces,VIP移动到了另外的node上了。(router不能直接down掉?)

  1. Ip netns exec qgouter-id ip link set dev qg-id down
  2.  
  3. Ip netns exec qrouter-id ip link set dev qg-id down
  4.  
  5. Ip netns exec ha-id ip link set dev qg-id down

15. Up 刚才down了接口,VIP没有移动

注意:由于bug1365476, HA routers在L2 pop的情况下不工作。(VXLAN不works

neutron routers HA 实验的更多相关文章

  1. neutron dhcp ha 实验

    4个节点(controller, network,2 compute nodes) 1.0   on the network node 1.1 set –I ‘s/start] on/#start\ ...

  2. openstack neutron L3 HA

    作者:Liping Mao  发表于:2014-08-20 版权声明:能够随意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 近期Assaf Muller写了一篇关于Neutro ...

  3. 【伊利丹】Hadoop2.0 NN HA实验记录

    1.关于Hadoop2.2.0中HA的介绍 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxNDUxMjEyNA==/font/5a6L5L2T/fo ...

  4. Neutron 不健全的HA ROUTER

    首先介绍下HA,所谓的HA就是高可用性,但HA有双主.主备两种工作模式,其中主备模式又包含抢占与 非抢占两种方式,而Neutron Router采用的无疑是HA中最简单的工作方式非抢占主备模式. HA ...

  5. 【甘道夫】NN HA 对于 Client 透明的实验

    之前转载过一篇[伊利丹]写的NN HA实验记录.该博客描写叙述了主备NN透明切换的过程,也就是说,当主NN挂掉后,自己主动将备NN切换为主NN了,Hadoop集群正常执行. 今天我继续做了一个实验.目 ...

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

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

  7. 【甘道夫】Hadoop2.2.0 NN HA具体配置+Client透明性试验【完整版】

    引言: 前面转载过一篇团队兄弟[伊利丹]写的NN HA实验记录,我也基于他的环境实验了NN HA对于Client的透明性. 本篇文章记录的是亲自配置NN HA的具体全过程,以及全面測试HA对clien ...

  8. vSphere可用性之三准备实验环境

    第三章 准备实验环境 在上篇内容中,讲述了进行VMware HA实验所必需的软硬件条件.接下来将使用这些来搭建实验环境.主要内容为依据拓扑图安装ESX主机系统.ISCSI存储系统. 此次实验环境的建置 ...

  9. 【OpenStack】OpenStack系列15之OpenStack高可用详解

    高可用 概念 级别 陈本 如何实现 分类 Openstack的HA 虚拟机的HA 虚拟机HA 比较 应用级别HA,Heat的HA模板   组件的HA 示意图 Mysql的HA 三种方式之一——主从同步 ...

随机推荐

  1. Centos7配置外部网络访问

    Centos7配置外部网络访问 一.安装步骤中的重要配置: 默认是动态ip配置,有需要可以改成静配置 BOOTPROTO="static" 二.如果不能联网,按照如下步骤设置网络: ...

  2. mysql中对应oracle中的to_char()和to_number()函数

    TO_CHAR(): CAST(123   AS   CHAR(3)) TO_NUMBER(): cast( '123 '   as   SIGNED   INTEGER)

  3. django的ORM中的2个易混点

    1.django数据模型中null=True和blank=True的区别 null 是针对数据库而言,如果 null=True, 表示数据库的该字段可以为空,即在Null字段显示为YES. blank ...

  4. How to make asynchronous HTTP requests in PHP 4种PHP异步执行的常用方式

    [是否等待返回就执行下一步] How to make asynchronous HTTP requests in PHP - Stack Overflow https://stackoverflow. ...

  5. 类加载器(ClassLoader)

    1. 类加载器概述 1.1 类加载器的作用 把 .class 文件加载到 JVM 的方法区中,变成一个 Class 对象! 1.2 类加载器分类 类加载器也是一个类: ClassLoader; Jav ...

  6. Docker + ElasticSearch + Node.js

    最近有空就想研究下ElasticSearch. 此篇文章用来记录研究过程.备注:需要有一定的docker基础,ElasticSearch的基本概念 Docker安装ElasticSearch 首先,就 ...

  7. 转:9个offer,12家公司,35场面试 从微软到谷歌,应届计算机毕业生的2012求职之路 !!!

    1,简介 毕业答辩搞定,总算可以闲一段时间,把这段求职经历写出来,也作为之前三个半月的求职的回顾. 首先说说我拿到的offer情况: 微软,3面->终面,搞定 百度,3面->终面,口头of ...

  8. c#下载文件,最简单代码

    /// <summary> /// 下载文件 /// </summary> /// <param name="url">下载地址</par ...

  9. 20170517 ABAP debug

    1.新版本调试模式下的观察点: 在新版本模式画面的工具栏上选择'watchpoint' 按钮可以创建观察点. 举例:当生产内表itab第5行时,设置为观察点,追加条件如下: Lines(itab) = ...

  10. Redis分布式锁的python实现

    案例1: #!/usr/bin/env python # coding=utf-8 import time import redis class RedisLock(object): def __in ...