马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?开始注册
x
安装Gnocchi先决条件1. 完成以下步骤,创建数据库2. 加载 admin 用户认证文件复制$ . admin-openrc" p5 y& N& l- f( r( I
|
; A+ W2 `) a+ w. ~. G) \3. 完成以下步骤创建服务认证- 创建 gnocchi 服务API endpoints复制
$ openstack endpoint create --region RegionOne metric public http://controller:8041
) Z" p, l- R6 V, P5 I8 I6 k$ openstack endpoint create --region RegionOne metric internal http://controller:8041
G+ D w* L: b5 k5 R: q$ openstack endpoint create --region RegionOne metric admin http://controller:8041
% ~6 i. g6 R T$ n5 ` |
" j5 y# `- Y; I- C# g7 l X6 ]$ ]6 M2 j& s0 J3 j$ A
安装和配置组件1. 安装软件包复制# yum install openstack-gnocchi-api openstack-gnocchi-metricd python2-gnocchiclient -y$ o# j& R @- k
| l7 v( f* Q! V0 F! v
2. 编辑 /etc/gnocchi/gnocchi.conf 文件加入以下内容复制# /etc/gnocchi/gnocchi.conf `) T5 v8 Z+ g! N% V- }1 ]4 @
; _: G2 I7 N: e3 y& Q) O: n7 u' V0 \8 C
[DEFAULT]
; }5 Z0 r8 ]9 }+ B" hlog_dir = /var/log/gnocchi
C) I2 M' C- U0 i0 ~6 }' ]8 f4 c, G: B
[api]# t. O! d- c" t$ h$ ~" A7 P
auth_mode = keystone) F2 X# v3 g: w- z3 o4 I. u! L8 O. _
2 r! l% ?* f2 \9 n5 r2 i. g
[indexer]
! q9 W9 p4 y" n$ ~8 b) N4 zurl = mysql+pymysql://gnocchi:GNOCCHI_DBPASS@controller/gnocchi$ ~( l* Z% N, z2 R; f# b
5 {! L$ p. T# w[storage]8 `: }7 t, h) \8 v8 @, p& l
driver = file
8 h, ]; U5 i$ y2 Xfile_basepath = /var/lib/gnocchi* {; K; q, m j4 F& N6 K
3 `% l. S0 x' V! j$ D/ H[keystone_authtoken]0 G8 ]. e& y6 G! |
auth_uri = http://controller:50008 ^% X. L0 i7 y- ]
auth_url = http://controller:35357
9 }; }6 D) M: g3 e I% bmemcached_servers = controller:11211
8 ]+ Z* b; m4 S7 l3 gauth_type = password
5 q @2 k8 u0 q5 o7 Bproject_domain_name = default
8 ^. T$ Y( z! ~ duser_domain_name = default/ f9 ]9 R1 V3 o1 q! ]8 o7 Z2 D) j+ q
project_name = service: G2 {$ K) N6 y1 }' c ^9 M
username = gnocchi
9 B+ w5 ]1 ^, R5 H$ `# V7 V2 zpassword = GNOCCHI_PASS
. `- H' ?0 ~" P7 u, ]- O | 9 G C" U5 Z8 K/ y2 s
3. 新建 10-gnocchi_wsgi.conf 文件,加入以下内容复制# vim /etc/httpd/conf.d/10-gnocchi_wsgi.conf5 b& _; X, A) Y9 U# G
6 J7 Y1 S3 l& S3 wListen 8041 A5 f" ]3 e+ K
# ?5 t; z- F4 d3 a- O2 x
<VirtualHost *:8041>
0 a* u, w7 x D2 j% Y- m ServerName controller
4 C1 W/ a3 [" ~
" [! j2 J/ m5 H+ b ## Vhost docroot ^5 C! e% n# K2 Y* q1 q$ W; O
DocumentRoot "/var/www/cgi-bin/gnocchi"
+ M; a' i8 B# H/ k/ K5 H% |3 M
8 D& x/ r1 R2 A ## Directories, there should at least be a declaration for /var/www/cgi-bin/gnocchi" a0 f; d5 {" Q4 s4 t" a
/ q% o% n$ {, [8 g8 I4 e& t
<Directory "/var/www/cgi-bin/gnocchi">( I$ {# }8 Y0 X
Options Indexes FollowSymLinks MultiViews; Q* t4 W$ ]' J1 e: ~
AllowOverride None% q6 n2 k- r2 Y7 j& M( E# _
Require all granted1 W7 O: [8 M: E
</Directory>
# u4 R/ y. ]. B7 s% f
3 e& Z' x5 ~- J4 X7 ?& P ## Logging
& G1 m( G" \! T- b$ A0 U ErrorLog "/var/log/httpd/gnocchi_wsgi_error.log"; H2 {; t) t( ^, P7 K7 i
ServerSignature Off
5 P0 }4 I6 {; e5 W H, Z CustomLog "/var/log/httpd/gnocchi_wsgi_access.log" combined/ V* c7 X& v8 E: {; F" U
SetEnvIf X-Forwarded-Proto https HTTPS=12 C9 O9 C0 ^% l9 P7 G
WSGIApplicationGroup %{GLOBAL}
5 V: [. e, o0 v# { WSGIDaemonProcess gnocchi display-name=gnocchi_wsgi group=gnocchi processes=8 threads=8 user=gnocchi
8 G# ?' m8 Q4 s6 f7 L% { WSGIProcessGroup gnocchi
t3 g: s! G3 H9 V6 k WSGIScriptAlias / "/var/www/cgi-bin/gnocchi/app"
( d1 V7 `$ K" O; X* K" o</VirtualHost>
' y8 [: w9 _2 H. t |
# ^8 S! ^7 \' o: o4. 复制 app.wsgi复制# mkdir /var/www/cgi-bin/gnocchi/+ M: Y y/ D3 \: }. d! E R
# cp /usr/lib/python2.7/site-packages/gnocchi/rest/app.wsgi /var/www/cgi-bin/gnocchi/app
' j! f! Q y* ^& f" K7 N# chown -R gnocchi.gnocchi /var/www/cgi-bin/gnocchi
/ E! B* A2 F7 h! ]2 ?& r8 x | ' Y0 |! q% v B# a: K& J
5. 完成安装1. 初始化数据库复制# su -s /bin/bash gnocchi -c "gnocchi-upgrade"
5 i4 K8 W9 q: z" m; K- H | / p5 ?$ s6 \; r
2. 重启 httpd 以加载 gnocchi复制# systemctl restart httpd
$ E% J# Z+ p# f0 W, k# |& _ | - t3 O9 h8 H" M9 y' K& t ~
3. 启动服务并设置开机自启复制# systemctl enable openstack-gnocchi-metricd
2 s* }5 S! D& w# systemctl start openstack-gnocchi-metricd3 I) G6 p3 K6 k; Y: b: S
| 5 v& d$ b1 R5 ?' [8 \
Telemetry 服务Aodh 服务 (ceilometer节点)先决条件1. 完成以下步骤,创建数据库2. 加载 admin 用户认证文件复制$ . admin-openrc
2 {% h) g7 M6 t+ J6 ~ | / S, ~: m/ V/ J: P% e
3. 完成一下步骤创建服务认证- 创建告警服务API endpoints复制
$ openstack endpoint create --region RegionOne alarming public http://controller:8042
/ s/ q0 C/ v; X1 R+ n" I3 k! E$ openstack endpoint create --region RegionOne alarming internal http://controller:8042/ |. a1 b8 M/ R1 j9 U
$ openstack endpoint create --region RegionOne alarming admin http://controller:80423 Y0 x; r/ Q+ N; W) X/ ~2 G$ @
|
5 c1 }5 C" a t6 d- X5 b* f% D2 O. w8 t4 E* k+ @7 x% u) ]/ E8 s
安装和配置组件1. 安装软件包复制# yum install openstack-aodh-api \4 l; p7 b+ S7 B6 W% n
openstack-aodh-evaluator openstack-aodh-notifier \
4 m r4 G% ]- |" }- l; {* Z8 N6 K. ?5 ?8 ~ openstack-aodh-listener openstack-aodh-expirer \3 o+ u. A; v3 u
python-aodhclient -y) c. q* c3 Z3 P7 k/ w d2 C+ i+ i9 F4 `
| 3 ?8 E5 e W% u& `: }0 M
2. 编辑 /etc/aodh/aodh.conf 文件加入以下内容复制# vim /etc/aodh/aodh.conf* @; U' }7 h; ^ M5 N
( F8 q G" P7 f5 Z& ~- X[DEFAULT]" ~0 @1 `6 w; s, G/ s, |
transport_url = rabbit://openstack:root1234@controller
- s& l' }7 c- c8 V! Y7 Uauth_strategy = keystone
$ P8 |2 l: w9 T- Q3 ]9 A( H9 ?7 `7 z% x
[database]
, ]) Y- r4 U6 X' \5 m4 m( fconnection = mysql+pymysql://aodh:AODH_DBPASSWORD@controller/aodh
4 F% n& D4 f8 z0 B ~5 h
" ~7 H: |: a% q( B$ P0 h$ G. t* ?[keystone_authtoken]
3 \- u5 L8 F' x5 N) Xauth_uri = http://controller:5000
) Q# k0 O; r2 M: fauth_url = http://controller:35357
3 W1 j. z7 H7 F8 F2 d9 V5 q- Ememcached_servers = controller:11211
: k/ u) o- H- [2 yauth_type = password
% N e$ c& q" K4 I5 \% R2 Eproject_domain_name = default8 y- o1 y0 P' ]. u+ j# R
user_domain_name = default
* C3 j) T7 y7 q% d# {- a' Iproject_name = service* w0 E9 }% [4 D- v$ N% v" c
username = aodh7 T, ?# v: ?" w6 e+ [
password = AODH_PASSWORD! r1 g3 n i' t/ q
: x+ P3 E) i8 h: b- o
[service_credentials]
& n) H4 {5 [+ M- F9 [6 Q0 pauth_type = password6 L* A. M3 N3 d6 {9 N9 h9 Z
auth_url = http://controller:5000/v3
: e/ x0 a/ l$ P# @8 \+ P; S# Lproject_domain_name = default% J( r5 N. H* O7 H7 D1 l! b. T$ T
user_domain_name = default" m+ Z- r& R5 U$ j0 f5 x
project_name = service
0 J: F9 }- L+ m( j |0 H8 p) ~username = aodh" p, C; P( h$ }" }
password = AODH_PASSWORD
2 v! _0 ^! N! i* k) L y) ~interface = internalURL
* I! A; L, L1 z9 s! Oregion_name = RegionOne; Z* b3 o1 @% y7 [2 ]9 X5 s3 l
| A4 [7 e) f' X# x2 h3 f5 B
3. 新建 /etc/httpd/conf.d/10-aodh_wsgi.conf 文件,加入以下内容复制# vim /etc/httpd/conf.d/10-aodh_wsgi.conf
: j$ c0 V8 ~, z" }4 M4 M+ _
& E* u/ g$ ^6 z9 B% n. z0 m$ e2 Y9 XListen 8042
/ z, Q# j1 A% f0 R: q- v5 M- R: U+ r4 O
<VirtualHost *:8042>: s) l7 M3 D+ @8 t! w; c
ServerName controller
5 S5 f. D c, \
# h8 k/ U* s/ G* h6 ~ ## Vhost docroot$ S" x% T$ R& n- c* i: E6 d
DocumentRoot "/var/www/cgi-bin/aodh"2 N( W$ b) @% P6 A; J
" _; u$ p& w; L8 W ## Directories, there should at least be a declaration for /var/www/cgi-bin/aodh7 S3 i% F9 M2 ~4 V! `6 A
$ L" Q* R+ b9 U" p0 W6 `* [ <Directory "/var/www/cgi-bin/aodh">' \0 d( O/ a0 N2 z# {
Options Indexes FollowSymLinks MultiViews9 p4 s' ^: Y8 M U6 N: g' @0 S- d
AllowOverride None
7 h& [% ]+ h2 O2 E Require all granted6 b* p$ ~5 r. M# x
</Directory>& N' }7 p+ ]: _; r w
0 h. O2 u: C. j: U7 I ## Logging
( W2 {. n9 P0 K: z0 N3 v+ z ErrorLog "/var/log/httpd/aodh_wsgi_error.log"7 `1 P; s1 z0 N7 N
ServerSignature Off
( K( A- @. n. N, r CustomLog "/var/log/httpd/aodh_wsgi_access.log" combined
; i( Z: ~, j4 d% ]6 v- h% Z" k! H SetEnvIf X-Forwarded-Proto https HTTPS=15 B- K6 g* i6 G1 R+ y. I& @6 Z2 F) I
WSGIApplicationGroup %{GLOBAL}
. z) j% Q# e9 K9 r4 i) H* W WSGIDaemonProcess aodh display-name=aodh_wsgi group=aodh processes=2 threads=2 user=aodh8 H5 X, c; N7 B' J9 X
WSGIProcessGroup aodh" v6 Q/ A# H8 G5 Y% B& b
WSGIScriptAlias / "/var/www/cgi-bin/aodh/app"
! G, e+ m- B; I% V0 V" {</VirtualHost>4 d# T8 |) M& L. j" ?2 o# b
|
7 l1 T/ {3 O8 a3 {4. 复制 app.wsgi复制# mkdir /var/www/cgi-bin/aodh/; ~6 y3 p2 z0 }' e6 ~6 j' w7 C) `
# cp /usr/lib/python2.7/site-packages/aodh/api/app.wsgi /var/www/cgi-bin/aodh/app" N$ ~( K0 m+ |7 J' a
# chown -R aodh.aodh /var/www/cgi-bin/aodh) x0 P/ X4 G! J2 @- l
| ! w2 S c5 X/ [- C/ k- N) t3 S
完成安装1. 初始化数据库(仅当使用 SQL 数据库的时候才需要初始化)复制# aodh-dbsync
6 d6 q4 w" L2 z% p6 n7 n |
9 {3 c% j2 w/ L2. 重启 httpd 以加载 aodh复制# systemctl restart httpd
# |4 q$ ?) I. T# g d* c |
6 p6 @% q5 m7 Z- F& ?2 Z3. 启动服务并设置开机自启(任一控制节点执行)复制# systemctl enable openstack-aodh-evaluator.service openstack-aodh-notifier.service openstack-aodh-listener.service8 a: e3 K- N7 l' f8 A
# systemctl start openstack-aodh-evaluator.service openstack-aodh-notifier.service openstack-aodh-listener.service) p; ?3 A3 d% ~& i
| 8 J9 r4 q8 C3 w; Q: _% Y3 e
Panko 服务 (ceilometer节点)先决条件1. 完成以下步骤,创建数据库2. 加载 admin 用户认证文件复制$ . admin-openrc( t# _( a+ \6 [7 `$ a; @) [
| & g6 J0 d! M+ R ^
3. 完成一下步骤创建服务认证4. 创建Event服务API endpoints复制$ openstack endpoint create --region RegionOne event public http://controller:8779
% r9 K4 ?0 n/ r5 H* m) s$ o- I$ openstack endpoint create --region RegionOne event internal http://controller:8779
# w+ \, p1 w. s* K$ openstack endpoint create --region RegionOne event admin http://controller:8779
5 D" z. J& p0 P) L# X3 } |
% n0 q: H5 l6 o: B- p( C安装和配置组件1. 安装软件包复制# yum install openstack-panko-api openstack-panko-common -y4 q# X9 o* {, w S9 {- h1 g* W/ g
| 5 j! m" T3 o/ d8 Q- C' {
2. 编辑 /etc/panko/panko.conf 文件加入以下内容复制# vim /etc/panko/panko.conf
/ U2 i! F( m- R A0 r
, p( n6 E$ M a9 z# Q- S& Z6 r# k0 k[DEFAULT]
: w/ k, D2 D; B( _: Rauth_strategy = keystone
$ ] Q, X% |3 [( }3 mlog_file = /var/log/panko/panko.log
* |& [+ B' V" |log_dir = /var/log/panko
# E" \. D! h- E7 z" r5 {6 `( E* l& {8 N' `' v& V3 L4 y
[api]
; r4 }0 ?& L9 ^host=0.0.0.0
' t" a+ d7 p0 C$ ]3 d" q4 q* y1 }; bport=87793 `. s* N3 j9 \, n1 ?
workers=2
& j* U$ _( v! B- T6 A* \max_limit=1000
6 z3 ^; s+ D) Z4 G' x* `2 ~
6 }$ [+ v+ p) }: G# d[database]
" q) R W2 F5 E& I# |connection = mysql+pymysql://panko:PANKO_DBPASSWORD@controller/panko: ?- g9 n+ M& X5 a4 Q9 l" V H
/ Q9 N9 [1 x. Z6 r' r[keystone_authtoken]
1 F+ H0 q- T# oauth_uri = http://controller:5000
5 _8 G! A, t3 T2 @: }' C- hauth_url = http://controller:35357+ Y+ r( ]3 O( z# O! `
memcached_servers = controller0 X6 H2 [: _# d& u3 B
auth_type = password7 l% [) l* g+ @. B* @( p3 k
project_domain_name = default" j% t$ i* m, t. x
user_domain_name = default' ], D9 l1 y5 { |4 A
project_name = service
2 Q8 e, T2 d+ o, \0 F3 Susername = panko
5 Y1 h) E) ?0 `$ g V2 qpassword = PANKO_PASSWORD, e4 X8 Z9 w0 K& o8 ~9 J
|
% c2 I8 F+ |3 P6 F: X2 R3. 新建 vim /etc/httpd/conf.d/10-panko_wsgi.conf 文件,加入以下内容复制Listen 8779
?& H% a; d) i a/ s7 B/ d' ?. Y% k+ L2 f& q. A7 b2 N8 G
<VirtualHost *:8779>4 {1 P' t8 Z) u) d8 `
ServerName controller
: I0 j/ b8 [. j! X( H+ _5 F0 @+ [% @" |
## Vhost docroot
9 d q5 ~' X1 u1 `5 e8 x1 ?/ m DocumentRoot "/var/www/cgi-bin/panko"$ d9 K: c+ W" V( f8 S' U/ ?. x4 }
+ ^2 }) ?3 i1 f% M2 V ## Directories, there should at least be a declaration for /var/www/cgi-bin/panko
0 O/ m% c: Q' m
! [. K( P/ [8 t" R3 W6 K) o: d) c2 I+ q <Directory "/var/www/cgi-bin/panko">$ r9 ]2 n; S5 V& H) O
Options Indexes FollowSymLinks MultiViews
9 g" r; y# G, g8 h7 c AllowOverride None
/ Z, c- r6 b, G5 ? Require all granted
4 ^2 q& _7 t1 ]# L( G% W2 J/ q/ J" R </Directory>
6 v/ r- E3 b7 F/ @* w8 x. P
; i( y7 A, Q( U ## Logging' O- X( z* Q* n$ m
ErrorLog "/var/log/httpd/panko_wsgi_error.log"8 u. ?5 l- v! v9 F* A# w
ServerSignature Off 9 Y( [* p2 ~/ a
CustomLog "/var/log/httpd/panko_wsgi_access.log" combined ! h* p4 x/ v- z3 N% V
SetEnvIf X-Forwarded-Proto https HTTPS=1- [! h) A b+ x: [& O S
WSGIApplicationGroup %{GLOBAL}( c0 Q( ]8 `0 o2 w0 _) S% u. A
WSGIDaemonProcess panko display-name=panko_wsgi group=panko processes=2 threads=2 user=panko
7 b) E5 d4 B4 Z* R" j" @- G WSGIProcessGroup panko
5 ~1 ?' y9 f, K" B% l9 w WSGIScriptAlias / "/var/www/cgi-bin/panko/app"# K7 g7 t0 O! z6 j
</VirtualHost>4 E2 d& K9 U u- ?7 `; |( i
| 9 I* M9 M& c9 v7 @3 E. D0 h5 n
4. 复制 app.wsgi复制# mkdir /var/www/cgi-bin/panko/
) k0 d7 @5 ?# n+ v! h* I# cp /usr/lib/python2.7/site-packages/panko/api/app.wsgi /var/www/cgi-bin/panko/app
5 ^6 C8 z# i/ W l) x2 v# chown -R panko.panko /var/www/cgi-bin/panko/( R5 W8 F" t4 W0 O! T3 n
| 4 V+ p. S, G8 S7 n/ Y; X3 K; L
5. 初始化数据复制# /usr/bin/panko-dbsync
/ f4 g9 i: |0 J( m0 ~0 i- ` |
7 l! Q' t4 u3 t+ ]$ T2 S! p+ c( P完成安装重启 httpd 以加载 panko
`) S' |+ O' d* _; l+ Z 复制# systemctl restart httpd+ e, U9 F1 j4 }5 K# _
| 5 }6 h1 R1 A0 G+ r( T4 R
* ^8 E% l6 K2 Y) XCeilometer服务安装和配置控制节点 (ceilometer节点)Ceilometer先决条件1. 加载 admin 认证文件复制$ . admin-openrc, M" {8 q% F4 E6 C
|
$ D/ W7 {) P% ^5 T; ]' J7 v2. 创建服务认证,完成以下步骤安装并配置组件1. 安装软件包复制# yum install openstack-ceilometer-api \/ R( T V2 x8 B- g" `
openstack-ceilometer-collector openstack-ceilometer-notification \
0 |/ r( D: Y. w1 M$ c0 i: g1 e openstack-ceilometer-central python-ceilometerclient -y
( g; ~7 i" }) h% | |
" l6 l2 b% x) p+ l2 X8 [( B2. 编辑 /etc/ceilometer/ceilometer.conf 文件加入以下内容复制# vim /etc/ceilometer/ceilometer.conf
# c; u7 V' v, E3 C; q) s3 L( p3 i[DEFAULT]8 U, H+ e* T" V2 J5 r i
transport_url = rabbit://openstack:root1234@controller
! w0 D: v$ Q7 h! Jauth_strategy = keystone
2 w% w- g' U# Gmeter_dispatchers=gnocchi
% V# @5 m/ E( W7 r1 ^event_dispatchers=gnocchi
, N! v/ g) O. p4 x) s9 H3 E% V1 E6 l
[dispatcher_gnocchi]7 V: S6 G3 p, t' W
filter_service_activity = False
5 L2 G. d; @& Xarchive_policy = high& D# I, [6 }& q, |8 C% x
resources_definition_file=gnocchi_resources.yaml/ t5 j+ v ~* J6 Z" x q
url=http://controller:8041
! w t. B/ m s( h$ |- y- a# q7 \
% e8 c1 k; r' l1 B( V6 k[keystone_authtoken]! h7 j* H2 l/ b& |
auth_uri = http://controller:5000
# d h( a; G) G; t k; ^& v$ z7 H( bauth_url = http://controller:35357: M* D3 j, L' G; X+ S8 X
memcached_servers = controller5 ]! Y" ` T/ }
auth_type = password
% M4 g2 k) V2 L8 Hproject_domain_name = default
6 w+ {4 ^ i* B/ t4 Ouser_domain_name = default$ y$ J9 I, H* M
project_name = service
" T5 |* c, n8 q( f! L, `3 Iusername = ceilometer
$ a( W3 p1 e( |4 `! ?, a: w" v! epassword = CEILOMETER_PASSWORD1 S0 Z2 s8 \) @1 A+ G9 |" l
service_token_roles_required = True+ e- G" E! i4 z3 ~
3 O& ^5 X+ R$ I[service_credentials]/ \4 a" c. M8 X3 W
auth_type = password# a2 Z/ L$ R8 B# @/ v, l! l
auth_url = http://controller:5000/v3
. t5 f9 j, s$ j( Dproject_domain_name = default
- l. o1 z& f i8 ~/ `% n- y+ auser_domain_name = default
# h/ `: ~+ K4 }0 }project_name = service
3 F2 ~& Q' H0 [7 zusername = ceilometer
" C- V) C6 o$ Q4 d# I Mpassword = CEILOMETER_PASSWORD$ O# a7 ~ R r4 w" ~
interface = internalURL
`9 O0 q2 U4 n) _& H! wregion_name = RegionOne6 i4 S0 p" P% J% G5 |9 m
|
: ?2 k: g% ~, Q3. 新建 /etc/httpd/conf.d/10-ceilometer_wsgi.conf 文件,加入以下内容复制# vim /etc/httpd/conf.d/10-ceilometer_wsgi.conf& r% d% d( \$ T/ O! ? \
3 _4 E. `2 W. j1 W& q! }
Listen 8777+ l) E6 f4 e! h; }9 t& S; u
) y7 \8 U0 s" b7 i, V
<VirtualHost *:8777>
7 c) c' O; ?( v ServerName controller- p" @5 \$ U; l, z$ s/ F
" E- A0 z+ j& l
## Vhost docroot
, s* _ J. d) [7 P4 j. z+ G DocumentRoot "/var/www/cgi-bin/ceilometer"
( _4 p5 e1 {5 ^; C( A9 |3 Q; u% j
9 u* C, @( {' W* H; R ## Directories, there should at least be a declaration for /var/www/cgi-bin/ceilometer
. U1 w: |8 `% R* @
) B6 {. r f9 G4 J- ] <Directory "/var/www/cgi-bin/ceilometer">( H N7 H" j* {, ^6 h
Options Indexes FollowSymLinks MultiViews! G$ g" Q1 B4 l3 i
AllowOverride None! }. n% _5 d/ P
Require all granted
0 D- o: N0 Q8 ]! l </Directory>3 X' d+ D, p* T/ U! h3 Y( i
9 R! K, N1 e2 s9 o! r; n1 @ ## Logging
. w0 K, O/ g: l) x9 S ErrorLog "/var/log/httpd/ceilometer_wsgi_error.log"
6 ?/ l% d4 [( s$ {) P" ? Q8 k ServerSignature Off ) z' A0 o: [1 i+ N
CustomLog "/var/log/httpd/ceilometer_wsgi_access.log" combined * R1 I5 d3 Y! E. Y* Y0 w
SetEnvIf X-Forwarded-Proto https HTTPS=1& Z9 W& W( E; t5 K9 `# v
WSGIApplicationGroup %{GLOBAL}
& E9 s( W1 ^7 G4 r e! h WSGIDaemonProcess ceilometer display-name=ceilometer_wsgi group=ceilometer processes=1 threads=2 user=ceilometer$ s# t. R' `" i
WSGIProcessGroup ceilometer
0 o3 e8 f0 h7 p WSGIScriptAlias / "/var/www/cgi-bin/ceilometer/app"1 ^5 |& N$ N U( C# q3 J( j
</VirtualHost>! N$ g& L8 B, a& l! A, @$ @
|
, L: Y0 x2 ~; r% |& g1 U4. 复制 app.wsgi复制# mkdir /var/www/cgi-bin/ceilometer/. `+ ^( y, e- L0 `! ^( l/ H7 S0 x
# cp /usr/lib/python2.7/site-packages/ceilometer/api/app.wsgi /var/www/cgi-bin/ceilometer/app5 g7 L i, r+ o/ |/ @8 ?
# chown -R ceilometer.ceilometer /var/www/cgi-bin/ceilometer/0 r/ Q1 A4 B* `8 ~& ?% S6 a
| # j5 S! h8 G3 Q) |1 R- X( u! v3 K; f
- 运行一下命令在gnocchi中创建ceilometer的资源复制
# ceilometer-upgrade --skip-metering-database1 l+ q- a6 x+ W$ }2 M/ s2 C
|
0 J6 T5 N7 S. ?/ @: e" R2 I/ T4 I5 }6 H6 k! C' ^, J# d: E
完成安装1. 重启 httpd 以加载 ceilometer复制# systemctl restart httpd
3 N# ~) F# e' G N2 k* o& u) X | / W" J. Y1 o- ?+ \- o' S
2. 启动服务并设置开机自启复制# systemctl enable openstack-ceilometer-notification.service \
' s) }+ R1 y+ x; n! j openstack-ceilometer-central.service \( w- M5 {9 _; d1 ^
openstack-ceilometer-collector.service) \) W9 ^. D. n) D
# systemctl start openstack-ceilometer-notification.service \" X6 l" k) i3 E1 C8 j' j/ B
openstack-ceilometer-central.service \
8 K2 M8 O" i# m: i6 R" |! R7 R6 ~ openstack-ceilometer-collector.service p q' m! B/ U
|
: j2 Y! `& ], E' C! P; d6 g0 M0 M安装和配置计算节点 (计算节点)安装并配置组件1. 安装软件包复制# yum install openstack-ceilometer-compute python2-wsme, R! t, y U2 m4 @; b: V
| 5 `' p7 ]5 t! ~3 D" T
2. 编辑 /etc/ceilometer/ceilometer.conf 文件加入已下内容复制# vim /etc/ceilometer/ceilometer.conf l. i6 S2 `+ F$ U8 E C
[DEFAULT]
2 o4 c$ Q6 |8 y$ D/ ^- W, R. Gtransport_url = rabbit://openstack:root1234@controller7 M) O. ^" M u8 ~( E! J
auth_strategy = keystone7 z4 f7 L6 R E. `7 c' t
# e- ?0 f! v& n) J
[keystone_authtoken]
1 K- w- y$ J( Bauth_uri = http://controller:5000 V7 y; o9 z/ {& I1 ]
auth_url = http://controller:35357
% i, W1 B i5 N Bmemcached_servers = controller01:11211,controller02:11211,controller03:11211
+ ]( U. p" g* J" o2 l6 k7 x, n* mauth_type = password
! D1 s5 a% h5 w% @; k$ @4 Eproject_domain_name = default
6 B4 m2 z0 Y% R3 Huser_domain_name = default
6 r, y% v7 ^" tproject_name = service
$ `( `6 s6 V# m! m3 u- }username = ceilometer
! |; {. n, q4 N+ Bpassword = CEILOMETER_PASSWORD
# e6 n9 J; s1 I/ T. {" g% W9 ~
4 D# |/ R0 z6 x& |! b[service_credentials]
- {4 z0 |* F1 e S# M4 u1 G& @auth_url = http://controller:5000( s( A: L/ C& v' N
project_domain_id = default
$ [# |: R& t' ]user_domain_id = default' W/ |- A' i% R4 |
auth_type = password
4 i8 h* C, L, b4 t" Zusername = ceilometer
" L7 h3 K8 p* W" ?# i: J: T/ ?$ U# kproject_name = service
$ W# i+ ~( u7 x8 ~4 Z N* npassword = CEILOMETER_PASSWORD9 h$ S! E. a4 {) b9 G; m
interface = internalURL
% R! E. t1 ?1 m+ `0 Zregion_name = RegionOne4 D7 T- z+ H' u* I& r
|
. n- C/ _; t, X% t" T( M- E配置计算节点使用Telemetry编辑 /etc/nova/nova.conf 加入以下内容$ C* Z9 z4 Q; v9 C5 ^" o! u
复制# vim /etc/nova/nova.conf$ Q8 @! @4 r/ i. J2 g p. @
[DEFAULT]
: H5 ?$ W) C1 v# k0 Linstance_usage_audit = True; ^6 V/ ], D2 f4 R# t
instance_usage_audit_period = hour
* J# Z# p: p/ k5 g i! jnotify_on_state_change = vm_and_task_state
1 z2 L3 n/ b! u L3 L: K
% d" |# B3 r) t5 t0 t$ y6 y[oslo_messaging_notifications]
! ]$ b! e, Y" Fdriver = messagingv28 h) J2 w& L, P1 H4 E
| 6 j: Q6 F- t" w5 A
% \! G; t! M& Y% h6 M |, j
完成安装1. 启动agent并设置开机自启复制# systemctl enable openstack-ceilometer-compute.service
1 F" e$ q. s& S5 B# systemctl start openstack-ceilometer-compute.service
6 v8 `) D) W7 Y% Q$ A4 n | 9 a G) v! j1 s* F
2. 重启计算服务复制# systemctl restart openstack-nova-compute.service
/ J" i' |) J$ W) m- H2 Q8 `& Y |
1 J5 [" \# a1 c f$ x配置 opesntack 服务以支持ceilometer (控制节点)Cinder1. 配置cinder使用telemetry编辑/etc/cinder/cinder.conf文件加入以下内容% P; |3 N3 Y2 ^" f4 l
复制[oslo_messaging_notifications]; I# r' P, r, J% r1 A
driver = messagingv2
; q9 @1 x# ]- ]% h$ m, x |
9 Z9 j0 O& v+ P: m; ]
; `" y/ W+ G. f$ x2. 通过定时任务获取阶段性的通知,例如没5分钟执行一次复制# crontab -e5 ]4 M$ {# o2 B" X
& M! d3 p- I+ h$ {
*/5 * * * * /usr/bin/cinder-volume-usage-audit --send_actions: D+ v( ~, s* ]3 [* H
|
) Z' U0 \; V; ^; s& k: K" h3. 重启服务复制# systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service openstack-cinder-volume.service: a4 D- M9 Q3 Z4 g' k* R0 r
|
{4 z- D$ H9 ]* x" I" n6 zGlance1. 配置镜像服务使用telemetry编辑/etc/glance/glance-api.conf 和 /etc/glance/glance-registry.conf5 n1 S( C$ R3 M
复制[DEFAULT]( W/ _$ y4 ?1 J4 w/ \. w3 o
transport_url = rabbit://openstack:root1234@controller) a7 V8 ^- l. X, \6 d/ C$ z3 e
; {' Y5 U9 s9 z6 `6 c5 S u
[oslo_messaging_notifications]
2 v) Q" D2 u. b1 v6 Bdriver = messagingv2
9 n, h" [3 G# T/ J | $ H: K9 N" ~7 i# \
6 U: h1 a% z ?- ~& W
2. 重启服务复制# systemctl restart openstack-glance-api.service openstack-glance-registry.service
/ l% H# l# z0 z4 _5 R: o- B2 q |
8 {- G' ?) u+ h- E8 F. C1 UNeutron1. 配置网络服务使用telemetry编辑 /etc/neutron/neutron.conf 文件加入以下内容% `9 W& o$ z W5 h& p5 v' E: A
复制[oslo_messaging_notifications]$ X0 [" P# _' k, g
driver = messagingv2
! `. ^9 d" m" E |
& C& K' X) c0 ^( q
6 G1 g* C) d/ ^9 _/ @2 U, q2. 重启服务复制# systemctl restart neutron-server.service- m+ ~2 j& o% u4 b# r5 a/ D* @
| 7 e) P& ~7 Y* u# n I3 ]4 i6 P
) H! i2 x1 t, J |