易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 4348|回复: 1
收起左侧

openstack虚拟机VIP配置步骤

[复制链接]
发表于 2018-12-20 11:42:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?开始注册

x
openstack上的虚拟机绑定vip
有些情况下,客户想在openstack的虚拟机上配置vip搭建高可用集群,下面我就简单的说下在openstack上的虚拟机如何绑定vip
' Z; ]5 W: l/ _# C8 X+ {
操作步骤
1、导入环境变量
source admin-openrc* b6 ?: |* i) A) _' H4 Y' ?  ?! ~5 S
) s$ R, c& {; Y$ V: O3 E
2、执行命令neutron net-list查看网络,找到自己需要设置的网络,获取subnet_id和network_id
neutron net-list
id                                   | name                                               | tenant_id                        | subnets                                               
32482d56-bb40-4b7f-85df-3be3a460e441 | HA network tenant 7ba30c1e519d4d6eb8f1ace2cfbf30d3 |                       | 860bf95f-4775-4fac-af88-db392f254416 169.254.192.0/18
7cc26554-2795-4a53-b053-34ec1b4c90f2 | web                                                | 7ba30c1e519d4d6eb8f1ace2cfbf30d3 | 4b1f707b-8842-4ce0-acba-4f0de304459b 192.168.1.0/24   
2 r( l0 I9 J) E; {/ B
12 g" o% ^& `) x! g! o# G0 w
2, B1 Q+ O4 N: O/ b' H- }( _
3. r. P( W1 I: `; ~8 u  G
4
! [: l' j# j* R* r* r5& J  k0 n, J; [/ c
61 l( _$ ?1 h) m* }; R. y6 Q4 }) l
7
) _, X% q6 Y1 p, l87 r3 C9 T4 v7 D
# neutron net-list
, |4 y4 \& c6 o3 H( x7 |( M+--------------------------------------+----------------------------------------------------+----------------------------------+-------------------------------------------------------+
& e2 d3 T5 P. l: N" N5 ?| id                                   | name                                               | tenant_id                        | subnets                                               |9 L7 j! C: R; @( b( g
+--------------------------------------+----------------------------------------------------+----------------------------------+-------------------------------------------------------+0 h) l# c) I5 o
| 32482d56-bb40-4b7f-85df-3be3a460e441 | HA network tenant 7ba30c1e519d4d6eb8f1ace2cfbf30d3 |                                  | 860bf95f-4775-4fac-af88-db392f254416 169.254.192.0/18 |
4 z8 N) l  x( a1 }- f# I2 s( o5 {| 7cc26554-2795-4a53-b053-34ec1b4c90f2 | web                                                | 7ba30c1e519d4d6eb8f1ace2cfbf30d3 | 4b1f707b-8842-4ce0-acba-4f0de304459b 192.168.1.0/24   |& d9 q. S9 b2 q$ ]! u8 k6 G" P0 ?$ n
| d0ad534f-1bcd-43b0-aa0c-edee32520020 | public                                             | 21c161dda51147fb9ff527aadfe1d81a | 9a7f07e5-e906-4622-8bc6-def64b3622ec 172.18.23.0/24   |
) ?* p' @! D- x4 [* P' ~0 C+--------------------------------------+----------------------------------------------------+----------------------------------+-------------------------------------------------------+
3 w4 }. _7 s( f) V

# C: R; ~. _1 o# u. x# E, d* @

" d2 `, `5 C( h! o( L; T( |                               
登录/注册后可看大图

$ C! i: v5 j7 D; m0 u3、创建port来占用ip,保证neutron不会将此IP在分配出去,导致IP冲突问题。0 ~- H1 w' {# Q
1( k/ G" A7 E: T3 Q9 [! w
2
5 Y, g# k2 e* ^2 u- W- f: n3
0 ^" M% y' G- A. ~8 ~5 z3 {2 v, C44 q$ x) G, a3 J6 Z5 X8 q6 Y
5
* m7 X& Z( f4 t$ O, Y0 ]" i6 x
neutron port-create --fixed-ip subnet_id=<subnet_id>,ip_address=<vip> <network_id>. L( N' q1 h$ @; t: p) F
注:; [7 f* C" T% X' _. Y
        替换subnet_id为neutron net-list中查看到的subnet_id
- |. I3 m8 u* a3 v* J        替换vip为需要配置的vip地址
( a  g% `& Y4 C        替换network_ID为neutron net-list中查看到的network_id
' G# I0 ]4 p5 a# j- `+ ]- L

5 \3 `5 ^5 r$ N( K1 F* a9 X& S. v
具体命令如下
9 J) t# P% B1 N5 k: x+ H  N& [6 ?
1
+ N( R1 o$ k. v+ W5 [2
+ i2 ?) Q) Y& H# W( c- D. c3
* v) k3 G; C& b- B/ i4 P4
  u: `+ G" ^6 U; V/ }59 `* e; j9 ]- T# W' |8 z6 m' ^
6* w0 R1 q; S5 P5 c
7# P* M  ]4 T- o8 _& |& _4 c+ U
8
& V( a! Q' F& r0 H5 F' q9" _+ c- L4 w6 j1 y6 a
10* W! q; d2 x9 Q3 H7 H* v
11
4 @6 q6 J) @# u' E& v3 V  u8 t12% `* E$ u" J9 k0 o5 A3 w
131 W. h+ {! n* A
14
& [5 x, N  d8 `& g* `( d: L* h15& Q) }2 a# S8 y8 x: K8 h5 s
167 ^) k" M& k7 y/ O8 q" s* l: [
17
0 c$ s7 g  ~* \185 c: K2 Q6 ?3 q" H8 V* i  g
19% i5 q' N4 C* ^: Z! I+ \
208 N. X. t6 ]9 R4 R
21
) k7 P5 G, I/ v8 r/ C22+ m8 L# i# f  T, Q% S; q
23; Y& N& X" s+ K5 x5 s( W6 n. r+ D/ x/ ]  t
24
0 k/ u  g  T4 o# y1 T- j25
/ u. b, y2 f4 Y) Q2 h263 ~. v0 j! V$ V0 j4 x. A
27$ f8 o: v, u1 W# k
28" X5 A; _' `/ j0 y' C1 f4 d, z" _
299 V/ r2 [7 b0 f0 l/ X
30* Y# ^5 R3 {, {/ [. T
31
% P# d2 C. k& J; u" h% ^
# neutron port-create --fixed-ip subnet_id=9a7f07e5-e906-4622-8bc6-def64b3622ec,ip_address=172.18.23.10 d0ad534f-1bcd-43b0-aa0c-edee32520020
' x) m7 q5 j4 j8 G/ T# CCreated a new port:/ u/ h- t2 R; c6 A
+-----------------------+-------------------------------------------------------------------------------------+; F2 A4 q3 k7 I1 B$ ]* i" v
| Field                 | Value                                                                               |
* b5 P" c! U  z; f" G& h+-----------------------+-------------------------------------------------------------------------------------+
& p# P5 e. ^! o( X; k. q, m| admin_state_up        | True                                                                                |
! R, X( H7 s- R; E) p: u| allowed_address_pairs |                                                                                     |
! k% W& g6 x) i| binding:host_id       |                                                                                     |3 p% f; P' X5 I- Q8 X% y6 X6 z
| binding:profile       | {}                                                                                  |% i, t1 }6 p* E- ?; F& T
| binding:vif_details   | {}                                                                                  |
( i: n$ h. j7 M  _3 R8 h1 O! _8 i| binding:vif_type      | unbound                                                                             |+ y7 s; W& Q. d; I) I! D
| binding:vnic_type     | normal                                                                              |
, W) j  f, E/ V& G4 u| created_at            | 2017-11-28T02:35:17Z                                                                |3 E* @( T7 ^/ D; h# F$ o6 M
| description           |                                                                                     |! d' S4 V* c0 P) _# K
| device_id             |                                                                                     |
7 f" k: I) Q% L5 h' l1 s, w| device_owner          |                                                                                     |
7 D$ m5 Z$ l6 d| extra_dhcp_opts       |                                                                                     |
7 |) H2 n6 a3 w' a/ I+ {8 a| fixed_ips             | {"subnet_id": "9a7f07e5-e906-4622-8bc6-def64b3622ec", "ip_address": "172.18.23.10"} |
( E& Y- }& a0 x) b0 [3 u| id                    | 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63                                                |
: H& Q1 ~$ c" N. [+ d' G5 r5 f| mac_address           | fa:16:3e:ea:81:a6                                                                   |7 U- N, S& S$ Z
| name                  |                                                                                     |
' E# c- {, V1 w0 ?+ p| network_id            | d0ad534f-1bcd-43b0-aa0c-edee32520020                                                |
% H2 `6 K6 b' A$ ~& s0 [| port_security_enabled | True                                                                                |
$ o& n1 Y, B/ T9 t0 G8 ~, @| project_id            | 21c161dda51147fb9ff527aadfe1d81a                                                    |: W! K$ P: p" I4 ?/ ~' _+ o% f
| revision_number       | 5                                                                                   |
! v; H4 l; m# J| security_groups       | abfba384-55f2-4eed-902a-712369be9604                                                |/ b6 U$ B" o% h( u4 R) c
| status                | DOWN                                                                                |# }+ h/ e, d5 \/ Z2 g, p8 Y
| tags                  |                                                                                     |
" r  D0 g% O: g# f0 x| tenant_id             | 21c161dda51147fb9ff527aadfe1d81a                                                    |
6 @5 I" z  V  r| updated_at            | 2017-11-28T02:35:18Z                                                                |
& X8 L6 U/ |) ~, K& g# k+-----------------------+-------------------------------------------------------------------------------------+
1 ]: h, `1 j# _8 r- c

! Y: t1 u$ X- s# L% A$ b

; Z4 L9 I* |* X2 L& X# r% M% V0 ~                               
登录/注册后可看大图
, w! y7 F2 j% F* D. k& k: @4 E
4、执行命令neutron port-list查看端口,找到VIP的Port ID以及需要使用VIP的虚拟机的IP对应的Port id, d# D% p; w, ?6 g* }9 M
比如两台虚拟机做HA绑定vip,那么需要查看两台虚拟机的port ID和这个vip的port ID
: S& v  z0 T/ U: M
1
# ]6 G% H) c& G' \. A2, S! {" T& L. V% W
# neutron port-list|grep 172.18.23.10
. r4 {( o0 S$ `& v8 Y( a| 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"}  |2 J* r2 g1 L( ?. I9 H
- M/ a5 [* P! I
可以看出vip172.18.23.10的port id为7c7ccc26-9ac9-4ef7-8178-2b97218b1d63.
9 F1 K5 N" U4 v/ G: k5、取消安全组对应端口的管理0 i$ A  f4 B. E2 X3 h; ^
14 }6 Y0 L/ G1 Z; b4 i9 S
2  _& U/ F6 H& f& J1 J( Z9 b+ s
3& C$ I+ c% B( y4 E5 L& T
4
* o3 S& `* B& B) N* j1 g
neutron port-update --no-security-groups <Port_id>3 |" f8 ]: \9 @6 K
neutron port-update --port_security_enabled=false <Port_id>0 d& E0 d! a6 p
注:
1 T& D7 V& L. j+ N- J            替换Port_id为之前neutron port-list中找到的Port_id
. g0 V7 X1 {, f+ D

* h' C3 j  P8 L
具有命令如下:
& H! z9 u( @% K
19 e+ }) G1 b5 G1 x" }
20 u1 T" Y8 I  `" y
3
3 o$ a0 H8 {! M* V. i, E4
' f9 U' U( S. J) a6 @
# neutron port-update --no-security-groups 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63
/ b5 Y4 p# R* N- ?- k+ |Updated port: 7c7ccc26-9ac9-4ef7-8178-2b97218b1d630 C. `) N1 x5 F
# neutron port-update --port_security_enabled=false 7c7ccc26-9ac9-4ef7-8178-2b97218b1d63
. z' @0 p! p0 [( ?, _Updated port: 7c7ccc26-9ac9-4ef7-8178-2b97218b1d633 L; ?7 {: ]) `& y8 |. f( W
5 S% S+ @# P3 V$ ]1 W
6、此时执行命令neutron port-show 9 |# q/ E, K$ B, H' \
) [. s/ j* M# I. s
                               
登录/注册后可看大图
8 {" j8 W  Y& k
可看到port_security_enabled的value为False,security_groups的value为空,即OK,这样两个端口就没有了安全组了。
% h2 c% f# M0 Z9 L- _+ S$ [7、意思就是对VIP和需要使用VIP的虚拟机都执行4、5、6步,比如配置HA,VIP+两台虚拟机,总共3个Port,都需要执行4、5、6步0 |$ b. B+ _5 E& l3 z
然后就可以在这两台虚拟机上搭建keepalived集群使用172.18.23.10这个vip了。
 楼主| 发表于 2021-12-7 15:09:56 | 显示全部楼层
安全组允许VRRP协议1 x8 R3 E' g9 Y4 C, J2 h
直接在控制台导航:项目-访问&安全,搜索虚机所在的安全组, 然后点击后面的管理规则按钮进入规则列表;点击添加规则按钮,弹出框里,在规则的下拉选里选择 其他协议, 然后再 端口 文本框输入 112, 最后点击添加按钮即可 # VRRP协议的端口号是112
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 点击这里给我发消息

GMT+8, 2026-4-8 15:27 , Processed in 0.046383 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

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