|
OpenStack企业云平台监控的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“OpenStack企业云平台监控的示例分析”这篇文章吧。 性能监控
! B; O' z- E2 i; u3 a1 L, y
) s/ t6 B( j5 c9 p对于OpenStack云平台,主机、存储和网络的监控需求和传统IT环境是一样的,关注的主要指标包括 CPU、内存、磁盘、网络I/O等。本文对于监控并不会展开说明,这里展示在OpenStack部署中使用最多的一款开源软件Ganglia。( d( p3 N" L/ p* Q
) ?, ]; H4 s8 e- aGanglia需要在各个节点运行客户端程序,在中心节点部署服务器进程,来对整个集群的性能进行监控,并提供各种视图。另外,Ganglia服务器端进程还可以组成集群,提供高可靠性,用于支持大型或生产环境的监控。
$ ^" y% K3 l3 H. l0 q
2 ?8 G8 R7 H" m, R G" m0 t图1展示了用Ganglia来展现一个由5节点组成的机群的Load、内存、CPU和网络I/O的视图,并以时间轴来显示。另外历史数据也被保留和查看。( n- \9 C6 \0 u( i& j& m
$ F% n; ~' ~0 H3 N& g+ y
. j; z: e/ W- \! U( m; A+ X& _) C7 N3 {) `$ o
图1 Ganglia的Overview界面
+ r2 `, n u; T, |- j8 m2 Y; B9 _. b9 @) f2 h
图2展示了4个节点的Load视图,并在一个视图中进行聚合展示。不同颜色标识不同节点的负载情况。1 O% y- l4 D- v, I1 R z o
/ f! O: z' \' C i. K
2 C% c9 T& W) b3 j& ^
0 J: ]! Q) J- K5 u, g' q
图2 Ganglia的聚合视图和节点视图/ m9 |3 X$ ^7 F) E1 ?; m8 ^1 J
, [0 h6 j# I0 U. c; ^4 y" t
图3是CPU详细监控项目。
# p( C( e1 F* \ U% R! `
0 d( M( \; I7 Q9 t) _% @3 F2 B8 ^" P1 n
+ c4 G* l6 c+ v7 S$ C9 r8 @6 S$ C0 E图3 Ganglia的CPU监控! g, _- {: Q4 Z, c8 k. Z
" ^ d% C- e7 j! J图4是一个二次开发的,可以用来监控节点运行的虚拟机的性能,本图展示的是监控一个虚拟机的视图。( r. E0 N/ g, V/ L' b4 t# v, p
g: R: e+ C; N5 M0 }, p
5 ?( w- J. u7 J7 C9 E7 g图4 Ganglia监控虚拟机内存
Q. v" c9 y9 Y. ]3 h; ?) [
* N) J: h' H2 C服务与资源监控
* X* ~( S1 P- v( S, V4 C- G9 i' ?
; ~& q7 W7 O" l# U1 DNagios是在OpenStack部署中广泛使用的,用于监控云平台各种服务的开源工具,另外,它的扩展性良好,很容易加入自行开发的监控项目,为用户提供了很大的便利性和灵活性。
4 Y. p( {; l6 j* U0 G
; @3 @2 i0 M" S/ N图5展示了Nagios的连接视图,这里5个节点在同一个网络里。绿色代表该节点服务正常,而红色则说明该节点至少有一个以上的告警需要处理。
2 v6 m [: _$ f" A% Z
7 ]$ |9 r: {/ a# e$ l, `& h2 I. t$ {
B* L/ I- K5 k4 _+ ~
图5 Nagios的连接视图3 T4 A& I6 P4 s, W+ p2 X# G0 O- |) L
1 g* u9 \9 _* Z% d. f" X另外,Nagios可以很容易地与邮件系统和短信平台集成,发送告警信息。) Y e0 j! s9 \- S# K9 I& X
+ M3 k8 p! O2 N- V1 G
另外,本书展示的界面只是默认的,社区里有许多不同的展示界面,而且是免费的,可以根据自己的需要和偏好进行选择,提供不同的样式和数据展现形式。但数据本身则还是由Nagios服务提供。
2 w6 `- J: s0 K) D. N
% C0 V1 Q# o- p) {3 r图6是Nagios的主机视图,该节点的健康状况,以及信息收集时间等信息一目了然。5 U2 ?2 }: |9 v! c5 M
$ c* k( Y, _& L6 z
, t' s. d1 b% r7 o
: p- y6 W+ n- B% q3 J8 s
图6 Nagios的主机视图
6 K$ b9 {2 h6 h0 y: W) W
8 j! R8 o3 T9 g图7展示了Nagios的服务监控视图。默认的Nagios可以监控磁盘、SSH、ping等系统基本服务,但是Nagios对OpenStack却一无所知,这是需要自己进行开发和扩展的,另外网上也有不少免费的监控脚本可以集成进来。
7 T3 l" C' q9 d p4 E4 h k9 K7 R. J- R
) ~/ O0 L; ?1 N9 k: m
5 `4 ^4 V" d6 t图7 Nagois的服务监控视图' x' _ O: H9 p" f
* C& X# a# s$ b6 x( b" b7 P
对于OpenStack服务的监控,最基本的可以从进程角度进行监控,如进程是否运行,响应速度如何等。更好的监控,可以结合不同服务的命令,通过查询来判断服务本身的质量如何。这需要初步了解各个服务的使用,以及用到租户、用户、密码等信息。但如果云平台修改密码,则这里也需要进行相应的修改。
4 X4 [& S5 d$ s! @% ^; ^' B! J% c4 Y4 o. J' b
1 a. O) O C5 E8 M
消息中间件监控; O7 Y' |% B4 v! c: f+ J
8 P* |" t, O1 F. P, P2 f4 J
消息中间件在OpenStack云平台起着心脏的作用,运行不正常则整个云平台会运行不起来,因此监控消息中间件在OpenStack云平台至关重要。9 Q0 C; r( V. b& q' I
3 l3 y! Q( M4 [; O2 \2 o% {8 A/ [图8展示了一款免费软件,可以用于消息中间件统计信息的展现和一些基本管理。
, t' Q: z! v2 y `# B. @+ G4 S/ Z& S' J7 |9 Q
# |% W# w; |$ {7 S" b* A
' B: E' C. s7 Q4 j) ~( }& {: b图8 RabbitMQ的Overview视图1 W# V( I, p2 d$ n p8 F
7 }+ N6 i; U3 D) h$ F0 ^图9显示了消息中间件当前的各种连接,这些连接从不同节点和不同服务而来。
8 n7 K- I) a% v0 \, e6 `# |7 y- W7 f5 g; w$ z# ?- q8 J
$ T3 T( T! G8 K
% i' u; n% `% W6 @5 q6 _( D* n8 A图9 RabbitMQ的连接视图
- ?: N0 V' B& S3 L9 g: J
# U& V' w: g/ ?图10展示了消息中间件的通道视图。- d5 R1 G" j- B" e- S/ b
& ?& V& }" z$ b! q9 S
9 ^& O8 ?5 v# N. ?% b& Y: f4 r/ n- O# J* [# H
图10 RabbitMQ的通道视图
4 R2 O) @: B; k8 |9 j
W4 o% {$ y3 Z3 p% v8 U) H' Z图11展示了消息中间件的交换(Exchange)视图。
0 Q5 }# W; c ^9 |1 y
# h- B( B/ F$ p. M8 x7 Q* L O: I L i3 p1 [& k$ u# b
3 u' y! H p2 B5 e图11 RabbitMQ的交换视图9 ] b1 z( u1 ?' E
+ u0 h/ b9 }. V6 ~' h* ?$ z图12展示了消息中间件的队列视图,并包括了统计信息。5 H" j7 S2 b" A9 E
7 P8 o& x! \ v2 ?1 X( L8 s
y6 M4 C# c _3 O0 ~7 E4 g4 s
$ n: Q; E& L6 y- V9 `$ K! w图12 RabbitMQ的队列视图
) ?$ |$ a X7 v$ z4 ~5 A! m! Y# S, P- t& U v3 H
图13是管理员视图,可以修改密码、增加用户等。
; `2 S" g2 _/ C2 q1 |9 n8 r2 `* G/ V' x6 i
. `! p; f" u4 k" z! s
8 \3 T# d6 J3 ? w- B+ a. O图13 RabbitMQ的管理员视图' L ?$ T! l) `. G1 Y
/ @* J$ Z! j% |. |# j% _9 G$ o
日志分析5 V6 W/ B6 n ~* |% F- x: K$ H9 s" u
0 u* d4 [$ F+ J1 d3 ~
OpenStack云平台由于服务众多,会产生大量的日志输出,在云平台初建,涉及Debug时,日志量巨大,对于问题的调试非常不方便,因为关联的服务往往运行于不同节点之上。! `* F2 H! Q; s" e r" `3 A% `
1 }1 o8 U" ~. j; ]2 mLogStash在各个节点部署了代理程序,可以将日志输出汇聚到中心节点进行分析。中心节点本质上是个搜索引擎和信息统计工具。
: U1 ?, O$ Y; D4 l; W1 f2 L( y. W! s, G: c& J/ P- u2 x
图14展示了LogStash的Overview视图,可以看到整个云平台日志产生的数量趋势。
. B+ |2 R: ?. N0 J
( k! [- V+ O8 a6 Y. E" a
3 z# K, `0 Y( ^+ j/ d8 Z/ e1 X; v. W" R. D3 |: L5 p
图14 LogStash的Overview视图" a- H+ ?8 Z# G" P2 R6 d7 ?
) d" j3 Q8 j6 ~' [图15展示了LogStash收集的OpenStack云平台的日志信息汇总,并按时间顺序显示,并可以按不同的维度进行排序、关键词搜索。
6 O, @ Q7 r6 b. r$ }/ W1 t
* O2 g+ i: F7 ~( ^! z+ Z0 B8 u; I
' D+ g; t, A8 U' C, Q- Z i
图15 LogStash的消息视图
% b: C4 l# k5 x" p6 l* H' I4 a
6 ?: S$ f+ V3 C& D图16展示了过滤后的视图,这里我们只关心哪个节点在什么时候发生了什么事情。LogStash可以很好地帮助我们实现这些。
1 y% ]! A; H- \2 u# ?7 z+ F: [+ i% L3 T- J4 H o, k
9 E* h% C5 M6 ]4 [
- H) d; t5 T9 S7 T图16 LogStash的消息过滤视图
6 t* b: Y2 Z% L* t. C 以上是“OpenStack企业云平台监控的示例分析
/ {7 \5 G+ h( ?$ |
7 ?5 q3 s- _! h }9 l% k `
3 E; F- u7 J9 e7 A- S( [5 A p7 h* w7 ^( T
b4 h/ K. j) A4 E7 K. \OpenStack企业云平台监控的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“OpenStack企业云平台监控的示例分析”这篇文章吧。 性能监控: j! C' Z5 G% ^0 {
! `3 I) ^8 y% S) k
对于OpenStack云平台,主机、存储和网络的监控需求和传统IT环境是一样的,关注的主要指标包括 CPU、内存、磁盘、网络I/O等。本文对于监控并不会展开说明,这里展示在OpenStack部署中使用最多的一款开源软件Ganglia。/ q* T9 s% x- n% a
, G: _/ z' t' W7 c. _
Ganglia需要在各个节点运行客户端程序,在中心节点部署服务器进程,来对整个集群的性能进行监控,并提供各种视图。另外,Ganglia服务器端进程还可以组成集群,提供高可靠性,用于支持大型或生产环境的监控。6 `9 N1 H' ?5 h, k
" w |9 y2 M& T( u( Q图1展示了用Ganglia来展现一个由5节点组成的机群的Load、内存、CPU和网络I/O的视图,并以时间轴来显示。另外历史数据也被保留和查看。
, I. Q5 ^. \; P
- W0 R% u5 k* B4 H$ p' h# n, o: M% H7 g) `
/ p, K* g, i( Y: s0 E图1 Ganglia的Overview界面; m! V& d; {: I
, H; n! d" A8 W- T e
图2展示了4个节点的Load视图,并在一个视图中进行聚合展示。不同颜色标识不同节点的负载情况。
0 b6 h1 f, o' g7 |
; {8 `+ t3 m' u9 D/ T2 k; p; H/ c( q7 [$ U( m
" i9 T4 x, e9 D1 f( _$ W1 R图2 Ganglia的聚合视图和节点视图
' j& ]# n+ o9 ^& A) Z* g$ d
4 {! g( ^8 s7 O$ a9 ?图3是CPU详细监控项目。/ V; H! d8 F# \. X4 _ ]% S
' C. l) T& Y( [4 @" n) s' E# S, F& O5 n( ?
2 k# i- j V4 ]. ~' h" {图3 Ganglia的CPU监控
' N) `6 {# N: y% L" N, x* f
4 {- b0 w+ f9 _( Y图4是一个二次开发的,可以用来监控节点运行的虚拟机的性能,本图展示的是监控一个虚拟机的视图。( l: P" f& c, T9 t3 p
# [& [+ L; J2 X5 L
* M3 k5 p( ^4 f
图4 Ganglia监控虚拟机内存2 }3 I4 {' a1 b, T; J
7 W6 K& G8 a9 ]: n6 b服务与资源监控; S$ {7 o3 N. W, O3 l
3 W& U) L/ J6 g$ cNagios是在OpenStack部署中广泛使用的,用于监控云平台各种服务的开源工具,另外,它的扩展性良好,很容易加入自行开发的监控项目,为用户提供了很大的便利性和灵活性。
% A7 y5 Z: r5 T& k
) z. ^4 _9 c: h图5展示了Nagios的连接视图,这里5个节点在同一个网络里。绿色代表该节点服务正常,而红色则说明该节点至少有一个以上的告警需要处理。' k) s( v, ]; q2 x6 W/ `- C
' |, P* w2 M0 V) Y" _
6 R. @7 d" e* Z E8 z; t0 F- G- n0 ]' P, y2 u
图5 Nagios的连接视图
" d% l0 M5 i4 m" x7 m5 \" ~
' y8 Y% w4 q! i8 x6 M& R4 r! p另外,Nagios可以很容易地与邮件系统和短信平台集成,发送告警信息。
2 d+ D* I; H' @8 k6 d6 Y/ E/ P# h ]/ Y
另外,本书展示的界面只是默认的,社区里有许多不同的展示界面,而且是免费的,可以根据自己的需要和偏好进行选择,提供不同的样式和数据展现形式。但数据本身则还是由Nagios服务提供。
( C4 H. B- c" P* Y; m- _
: ]% }; S$ Z) x( A& _( Q& E! ^8 ]图6是Nagios的主机视图,该节点的健康状况,以及信息收集时间等信息一目了然。
/ g3 Y9 {3 |1 b6 \, R2 x9 W* ]0 K) s! \9 V" ]( Z0 ?' O: `3 Z
4 s1 r( @7 w' T0 p# Y& \
& W2 H/ h; ` n& V5 ?' R图6 Nagios的主机视图
T! n$ M/ |. R+ t6 N" v
4 \' p4 D+ y. e- E图7展示了Nagios的服务监控视图。默认的Nagios可以监控磁盘、SSH、ping等系统基本服务,但是Nagios对OpenStack却一无所知,这是需要自己进行开发和扩展的,另外网上也有不少免费的监控脚本可以集成进来。7 ~7 K( a) g- e
# o# R! @/ o2 T, g' A& y6 W- T6 U ]( h
- G* G4 H! X% R. \
图7 Nagois的服务监控视图3 U- w6 G# {3 e! W0 \
8 v4 p% a+ n; t+ R {% A! Q
对于OpenStack服务的监控,最基本的可以从进程角度进行监控,如进程是否运行,响应速度如何等。更好的监控,可以结合不同服务的命令,通过查询来判断服务本身的质量如何。这需要初步了解各个服务的使用,以及用到租户、用户、密码等信息。但如果云平台修改密码,则这里也需要进行相应的修改。
: A, E+ L, R0 D8 w/ L1 V& t: q9 S! |6 F. O0 {6 q. Q9 e( d" e
$ @/ K7 \( k. S5 T( x5 o4 ]& A+ i
消息中间件监控
' J) L! j3 ~! n& L0 a; ^6 v& S+ E% C7 T1 e; o% e
消息中间件在OpenStack云平台起着心脏的作用,运行不正常则整个云平台会运行不起来,因此监控消息中间件在OpenStack云平台至关重要。
4 m D7 ?. O S% C6 y% j
4 G2 S. i- N- j图8展示了一款免费软件,可以用于消息中间件统计信息的展现和一些基本管理。
* j, X7 E( ^4 w' `' f; `1 ^5 Q) S/ |9 S3 s' b4 F1 D* i- S
. I; n" Y; R/ ^& s1 G0 l
! m/ ?) z3 N! B! u# Z图8 RabbitMQ的Overview视图
3 @6 J& N" O3 \
) }* S5 G4 Z+ o. y6 w: R$ `图9显示了消息中间件当前的各种连接,这些连接从不同节点和不同服务而来。
4 |5 K, A0 e( S; x; i" i6 I4 ^$ u( G) v
% j7 \" G2 s! l2 A- Z2 P% M
; y! Y5 L4 g" e, ?% ?! a* j! t
图9 RabbitMQ的连接视图+ ~# Q0 m$ h: N8 C4 Z
! }1 Q$ i4 x: e0 X( B
图10展示了消息中间件的通道视图。
1 ?+ o8 R) n$ i) ~1 ], H7 K2 L9 }
/ q6 ]6 n: u/ D: v! }- o1 N1 }7 u8 D6 e% G4 e( ?
( r; m' }+ U' E1 ^图10 RabbitMQ的通道视图
6 w2 G# s, D3 {: r1 m% i. H l: ]; q9 m, l! {8 K- V
图11展示了消息中间件的交换(Exchange)视图。6 C# ]) Y. M. f8 F* W
2 j, ~8 G1 K5 _, |; b& Y+ ^' k) j( J5 m. D$ R
w [7 V& o' a1 d图11 RabbitMQ的交换视图& L7 U' _0 `( C6 P& T0 l9 v
' o( {! X0 e' [% U) p$ j0 N
图12展示了消息中间件的队列视图,并包括了统计信息。* s- k& y3 f' x- ]
- G% @! \' g! o" I# u6 r- _& \
; N3 n% b, r2 @1 {! {1 O; v
. X9 o& u& W4 j' A
图12 RabbitMQ的队列视图( d/ F1 x9 }) V: L
& e7 b' J5 k! L# u5 u( J
图13是管理员视图,可以修改密码、增加用户等。
6 u6 |5 H: z0 v5 r* m/ |; d6 ]$ B+ |: a7 M. W) v# S* v: g: ~
, w+ F: w3 \- r! F9 G
" L+ S/ `5 q# l9 O) n$ u' N+ c; D图13 RabbitMQ的管理员视图9 r" ]& H, e! s A9 J p
# g: A2 L4 y5 S7 E2 F日志分析
}; ~/ [4 x5 v6 h6 }" q2 w& a5 [6 \5 C9 @3 q ~
OpenStack云平台由于服务众多,会产生大量的日志输出,在云平台初建,涉及Debug时,日志量巨大,对于问题的调试非常不方便,因为关联的服务往往运行于不同节点之上。+ e' H# @0 m4 U9 Z9 v
1 H$ b6 v# W/ x$ |LogStash在各个节点部署了代理程序,可以将日志输出汇聚到中心节点进行分析。中心节点本质上是个搜索引擎和信息统计工具。
F. |( k' ?- z! ]4 x6 Q1 U: a- O/ A e/ j5 a# j
图14展示了LogStash的Overview视图,可以看到整个云平台日志产生的数量趋势。# G, c2 \7 Y! N, F& Y8 s
. f0 J, Q4 I/ e
- S) N" |& m" G1 X
! R+ m8 g3 g7 Y. q0 Y8 D# L# V图14 LogStash的Overview视图3 }6 t- D6 R& e/ ]9 @5 ?( Q5 g
) @0 c9 X2 ^% y图15展示了LogStash收集的OpenStack云平台的日志信息汇总,并按时间顺序显示,并可以按不同的维度进行排序、关键词搜索。
! k* D. p- K$ S% p
' P/ ~5 c, @" u9 c! S9 y5 h! h. m9 {+ f0 K2 k
4 g7 L) l0 S9 j$ F- i# |
图15 LogStash的消息视图" ^; ~! o' F' z7 a& U6 T3 V
: r2 c3 T" D# E' ^. J/ V" T) s
图16展示了过滤后的视图,这里我们只关心哪个节点在什么时候发生了什么事情。LogStash可以很好地帮助我们实现这些。2 F Y# {! h* k" x: f
! R: ]- Q3 o2 ?4 c* ^/ n
% P- ~& h9 j L- S2 N ~$ J, h! E1 ]& f$ X
图16 LogStash的消息过滤视图3 }3 \7 k T, D
以上是“OpenStack企业云平台监控的示例分析
4 r- R0 N) I1 Q4 }) C. D9 a8 K$ q; @5 r' t- A6 a9 |: T
|