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

1.0   on the network node

1.1

set –I ‘s/start] on/#start\ on/g’ /etc/init/neutron-dhcp-agent.conf

1.2   Stop dhcp agent”
service neutron-dhcpagent stop

2.0  
on the compute node1

2.1  
install the dhcp agent:
apt-get install neutron-dhcp-agent -y

2.2  
mv /etc/neutron/dhcp_agent.ini  /etc/neutron/dhcp_agent.ini.bk

2.3  
拷贝网络节点的配置到计算节点node1
mv network:/etc/neutron/dhcp_agent.ini 
/etc/neutron/dhcp_agent.ini.

2.4  
启动node1上的dhcp agent
service neutron-dhcp-agent restart

3.0  
On compute node 2

3.1  
和node1一样,同样在node2上启动dhcp-agent

4.0  
On the controller node

4.1  
查看agent的状态:neutron agent-list

4.2  
创建network
“private”和相应的subnet
neutron net-create private
neutron subnet-create –name private-subnet private 10.0.0.0/29

4.3  
创建network
“private1”和相应的subnet
neutron net-create private1
neutron subnet-create –name private1-subnet private1 10.0.1.0/29

4.4  
在private上启动一个instance,private1上启动2个instance
nova boot –image cirros-qcow2 –flavor 1 –nic net-id=<private net is>
private one

nova boot –image cirros-qcow2 –flavor 1 –nic
net-id=<private1 net is> private1 two

nova boot –image cirros-qcow2 –flavor 1 –nic
net-id=<private1 net is> private1 three

4.5  
nova list

5.0  
on node1 和node2

5.1  
ip netns
可以看到network namespaces

6.0  
on controller node

6.1  
查找dhcp agent 的ID

6.2  
查找那个dhcp agent 服务private 和private1
neutron dhcp-agent-list-hosting-net private
neutron dhcp-agent-list-hosting-net private1

6.3  
或者查找private(1)上都有哪些dhcp agent

Neutron net-list-on-dhcp-agent <dhcp agent ID on
node1>

Neutron net-list-on-dhcp-agent <dhcp agent ID on node2>

6.4  
检查2个dhcp agent

Neutron agent-show  <dhcp agent ID on node1>

Neutron agent-show 
<dhcp agent ID on node2>
可以看到neutron 会track每个agent的heartbeat信息

6.5   为每个网络private(1) 部署 DHCP HA(需要为每个network添加?)

Neutron dhcp-agent-network-add  <dhcp agent ID on node2> private1

Neutron dhcp-agent-network-add  <dhcp agent ID on node1> private2

6.6  
验证每个网络都有2个agent

neutron dhcp-agent-list-hosting-net private
neutron dhcp-agent-list-hosting-net private1

6.7  
log in instance3,通过node1(2)上的netns

ip netns exec <qdhcp-network id> ssh cirros@instance3

6.8  
停掉node2 上的agent

Killall dnsmasq

Service neutron-dhcp-agent stop

6.9  
用udhcpc验证instance3依然可以得到IP

ip netns exec <qdhcp-network id> ssh cirros@instance3

  • on instance3

sudo udhcpc

7.0 
on controller and node1(2)

7.1 移除已经stop的node2上的agent

Neutron agent-delete <dhcp agent ID on node2>

7.2 验证node2上的agent不在

Neutron agent-list

7.3 重启node2上的agent

Service neutron-dhcp-agent restart

7.4 验证node2的agent又回来了

Neutron agent-list

neutron dhcp ha 实验的更多相关文章

  1. neutron routers HA 实验

    测试环境: 5个节点(( controller,2  network,2 compute nodes)) 采用VXLAN+Linux Bridge 1. 确定所有的neutron和nova服务都在运行 ...

  2. openstack neutron L3 HA

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

  3. neutron dhcp

    neutron dhcp 采用dnsmasq服务来实现.和传统的 dhcp 一样, dhcp请求也分为4步 The client sends a discover ("I'm a clien ...

  4. [DHCP服务]——一个验证DHCP原理实验(VMware)

    大致实验拓扑图 DHCP Server端的配置 1. 安装DHCP # yum -y install dhcp 2. 拷贝配置文件 # /dhcpd.conf.sample /etc/dhcp/dhc ...

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

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

  6. 三层交换机DHCP配置实验(基于Cisco模拟器)

    实验设备: 三层交换机一台,主机若干台,直通线若干 实验目的: 实现客户机从DHCP(动态主机配置协议)服务器上获取动态IP地址. 实验步骤: 1.划分VLAN Switch>enable Sw ...

  7. Neutron :默认通过 dnsmasq 实现 DHCP 功能----Namespace

    Neutron 提供 DHCP 服务的组件是 DHCP agent. DHCP agent 在网络节点运行上,默认通过 dnsmasq 实现 DHCP 功能.   配置 DHCP agent DHCP ...

  8. Neutron 不健全的HA ROUTER

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

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

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

随机推荐

  1. 【IDEA】重装基本设置+插件安装

    基本配置:2.1 显示:2.1.1.选中展示Toolbar2.1.2.显示内存占用:2.1.3.显示行号和方法线:2.1.4.代码软分行:2.2.修改快捷键:2.2.1 修改Ctrl + D 快捷键: ...

  2. python之MySQL学习——简单的增删改查封装

    1.增删改查封装类MysqlHelper.py import pymysql as ps class MysqlHelper: def __init__(self, host, user, passw ...

  3. SET NAMES 'charset_name'

    设置写入db和db返回读出结果的字符集character set https://dev.mysql.com/doc/refman/5.7/en/charset-connection.html SET ...

  4. <2014 05 21> 互联网时代的C语言——Go(2)

    **************************************************************************************************** ...

  5. 关于this,作用域,属性,原型链的一个小练习

    function p () { this.name = 'x'; var name = 'y'; this.getName = function () { return name; } } // 求值 ...

  6. Spring 框架的JDBC模板技术

    1. 概述 Spring 框架提供了很多持久层的模板类来简化编程; Spring 框架提供的JDBC模板类: JdbcTemplate 类; Spring 框架提供的整合 Hibernate 框架的模 ...

  7. Shell正则表达式和文本处理工具

    作业一:整理正则表达式博客 一.什么是正则 正则就是用一些具有特殊含义的符号组合而成(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则. 通配符是由shell解释得. ...

  8. 安装Centos 7操作系统

    一.安装前准备 VMware workstation.CentOS-7-x86_64 系统镜像. 二.开始新建虚拟机 选择典型-下一步  选择稍后安装操作系统-下一步  选择LINUX-CentOS ...

  9. Qt 使用 lambda 表达式做为槽函数时为什么使用 QObject::sender() 获取到的发送信号对象指针为空?

    /*! Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; ...

  10. Linux network 资料链接

    1.iptables 基础 https://wiki.centos.org/HowTos/Network/IPTables 2.HOWTOs on netfilter site http://www. ...