找回密码
 注册
查看: 1375|回复: 3

在openstack平台上运行vip地址部署keepalived服务

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2021-12-7 12:00:02 | 显示全部楼层 |阅读模式
首先通过界面或者底层port 创建方式创建三个port端口:3 M0 j6 c% ?" ]  t; q# Y/ e3 ]1 [% o

" j: N% h# f- Y/ o1 n2 H& \
' M* Q% ^5 _% d* {2 [& F$ N[root@controller1 ~]# openstack port list |grep -e 192.168.0.230  -e 192.168.0.186 -e 192.168.0.187$ V" H8 \- v2 ?% @: C
| 135bba9e-c0d9-4849-bacb-e202c25a89bf |      | fa:16:3e:4d:e2:cc | ip_address='192.168.0.230', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208' | DOWN   |+ a4 K6 M7 l( e+ ~" ~8 R4 e
| 5208ea41-d73a-4408-8559-b4aee18dc54e |      | fa:16:3e:47:b8:72 | ip_address='192.168.0.187', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208' | DOWN   |
" V) }* S# R: ~( k1 h8 ^% B0 _| b42538c2-7583-443e-9779-8a09a4204495 |      | fa:16:3e:fc:59:73 | ip_address='192.168.0.186', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208' | DOWN   |
/ L& E. d1 U$ N3 r" y" W7 _) n6 A$ Q4 n/ O0 ^
* Y# l/ m- {+ U6 m% w4 h
使用命令或者界面把vip地址写到两个需要启动vip地址的端口上:
/ b7 k9 h+ v$ x8 ~" k/ d[root@controller1 ~]# openstack port set b42538c2-7583-443e-9779-8a09a4204495  --allowed-address ip-address=192.168.0.230
5 y$ v4 G1 C6 B% o1 m) C' d+ `" Y$ d" f% D2 e& r3 E
[root@controller1 ~]# openstack port show 5208ea41-d73a-4408-8559-b4aee18dc54e. k) m+ A" R+ L2 Y* {: ^8 h% u
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
% z  v, i5 D- \& W% n4 D2 b- p( b4 Z| Field                   | Value                                                                                                                                                            |
( O) t7 [1 S" U' Z# ?+ \- B+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+ g# w5 \; E+ C- V' E) K) _9 w: `| admin_state_up          | UP                                                                                                                                                               |
! I# r. ?; Q# e$ G3 O| allowed_address_pairs   | ip_address='192.168.0.230', mac_address='fa:16:3e:47:b8:72'                                                                                                      |
" L: l5 i) l3 m$ T# }  q: q+ }) U| binding_host_id         |                                                                                                                                                                  |2 Z1 H; E$ P9 L8 x7 E" v
| binding_profile         |                                                                                                                                                                  |
! C: L" O$ M0 P8 [1 r& E  ?| binding_vif_details     |                                                                                                                                                                  |
) T+ u- _2 d( `& p| binding_vif_type        | unbound                                                                                                                                                          |" c" R) i5 ~8 }9 l) U
| binding_vnic_type       | normal                                                                                                                                                           |+ u( G% V% D! U& [) e9 H
| created_at              | 2021-12-07T01:51:14Z                                                                                                                                             |
. N" A0 y! H: [, s! a| data_plane_status       | None                                                                                                                                                             |
% t! V5 V; @4 n| description             |                                                                                                                                                                  |. l" B% }. I# o* u! z! @
| device_id               |                                                                                                                                                                  |
* _# I6 K/ ^7 V9 M3 C( E4 ~| device_owner            |                                                                                                                                                                  |9 m6 }* X6 N. z' F% L! R
| dns_assignment          | None                                                                                                                                                             |
- e2 @& `; ]6 J| dns_domain              | None                                                                                                                                                             |
+ X: e0 R: M0 t| dns_name                | None                                                                                                                                                             |5 Y8 ?- M$ B$ M8 w2 O
| extra_dhcp_opts         |                                                                                                                                                                  |1 e  H9 ]6 G, [$ ?
| fixed_ips               | ip_address='192.168.0.187', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208'                                                                                     |
( X: v8 x- ?  D! ~- J: A0 k  T| id                      | 5208ea41-d73a-4408-8559-b4aee18dc54e                                                                                                                             |- K8 w& Y9 P; H+ T! v2 K% }
| ip_allocation           | None                                                                                                                                                             |
6 R7 x# e/ \0 M+ v5 E( h| location                | cloud='', project.domain_id=, project.domain_name='Default', project.id='ce0a7c083cf3482baaf5c9a88a1407ff', project.name='admin', region_name='RegionOne', zone= |
# w2 @- \1 `' R, a| mac_address             | fa:16:3e:47:b8:72                                                                                                                                                |
+ E3 D2 E* [5 t' @% K* c| name                    |                                                                                                                                                                  |
( d- L+ q: T9 ]1 A3 [| network_id              | 371dfca6-bc51-470b-a762-bec6af8af048                                                                                                                             |
/ N! Q0 [$ t7 ?) w| port_security_enabled   | True                                                                                                                                                             |
. V: }+ t* v" [1 ?/ B9 h| project_id              | ce0a7c083cf3482baaf5c9a88a1407ff                                                                                                                                 |
& U- |- O5 l/ |  Z| propagate_uplink_status | None                                                                                                                                                             |
0 x$ B* }) w. D4 y& n2 e, Z| qos_network_policy_id   | None                                                                                                                                                             |
. l3 C, Y. `$ l* A, M| qos_policy_id           | None                                                                                                                                                             |0 y. z" y8 }: z5 `# g
| resource_request        | None                                                                                                                                                             |
( s/ B! k+ r4 \* l5 r; i| revision_number         | 18                                                                                                                                                               |: E* o1 f& a- X% X. O
| security_group_ids      |                                                                                                                                                                  |/ H" `9 _6 M) x! Y: \6 v6 \
| status                  | DOWN                                                                                                                                                             |; i4 D- l7 o, |$ C/ c
| tags                    |                                                                                                                                                                  |+ n1 Q: a! `! P/ H+ [
| trunk_details           | None                                                                                                                                                             |
6 q4 N5 d2 K' `" i" T( F| updated_at              | 2021-12-07T02:02:15Z                                                                                                                                             |
2 D5 j9 r' C" @( Q$ r: f+ w  l+ k+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
/ W# V1 X  {6 n0 u2 u5 m3 j: c[root@controller1 ~]# openstack port show b42538c2-7583-443e-9779-8a09a42044959 T- n( p# R7 q& w
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+5 o' [  u* ?9 y$ a2 y5 G5 W
| Field                   | Value                                                                                                                                                            |  i4 O7 \1 g6 k$ C* q$ Q
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
* @% t$ l. N/ r0 a/ U, c+ K| admin_state_up          | UP                                                                                                                                                               |
  T8 \2 i2 x, s$ g% z| allowed_address_pairs   | ip_address='192.168.0.230', mac_address='fa:16:3e:fc:59:73'                                                                                                      |
& A& J. _- r# I0 A| binding_host_id         |                                                                                                                                                                  |4 J& g2 |  f( d8 Z/ @
| binding_profile         |                                                                                                                                                                  |
- d+ _$ E  `- m$ I# B) [| binding_vif_details     |                                                                                                                                                                  |
+ \* h" j" Y% n# u& v| binding_vif_type        | unbound                                                                                                                                                          |! M4 o, X% ^& p: u7 o5 m. N
| binding_vnic_type       | normal                                                                                                                                                           |
/ P1 V, ~* ~; Y| created_at              | 2021-12-07T01:50:50Z                                                                                                                                             |$ m  O% F1 l, ~" k
| data_plane_status       | None                                                                                                                                                             |) H9 b( z8 O+ q$ J3 O
| description             |                                                                                                                                                                  |
% I# D! q" I  D$ T8 m) ~# T| device_id               |                                                                                                                                                                  |0 x) i( g& T2 y  y
| device_owner            |                                                                                                                                                                  |
2 [8 p) h( f# o5 P$ J9 U7 O| dns_assignment          | None                                                                                                                                                             |: k! ]# b) n4 u0 r+ G
| dns_domain              | None                                                                                                                                                             |
- o% u0 l' l0 j0 Y' G# g| dns_name                | None                                                                                                                                                             |* E' V. x; l$ w3 o  P9 U
| extra_dhcp_opts         |                                                                                                                                                                  |! c; Z: @' b5 m% ~+ C
| fixed_ips               | ip_address='192.168.0.186', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208'                                                                                     |
. |* N" v1 n9 @5 l8 ^| id                      | b42538c2-7583-443e-9779-8a09a4204495                                                                                                                             |3 |+ t+ }( J8 j: X9 }1 F; k( ]( r
| ip_allocation           | None                                                                                                                                                             |
+ x, P$ _; K, R" y0 t* d| location                | cloud='', project.domain_id=, project.domain_name='Default', project.id='ce0a7c083cf3482baaf5c9a88a1407ff', project.name='admin', region_name='RegionOne', zone= |! ?' C" E' _2 o$ d  ]
| mac_address             | fa:16:3e:fc:59:73                                                                                                                                                |
3 J& p2 P2 Y1 F- u. s9 P* H| name                    |                                                                                                                                                                  |+ A5 X7 ]" b1 R# P
| network_id              | 371dfca6-bc51-470b-a762-bec6af8af048                                                                                                                             |
, A$ W% ?  J  K: M0 D1 ]0 y| port_security_enabled   | True                                                                                                                                                             |
/ y4 i6 `0 R7 |5 p| project_id              | ce0a7c083cf3482baaf5c9a88a1407ff                                                                                                                                 |
6 F3 ^, R2 B5 O+ r# j" z| propagate_uplink_status | None                                                                                                                                                             |
5 u! ?; ~4 g& R' C  Y' Y( w| qos_network_policy_id   | None                                                                                                                                                             |
- G+ g/ _, L2 W; W0 v; `| qos_policy_id           | None                                                                                                                                                             |4 ]' F6 U0 I0 c. A+ n# E* |7 a
| resource_request        | None                                                                                                                                                             |
" T0 }0 f( B; x  |3 ~| revision_number         | 9                                                                                                                                                                |3 Q' C; Y1 K9 Z
| security_group_ids      |                                                                                                                                                                  |
) @9 W, `8 e* E0 Q8 w0 b; N  j2 K| status                  | DOWN                                                                                                                                                             |6 F0 j. j% H0 X( a- V5 Q" E- w
| tags                    |                                                                                                                                                                  |
. j5 @6 d) E- [" u) t1 }2 _5 l% }7 t| trunk_details           | None                                                                                                                                                             |
0 E, ~5 O2 b6 K2 R$ L| updated_at              | 2021-12-07T02:03:01Z                                                                                                                                             |
1 u  x3 ]9 j5 y. s+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+8 H  R# q. v1 t3 O0 K
1 _! a* K5 I. s. k# Y$ p
[root@controller1 ~]# openstack port show  135bba9e-c0d9-4849-bacb-e202c25a89bf
5 ]* w3 r( K% l7 L, z3 ~8 }+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
* l' y- f* \. i, s# r' I  `6 S! X| Field                   | Value                                                                                                                                                            |
3 D0 b  H& h1 n. y# [+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+1 t4 D( n  \7 d" {: w4 a+ b
| admin_state_up          | UP                                                                                                                                                               |
8 Y) L1 o: K$ {& E- || allowed_address_pairs   |                                                                                                                                                                  |
. `  ]0 U) n8 V# m' V3 _6 o| binding_host_id         |                                                                                                                                                                  |
1 G# C1 s- {9 R; c; n7 ^| binding_profile         |                                                                                                                                                                  |
( R) I  g9 L6 [" K# n| binding_vif_details     |                                                                                                                                                                  |
% f/ j) W3 ^3 j| binding_vif_type        | unbound                                                                                                                                                          |( m4 q' H" Q& v& w# _
| binding_vnic_type       | normal                                                                                                                                                           |# K; O  w7 h0 F8 U( _3 |9 C# B) g
| created_at              | 2021-12-07T01:06:08Z                                                                                                                                             |
3 ]3 I( Q" `+ U" R/ B| data_plane_status       | None                                                                                                                                                             |2 K3 T' X. A1 g
| description             |                                                                                                                                                                  |
) q  H2 t" G- N+ s  G| device_id               |                                                                                                                                                                  |
/ ^! H2 t) ~0 |0 t| device_owner            |                                                                                                                                                                  |
4 p3 U5 f2 r4 ^9 m| dns_assignment          | None                                                                                                                                                             |) H% P; \, H# b6 O; I0 g4 E
| dns_domain              | None                                                                                                                                                             |
' E$ G. I6 b1 K2 ^+ P| dns_name                | None                                                                                                                                                             |
# {" G2 a( o7 u+ Q4 C| extra_dhcp_opts         |                                                                                                                                                                  |! y* Z3 \3 x' v: c. o
| fixed_ips               | ip_address='192.168.0.230', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208'                                                                                     |# l! P1 c% [5 g! C
| id                      | 135bba9e-c0d9-4849-bacb-e202c25a89bf                                                                                                                             |4 m) U3 u9 \: _6 P* L
| ip_allocation           | None                                                                                                                                                             |
% g4 B: n* m& E! n  j! D6 l1 N7 x3 l1 A| location                | cloud='', project.domain_id=, project.domain_name='Default', project.id='ce0a7c083cf3482baaf5c9a88a1407ff', project.name='admin', region_name='RegionOne', zone= |% J! P) t7 o+ [0 X- s8 a
| mac_address             | fa:16:3e:4d:e2:cc                                                                                                                                                |6 H- `9 Z( Z/ Q
| name                    |                                                                                                                                                                  |8 ^6 r9 _# k: |* B3 _
| network_id              | 371dfca6-bc51-470b-a762-bec6af8af048                                                                                                                             |
+ h* j+ g) h- J: I. B/ T7 u| port_security_enabled   | True                                                                                                                                                             |# `) M; ?# z- J7 {6 _( H$ C
| project_id              | ce0a7c083cf3482baaf5c9a88a1407ff                                                                                                                                 |5 d) F, J5 e8 g% o7 j
| propagate_uplink_status | None                                                                                                                                                             |
3 Z2 f$ A( ~7 d) U6 n  s, p! s; s| qos_network_policy_id   | None                                                                                                                                                             |4 w6 l! V' ^: t; ^
| qos_policy_id           | None                                                                                                                                                             |
/ p( g$ n, Y; u& H4 R! Y4 W( A6 s| resource_request        | None                                                                                                                                                             |
1 i1 T3 }1 @; n, r| revision_number         | 12                                                                                                                                                               |
" ^8 l/ q& B! i8 Z- _. v- ?| security_group_ids      |                                                                                                                                                                  |% s* H3 V" L% u6 Y% u" N' C
| status                  | DOWN                                                                                                                                                             |
, L% s1 I+ x1 H: A& q/ L| tags                    |                                                                                                                                                                  |
3 @% j7 T9 n; `6 E, h4 c2 _6 y| trunk_details           | None                                                                                                                                                             |2 F; ^# a( b4 Q6 _) \
| updated_at              | 2021-12-07T02:00:32Z                                                                                                                                             |
/ z1 r2 u9 {3 ]+ J! j* e: m+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+' x4 E  E  U* L9 S& h9 ~
5 R$ O  f5 C- `% b
[
* t0 n7 v# A3 f[root@controller1 ~]# openstack port set 135bba9e-c0d9-4849-bacb-e202c25a89bf --disable-port-security
  U( @: J* q9 o1 k/ E8 @: N  R% M
/ s) O; x: m+ K7 O$ g7 B4 T) w$ ^( ]8 c7 Z# ]

6 K/ m1 |1 X7 y6 n这样保证openstack平台上port能被占用,而且不被其他租户创建。
- ~1 D) w' g, t: U2 y
7 m/ y/ H+ F7 B/ K' A: O* R删除地址对:4 |) F, l7 q5 s+ J; Z5 G7 j
[root@controller1 ~]# openstack port set b42538c2-7583-443e-9779-8a09a4204495  --no-allowed-address
- l5 [# D$ H/ m% i  D. `6 x( O6 O. v1 A6 ]; `' P
6 [- l( G) N7 V! \) ?* h

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2021-12-7 12:00:03 | 显示全部楼层
这样openstack上的keepalived服务就可以使用vip地址了。: S3 ?; z; q4 L1 H; M
安全组允许VRRP协议
直接在控制台导航:项目-访问&安全,搜索虚机所在的安全组, 然后点击后面的管理规则按钮进入规则列表;点击添加规则按钮,弹出框里,在规则的下拉选里选择 其他协议, 然后再 端口 文本框输入 112, 最后点击添加按钮即可 # VRRP协议的端口号是112

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2021-12-7 13:25:09 | 显示全部楼层
4、执行命令neutron port-list查看端口,找到VIP的Port ID以及需要使用VIP的虚拟机的IP对应的Port id2 ~! w$ E' y, ]  N. [8 a+ X+ F: A
比如两台虚拟机做HA绑定vip,那么需要查看两台虚拟机的port ID和这个vip的port ID6 ]. w6 b* |1 |3 w% K  t
! v8 Q' S; ?  W
# neutron port-list|grep 172.18.23.10: v: y' P2 t* t( N
| 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63 |                                                 | 21c161dda51147fb9ff527aadfe1d81a | fa:16:3e:ea:81:a6 | {"subnet_id": "9a7f07e5-e906-4622-8bc6-def64b3622ec", "ip_address": "172.18.23.10"}  |3 \! [) ?" ?8 ~5 n

& y2 O4 S7 U3 G1 a5 h可以看出vip172.18.23.10的port id为7c7ccc26-9ac9-4ef7-8178-2b97218b1d63.
3 `5 P( S# f1 ?; ?& A3 i: ^5、取消安全组对应端口的管理2 D  k  x8 b% M
+ L8 x/ W3 b) A/ O0 ^% d- C
neutron port-update --no-security-groups <Port_id>
; `  }! P* u1 {& U( Q% _, t) }neutron port-update --port_security_enabled=false <Port_id>
* _7 e! B3 W2 \6 u3 g' i注:
6 G! G; Z/ h* t2 D            替换Port_id为之前neutron port-list中找到的Port_id
( _( P+ [. i3 o2 h& i0 m$ F
0 h. p$ N! N# t8 v; a% f5 n2 W具有命令如下:
2 i. w4 y5 U5 [* F* D# _) r( n
4 _, X) P6 H; w7 v# neutron port-update --no-security-groups 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63( J. I, }& g# e' O" S2 x
Updated port: 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63; W3 c$ T: t$ D! G
# neutron port-update --port_security_enabled=false 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63
# j) j( c+ Y2 G# \4 }$ `Updated port: 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63& e3 v- C8 H6 R- t7 N
7 |5 r  p( P0 |2 e5 Y
6、此时执行命令neutron port-show6 X: o7 [4 T  ?  h+ q
https://ljw.howieli.cn/blog/2017-11-28/port-show.png4 ?3 S* Q! _& |0 M( W
可看到port_security_enabled的value为False,security_groups的value为空,即OK,这样两个端口就没有了安全组了。3 _9 S5 R* O: i9 q3 d/ M5 I( A& n
7、意思就是对VIP和需要使用VIP的虚拟机都执行4、5、6步,比如配置HA,VIP+两台虚拟机,总共3个Port,都需要执行4、5、6步* }' h5 f. Y/ i4 H: J5 o
然后就可以在这两台虚拟机上搭建keepalived集群使用172.18.23.10这个vip了。
1 N9 S9 ?/ k1 k( Q5 W' D

1

主题

0

回帖

12

积分

管理员

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

本版积分规则

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

GMT+8, 2026-6-12 01:01 , Processed in 0.021915 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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