找回密码
 注册
查看: 2588|回复: 1

使用VRRP(L3HA)和Open vSwitch提供高可用性

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2021-6-25 11:21:40 | 显示全部楼层 |阅读模式
一个具有网络管理接口的控制器节点。
8 w( V; a( E: c两个网络节点有四个网络接口:管理、项目隧道网络、项目VLAN网络和外部(通常是Internet)。Open vSwitch网桥br-vlan必须包含VLAN接口上的一个端口,而Open vSwitch桥的br- ex必须在外部接口上包含一个端口。3 j* q! D$ `9 s9 K( H: N  P! U) ^

: n' h5 ~$ S  i' P& p+ Q) n/ s至少有一个具有三个网络接口的计算节点:管理、项目隧道网络和项目VLAN网络。Open vSwitch网桥br-vlan必须在VLAN接口上包含一个端口。
为了提高对网络流量的理解,网络和计算节点包含一个独立的网络接口,用于项目VLAN网络。在生产环境中,项目VLAN网络可以使用任何Open vSwitch网桥来访问网络接口。例如br-tun网桥
# t! N/ e/ X0 ?5 \: [9 R  O
在示例配置中,管理网络使用10.0.0 / 24,隧道网络使用10.0.1.0 / 24,VRRP网络使用169.254.192.0 / 18,外部网络使用203.0.113.0 / 24。VLAN网络不需要IP地址范围,因为它只处理二级连接。
# M/ \: @: ^4 R. b
硬件要求: I% `4 t  f, S3 b- ~
) ]% w! z$ \3 Q, o+ i& W
网络布局  ]/ e# Q6 k% C; O8 R2 I/ B6 I
6 X& J; ~9 I  q6 P/ [0 C

: I( @, a7 w& O! r9 T) _6 |1 | 服务布局4 I3 k$ C" [; C" t  ?( }

. s: J9 [3 a5 D
注意:对于VLAN外部和项目网络,网络基础设施必须支持VLAN标记。为了获得VXLAN和GRE项目网络的最佳性能,网络基础设施应该支持巨型帧。
7 E. z' K& g" T+ {8 m. l
控制节点的OpenStack服务
: f& u; \6 t& H7 _/ s5 \, T在neutron.conf文件中具有数据库服务器的合适配置在neutron.conf文件中具有消息队列服务的合适配置。; {$ x5 }9 h2 H9 q, i$ P
在neutron.conf文件中具有openstack keystone服务的合适配置
& B4 W" _: \" |) J$ `6 f在nova.conf文件中具有openstack计算 控制/管理服务的合适配置去使用Openstack 网络
$ A/ V8 }6 R* O. p1 [: mneutron服务器服务、ML2插件和任何依赖关系。

; P, e6 B7 ]/ ]+ A: i% H& k  V
: h' g$ K( J" X8 _; e5 _网络节点的Openstack服务在neutron.conf文件中具有openstack keystone服务的合适配置
8 J0 W. E5 h9 \" S; W0 @% MOpen vSwitch服务、ML2插件、Open vSwitch代理、L3代理、DHCP代理、元数据代理和任何依赖关系。

7 {/ J' }5 b: U9 Z
. _/ q7 D) I0 S  h4 z计算节点的Openstack服务6 b- |, E6 N8 W) S, E
在neutron.conf文件中具有openstack keystone服务的合适配置, f( i. V6 V- E( A  e) X
. E3 `  p" z5 o1 A+ ?' B* y6 _
在nova.conf文件中具有openstack计算 控制/管理服务的合适配置去使用Openstack网络Open vSwitch服务,ML2插件,OpenvSwitch代理,以及任何依赖项。

* u! R* |% w! R, _! V% x
6 f3 O: E8 k7 r3 z# G: Q7 O" k体系结构
4 W! K5 k9 o8 j$ d9 v5 |一般的体系架构

( x" R( O  y6 n& H* S
网络节点包含以下组件:& \4 |3 `7 V0 \3 ~& C8 n: E+ L

+ c5 E% W! W" x( Y! D8 AOpen vSwitch代理管理虚拟交换机之间的连接,以及通过虚拟端口与其他网络组件(如名称空间、Linux网桥和底层接口)进行交互。
  [0 v2 c4 O  L. a4 u6 Q- z+ ?
/ u) j5 `! c7 u; ]管理qdhcp名称空间的DHCP代理。qdhcp名称空间为使用项目网络的实例提供DHCP服务。
7 L- q/ s7 ~% X0 Q( c% d; x) u- ~) ?) Q2 P1 W
L3代理使用keepalived管理qrouter名称空间和VRRP。qrouter名称空间提供了项目和外部网络之间以及项目网络之间的路由。它们还在实例和元数据代理之间路由元数据通信。. `# Q& s# \$ c
- }. s9 `' C$ k& P8 }( Q
元数据代理处理实例的元数据操作。
( t4 ~8 S7 ~  [  m6 n' t( J+ b

9 S! S4 I! m. D网络节点组件回顾1 h8 s" B9 E! T

! C9 u* u0 o6 i: g8 b6 h1 w6 l
  网络节点组件连接3 f2 v6 N: L( r  I6 r2 U) t0 j

  p) L% y3 I7 s- U2 `/ I
计算节点包含以下组件:5 r6 |( _' j1 a) R

( }1 j3 z' i' D2 p( h! k1.Open vSwitch代理管理虚拟交换机之间的连接,以及通过虚拟端口与其他网络组件(如名称空间、Linux网桥和底层接口)进行交互。( o: F6 v* l' ^8 V

% b, x/ s/ U. c- @; U! p* j4 r2.Linux网桥处理安全组。

: w& r) j5 C! }1 C" c
注意:由于Open vSwitch和iptables的限制,网络服务使用Linux桥来管理实例的安全组。
% W* G& G/ L% H
计算节点组件回顾
2 D2 C) S. A, @' l' ^  D9 t' j9 X
8 T0 T2 j# d( X0 a) [" b: h
计算节点组件连接
  L4 K2 L9 s8 f& s

# D( K/ s$ ]7 c4 C6 F" E, G6 Z数据包流
L3HA机制简单地增加了场景:如果主路由器失败,则使用Open vSwitch提供给另一个路由器的快速故障转移到另一个路由器。5 }, O& g9 _8 A

- E' h" d+ J+ E1 y; Z在正常的操作过程中,主路由器定期地通过一个隐藏的项目网络来传输心跳数据包,该网络连接所有的HA路由器以完成特定的项目。
在默认情况下,这个网络使用的类型是在/etc/neutron/plugins/ml2_conf.ini的tenant_network_types选项中第一个值的类型。
9 U9 I5 ?4 b- t$ d# B: i
2 \, {8 [% g# s# Z: e" }- k; b: {如果备份路由器停止接收这些数据包,它就假定主路由器失效,并通过在qrouter名称空间中配置IP地址来提升自己到主路由器。在具有多个备份路由器的环境中,具有下一个最高优先级的路由器成为主路由器

: |# g, b5 C7 K/ r- L
注意:L3HA机制对所有路由器使用相同的优先级。因此,VRRP会将IP地址最高的备份路由器提升到主路由器。
& O; `! k0 a7 V1 G+ x4 C$ n
示例配置
1 U# v$ v& F+ Q! n8 U2 Z
使用下面的示例配置作为在您的环境中部署该场景的模板。
$ V; l+ d' X; C# s- f
控制节点
1.配置常见的选项。编辑/etc/neutron/neutron.配置文件:
[backcolor=rgb(245, 245, 245) !important][url=][/url]/ f. o8 u+ ^$ [( }: P
[DEFAULT]verbose = Truecore_plugin = ml2service_plugins = routerallow_overlapping_ips = Truerouter_distributed = Falsel3_ha = Truel3_ha_net_cidr = 169.254.192.0/18max_l3_agents_per_router = 3min_l3_agents_per_router = 2dhcp_agents_per_network = 2[backcolor=rgb(245, 245, 245) !important][url=][/url]8 `6 F1 v7 c6 I# S! Y: L

) K5 [3 |6 V8 D( `3 z3 J/ k+ p
/ K6 ~. |8 U) q6 M: J
2.配置ML2插件。编辑/etc/neutron/plugins/ml2/ml2_conf.ini文件:

% D3 r2 y' o' X$ y6 u: V! x# g[backcolor=rgb(245, 245, 245) !important][url=][/url]( J( H5 x0 s) e$ c- M; _
[ml2]type_drivers = flat,vlan,gre,vxlantenant_network_types = vlan,gre,vxlanmechanism_drivers = openvswitch[ml2_type_flat]flat_networks = external[ml2_type_vlan]network_vlan_ranges = external,vlan:MIN_VLAN_ID:MAX_VLAN_ID[ml2_type_gre]tunnel_id_ranges = MIN_GRE_ID:MAX_GRE_ID[ml2_type_vxlan]vni_ranges = MIN_VXLAN_ID:MAX_VXLAN_IDvxlan_group = 239.1.1.1[securitygroup]firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriverenable_security_group = Trueenable_ipset = True[backcolor=rgb(245, 245, 245) !important][url=][/url]
2 p& f6 d6 {6 [! p! @0 p/ R+ ^3 @( {+ L
3 o  t5 h/ b+ f! P' y& V" N/ ?( i* U: \' S+ [; l
替换MIN_VLAN_ID、MAX_VLAN_ID、MIN_GRE_ID、MAX_GRE_ID、MIN_VXLAN_ID和MAX_VXLAN_ID和VLAN、GRE和VXLAN ID最小值,以及适合您的环境的最大值。
6 `$ {  Y' {( {& n9 i
请注意:
tenant_network_types选项中的第一个值在常规用户创建网络时成为默认项目网络类型。network_vlan_range选项中的外部值缺少VLAN ID范围,以支持管理用户使用任意VLAN ID。' z  _5 a8 G# C6 i

6 o  u/ V6 M/ d5 y
3.启动服务

4 m( t' Q1 K4 f/ d7 h3 v8 v7 X8 q+ {, i, H4 R, ~
, I$ j; M1 C9 A/ L, {! m
网络节点
1.配置内核以启用包转发和禁用反向路径过滤。编辑/etc/sysctl.配置文件:
net.ipv4.ip_forward=1net.ipv4.conf.default.rp_filter=0net.ipv4.conf.all.rp_filter=0
* C; V0 N9 e% f9 e
2.加载新内核配置:
$ sysctl -p
9 {& s: C$ k- A4 N! ^, I, i5 f& S: U6 ~; l  Y( t7 Q
3.配置常见的选项。编辑/etc/neutron/neutron.配置文件:
[DEFAULT]verbose = True
4 ]+ p& h' Q4 f# N; z  F9 P0 Y" d+ G% z. g. `; t
4.配置Open vSwitch代理。编辑/etc/neutron/plugins/ml2/ml2_conf.ini文件:
[backcolor=rgb(245, 245, 245) !important][url=][/url]2 p3 b% f- l) B/ }
[ovs]local_ip = TUNNEL_INTERFACE_IP_ADDRESSbridge_mappings = vlan:br-vlan,external:br-ex[agent]tunnel_types = gre,vxlanl2_population = False[securitygroup]firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriverenable_security_group = Trueenable_ipset = True[backcolor=rgb(245, 245, 245) !important][url=][/url]  t. O( M$ n" |: ?/ r" f; |

$ P" Y- E" U. U. @: s
" m+ g: P' f$ M5 o
使用处理GRE / VXLAN项目网络的接口的IP地址替换TUNNEL_INTERFACE_IP_ADDRESS。

( I7 o* q% S" {  ?- c  s
5.配置L3代理。编辑/etc/neutron/l3_agent.ini文件:

7 a8 g* I3 n9 d9 h8 `[backcolor=rgb(245, 245, 245) !important][url=][/url]$ ~! X! n$ y. t" z, L3 O
[DEFAULT]verbose = Trueinterface_driver = neutron.agent.linux.interface.OVSInterfaceDriveruse_namespaces = Trueexternal_network_bridge =router_delete_namespaces = Trueagent_mode = legacy[backcolor=rgb(245, 245, 245) !important][url=][/url]
, _: {- a  |, @1 s7 ]; ]* A" T. ~+ h- T3 q5 S; s. t% h
注意:external_network_bridge选项故意不包含任何值。

, Q. @$ G# g2 z2 Y! w' x
6.配置DHCP代理。编辑/etc/neutron/dhcp_agent.ini文件:
% n# `/ |9 d& v: b. o/ R
[backcolor=rgb(245, 245, 245) !important][url=][/url]" x# L; ~: b! L' Y/ x6 y, u
[DEFAULT]verbose = Trueinterface_driver = neutron.agent.linux.interface.OVSInterfaceDriverdhcp_driver = neutron.agent.linux.dhcp.Dnsmasquse_namespaces = Truedhcp_delete_namespaces = True[backcolor=rgb(245, 245, 245) !important][url=][/url]; H7 G4 i; ]  T8 f$ o2 B

0 B7 \: f5 d/ p7 p3 D- v* v+ a5 G) m: |+ P% K& G
7.(可选)为VXLAN项目网络减少MTU。
[backcolor=rgb(245, 245, 245) !important][url=][/url]9 g" z$ {2 b/ s
2 l# C0 [; J" U7 W5 X! Z% H3 P
: a$ s- V  p9 X1 U) \6 ?! @6 I1 Y+ M
1.编辑/etc/neutron/dhcp_agent。ini文件:[DEFAULT]dnsmasq_config_file = /etc/neutron/dnsmasq-neutron.conf2.编辑/etc/neutron/dnsmasq-neutron.conf文件:dhcp-option-force=26,1450
6 ^* c# v# F) Z" n2 ^- g
7 f  L$ Q$ a* h% X) U, r5 A9 L[backcolor=rgb(245, 245, 245) !important][url=][/url]
  e+ Q5 Y8 M: b: T2 y, M3 x# e  ^- K' o  \1 ^! A  Z
# ]7 w0 z  D" ^2 O% J
8.配置元数据代理。编辑/etc/neutron/metadata_agent.ini文件:
[DEFAULT]verbose = Truenova_metadata_ip = controllermetadata_proxy_shared_secret = METADATA_SECRET
5 U3 e5 x1 h: o4 ~4 Y9 J4 F
6 k( v. q# P/ p8 `' B1 O
用合适的环境值替换METADATA_SECRET。
* V/ y7 ]' b2 U% s* O
9.开始以下服务:
    Open vSwitch    Open vSwitch agent    L3 agent    DHCP agent    Metadata agent, i, C; Q* k( ~. Y) x& r

: l* n" M, m  D计算节点: e# d8 q% j: ]) d4 t3 s) K
1.配置内核以启用网桥上的iptables并禁用反向路径过滤。编辑/etc/sysctl.配置文件:
net.ipv4.conf.default.rp_filter=0net.ipv4.conf.all.rp_filter=0net.bridge.bridge-nf-call-iptables=1net.bridge.bridge-nf-call-ip6tables=1. A2 b, z& \! J( C# H2 o
2.加载新内核配置:
$ sysctl -p
. t+ F( F5 i1 v7 g* p( _1 F- c+ d1 D6 e) I+ k3 G* q
3.配置常见的选项。编辑/etc/neutron/neutron.配置文件:
[DEFAULT]verbose = True* d3 x5 R  X0 T
3 ]  W* t+ ?  k1 g
4.配置Open vSwitch代理。编辑/etc/neutron/plugins/ml2/ml2_conf.ini文件:
[backcolor=rgb(245, 245, 245) !important][url=][/url]: J; z; D+ G: v, x! I
[ovs]local_ip = TUNNEL_INTERFACE_IP_ADDRESSbridge_mappings = vlan:br-vlan[agent]tunnel_types = gre,vxlanl2_population = False[securitygroup]firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriverenable_security_group = Trueenable_ipset = True[backcolor=rgb(245, 245, 245) !important][url=][/url]
1 _5 R3 j% I$ s2 \7 B
: z* P9 U8 [, u$ {+ o8 _
$ u7 L6 q! X# i) u) ]
使用处理GRE / VXLAN项目网络的接口的IP地址替换TUNNEL_INTERFACE_IP_ADDRESS。
9 D- g6 K! X1 r3 c
7.启动以下服务:
    Open vSwitch    Open vSwitch agent
% N. s5 l. ~5 |  S% a  F
4 d3 }$ t$ K; ^1 y" f* J# ?( d验证服务操作
1.提供管理项目凭据。
2.验证代理的存在和操作:
[backcolor=rgb(245, 245, 245) !important][url=][/url]5 [1 c9 F3 j: c1 P0 q, I0 N2 h# W
$ neutron agent-list+--------------------------------------+--------------------+----------+-------+----------------+---------------------------+| id                                   | agent_type         | host     | alive | admin_state_up | binary                    |+--------------------------------------+--------------------+----------+-------+----------------+---------------------------+| 0bfe5b5d-0b82-434e-b8a0-524cc18da3a4 | DHCP agent         | network1 | :-)   | True           | neutron-dhcp-agent        || 25224bd5-0905-4ec9-9f2d-3b17cdaf5650 | Open vSwitch agent | compute2 | :-)   | True           | neutron-openvswitch-agent || 29afe014-273d-42f3-ad71-8a226e40dea6 | L3 agent           | network1 | :-)   | True           | neutron-l3-agent          || 3bed5093-e46c-4b0f-9460-3309c62254a3 | DHCP agent         | network2 | :-)   | True           | neutron-dhcp-agent        || 54aefb1c-35f7-4ebf-a848-3bb4fe81dcf7 | Open vSwitch agent | network1 | :-)   | True           | neutron-openvswitch-agent || 91c9cc03-1678-4d7a-b0a7-fa1ac24e5516 | Open vSwitch agent | compute1 | :-)   | True           | neutron-openvswitch-agent || ac7b3f77-7e4d-47a6-9dbd-3358cfb67b61 | Open vSwitch agent | network2 | :-)   | True           | neutron-openvswitch-agent || ceef5c49-3148-4c39-9e15-4985fc995113 | Metadata agent     | network1 | :-)   | True           | neutron-metadata-agent    || d27ac19b-fb4d-4fec-b81d-e8c65557b6ec | L3 agent           | network2 | :-)   | True           | neutron-l3-agent          || f072a1ec-f842-4223-a6b6-ec725419be85 | Metadata agent     | network2 | :-)   | True           | neutron-metadata-agent    |+--------------------------------------+--------------------+----------+-------+----------------+---------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]' m' D" X3 q/ d, @* u# W+ Q
, C) ~* v. T# Z
4 S3 E( ]  }! W% R, m
创建初始网络
% `$ e8 j: z) [( \: e) e, |/ t
这个示例创建了一个flat外部网络和一个VXLAN项目网络。
9 e5 o+ s' |2 F* @+ ?- I- H$ l* u% u, z- D! S  X0 F; e
1.提供管理项目凭据。" t  O( ~: K- W7 G# N: F4 T) [9 a

  @4 \4 _! P  x2 I  m( I2.创建外部网络:

) a3 O5 `$ }0 N/ \3 ~[backcolor=rgb(245, 245, 245) !important][url=][/url]. K3 A2 k8 p5 h/ Z
$ neutron net-create ext-net --router:external True \  --provider:physical_network external --provider:network_type flatCreated a new network:+---------------------------+--------------------------------------+| Field                     | Value                                |+---------------------------+--------------------------------------+| admin_state_up            | True                                 || id                        | 5266fcbc-d429-4b21-8544-6170d1691826 || name                      | ext-net                              || provider:network_type     | flat                                 || provider:physical_network | external                             || provider:segmentation_id  |                                      || router:external           | True                                 || shared                    | False                                || status                    | ACTIVE                               || subnets                   |                                      || tenant_id                 | 96393622940e47728b6dcdb2ef405f50     |+---------------------------+--------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]
# S* ]* h" N* k% p3 a/ \6 T3 f3 K4 I+ o: t

1 K# l2 v5 c  {$ d9 N3 x( N+ `  a
3.在外部网络上创建子网:

' |8 d' E1 d1 D6 D. e. c) @[backcolor=rgb(245, 245, 245) !important][url=][/url]
3 b0 V# N' y2 x: r8 M8 ]% {$ neutron subnet-create ext-net 203.0.113.0/24 --name ext-subnet \  --allocation-pool start=203.0.113.101,end=203.0.113.200 \  --disable-dhcp --gateway 203.0.113.1Created a new subnet:+-------------------+----------------------------------------------------+| Field             | Value                                              |+-------------------+----------------------------------------------------+| allocation_pools  | {"start": "203.0.113.101", "end": "203.0.113.200"} || cidr              | 203.0.113.0/24                                     || dns_nameservers   |                                                    || enable_dhcp       | False                                              || gateway_ip        | 203.0.113.1                                        || host_routes       |                                                    || id                | b32e0efc-8cc3-43ff-9899-873b94df0db1               || ip_version        | 4                                                  || ipv6_address_mode |                                                    || ipv6_ra_mode      |                                                    || name              | ext-subnet                                         || network_id        | 5266fcbc-d429-4b21-8544-6170d1691826               || tenant_id         | 96393622940e47728b6dcdb2ef405f50                   |+-------------------+----------------------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]5 E1 q  m/ B; \

' S' _5 ]" }- v2 `1 ~
4 I  p! j3 H* A+ \
请注意:) D3 i$ P3 ^  n% t! ~: |
( e! F" L5 `- t
示例配置包含vlan作为第一个项目网络类型。只有管理用户才能创建其他类型的网络,比如GRE或VXLAN。下面的命令使用admin项目凭证创建一个VXLAN项目网络。4 D' B6 w4 f8 n! [* N/ A& E
: u$ k! G3 @% K/ M% k
1.获得常规项目的ID。例如使用demo项目:
: w+ V+ P/ b* a- ^7 @$ B
[backcolor=rgb(245, 245, 245) !important][url=][/url]) t; p( m( c9 T% p
$ openstack project show demo+-------------+----------------------------------+|   Field     |              Value               |+-------------+----------------------------------+| description |           Demo Tenant            ||   enabled   |               True               ||      id     | 443cd1596b2e46d49965750771ebbfe1 ||     name    |               demo               |+-------------+----------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]  g' m, W9 i% }. G3 H( A
9 {/ z# _* H/ M# ~0 [# S0 n

3 G7 D2 `$ E" w5 D1 A, \; A2 g
2.创建项目网络:

# T. ^3 Q  c! q# U7 _[backcolor=rgb(245, 245, 245) !important][url=][/url]  z1 E& L( D. G& F- M- [3 w
$ neutron net-create demo-net \  --tenant-id 443cd1596b2e46d49965750771ebbfe1 \  --provider:network_type vxlanCreated a new network:+---------------------------+--------------------------------------+| Field                     | Value                                |+---------------------------+--------------------------------------+| admin_state_up            | True                                 || id                        | 7ac9a268-1ddd-453f-857b-0fd9552b645f || name                      | demo-net                             || provider:network_type     | vxlan                                || provider:physical_network |                                      || provider:segmentation_id  | 1                                    || router:external           | False                                || shared                    | False                                || status                    | ACTIVE                               || subnets                   |                                      || tenant_id                 | 443cd1596b2e46d49965750771ebbfe1     |+---------------------------+--------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]5 D. C- o- s. p- `4 K2 `+ J% [

8 V1 I2 J  V  s& ?  L8 Q/ |
( B; h2 S: [2 A
5 Q( y8 q% x; t! j" c6 E" ?
3.提供常规项目凭证。下面的步骤使用demo项目。
4.在项目网络上创建子网:
9 q" Z, ?: S2 }" x+ T) n% g
[backcolor=rgb(245, 245, 245) !important][url=][/url]
: }8 |* ?' ^& G/ v) V1 S& m+ ~8 _6 X$ neutron subnet-create demo-net 192.168.1.0/24 --name demo-subnet \  --gateway 192.168.1.1Created a new subnet:+-------------------+--------------------------------------------------+| Field             | Value                                            |+-------------------+--------------------------------------------------+| allocation_pools  | {"start": "192.168.1.2", "end": "192.168.1.254"} || cidr              | 192.168.1.0/24                                   || dns_nameservers   |                                                  || enable_dhcp       | True                                             || gateway_ip        | 192.168.1.1                                      || host_routes       |                                                  || id                | 2945790c-5999-4693-b8e7-50a9fc7f46f5             || ip_version        | 4                                                || ipv6_address_mode |                                                  || ipv6_ra_mode      |                                                  || name              | demo-subnet                                      || network_id        | 7ac9a268-1ddd-453f-857b-0fd9552b645f             || tenant_id         | 443cd1596b2e46d49965750771ebbfe1                 |+-------------------+--------------------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]
% m0 E* n% {4 O0 X* u3 ^! Z: @& C/ |$ ]/ z& J6 E/ Z+ P# r9 \

7 N. Y7 f2 U1 y8 J8 }) B$ S( A
5.创建一个项目路由器:

% _6 g6 K. T( P0 |! N9 _1 t[backcolor=rgb(245, 245, 245) !important][url=][/url]3 r# q( U9 S) n8 z/ Q# l, I0 ]2 f
$ neutron router-create demo-routerCreated a new router:+-----------------------+--------------------------------------+| Field                 | Value                                |+-----------------------+--------------------------------------+| admin_state_up        | True                                 || distributed           | False                                || external_gateway_info |                                      || ha                    | True                                 || id                    | 7a46dba8-8846-498c-9e10-588664558473 || name                  | demo-router                          || routes                |                                      || status                | ACTIVE                               || tenant_id             | 443cd1596b2e46d49965750771ebbfe1     |+-----------------------+--------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]
2 C8 e8 n9 m, \1 k2 \' }- J- k( E6 U  B7 E# t5 ~

2 _5 w1 a) q9 r) c- @
注意:默认policy.json文件只允许管理项目在路由器创建期间启用/禁用HA,并查看路由器的HA标志。
! B) `4 y! C8 f
6.在路由器上添加项目子网作为接口:
$ neutron router-interface-add demo-router demo-subnetAdded interface 8de3e172-5317-4c87-bdc1-f69e359de92e to router demo-router.6 ^, G. t  V  }: @# ?5 p% x
2 v4 v& x3 X' y) }
7.在路由器上添加一个通向外部网络的网关:
6 y: A% t1 T2 ^: `, s/ _
$ neutron router-gateway-set demo-router ext-netSet gateway for router demo-router+ K( d% f$ _* _1 m+ S
6 q4 X0 W9 H& Y8 z& N6 e7 w" V# k
验证网络操作

+ T' u% t7 }- O- w. D8 V8 Q1.提供管理项目凭据。; z% d6 m: _- F* I, F2 d' r

1 _( |) b) K6 e8 U. o- z( ~" m4 N2.在控制器节点上,验证HA网络的创建:
[backcolor=rgb(245, 245, 245) !important][url=][/url]
* B" |( f$ `5 t$ neutron net-list+--------------------------------------+----------------------------------------------------+-------------------------------------------------------+| id                                   | name                                               | subnets                                               |+--------------------------------------+----------------------------------------------------+-------------------------------------------------------+| 5266fcbc-d429-4b21-8544-6170d1691826 | ext-net                                            | b32e0efc-8cc3-43ff-9899-873b94df0db1 203.0.113.0/24   || e029b568-0fd7-4d10-bb16-f9e014811d10 | HA network tenant 443cd1596b2e46d49965750771ebbfe1 | ee30083f-eb4c-41ea-8937-1bae65740af4 169.254.192.0/18 || 7ac9a268-1ddd-453f-857b-0fd9552b645f | demo-net                                           | 2945790c-5999-4693-b8e7-50a9fc7f46f5 192.168.1.0/24   |+--------------------------------------+----------------------------------------------------+-------------------------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]
1 _8 X* q( u# s( W1 R
) Y, L5 o8 Z; A' E) x7 l
: k9 h+ p: b& v
3.在控制器节点上,在多个网络节点上验证路由器的创建:
! }2 k5 {- S4 \' {
[backcolor=rgb(245, 245, 245) !important][url=][/url]. c" v' g9 Y" V) U
$ neutron l3-agent-list-hosting-router demo-router+--------------------------------------+----------+----------------+-------+----------+| id                                   | host     | admin_state_up | alive | ha_state |+--------------------------------------+----------+----------------+-------+----------+| 29afe014-273d-42f3-ad71-8a226e40dea6 | network1 | True           | :-)   | active   || d27ac19b-fb4d-4fec-b81d-e8c65557b6ec | network2 | True           | :-)   | standby  |+--------------------------------------+----------+----------------+-------+----------+[backcolor=rgb(245, 245, 245) !important][url=][/url]
, v6 Z6 A: x6 k- `, i4 t8 y- k( g$ a6 [6 n: l% i  J$ S

7 S3 r. O; N. t1 G/ O
注意:老版本的python - neutronclient不支持ha_state字段。

# c) q* J7 I! Z- @! U
4.在控制器节点上,在demo - router路由器上验证HA端口的创建:
[backcolor=rgb(245, 245, 245) !important][url=][/url]
' u. Z9 D/ Y/ H  \) t, e$ neutron router-port-list demo-router+--------------------------------------+-------------------------------------------------+-------------------+----------------------------------------------------------------------------------------+| id                                   | name                                            | mac_address       | fixed_ips                                                                              |+--------------------------------------+-------------------------------------------------+-------------------+----------------------------------------------------------------------------------------+| 255d2e4b-33ba-4166-a13f-6531122641fe | HA port tenant 443cd1596b2e46d49965750771ebbfe1 | fa:16:3e:25:05:d7 | {"subnet_id": "8e8e4c7d-fa38-417d-a4e3-03ee5ab5493c", "ip_address": "169.254.192.1"}   || 374587d7-2acd-4156-8993-4294f788b55e |                                                 | fa:16:3e:82:a0:59 | {"subnet_id": "b32e0efc-8cc3-43ff-9899-873b94df0db1", "ip_address": "203.0.113.101"}   || 8de3e172-5317-4c87-bdc1-f69e359de92e |                                                 | fa:16:3e:10:9f:f6 | {"subnet_id": "2945790c-5999-4693-b8e7-50a9fc7f46f5", "ip_address": "192.168.1.1"}     || 90d1a59f-b122-459d-a94a-162a104de629 | HA port tenant 443cd1596b2e46d49965750771ebbfe1 | fa:16:3e:ae:3b:22 | {"subnet_id": "8e8e4c7d-fa38-417d-a4e3-03ee5ab5493c", "ip_address": "169.254.192.2"}   |+--------------------------------------+-------------------------------------------------+-------------------+----------------------------------------------------------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]
5 V+ B% j3 I; A! _8 ?0 B% r0 s$ D7 Y1 i% B: \  Q/ c: \% D

9 i: a6 S4 T, T( Y# S
" Z7 y; U9 J1 P3 Z0 [+ Q
5.在网络节点上,验证qrouter和qdhcp名称空间的创建:

. y( ^- ~5 `) m5 M- C[backcolor=rgb(245, 245, 245) !important][url=][/url]; k0 P2 a- g  P
网络节点1:$ ip netnsqrouter-7a46dba8-8846-498c-9e10-588664558473网络节点2:$ ip netnsqrouter-7a46dba8-8846-498c-9e10-588664558473[backcolor=rgb(245, 245, 245) !important][url=][/url]: s. T- i' X% Z6 E# I- W' z# H

. m: T0 |2 w4 g$ }$ L# f) S; e
两个qrouter名称空间都应该使用相同的UUID。
6 y! E0 E9 C& u! O$ z
请注意  h5 E* T$ Q) l% n* {: f
5 B8 a. E7 N6 [9 a  v; b9 j
在启动实例之前,qdhcp名称空间可能不存在。
. H2 d! Y" n$ b2 U1 u1 a
/ j- v2 Z4 |) K! x
6.在网络节点上,验证HA操作:
网络节点1:[backcolor=rgb(245, 245, 245) !important][url=][/url]2 n+ T) e& w$ J# t! {1 j
网络节点1:$ ip netns exec qrouter-7a46dba8-8846-498c-9e10-588664558473 ip addr show11: ha-255d2e4b-33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default    link/ether fa:16:3e:25:05:d7 brd ff:ff:ff:ff:ff:ff    inet 169.254.192.1/18 brd 169.254.255.255 scope global ha-255d2e4b-33       valid_lft forever preferred_lft forever    inet6 fe80::f816:3eff:fe25:5d7/64 scope link       valid_lft forever preferred_lft forever12: qr-8de3e172-53: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default    link/ether fa:16:3e:10:9f:f6 brd ff:ff:ff:ff:ff:ff    inet 192.168.1.1/24 scope global qr-8de3e172-53       valid_lft forever preferred_lft forever    inet6 fe80::f816:3eff:fe10:9ff6/64 scope link       valid_lft forever preferred_lft forever13: qg-374587d7-2a: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default    link/ether fa:16:3e:82:a0:59 brd ff:ff:ff:ff:ff:ff    inet 203.0.113.101/24 scope global qg-374587d7-2a       valid_lft forever preferred_lft forever    inet6 fe80::f816:3eff:fe82:a059/64 scope link       valid_lft forever preferred_lft forever[backcolor=rgb(245, 245, 245) !important][url=][/url]
# T, s- I* h; z, @' J5 N# }0 s% C$ b, E6 ]$ A
8 u: C) j! \# B# k! {2 K
网络节点2:
5 }- W, G( Q. ~/ b; C" n+ s
[backcolor=rgb(245, 245, 245) !important][url=][/url]: y3 T4 R) i2 W/ T5 {  k
$ ip netns exec qrouter-7a46dba8-8846-498c-9e10-588664558473 ip addr show11: ha-90d1a59f-b1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default    link/ether fa:16:3e:ae:3b:22 brd ff:ff:ff:ff:ff:ff    inet 169.254.192.2/18 brd 169.254.255.255 scope global ha-90d1a59f-b1       valid_lft forever preferred_lft forever    inet6 fe80::f816:3eff:feae:3b22/64 scope link       valid_lft forever preferred_lft forever12: qr-8de3e172-53: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default    link/ether fa:16:3e:10:9f:f6 brd ff:ff:ff:ff:ff:ff    inet6 fe80::f816:3eff:fe10:9ff6/64 scope link       valid_lft forever preferred_lft forever13: qg-374587d7-2a: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default    link/ether fa:16:3e:82:a0:59 brd ff:ff:ff:ff:ff:ff    inet6 fe80::f816:3eff:fe82:a059/64 scope link       valid_lft forever preferred_lft forever[backcolor=rgb(245, 245, 245) !important][url=][/url]
' c' i" p3 p2 s% T- }1 F
: Q3 l! I8 Z! q/ l
在每个网络节点上,qrouter命名空间应该包括ha、qr和qg接口。在主节点上,qr接口包含项目网络网关IP地址,qg接口包含外部网络上的项目路由器IP地址。在备份节点上,qr和qg接口不应该包含IP地址。在这两个节点上,ha接口应该在169.254.192.0 / 18范围内包含唯一的IP地址。

. i8 d; ~2 q1 S5 B: t+ p+ ~2 D( G
7.在网络节点上,在适当的网络接口上从主节点HA接口IP地址验证VRRP  advertisements :
$ ~; ^! H6 @# m; Q
网络节点1:
[backcolor=rgb(245, 245, 245) !important][url=][/url]
" j. W& f3 R9 O# r2 B0 j5 D1 J$ tcpdump -lnpi eth116:50:16.857294 IP 169.254.192.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 1, prio 50, authtype none, intvl 2s, length 2016:50:18.858436 IP 169.254.192.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 1, prio 50, authtype none, intvl 2s, length 2016:50:20.859677 IP 169.254.192.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 1, prio 50, authtype none, intvl 2s, length 20[backcolor=rgb(245, 245, 245) !important][url=][/url]& a2 {: C. \+ n/ Z. y+ w8 @9 M2 \

6 X1 m. `7 Z. g8 s. y  b$ v8 T! e7 D  c" H# Y9 G, v" E
网络节点2:
[backcolor=rgb(245, 245, 245) !important][url=][/url]+ j. }. ^! B* r/ A/ E: d
$ tcpdump -lnpi eth116:51:44.911640 IP 169.254.192.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 1, prio 50, authtype none, intvl 2s, length 2016:51:46.912591 IP 169.254.192.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 1, prio 50, authtype none, intvl 2s, length 2016:51:48.913900 IP 169.254.192.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 1, prio 50, authtype none, intvl 2s, length 20[backcolor=rgb(245, 245, 245) !important][url=][/url]3 G! f( r2 ]: g% U: u+ n
4 L, L0 o$ }2 i. F# k# l! O

6 a1 x' I" ?" x, w3 }9 n5 K
示例输出使用网络接口eth1。

& {8 Z0 n" ^) ^: I, Y) c* d5 ?- e
8.在路由器上确定项目网络的外部网络网关IP地址,通常是外部子网IP分配范围内的最低IP地址:
[backcolor=rgb(245, 245, 245) !important][url=][/url]( c0 l) u$ g) e/ N9 u
$ neutron router-port-list demo-router+--------------------------------------+-------------------------------------------------+-------------------+----------------------------------------------------------------------------------------+| id                                   | name                                            | mac_address       | fixed_ips                                                                              |+--------------------------------------+-------------------------------------------------+-------------------+----------------------------------------------------------------------------------------+| 255d2e4b-33ba-4166-a13f-6531122641fe | HA port tenant 443cd1596b2e46d49965750771ebbfe1 | fa:16:3e:25:05:d7 | {"subnet_id": "8e8e4c7d-fa38-417d-a4e3-03ee5ab5493c", "ip_address": "169.254.192.1"}   || 374587d7-2acd-4156-8993-4294f788b55e |                                                 | fa:16:3e:82:a0:59 | {"subnet_id": "b32e0efc-8cc3-43ff-9899-873b94df0db1", "ip_address": "203.0.113.101"}   || 8de3e172-5317-4c87-bdc1-f69e359de92e |                                                 | fa:16:3e:10:9f:f6 | {"subnet_id": "2945790c-5999-4693-b8e7-50a9fc7f46f5", "ip_address": "192.168.1.1"}     || 90d1a59f-b122-459d-a94a-162a104de629 | HA port tenant 443cd1596b2e46d49965750771ebbfe1 | fa:16:3e:ae:3b:22 | {"subnet_id": "8e8e4c7d-fa38-417d-a4e3-03ee5ab5493c", "ip_address": "169.254.192.2"}   |+--------------------------------------+-------------------------------------------------+-------------------+----------------------------------------------------------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]
/ _, x/ z" r/ U/ j8 j
. i7 l$ X7 h' \9 f) T- @- z: w3 O3 A
6 K; h7 X3 F% @6 i& ^' D: K, s' I* F- a- N( S: |; B
9.在控制器节点或任何有访问外部网络的主机上,在项目路由器上ping外部网络网关IP地址:
[backcolor=rgb(245, 245, 245) !important][url=][/url]! D& I  Z, b4 l2 A1 L# V4 t' k/ D: k
$ ping -c 4 203.0.113.101PING 203.0.113.101 (203.0.113.101) 56(84) bytes of data.64 bytes from 203.0.113.101: icmp_req=1 ttl=64 time=0.619 ms64 bytes from 203.0.113.101: icmp_req=2 ttl=64 time=0.189 ms64 bytes from 203.0.113.101: icmp_req=3 ttl=64 time=0.165 ms64 bytes from 203.0.113.101: icmp_req=4 ttl=64 time=0.216 ms--- 203.0.113.101 ping statistics ---4 packets transmitted, 4 received, 0% packet loss, time 2999msrtt min/avg/max/mdev = 0.165/0.297/0.619/0.187 ms[backcolor=rgb(245, 245, 245) !important][url=][/url]
& H& A% ?: m, _
: n6 {5 X# L+ T( x7 _9 c! ]9 b, y: L
+ c* }4 h+ P( v% Y- e/ W0 X
8 Y& u9 z9 ~$ i. O4 X
10.提供常规项目凭证。下面的步骤使用演示项目。
+ L* G, D1 d2 b. f% Q# a' |0 S
9 j* P' }  E/ j) w2 r' \& e11.创建适当的安全组规则,允许ping和SSH访问实例。例如:
[backcolor=rgb(245, 245, 245) !important][url=][/url]+ t; {4 m( i2 o  l7 N) _1 K
$ nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0+-------------+-----------+---------+-----------+--------------+| IP Protocol | From Port | To Port | IP Range  | Source Group |+-------------+-----------+---------+-----------+--------------+| icmp        | -1        | -1      | 0.0.0.0/0 |              |+-------------+-----------+---------+-----------+--------------+$ nova secgroup-add-rule default tcp 22 22 0.0.0.0/0+-------------+-----------+---------+-----------+--------------+| IP Protocol | From Port | To Port | IP Range  | Source Group |+-------------+-----------+---------+-----------+--------------+| tcp         | 22        | 22      | 0.0.0.0/0 |              |+-------------+-----------+---------+-----------+--------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]) M0 n+ [+ ]0 M' l

" l& u; \/ p8 W
( o6 W! M0 C0 a' H2 G* K1 V
12.在项目网络上启动一个具有接口的实例。例如,使用现有的CirrOS镜像:
5 H( u& E  Y0 |/ o* n$ E
[backcolor=rgb(245, 245, 245) !important][url=][/url]% L4 S/ V" n7 I8 W* m* b* f$ I, P: h
$ nova boot --flavor m1.tiny --image cirros \  --nic net-id=7ac9a268-1ddd-453f-857b-0fd9552b645f demo-instance1+--------------------------------------+-----------------------------------------------+| Property                             | Value                                         |+--------------------------------------+-----------------------------------------------+| OS-DCF:diskConfig                    | MANUAL                                        || OS-EXT-AZ:availability_zone          | nova                                          || OS-EXT-STS:power_state               | 0                                             || OS-EXT-STS:task_state                | scheduling                                    || OS-EXT-STS:vm_state                  | building                                      || OS-SRV-USG:launched_at               | -                                             || OS-SRV-USG:terminated_at             | -                                             || accessIPv4                           |                                               || accessIPv6                           |                                               || adminPass                            | Z3uAd2utPUNu                                  || config_drive                         |                                               || created                              | 2015-08-10T15:06:24Z                          || flavor                               | m1.tiny (1)                                   || hostId                               |                                               || id                                   | 77149598-c839-400f-b948-db6993f0b40b          || image                                | cirros (125733d9-8d37-4d70-9a64-1c989cfa8e9c) || key_name                             |                                               || metadata                             | {}                                            || name                                 | demo-instance1                                || os-extended-volumes:volumes_attached | []                                            || progress                             | 0                                             || security_groups                      | default                                       || status                               | BUILD                                         || tenant_id                            | 443cd1596b2e46d49965750771ebbfe1              || updated                              | 2015-08-10T15:06:25Z                          || user_id                              | bdd4e165bdf94b258ddd4856340ed01c              |+--------------------------------------+-----------------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]
% F- @  g6 _* G) j1 f) I- C; M; N8 N6 b3 q$ F8 U

/ \  |: K* u& E- x; W8 ^) d: {3 p
13.获得对实例的控制台访问。
[backcolor=rgb(245, 245, 245) !important][url=][/url]- b6 E6 Y, `" ~% c3 j( H* Q' \
  Z; F/ N- F- R  o, Q7 e* t. _) p
1.测试连接到项目路由器:$ ping -c 4 192.168.1.1PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.64 bytes from 192.168.1.1: icmp_req=1 ttl=64 time=0.357 ms64 bytes from 192.168.1.1: icmp_req=2 ttl=64 time=0.473 ms64 bytes from 192.168.1.1: icmp_req=3 ttl=64 time=0.504 ms64 bytes from 192.168.1.1: icmp_req=4 ttl=64 time=0.470 ms--- 192.168.1.1 ping statistics ---4 packets transmitted, 4 received, 0% packet loss, time 2998msrtt min/avg/max/mdev = 0.357/0.451/0.504/0.055 ms2.测试连接到互联网:$ ping -c 4 openstack.orgPING openstack.org (174.143.194.225) 56(84) bytes of data.64 bytes from 174.143.194.225: icmp_req=1 ttl=53 time=17.4 ms64 bytes from 174.143.194.225: icmp_req=2 ttl=53 time=17.5 ms64 bytes from 174.143.194.225: icmp_req=3 ttl=53 time=17.7 ms64 bytes from 174.143.194.225: icmp_req=4 ttl=53 time=17.5 ms--- openstack.org ping statistics ---4 packets transmitted, 4 received, 0% packet loss, time 3003msrtt min/avg/max/mdev = 17.431/17.575/17.734/0.143 ms' W9 W0 Y) o* k- A' f# }
[backcolor=rgb(245, 245, 245) !important][url=][/url]- N% W! B" m- K5 |' f
+ ]7 P( j1 J7 v; ^

6 {' H9 ]& c$ u. T( i9 G6 n5 O
14.在外部网络上创建浮动IP地址:
[backcolor=rgb(245, 245, 245) !important][url=][/url]$ \+ C( z/ I# ~# B# r" O
$ neutron floatingip-create ext-netCreated a new floatingip:+---------------------+--------------------------------------+| Field               | Value                                |+---------------------+--------------------------------------+| fixed_ip_address    |                                      || floating_ip_address | 203.0.113.102                        || floating_network_id | 5266fcbc-d429-4b21-8544-6170d1691826 || id                  | 20a6b5dd-1c5c-460e-8a81-8b5cf1739307 || port_id             |                                      || router_id           |                                      || status              | DOWN                                 || tenant_id           | 443cd1596b2e46d49965750771ebbfe1     |+---------------------+--------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]' g, a6 P( k6 s; O1 l9 J
' ~- {! v' g  t+ L, N* ]  L

9 E) T4 h6 `. Q1 Z4 v1 T. G- {
15.将浮动IP地址与实例关联:
$ nova floating-ip-associate demo-instance1 203.0.113.1021 _6 p0 ]1 \- P3 b9 S7 {$ E# {, Y
- l4 k& b3 @0 ~' r
16.验证添加到实例的浮动IP地址:
[backcolor=rgb(245, 245, 245) !important][url=][/url]
/ m- W+ K% b3 w. v$ nova list+--------------------------------------+----------------+--------+------------+-------------+-----------------------------------------+| ID                                   | Name           | Status | Task State | Power State | Networks                                |+--------------------------------------+----------------+--------+------------+-------------+-----------------------------------------+| 77149598-c839-400f-b948-db6993f0b40b | demo-instance1 | ACTIVE | -          | Running     | demo-net=192.168.1.3, 203.0.113.102     |+--------------------------------------+----------------+--------+------------+-------------+-----------------------------------------+[backcolor=rgb(245, 245, 245) !important][url=][/url]4 N  [* E2 I/ m

+ X  R; l! p+ J0 g# a7 H8 h6 N6 r3 Q; U
17.在控制器节点或任何访问外部网络的主机上,ping与实例关联的浮动IP地址:

: f9 {& c; v0 X( M5 g& a[backcolor=rgb(245, 245, 245) !important][url=][/url]
9 T" S* B. V: `" ?" y, j3 {4 f$ ping -c 4 203.0.113.102PING 203.0.113.102 (203.0.113.112) 56(84) bytes of data.64 bytes from 203.0.113.102: icmp_req=1 ttl=63 time=3.18 ms64 bytes from 203.0.113.102: icmp_req=2 ttl=63 time=0.981 ms64 bytes from 203.0.113.102: icmp_req=3 ttl=63 time=1.06 ms64 bytes from 203.0.113.102: icmp_req=4 ttl=63 time=0.929 ms--- 203.0.113.102 ping statistics ---4 packets transmitted, 4 received, 0% packet loss, time 3002msrtt min/avg/max/mdev = 0.929/1.539/3.183/0.951 ms. s$ f: F- R" _0 I2 m0 [  @

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2021-12-7 15:10:05 | 显示全部楼层
安全组允许VRRP协议9 ~7 \- O7 j3 g% B9 G1 K
直接在控制台导航:项目-访问&安全,搜索虚机所在的安全组, 然后点击后面的管理规则按钮进入规则列表;点击添加规则按钮,弹出框里,在规则的下拉选里选择 其他协议, 然后再 端口 文本框输入 112, 最后点击添加按钮即可 # VRRP协议的端口号是112
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 00:05 , Processed in 0.021083 second(s), 23 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表