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

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

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2021-12-7 12:00:02 | 显示全部楼层 |阅读模式
首先通过界面或者底层port 创建方式创建三个port端口:: A2 G+ M+ F* C& k2 Z

% |: G' z7 [5 }0 p& V
, r5 {8 M" i  K: X[root@controller1 ~]# openstack port list |grep -e 192.168.0.230  -e 192.168.0.186 -e 192.168.0.187
9 T0 s) O- V9 B; i# k| 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   |
/ I( k! s+ w6 G* c9 v5 X. G$ V| 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   |2 L+ F+ E; P6 M% q# I! d) Y9 k' K
| 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   |
/ Z) S/ T/ O8 ^$ Y+ Y
1 Q! g0 j2 m! M, E& @5 p9 c! t8 G
; ~- Z2 @, r) p使用命令或者界面把vip地址写到两个需要启动vip地址的端口上:1 ^. S, P, j1 r0 w( @
[root@controller1 ~]# openstack port set b42538c2-7583-443e-9779-8a09a4204495  --allowed-address ip-address=192.168.0.230* {0 y5 \. @8 `( _
, B8 C. z1 p6 p0 _, U# n
[root@controller1 ~]# openstack port show 5208ea41-d73a-4408-8559-b4aee18dc54e  _: i$ ~. D' M
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
! G5 E8 G; y- ~3 [: h| Field                   | Value                                                                                                                                                            |
9 L. D, V7 q0 g0 g7 f7 ?5 B+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+& V7 [8 |" N  y
| admin_state_up          | UP                                                                                                                                                               |
! L" Y# u. d  }: L2 p# `: [| allowed_address_pairs   | ip_address='192.168.0.230', mac_address='fa:16:3e:47:b8:72'                                                                                                      |
* n6 }, j6 y2 E% b2 l| binding_host_id         |                                                                                                                                                                  |/ d8 Z  Y/ W! q. P% @" {
| binding_profile         |                                                                                                                                                                  |6 ?5 d% H9 H; ?7 v6 Z& q2 I
| binding_vif_details     |                                                                                                                                                                  |5 U# ^5 o  Z5 P1 X& T+ C8 o
| binding_vif_type        | unbound                                                                                                                                                          |' w1 O( ^1 I6 J
| binding_vnic_type       | normal                                                                                                                                                           |2 f9 ]2 C& G8 C* e9 P
| created_at              | 2021-12-07T01:51:14Z                                                                                                                                             |# u% Q/ U8 ]0 a! T- s% T% x
| data_plane_status       | None                                                                                                                                                             |
; n1 L: d. w/ t- c| description             |                                                                                                                                                                  |$ y+ Q/ {9 f" W+ f5 u
| device_id               |                                                                                                                                                                  |$ S6 C' L) d- E5 N' O1 K
| device_owner            |                                                                                                                                                                  |" R9 }) r/ E/ ?! y. W
| dns_assignment          | None                                                                                                                                                             |
3 W1 ?4 {' F- J, K| dns_domain              | None                                                                                                                                                             |8 ^# G$ Z  q- i9 x+ N, C" d
| dns_name                | None                                                                                                                                                             |2 M6 F& O5 T3 z0 f1 u4 e
| extra_dhcp_opts         |                                                                                                                                                                  |
4 ^* h$ I5 Y9 l  N0 {* }| fixed_ips               | ip_address='192.168.0.187', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208'                                                                                     |6 X9 K& E- x- q" r; S+ {
| id                      | 5208ea41-d73a-4408-8559-b4aee18dc54e                                                                                                                             |+ {. q$ v; d& q* h8 ~# F8 M0 N$ R
| ip_allocation           | None                                                                                                                                                             |
. y3 v; e6 d; [; C$ x4 ?| location                | cloud='', project.domain_id=, project.domain_name='Default', project.id='ce0a7c083cf3482baaf5c9a88a1407ff', project.name='admin', region_name='RegionOne', zone= |, f1 t7 M( U% ]" D. e- n5 h
| mac_address             | fa:16:3e:47:b8:72                                                                                                                                                |0 U, S; w; F: O
| name                    |                                                                                                                                                                  |
# g8 D0 \! Q2 ]+ U8 c6 a| network_id              | 371dfca6-bc51-470b-a762-bec6af8af048                                                                                                                             |
2 c. c+ _, ~3 b0 c+ @; || port_security_enabled   | True                                                                                                                                                             |# q% x. Y: U) v% i  w8 w
| project_id              | ce0a7c083cf3482baaf5c9a88a1407ff                                                                                                                                 |; C8 p: d! u0 a3 m( ^' G+ @. k
| propagate_uplink_status | None                                                                                                                                                             |+ J$ W2 i6 I9 {$ C
| qos_network_policy_id   | None                                                                                                                                                             |
) A+ ?: k; a  S  e| qos_policy_id           | None                                                                                                                                                             |0 [7 F  T' m9 b5 [3 P
| resource_request        | None                                                                                                                                                             |3 j# S. z5 n8 k& V% q7 l
| revision_number         | 18                                                                                                                                                               |" E1 |( f. R6 L4 h
| security_group_ids      |                                                                                                                                                                  |5 D" k' ^8 D) w+ I% i7 Z1 O
| status                  | DOWN                                                                                                                                                             |
; F& Q/ v/ f+ ~8 q5 }. j" z/ I4 D$ q| tags                    |                                                                                                                                                                  |# D6 d2 A: X- ?0 _- @' R
| trunk_details           | None                                                                                                                                                             |' {# M% `4 [. S* M. C+ F8 t9 Y
| updated_at              | 2021-12-07T02:02:15Z                                                                                                                                             |6 w$ q" ]& x) k* f. Z- k! b- u& ~2 v% @8 H
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------++ o% v6 w) Y9 O% ^* g
[root@controller1 ~]# openstack port show b42538c2-7583-443e-9779-8a09a4204495& \7 I. M, v" J+ W& [( k7 j- B
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
: R2 Q1 \. n6 `5 z| Field                   | Value                                                                                                                                                            |: ?  q' y& P; D
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
& |7 z# l3 `: j# q: q  b| admin_state_up          | UP                                                                                                                                                               |
  V0 e- M# O6 A; _( W& F9 w| allowed_address_pairs   | ip_address='192.168.0.230', mac_address='fa:16:3e:fc:59:73'                                                                                                      |9 j6 i# s) U" Z8 b( ?# a* P
| binding_host_id         |                                                                                                                                                                  |
- W, ~" c4 G8 [) ]7 N( M! i| binding_profile         |                                                                                                                                                                  |
. |; s  Q6 y* U* A. A) N" z| binding_vif_details     |                                                                                                                                                                  |
. T: z4 s7 S0 M7 M% P| binding_vif_type        | unbound                                                                                                                                                          |: C; K3 o! W/ Z7 I1 z. m3 l
| binding_vnic_type       | normal                                                                                                                                                           |
# F- u  [' A3 j/ M" j2 F| created_at              | 2021-12-07T01:50:50Z                                                                                                                                             |
0 d+ m# v) \# v. {4 u- B) R0 n$ i5 g| data_plane_status       | None                                                                                                                                                             |% [3 u( ?& d9 ~) g, P: u
| description             |                                                                                                                                                                  |+ V/ O+ O& S( Y& V9 t& D9 M0 Q, t
| device_id               |                                                                                                                                                                  |) ~$ G# e; M6 `& L6 b- J$ w: Z+ B5 a
| device_owner            |                                                                                                                                                                  |
7 f' [8 _# j" q& M, ~+ C| dns_assignment          | None                                                                                                                                                             |$ l9 n7 F' Z1 L# m$ w, \3 C
| dns_domain              | None                                                                                                                                                             |$ d: a8 x  F3 f0 p4 U, q
| dns_name                | None                                                                                                                                                             |( q( O4 C$ @3 `" m
| extra_dhcp_opts         |                                                                                                                                                                  |
+ X9 V: |# l" n| fixed_ips               | ip_address='192.168.0.186', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208'                                                                                     |
# g$ Y) _7 Q0 Q' R' M- d& f. I| id                      | b42538c2-7583-443e-9779-8a09a4204495                                                                                                                             |
' [, O* E+ z; k+ i- l2 W| ip_allocation           | None                                                                                                                                                             |
3 c- V% n$ ^' }% W| location                | cloud='', project.domain_id=, project.domain_name='Default', project.id='ce0a7c083cf3482baaf5c9a88a1407ff', project.name='admin', region_name='RegionOne', zone= |
' `1 m5 n9 f$ r& @+ }1 w| mac_address             | fa:16:3e:fc:59:73                                                                                                                                                |5 u/ S0 O" k0 J: z# c
| name                    |                                                                                                                                                                  |% o) @1 T5 E* ?$ @
| network_id              | 371dfca6-bc51-470b-a762-bec6af8af048                                                                                                                             |
* Z7 v; u3 c0 J+ e| port_security_enabled   | True                                                                                                                                                             |
& d+ e, R. C: x2 `5 E7 B! k| project_id              | ce0a7c083cf3482baaf5c9a88a1407ff                                                                                                                                 |
9 M0 p/ A2 B4 Q+ j| propagate_uplink_status | None                                                                                                                                                             |- R0 f! l! p( h5 q% E3 y* v) g: B5 X. @
| qos_network_policy_id   | None                                                                                                                                                             |
8 G# Z/ k$ P- n4 J3 z0 I6 l$ {5 p' f| qos_policy_id           | None                                                                                                                                                             |
& T$ O  O) ?+ D2 n+ l  W| resource_request        | None                                                                                                                                                             |
9 A1 d5 \3 l  l; L' p. a| revision_number         | 9                                                                                                                                                                |
' i* Y) v: [# || security_group_ids      |                                                                                                                                                                  |
0 f7 t$ C+ \( g1 P3 W| status                  | DOWN                                                                                                                                                             |
% q2 m! r. D& J: d: I& g& A6 h| tags                    |                                                                                                                                                                  |
% n/ }( L0 x( y8 `9 u1 D| trunk_details           | None                                                                                                                                                             |3 ]9 \$ b+ T* I9 I2 Q1 `
| updated_at              | 2021-12-07T02:03:01Z                                                                                                                                             |
- A' p$ ]; Y. {5 e0 M3 u" D5 O+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+4 m4 L9 g  d! M2 G: F/ `9 |6 b
2 a$ ^3 T* B. d
[root@controller1 ~]# openstack port show  135bba9e-c0d9-4849-bacb-e202c25a89bf" p9 X, Y7 v) Q3 }
+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+4 i+ A/ q+ x. @. O
| Field                   | Value                                                                                                                                                            |
0 p5 @# \  y2 ?* I9 _8 Z' e7 D+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+0 O1 t3 ]$ Q) G1 B: s
| admin_state_up          | UP                                                                                                                                                               |6 |3 U; V' ~6 h. }; _7 W
| allowed_address_pairs   |                                                                                                                                                                  |$ X( C1 W  |8 [& ~- R
| binding_host_id         |                                                                                                                                                                  |" m9 _" g! y0 r! ~* h8 r  Z. c
| binding_profile         |                                                                                                                                                                  |- \! o9 o  k8 j# R3 m
| binding_vif_details     |                                                                                                                                                                  |1 J. c9 m0 K! E4 q! J
| binding_vif_type        | unbound                                                                                                                                                          |
; Z7 ~0 I3 I: S1 |* n+ Q| binding_vnic_type       | normal                                                                                                                                                           |
* F3 Y6 v8 m7 Z+ t. v| created_at              | 2021-12-07T01:06:08Z                                                                                                                                             |
  q. w9 F' ]& Q| data_plane_status       | None                                                                                                                                                             |
& S# I# ^! y1 f$ c/ d) ^  R| description             |                                                                                                                                                                  |' C9 w" z& ^5 I: m' I9 E
| device_id               |                                                                                                                                                                  |
9 a$ {5 x4 x7 `+ Y, ?* }! M! G  _| device_owner            |                                                                                                                                                                  |
* j; J# v! V1 L  a+ D| dns_assignment          | None                                                                                                                                                             |
3 k6 M3 F- U* B' O0 q! t/ i| dns_domain              | None                                                                                                                                                             |
; x& N* b" b9 C/ `| dns_name                | None                                                                                                                                                             |3 M1 Q) P8 c4 M) v! c
| extra_dhcp_opts         |                                                                                                                                                                  |0 }8 s5 y" x1 Z9 V$ M
| fixed_ips               | ip_address='192.168.0.230', subnet_id='184a0f51-8db4-4bc7-8240-ca5e37367208'                                                                                     |2 G% m$ a& [( |9 w$ h
| id                      | 135bba9e-c0d9-4849-bacb-e202c25a89bf                                                                                                                             |: ^9 q' y5 `0 J  ^' Q! r
| ip_allocation           | None                                                                                                                                                             |9 E% z) F. W$ R# c  x6 X( o% ^
| location                | cloud='', project.domain_id=, project.domain_name='Default', project.id='ce0a7c083cf3482baaf5c9a88a1407ff', project.name='admin', region_name='RegionOne', zone= |
; l) n: p8 f) s# @1 o| mac_address             | fa:16:3e:4d:e2:cc                                                                                                                                                |/ K6 Z7 v: K% P( k. c% ^6 Z
| name                    |                                                                                                                                                                  |
% ]& Y1 }6 i. G# M2 M5 h0 h| network_id              | 371dfca6-bc51-470b-a762-bec6af8af048                                                                                                                             |% O% M1 }6 }$ f* y' m! p
| port_security_enabled   | True                                                                                                                                                             |: C  Z, j% ]' M4 `" i( r) A
| project_id              | ce0a7c083cf3482baaf5c9a88a1407ff                                                                                                                                 |
; P! N, `: I% [| propagate_uplink_status | None                                                                                                                                                             |
! h6 G! ]  _+ {0 D! u! M: [| qos_network_policy_id   | None                                                                                                                                                             |# {- y0 o0 D9 v  a# {" I
| qos_policy_id           | None                                                                                                                                                             |4 s) O" B6 G% @; Y; M4 y' F5 D
| resource_request        | None                                                                                                                                                             |
" T% B9 I$ W0 r5 X9 E' m: a' E| revision_number         | 12                                                                                                                                                               |1 [" L) }9 R* C
| security_group_ids      |                                                                                                                                                                  |
) k7 t9 X! t; T; r1 c" C2 p| status                  | DOWN                                                                                                                                                             |
4 y9 K/ K: F2 A$ Z* _- ?" [| tags                    |                                                                                                                                                                  |
4 q$ M0 L, G: b; w| trunk_details           | None                                                                                                                                                             |. ?6 Q/ u4 f' a5 F6 l+ a
| updated_at              | 2021-12-07T02:00:32Z                                                                                                                                             |
; m/ K1 A6 b6 \% Q  T1 `+-------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
$ R% b! Q/ D; o6 {9 X
' k( y5 W$ r& I6 A8 ^& ^[# P6 c9 g! H, O3 l, i* Q! D8 o; i
[root@controller1 ~]# openstack port set 135bba9e-c0d9-4849-bacb-e202c25a89bf --disable-port-security   c  g& I6 O$ m& e( J" f

1 D1 l) Y% i8 T3 @" G8 R, z0 r- I, P3 I. H. j' N! U2 \

3 v* }5 E9 t3 Y这样保证openstack平台上port能被占用,而且不被其他租户创建。# s  g7 H3 C, F1 ~" w* m6 w
# y* w$ X+ n& g' A6 v) D5 v* T
删除地址对:
* W- c( M5 K: h# k: I: }[root@controller1 ~]# openstack port set b42538c2-7583-443e-9779-8a09a4204495  --no-allowed-address: ]1 q9 T+ Q/ G: e

  S/ c. k* w4 v( Q3 p( z
) Y+ v" Z5 S5 s# Z6 F

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2021-12-7 12:00:03 | 显示全部楼层
这样openstack上的keepalived服务就可以使用vip地址了。
8 ^6 ?7 J9 c1 }安全组允许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 id
) y4 _3 @, E% h* n2 `比如两台虚拟机做HA绑定vip,那么需要查看两台虚拟机的port ID和这个vip的port ID
/ J! `  ]9 s1 j# h
, D' e4 p% U( @* I. u8 s* n# neutron port-list|grep 172.18.23.10/ U, W8 G" q5 W  r# V. j& L
| 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"}  |
* [, k, `- k4 a, d6 `- |% F$ P, g0 d. N1 |, K
可以看出vip172.18.23.10的port id为7c7ccc26-9ac9-4ef7-8178-2b97218b1d63.! A: E1 Y: c' f. @9 [$ Q
5、取消安全组对应端口的管理
2 R) B3 w5 N2 _% k  [  [$ [, ]  l. x4 t* L! y0 o
neutron port-update --no-security-groups <Port_id>
+ X7 f# X3 ?& N2 [: _* ~2 O, S6 {' T; Jneutron port-update --port_security_enabled=false <Port_id>
  r8 [& o  M7 s2 u/ ]% b4 D注:6 h; {2 a* v5 N, v
            替换Port_id为之前neutron port-list中找到的Port_id, x, @3 ]. I" D" d5 m6 ?" N

+ m( O5 n: x' `( ^3 C# F具有命令如下:
; L6 H3 e  M8 Z; I* {( K
( N" x+ p5 u$ z$ S4 S1 n) Y# neutron port-update --no-security-groups 7c7ccc26-9ac9-4ef7-8178-2b97218b1d639 ]" Q. y* g' _- w
Updated port: 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63
9 R( x) g7 t6 U+ z' C) W  f# neutron port-update --port_security_enabled=false 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63
9 |& S. |% I/ M3 M6 ?3 LUpdated port: 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63$ W" N0 @. W$ @- X6 H. I$ x4 {
' `7 i. Z, y7 }5 d7 h) |+ @8 G
6、此时执行命令neutron port-show, m- D5 s4 H6 e. J9 w" _
https://ljw.howieli.cn/blog/2017-11-28/port-show.png9 V- z5 Z/ L4 a
可看到port_security_enabled的value为False,security_groups的value为空,即OK,这样两个端口就没有了安全组了。
, A, Z: p/ @, q3 A7 ^7、意思就是对VIP和需要使用VIP的虚拟机都执行4、5、6步,比如配置HA,VIP+两台虚拟机,总共3个Port,都需要执行4、5、6步3 L+ M, T, S1 w% ]6 l8 C+ F
然后就可以在这两台虚拟机上搭建keepalived集群使用172.18.23.10这个vip了。. h6 T# U+ @/ C

1

主题

0

回帖

12

积分

管理员

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

本版积分规则

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

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

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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