|
OpenStack企业云平台监控的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“OpenStack企业云平台监控的示例分析”这篇文章吧。 性能监控( w5 ^3 `: A4 a
, f1 R: b( s( a! C对于OpenStack云平台,主机、存储和网络的监控需求和传统IT环境是一样的,关注的主要指标包括 CPU、内存、磁盘、网络I/O等。本文对于监控并不会展开说明,这里展示在OpenStack部署中使用最多的一款开源软件Ganglia。. x3 E& n G; A7 F: v5 m1 g
7 V& L1 ?! `; z
Ganglia需要在各个节点运行客户端程序,在中心节点部署服务器进程,来对整个集群的性能进行监控,并提供各种视图。另外,Ganglia服务器端进程还可以组成集群,提供高可靠性,用于支持大型或生产环境的监控。& R& r* b; G- q( ~1 T
9 J9 }% `: s' Y E
图1展示了用Ganglia来展现一个由5节点组成的机群的Load、内存、CPU和网络I/O的视图,并以时间轴来显示。另外历史数据也被保留和查看。: X) k9 k, a: g& F3 v
9 C0 d. y+ \8 ]6 J
! X0 B' [; r+ @# J; D9 x6 f
' {: F/ ^4 G* S* Q, z图1 Ganglia的Overview界面/ n0 e" ]0 c, }, K( n5 X
% t# @6 F+ U. [+ ^' Q2 S" X7 _' X图2展示了4个节点的Load视图,并在一个视图中进行聚合展示。不同颜色标识不同节点的负载情况。0 ]' i- {) }) z! O9 ~, x
4 x, f p! A, N! J8 w/ m, l1 w4 n e# f8 {5 @, p- n3 H. e2 l0 E
: U6 b+ `/ q. w& c- r; a, {3 I图2 Ganglia的聚合视图和节点视图! d; |: z. F) O. P
( U: ~& w; I- {7 D
图3是CPU详细监控项目。
3 l; S# B; R& y" T7 f4 ]* _% ?! e
! o! z. G9 P9 U3 J1 n' S/ j
{# [; e3 c% W; N, C6 z- z/ V' c, ~0 y% ?# |% r1 q
图3 Ganglia的CPU监控$ }& L& L- U# z- l% W
& V- J5 p+ e- c图4是一个二次开发的,可以用来监控节点运行的虚拟机的性能,本图展示的是监控一个虚拟机的视图。
" _6 Z* u8 Y8 a% z+ c2 Y$ B& i! U" s! _6 G* r' Y9 {
/ E+ l* J4 t& P5 e4 y
图4 Ganglia监控虚拟机内存9 E" B8 n* A+ ?8 H! t: t" e
0 ?. A. n7 Q V1 W
服务与资源监控5 O$ i" n- ]% b. M
/ T3 k5 e9 g9 }) b( H
Nagios是在OpenStack部署中广泛使用的,用于监控云平台各种服务的开源工具,另外,它的扩展性良好,很容易加入自行开发的监控项目,为用户提供了很大的便利性和灵活性。
& ^& r/ `5 x, S+ B/ S3 I2 N
K" M& H2 ~- L: H* `图5展示了Nagios的连接视图,这里5个节点在同一个网络里。绿色代表该节点服务正常,而红色则说明该节点至少有一个以上的告警需要处理。
) u) G3 d6 I( {# s* v# ^8 S2 Y A' n& n& R$ T% n
, [) p, k2 m$ P1 n, S5 x" l# _$ y2 Y) J( ?3 n! u: B* j
图5 Nagios的连接视图! G2 C0 [' [1 g! b( m7 }
' y# {/ R2 O/ r; |' x! `& Y另外,Nagios可以很容易地与邮件系统和短信平台集成,发送告警信息。
" T7 \5 Q9 F% r( M2 Z8 _' u5 U+ y* L2 U/ V- w. K
另外,本书展示的界面只是默认的,社区里有许多不同的展示界面,而且是免费的,可以根据自己的需要和偏好进行选择,提供不同的样式和数据展现形式。但数据本身则还是由Nagios服务提供。
3 ]/ y; L2 H/ {0 H
, t7 y9 P% l, X/ a图6是Nagios的主机视图,该节点的健康状况,以及信息收集时间等信息一目了然。
5 }* F' _+ J h- @) g1 i: K- R6 v. L/ C( B' }6 q
/ l# B5 x e/ c9 j) {
3 C; \" K# n0 @% L2 S' s; \图6 Nagios的主机视图
; m& F0 k0 C0 j% X2 y8 E4 p2 m! U' M8 Y6 K
图7展示了Nagios的服务监控视图。默认的Nagios可以监控磁盘、SSH、ping等系统基本服务,但是Nagios对OpenStack却一无所知,这是需要自己进行开发和扩展的,另外网上也有不少免费的监控脚本可以集成进来。
# {+ ^7 m1 P- B+ D4 x) j) k2 K9 O; Q* y; M+ w3 E
! _) g- ~9 I" o: K) f
. @" A; o8 r* x/ W
图7 Nagois的服务监控视图8 y- ?3 Z" n# p" p4 l
7 F- ]' P( C) U& S: {! F7 a
对于OpenStack服务的监控,最基本的可以从进程角度进行监控,如进程是否运行,响应速度如何等。更好的监控,可以结合不同服务的命令,通过查询来判断服务本身的质量如何。这需要初步了解各个服务的使用,以及用到租户、用户、密码等信息。但如果云平台修改密码,则这里也需要进行相应的修改。
# M3 m0 X2 j; V* t7 [0 c9 w8 n/ s0 }" a7 M; B; s- R
: B8 Q) X0 G* U0 S3 R. D" ^2 ?
消息中间件监控
; @# V$ ?) Q' Z+ {4 k# @7 b' m4 k, ]& Q: _# w2 d/ Q( p
消息中间件在OpenStack云平台起着心脏的作用,运行不正常则整个云平台会运行不起来,因此监控消息中间件在OpenStack云平台至关重要。
! v0 F1 }, ^* |% b% H R
$ `4 D0 R/ k8 x" a( X图8展示了一款免费软件,可以用于消息中间件统计信息的展现和一些基本管理。
. Q u/ `( l, K+ b, ?
' Y k) V i* E) x) @0 l1 d( g5 e
4 ?* y# w1 Y: j5 u& W
2 Z8 W% R y! V: _ B2 U图8 RabbitMQ的Overview视图
( X: u9 _1 G& j& u9 S
6 {3 D& O8 e0 @图9显示了消息中间件当前的各种连接,这些连接从不同节点和不同服务而来。- j& F! m" L8 l- _
3 J$ Y. M4 A% x0 O' _" Z, _
1 O! c; J1 k% v/ ~! j" l2 w8 |
: S% n% v" @6 ^0 `: n, i' A图9 RabbitMQ的连接视图/ F( d# |; x3 u7 @; K- v1 a
- }) R5 C% d3 [8 N3 c/ S, h图10展示了消息中间件的通道视图。
" M5 U$ o+ b) e ^9 l( e2 t4 D7 t* ^% E r0 \! o1 M2 j$ D
$ q/ x* ^4 C. L+ s3 U1 j l
, s; F! N% C# X图10 RabbitMQ的通道视图+ C. O1 o% q1 k |- ~1 f
1 Z d( m# S+ W8 |4 q" W: y
图11展示了消息中间件的交换(Exchange)视图。. d$ h8 l: ?9 P5 f9 `/ J' y
* p) v+ F @# w6 q$ q9 c
2 w" E( x' I+ H1 `- R
. i+ T4 v7 @8 g4 b* ?图11 RabbitMQ的交换视图
; G* I8 \& X2 `5 E
- D; T" f) i" r7 \+ {0 D图12展示了消息中间件的队列视图,并包括了统计信息。! ^; E5 N) ^/ d2 S7 P( U. n
! }' ]5 Y4 u3 P) K; e3 `- U1 i8 a; z8 G8 d% w
" R) Y0 N$ H8 t% s
图12 RabbitMQ的队列视图% N5 X( x I1 n& i- H9 Y: k( t1 l
& X) h# ]6 c( B, d9 X) P图13是管理员视图,可以修改密码、增加用户等。
4 R+ ~% h4 G" d4 Y3 W, Y/ |
' e6 I( Y0 X9 V5 V: O) C4 c! L+ H! q C% ^$ d
( ]* F H1 y5 f3 @- k7 K5 I9 T- d+ y* B/ H+ [0 m1 g
图13 RabbitMQ的管理员视图
" x1 w4 A* N' W, p, y* L; N+ M& y% W. U- X
日志分析# N- j/ ~+ w$ J$ r7 C0 B- a) B
$ _" f' M# V% M" J# B& ^/ f5 H" C
OpenStack云平台由于服务众多,会产生大量的日志输出,在云平台初建,涉及Debug时,日志量巨大,对于问题的调试非常不方便,因为关联的服务往往运行于不同节点之上。
* y$ }- h$ B+ x& ?9 }
8 Y# U* x* e* uLogStash在各个节点部署了代理程序,可以将日志输出汇聚到中心节点进行分析。中心节点本质上是个搜索引擎和信息统计工具。
# |4 i a9 V* x$ ^7 m" S; i- j @9 T/ H+ j' N$ D3 c% D
图14展示了LogStash的Overview视图,可以看到整个云平台日志产生的数量趋势。
( Q( m: q: m' d3 V; D+ y2 m7 `& ~
8 Y7 S0 n5 `- [2 d9 b" _8 o! n2 @/ B, s! h
+ U3 D. d6 d3 ~" ~7 `图14 LogStash的Overview视图
8 q, @; ]9 q. S
* v7 E0 z" b( R# w& K图15展示了LogStash收集的OpenStack云平台的日志信息汇总,并按时间顺序显示,并可以按不同的维度进行排序、关键词搜索。
; x) ^& u7 V6 ]# Y/ v
. i6 M$ x0 s9 z
; s7 N/ ]! |# l& m* B0 y: g5 L2 J( G& G% a& y" Z, G4 Q, ?* }, u
图15 LogStash的消息视图# C( t& ~* `' t% X, r
1 m. I0 _5 u7 p9 t2 \ W% N图16展示了过滤后的视图,这里我们只关心哪个节点在什么时候发生了什么事情。LogStash可以很好地帮助我们实现这些。) k( \/ L& E' g1 Y) U3 \
, X- m, `& E7 Z" _0 V* C6 O d9 O3 d" p' r6 N
, b7 t6 J6 E5 z, M图16 LogStash的消息过滤视图
3 {3 T# I n7 z 以上是“OpenStack企业云平台监控的示例分析
4 a+ Z0 h( w) r% H6 i# n$ M: H
* B/ U3 I9 ~3 Y. ~, ]
+ ~6 t) b7 b7 N9 C2 N% v& N- r$ _! g1 Z, Q m! [; e1 |% c
- h# B" |# j1 G ~OpenStack企业云平台监控的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“OpenStack企业云平台监控的示例分析”这篇文章吧。 性能监控
1 ^, i( b' Z+ j2 x0 V3 N# H7 g X3 @
~- E7 g$ e& R. J f2 _0 ?" E对于OpenStack云平台,主机、存储和网络的监控需求和传统IT环境是一样的,关注的主要指标包括 CPU、内存、磁盘、网络I/O等。本文对于监控并不会展开说明,这里展示在OpenStack部署中使用最多的一款开源软件Ganglia。 K; |1 w/ I+ h: w* W
& ?/ j, S/ y; E
Ganglia需要在各个节点运行客户端程序,在中心节点部署服务器进程,来对整个集群的性能进行监控,并提供各种视图。另外,Ganglia服务器端进程还可以组成集群,提供高可靠性,用于支持大型或生产环境的监控。$ c4 ^5 q, Q& H
% q! \9 f+ i Z9 H% f
图1展示了用Ganglia来展现一个由5节点组成的机群的Load、内存、CPU和网络I/O的视图,并以时间轴来显示。另外历史数据也被保留和查看。4 b( c: ~' X1 V) O1 U# u+ F+ f( D
6 z& K, Q" j; H1 r! q( p
" f8 m( P/ {( [0 X4 \+ t: a
) I- a6 U: {& X+ w" L. b- j图1 Ganglia的Overview界面
( n- m+ _% j4 m# T/ O: _9 z0 q) S5 W
; s F V$ P( D9 u图2展示了4个节点的Load视图,并在一个视图中进行聚合展示。不同颜色标识不同节点的负载情况。
5 B- o( l- D6 a/ `: L6 Q
9 E! j) t: V3 b6 T
. k1 \$ I+ O2 }8 L) L7 }
1 [5 o W* g" V9 O图2 Ganglia的聚合视图和节点视图
, h4 J% ?) K0 f
8 E: V: i* Q, D+ f2 q9 z" r3 \: e) b图3是CPU详细监控项目。
- j/ A2 U9 Q' P: H+ h' S9 c7 ]" w9 J7 M. r& j
# x4 D: R+ e* k% F! s4 C% I6 |, _' K c7 r4 ?* F3 t. O
图3 Ganglia的CPU监控( V2 |( H& x$ a: _
* b- d ~' \& \. [图4是一个二次开发的,可以用来监控节点运行的虚拟机的性能,本图展示的是监控一个虚拟机的视图。
$ Z; s, P9 k8 c \
3 R: C1 `% h- L0 N" o: x9 z$ M8 Z9 S& N( k
图4 Ganglia监控虚拟机内存2 X: g" [3 V3 Q0 O
9 z1 _# a: ?- F+ _
服务与资源监控6 T8 I0 X! ^4 ]8 V4 ]' u" A1 s2 I1 M
+ S8 I$ Z3 B8 E' @7 \; u
Nagios是在OpenStack部署中广泛使用的,用于监控云平台各种服务的开源工具,另外,它的扩展性良好,很容易加入自行开发的监控项目,为用户提供了很大的便利性和灵活性。
7 @( g6 a Z# G7 \2 v+ f- q4 j" T2 g, G
图5展示了Nagios的连接视图,这里5个节点在同一个网络里。绿色代表该节点服务正常,而红色则说明该节点至少有一个以上的告警需要处理。
2 {( A- Z4 V5 ]# j: Y
; i6 t2 u$ c8 B7 D4 `6 V e j# N2 [ {6 J: s! K7 i5 A" {
, d# v' E: G! b' l b# d
图5 Nagios的连接视图
* W6 v8 n8 r C. ~6 u0 U' E; T* \
9 T& z" _+ V. q' ?- N另外,Nagios可以很容易地与邮件系统和短信平台集成,发送告警信息。2 k* W+ X7 j0 o0 F% J5 g
/ q0 m( k s/ S% c& {. |7 Y
另外,本书展示的界面只是默认的,社区里有许多不同的展示界面,而且是免费的,可以根据自己的需要和偏好进行选择,提供不同的样式和数据展现形式。但数据本身则还是由Nagios服务提供。" m* ~1 z3 l' _* m, r
+ l0 c$ c) j& q3 g6 r图6是Nagios的主机视图,该节点的健康状况,以及信息收集时间等信息一目了然。
/ s$ R$ X6 G% s. N5 q' q( x" L6 N' [
6 M1 O" Y5 r9 P+ V- G$ |
$ P) T2 \" g( F9 i( i4 d: B图6 Nagios的主机视图
4 R! Y* C4 q( k |
1 X3 m4 p' v6 h0 _1 Z3 n9 Q) Y图7展示了Nagios的服务监控视图。默认的Nagios可以监控磁盘、SSH、ping等系统基本服务,但是Nagios对OpenStack却一无所知,这是需要自己进行开发和扩展的,另外网上也有不少免费的监控脚本可以集成进来。
/ I+ M7 v1 m6 J g* S% }, Y6 D: Q8 D) c; G5 a
/ ]) r' T+ f& x
3 V- P) I% R0 q+ s/ U% d
图7 Nagois的服务监控视图
& u l' J' s7 Y+ K! @+ s% X. N) I6 s2 S V
对于OpenStack服务的监控,最基本的可以从进程角度进行监控,如进程是否运行,响应速度如何等。更好的监控,可以结合不同服务的命令,通过查询来判断服务本身的质量如何。这需要初步了解各个服务的使用,以及用到租户、用户、密码等信息。但如果云平台修改密码,则这里也需要进行相应的修改。
/ ]/ p0 v6 Q2 c V: w- O; x, g/ H! W
: y$ X0 e$ w1 y3 z/ v( h1 [) K1 L; l. m+ B7 I" q& |3 |# L
消息中间件监控* d' z- v2 D3 e+ _/ H
% b" Q& d" \/ {: s消息中间件在OpenStack云平台起着心脏的作用,运行不正常则整个云平台会运行不起来,因此监控消息中间件在OpenStack云平台至关重要。; J4 }" D, k3 L3 P+ s
$ I# r g; W" U3 I0 w- X4 m8 J图8展示了一款免费软件,可以用于消息中间件统计信息的展现和一些基本管理。% |3 S( k1 C+ y
+ P; b. n( o+ x f$ {4 h* |; C5 \: x- j/ J) o3 @8 M1 t
" V+ S: n! k' L1 Q4 ^
图8 RabbitMQ的Overview视图! W8 m; p' n5 g3 v5 e
! S5 H, Z' ~ U& B. Y0 ?图9显示了消息中间件当前的各种连接,这些连接从不同节点和不同服务而来。
2 x/ s% e, s) q9 b. _" u1 I. w4 ^3 U7 v: x: a; Y
d4 _2 O- d* m$ i$ |: J: A5 J& F4 a; u8 V
图9 RabbitMQ的连接视图! k; H& y4 B0 Y8 c# A
" @! ~5 r* X. I" j7 e
图10展示了消息中间件的通道视图。! I! g) |" \6 Z4 q
( u. x/ @$ g% A+ X1 l$ r
( R6 |8 Z' O2 Z0 w+ |, G
+ k, ^ `' h- X9 t图10 RabbitMQ的通道视图
7 x+ p% h4 i( A/ i1 `- A% v8 W+ N1 ?! G8 j0 w( z
图11展示了消息中间件的交换(Exchange)视图。" m) P t) {) p
* Z3 i1 G! b) _/ O. k5 O! A% {/ f) i
- @# I( v: A- `0 Z6 g" E1 c) D8 S |, {" o0 U) f! Q
图11 RabbitMQ的交换视图( Y8 x7 q( R6 x0 L2 u( ?
6 k* B) ^- W' `. u4 ~" {
图12展示了消息中间件的队列视图,并包括了统计信息。9 K4 N% ?9 W ^2 x; F( `
) c2 j* m- O$ e; [' o) P& B
4 w& P6 E3 @5 o" B$ D6 @9 Z& j# b3 F6 ~- I0 }
图12 RabbitMQ的队列视图% T, R! E# a) o
. r/ C* p' F; ~2 Q5 L6 p$ G图13是管理员视图,可以修改密码、增加用户等。: Q6 q6 w* e3 K, Q
% R9 g& b# `( R9 { t7 `9 T
6 ]8 h3 G- s1 U4 ?$ p& d
/ M) e: X0 B7 e* K图13 RabbitMQ的管理员视图6 r8 N) Z& r$ I4 X! {- B4 a+ x, J
; p+ [. h5 S) v! G6 }日志分析. D2 i/ v& i+ J1 g
4 ]+ R4 S' i2 x( W( qOpenStack云平台由于服务众多,会产生大量的日志输出,在云平台初建,涉及Debug时,日志量巨大,对于问题的调试非常不方便,因为关联的服务往往运行于不同节点之上。6 ?& S6 l8 S0 w# `6 g8 ~
4 @% P* _. [. }/ j9 A( @LogStash在各个节点部署了代理程序,可以将日志输出汇聚到中心节点进行分析。中心节点本质上是个搜索引擎和信息统计工具。
7 t, D, n: g; ~9 v
/ `! m# z' m2 d7 }) K9 Q图14展示了LogStash的Overview视图,可以看到整个云平台日志产生的数量趋势。8 X8 o. a- A9 D
' X+ f2 F2 ]1 h' r$ v3 Y2 Z5 [8 n8 F
: d, ` S- d( A% s6 Y
" M, X- N' |" \图14 LogStash的Overview视图 V) W1 G6 `/ q: x9 s; E& q
0 b- ^. v! X0 W3 M2 |图15展示了LogStash收集的OpenStack云平台的日志信息汇总,并按时间顺序显示,并可以按不同的维度进行排序、关键词搜索。
0 o7 C8 o! _3 T* Y0 N% i: w. J7 M$ Q1 J
/ U. v& }+ U: S
7 i+ ?! D$ j4 X& s$ b/ d* P图15 LogStash的消息视图
$ s3 q5 f: h. c) W8 Q9 B* B8 W; \6 M+ e% B
图16展示了过滤后的视图,这里我们只关心哪个节点在什么时候发生了什么事情。LogStash可以很好地帮助我们实现这些。% d; Y# B& q8 _9 j
z# B( y$ j; B+ {6 L' |' }$ q
# H* R4 ^1 q+ g2 t% B4 k, U
/ I5 \$ \. ]! F* h/ J图16 LogStash的消息过滤视图
" r7 _7 p$ p/ F+ @/ j6 k* }# `8 u 以上是“OpenStack企业云平台监控的示例分析 ! _/ G, T% L+ B, s5 E( p9 w- q
8 n, T+ I) O% d9 o5 G' k }; r |