找回密码
 注册
查看: 7738|回复: 0

openstack集成ceph

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2018-9-26 10:01:46 | 显示全部楼层 |阅读模式
集成Ceph相关配置
3 J9 M3 P/ _. ^' Z创建Pool
2 y  q" b! _$ N$ L. l# ceph osd pool create volumes 64
' U$ `5 S8 j5 f$ x% a8 s- b  q# ceph osd pool create images 64
. ?$ @0 T, p5 f# ceph osd pool create vms 64& T: B/ k0 @) c: N
安装Ceph Client包 * U2 Q3 Z  B  N: a
配置centos7 ceph yum源 2 x: a+ N# m* X" y9 N/ b( X# r
在glance-api(控制节点)节点上
8 P& q! ^" _, _
' t" ?' Q2 w, O$ q1 Byum install python-rbd -y1 p# N9 u! m2 g! U8 y% T( T" v) V# n
(计算节点)在nova-compute和cinder-volume节点上
+ f# P+ z; y, k5 W0 a0 j1 f  N
' S& r) @( e/ Q# Wyum install ceph-common -y
  E/ t# K! e; C+ ^! r; Dopenstack安装Ceph客户端认证9 ^) R) ?1 x; x# y
集群ceph存储端操作
/ @7 r8 f7 h; E  q8 s! D) y5 C. F' K" S
[root@ceph ~]# ssh controller sudo tee /etc/ceph/ceph.conf < /etc/ceph/ceph.conf  u1 Q; |2 `' X2 p+ }
[root@ceph ~]# ssh compute sudo tee /etc/ceph/ceph.conf < /etc/ceph/ceph.conf! g+ k8 P, D8 ]: B5 [. @1 P
如果开启了cephx authentication,需要为Nova/Cinder and Glance创建新的用户,如下% [7 v& K; Y" s
: S4 w. U- @9 ]: u
ceph auth get-or-create client.cinder mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=volumes, allow rwx pool=vms, allow rx pool=images'4 C, C0 F1 v, E  T& s) p' ?& V# q
ceph auth get-or-create client.glance mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=images'
- z: W& b% @; ~7 |; Z+ Y) Y- S为client.cinder, client.glance添加keyring,如下" U* l: x+ V( H4 j) e

6 `5 m, C) Z; b, yceph auth get-or-create client.glance | ssh controller sudo tee /etc/ceph/ceph.client.glance.keyring" r; e% ]+ I1 Y: J2 R( V, P
ssh controller sudo chown glance:glance /etc/ceph/ceph.client.glance.keyring% @+ n- J+ e+ [; t" V
, Z9 B4 f& ]; Q$ P4 |
ceph auth get-or-create client.cinder | ssh compute sudo tee /etc/ceph/ceph.client.cinder.keyring
& N2 j4 U; n1 A0 Ussh compute sudo chown cinder:cinder /etc/ceph/ceph.client.cinder.keyring, B9 Q0 T, E5 B; l: G
为nova-compute节点上创建临时密钥- ]" z2 P- A. P# d" I  k  ^
2 `# D* B; A6 J* O' x3 n& t3 p
ceph auth get-key client.cinder | ssh {your-compute-node} tee client.cinder.key
2 T8 ?7 ]6 }; m+ @此处为
  p4 t' a  C( S; P8 J$ P$ c: O. W, Q! m4 @0 q7 B( [$ _6 e& W
ceph auth get-key client.cinder | ssh compute tee client.cinder.key
1 o2 m6 k( h, `1 W在所有计算节点上(本例就只有一台计算节点)执行如下操作:在计算节点上为libvert替换新的key- J! |' f/ n) y4 N& Y
5 S7 y! k+ w4 B
uuidgen
; f$ J# {7 X3 r. a$ ?* i/ q) M536f43c1-d367-45e0-ae64-72d987417c91% l, Z& D; F7 {- N$ q3 b
cat > secret.xml <<EOF. Q( w) C" V( g8 V3 z
粘贴以下内容,注意将红色key替换为新生成的key。3 u, P' L+ g6 |2 y1 r7 w6 T
<secret ephemeral='no' private='no'>6 C9 f. P: A/ D$ h- n# S$ O& j
<uuid>536f43c1-d367-45e0-ae64-72d987417c91</uuid>% X6 l/ B; C) u, [: o: e
<usage type='ceph'>
  ^9 X# \. B' H  h" w1 D<name>client.cinder secret</name>' S2 O' n! z4 G8 b
</usage>8 G! O0 e: u$ `! S( l' O
</secret>7 Y& {* y; |6 G; U
EOF0 D+ y+ y% c2 l: Q0 R7 U' U8 L+ ?
. ?$ g; P7 d2 \6 k
virsh secret-define --file secret.xml0 B+ A, u, P/ r9 H' T1 E, r
以下—base64 后的秘钥为计算节点上/root目录下的client.cinder.key。是之前为计算节点创建的临时秘钥文件
8 k; s. p& _- X, S7 b, A
! u. k2 W( D, t. t. ?, qvirsh secret-set-value  536f43c1-d367-45e0-ae64-72d987417c91  AQCliYVYCAzsEhAAMSeU34p3XBLVcvc4r46SyA==
0 P1 v1 m6 h4 d8 x- k" z4 V2 X% }( N! t5 b# X$ T* E8 x
[root@compute ~]#rm –f client.cinder.key secret.xml
* ?5 c( C* y) l$ p4 P# l& W  VOpenstack配置, ]$ {+ v* K1 ]6 q2 \$ B" i
在控制节点操作# e# B/ ^1 j$ t0 x2 _$ [& O% p
6 T7 v2 m& a  }- g3 Y0 P& H
vim /etc/glance/glance-api.conf: D8 E1 F/ B2 a7 _" W2 s* z7 M0 z0 @# g
[DEFAULT]
) S3 c; K2 Q" ~0 u& g2 l% r% ]8 Q
default_store = rbd
- Q! J" ~9 ~# k! o8 vshow_image_direct_url = True
& s" Q1 p8 ^" K% j1 f! kshow_multiple_locations = True
4 M  ?% \7 a: Q1 h% @/ `: Y+ i' B, ?# {, A, m7 q5 G+ _5 _
[glance_store]( W  H+ h* |" L3 k, I1 d
stores = rbd
6 |+ Z2 m: y9 z) X, m- Kdefault_store = rbd
& r6 n+ Q6 P  Brbd_store_pool = images
: N4 E4 H9 O% _rbd_store_user = glance
% g# o" P, O1 f( s0 w" @+ frbd_store_ceph_conf = /etc/ceph/ceph.conf
+ P& ~2 Z$ w1 ~9 N# v+ Drbd_store_chunk_size = 8
; I5 ]/ G% Q. C3 S) m
. m4 B5 {: B, e! C) `8 D
7 J7 C* J6 R4 ~1 L. a2 y  A4 v  Z/ O取消Glance cache管理,去掉cachemanagement+ B! x) |) k6 r$ Q
[paste_deploy]1 f& K, Y4 `! d
flavor = keystone( X1 V9 E. X% B- E; f* J: v7 u9 `8 E) m
在计算节点操作
; L$ L9 C- _- y7 _
' Q8 Z2 f) p; H/ p" s. s* Tvim /etc/cinder/cinder.conf
8 K9 W' c; Y7 o' P& `
! w0 \+ X4 r" X' S7 c[DEFAULT]3 c" i& j& _6 B5 F; V" ~, d& X
保留之前的. z4 j4 \* [! t# r' S
enabled_backends = ceph
0 C) m& P2 g2 a& A8 I' ?#glance_api_version = 2' A# _5 b: u$ `+ j8 E8 W0 A  ]
6 }/ f' T+ V, i. q
[ceph]/ D9 J, i: a* p/ m
volume_driver = cinder.volume.drivers.rbd.RBDDriver
5 @- u; e6 y/ `, s, z, s+ Prbd_pool = volumes/ g: _; F: ?  ~: @0 B/ K; I+ I1 K* f. R
rbd_ceph_conf = /etc/ceph/ceph.conf9 z+ z( e- v4 y, v& D
rbd_flatten_volume_from_snapshot = false
* B2 v0 z+ T) t; s6 Srbd_max_clone_depth = 55 B: ^/ Q, \; R. p* O
rbd_store_chunk_size = 4  p7 M2 O# q6 |$ p. p+ M
rados_connect_timeout = -1
' s( M2 P% D' d8 S2 U; w/ Gglance_api_version = 2/ s6 G1 S/ r5 V, n" {1 `6 ~; H
rbd_user = cinder
1 B$ t0 \; V9 |& S& |volume_backend_name = ceph# Q+ d7 R! ]) u. c8 o! }5 K
rbd_secret_uuid =536f43c1-d367-45e0-ae64-72d987417c91
) v) m1 p! k" R. Z请注意,每个计算节点uuid不同。按照实际情况填写。本例只有一个计算节点
* l2 W' L* i. g9 w- B+ g( T注意,如果配置多个cinder后端,glance_api_version = 2必须添加到[DEFAULT]中。本例注释了
/ B; _0 }. I- p3 m! }每个计算节点上,设置/etc/nova/nova.conf3 J/ I& `6 Q3 `& B+ ]
% Y& M1 H6 Y# L( z2 u
vim /etc/nova/nova.conf# L* ^3 s4 V* R- V* Z1 m) I
[libvirt]5 H) Z& Q3 ]/ S
virt_type = qemu1 a5 ~9 |% F9 p& n5 m- |
hw_disk_discard = unmap5 \! @0 ~' P) z; x( f4 S  B) `
images_type = rbd
, E8 _. ]( z7 wimages_rbd_pool = vms1 r5 G) `+ N  q$ b& e; x
images_rbd_ceph_conf = /etc/ceph/ceph.conf+ k, k1 v3 E+ }7 \2 a5 I
rbd_user = cinder
* t  t& W% b' i; prbd_secret_uuid = 536f43c1-d367-45e0-ae64-72d987417c91
" d1 R* M6 _' I' w. sdisk_cachemodes="network=writeback"( ~( Z# f+ h1 ?* V, T1 ~; ^8 D$ K* `
libvirt_inject_password = false# f! P$ b( F3 g: l  I$ m
libvirt_inject_key = false
  q3 g9 @! l; j) r. y- F# Ilibvirt_inject_partition = -2
: z6 n( y; t$ Vlive_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_LIVE, VIR_MIGRATE_TUNNELLED
0 C8 A: r: [, A: }% w5 ]重启OpenStack5 S2 w$ ~6 S6 L. ]( G6 B4 N5 T
控制节点- H& H) G5 [' `( J$ K1 U& ?) Z

9 {( e* R0 D1 h; L( wsystemctl restart openstack-glance-api.service
* Q  u9 \9 Q' z- ^- L计算节点$ y" `8 I/ m8 X" d( X& ?9 Z  U3 P
1 _) P* W# c. o# j" T
systemctl restart openstack-nova-compute.service openstack-cinder-volume.service
1 F. Q' D8 ^1 j2 C* C; Z/ w- M配置文件" ^& h" D# z) r+ H/ k' t
1、nova% i( }5 \/ J3 N' H( P# s
. V# ~( k8 Z' O' ]# \4 \/ C6 J/ s
[root@controller nova]# cat nova.conf# {! y! s1 z( n, C1 `9 Q, q2 n" S
[DEFAULT], n5 N) `7 M1 Z$ O& K9 T
enabled_apis = osapi_compute,metadata
- ?+ d( ?7 R3 }1 `4 ?- A% arpc_backend = rabbit  S, K& _1 I/ x& j
auth_strategy = keystone
5 n) m/ A, a7 U/ F9 u& C  r* w, xmy_ip = 192.168.8.100
) K+ h" Y9 K- w. f& Buse_neutron = True$ P3 D; ~: z, \/ b4 A) Z) a) X& q
firewall_driver = nova.virt.firewall.NoopFirewallDriver8 e  j" {* }) N4 v6 Z/ y+ _% A$ k5 t
[api_database]
: d8 Z' d+ F0 Q3 t5 _$ A0 bconnection = mysql+pymysql://nova:Changeme_123@controller/nova_api/ \" \/ }' ^' |
[barbican]$ w0 B; K; A3 p7 i) E- L+ u
[cache]8 p# E/ g8 b3 Y8 \) ]" t, u
[cells]. Z) l) L' `' T$ t- s' g  \) D
[cinder]! o$ P/ S7 T7 x/ L! N
os_region_name = RegionOne) ~4 K* l' ]# e; N1 E0 S3 V
[conductor]8 m4 E0 ?" h  W
[cors]
% E: ?4 v1 a6 Z: y6 {[cors.subdomain]/ H6 l* m4 z0 L# W3 |0 O4 \- Z
[database]8 H9 F. ^! n* l( M3 v- w" C- g
connection = mysql+pymysql://nova:Changeme_123@controller/nova. h6 X4 o6 R' M; A
[ephemeral_storage_encryption]+ H- {3 [9 p. `( A$ U& H$ Q' `! {
[glance]* r, a' ~( S9 q! e, j
api_servers = http://controller:9292( t; ]6 j+ d+ K
[guestfs]4 T; y1 `& m3 _6 ^% p; b
[hyperv]
8 [* H8 A0 J1 \9 U[image_file_url]
& q, Y! |+ [! W8 E- h[ironic]
# F5 G  T: T! H7 o: ]. y9 l[keymgr]* b, u9 E! A, Y$ I
[keystone_authtoken]
, _; s& W" `0 m. S% bauth_uri = http://controller:5000. V3 i) I" i& i9 B; g$ ~0 _
auth_url = http://controller:35357
1 \. [6 m- i. J  T. kmemcached_servers = controller:11211  b  N2 `$ l: i( P" v& w
auth_type = password
9 e9 A3 _, ]0 ?1 a2 d# Kproject_domain_name = default- D5 E- p7 i% H7 M0 e3 z/ P
user_domain_name = default
: K# X  T6 O5 ^! i. b9 zproject_name = service
/ a. C7 q6 d! _  c0 Gusername = nova
  j$ Q* r2 N5 i* V0 G6 Npassword = Changeme_123
0 X4 O( T: g* M5 k/ u2 r3 w9 r[libvirt]4 ]! a. v0 ?  p  `5 e2 E5 x- l
[libvirt]
9 r5 D9 u% t# u. B8 O( nvirt_type = qemu
8 q' ]1 g8 O  C/ C) `9 _( b- dhw_disk_discard = unmap
. D. x- ~6 p/ r, R" D" aimages_type = rbd
% ~' Y- {8 G3 R4 b8 I# `; |& @images_rbd_pool = nova1 C1 L7 k0 z% j' |* V/ Y3 S" ?. ~7 M
images_rbd_ceph_conf = /etc/cinder/ceph.conf
/ _: d$ M, z* D5 i1 Mrbd_user = cinder7 V4 G* w. A+ J) G5 [" x" B* E
rbd_secret_uuid = 457eb676-33da-42ec-9a8c-9293d545c337
8 r+ _+ P+ W/ B1 Ydisk_cachemodes="network=writeback"
& ?6 ~5 n: q, j2 Mlibvirt_inject_password = false
6 U2 W( Q6 ?0 \2 @' alibvirt_inject_key = false
& `& \5 _, f" t4 K$ X7 elibvirt_inject_partition = -2
7 O& ^" j. p2 p6 O- Z+ Xlive_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_LIVE, VIR_MIGRATE_TUNNELLED
3 O1 W' I- |) ^! t  O1 s/ [( _[matchmaker_redis]2 Q" h7 Y. n* I$ q
[metrics]- c9 H+ O: l$ v, e
[neutron]
5 I' |3 E- o3 b5 }0 W: }url = http://controller:96965 `0 _: i% |# @1 x" ^- f
auth_url = http://controller:35357
$ k! B  S. E! y2 _0 mauth_type = password
* E& W* r5 e$ O1 A8 o1 \% ]% lproject_domain_name = default
$ v- I- e" ~+ ?user_domain_name = default* K# E) z2 m4 o; J5 e. w
region_name = RegionOne
+ x/ y3 n/ j4 p: ~8 W% U5 ^6 V2 p) p/ oproject_name = service
1 e+ g. x1 o, x9 u' tusername = neutron
/ p4 H) k+ ^! F( J- t: dpassword = Changeme_123
0 P8 A& Z" m" Nservice_metadata_proxy = True7 M0 F2 ~1 G% O; c& K3 O2 f: E
metadata_proxy_shared_secret = Changeme_123% u: L- O+ Y$ i, S
[osapi_v21]- u, G- d, X5 H; |) c
[oslo_concurrency]) T( t& ^& n# {
lock_path = /var/lib/nova/tmp
7 Q% ~7 J7 ]  Q4 A[oslo_messaging_amqp]
. p, W( y5 x. |1 z  y[oslo_messaging_notifications]8 m) D! x9 W2 t% a. E
[oslo_messaging_rabbit]
! S$ P! `7 [7 a; q. D! U4 N! e3 Lrabbit_host = controller$ y- e' c8 [$ U6 x! ?; m" X
rabbit_userid = openstack! P7 V4 j( @' |
rabbit_password = Changeme_123
( T( u5 F. B( _[oslo_middleware]) J' x5 P8 W4 C+ s$ P( y3 a( ^
[oslo_policy]& a. i4 F9 B# l+ ^8 a2 S) A) N
[rdp]
# g7 d9 m% G: g! \1 t: ^2 W& U[serial_console]5 G8 }- X9 `# c
[spice]
3 }& N+ u' b8 T! b* P$ i) I2 D- q[ssl]
% \3 |1 E2 A, C% w: d2 H[trusted_computing]. J; F' F# Q* s% d& k
[upgrade_levels]+ }( t" g1 s* {/ ~
[vmware]% L. E/ H9 V8 A6 h! F
[vnc]5 @  z/ j) q9 h, H
vncserver_listen = 0.0.0.0
4 `8 A: H$ o1 z! X3 A' ~4 |2 _vncserver_proxyclient_address = 192.168.8.100
, ?' n7 c& P7 q8 N* Benabled = True- {5 b% S/ ]4 `; ~
novncproxy_base_url = http://192.168.8.100:6080/vnc_auto.html# q' c0 S; |0 Z- G2 Q# _& P/ B
[workarounds]3 \. ?, e. n% g( J6 k5 t8 Q" N/ n$ ?
[xenserver]1 I1 m$ P  c% g( m4 J
3 A& _0 r5 U' z! y7 ~

: v/ `5 e7 l% Z! P' fcinder
+ |/ I1 ]0 y+ }' O! B& h, y# H$ u2 |% K8 W1 [! k' F1 y
[root@controller nova]# cat /etc/cinder/cinder.conf& C8 [) G* K& P
[DEFAULT]% T: f  ?# _8 M3 J6 f0 ~
rpc_backend = rabbit6 K; j* p* t0 T& v; l* k
auth_strategy = keystone; B4 ^! y4 e. b( |, M  r- F
my_ip = 192.168.8.100
" y8 c* }$ n! Oglance_host = controller1 f4 e$ y/ j  E7 [% e  \5 C5 [
enabled_backends = lvm,ceph
: Q* Q4 l0 k7 b, i* p# vglance_api_servers = http://controller:9292/ B7 K/ L6 ^. ~2 \5 Z/ K  y
[BACKEND]
( o" {* V+ ~0 D  Y- ^. L( q8 y; v[BRCD_FABRIC_EXAMPLE]
/ @* D$ l4 y! L  U6 V[CISCO_FABRIC_EXAMPLE]
1 d7 t2 V0 u' L4 p+ p( S[COORDINATION]
6 C( t$ l% W; C! J- B& g9 H[FC-ZONE-MANAGER]
8 D) y- x+ a0 m, c4 s3 a[KEYMGR]2 G4 o7 I( O7 q+ d
[cors]3 [% X' g8 R4 Q
[cors.subdomain]& h) x& v. v$ e9 w, p% h
[database]0 ]& S& P1 Z9 d' t& O  z- ~
connection = mysql+pymysql://cinder:Changeme_123@controller/cinder/ {& c0 V5 N$ Z% J, f) l2 M5 T. Y
[keystone_authtoken]
0 x" n1 p4 j' G. r$ ]9 wauth_uri = http://controller:50007 a$ K& M) l/ R# M/ B
auth_url = http://controller:35357
& O7 z, {8 \; _memcached_servers = controller:11211' E  u- H3 X1 B2 t
auth_type = password  M& E6 p+ \( q$ J
project_domain_name = default% A& l' t; `& }* `+ @+ b6 ]
user_domain_name = default5 Z; K- `: }/ y6 G9 b
project_name = service
& B; G; z, ?+ R3 [5 s( r  Vusername = cinder
$ M3 q- T! {$ `/ \1 o$ rpassword = Changeme_123' C! O9 y* k" @0 H
[matchmaker_redis]( Z% ~$ q. L' O1 o( m; X
[oslo_concurrency]0 ?) J' [9 y2 ^( R/ K; `3 u! D9 S
lock_path = /var/lib/cinder/tmp- F. x3 I) o0 _# l1 n
[oslo_messaging_amqp]: b5 t0 o8 z5 D  {
[oslo_messaging_notifications]
4 W4 \' t0 `0 S, L  u+ |& q2 z! V[oslo_messaging_rabbit]
* i5 H1 |3 r8 R0 G( mrabbit_host = controller
+ \2 }) x, t  n5 p- p( V: X' `9 @rabbit_userid = openstack
2 y6 P7 V: h, S. e) I: E4 zrabbit_password = Changeme_1237 A! t0 t0 x; o) A/ E& }
[oslo_middleware]
/ G- i7 C% B" Y5 c8 V, J, {) j1 P[oslo_policy]
: Q( d( V. b$ p/ b0 {[oslo_reports]
' z1 K" X/ d4 ~. L+ {, V8 t, o[oslo_versionedobjects]1 d( ]6 A9 q9 p2 _6 m+ P
[ssl]
: `! C$ [' f4 E- [8 K[lvm]
3 H; V: e% H9 bvolume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
7 x6 _6 ~: M( N- [volume_group = cinder-volumes0 S8 y; I( A' O2 ^2 Z8 }3 j
iscsi_protocol = iscsi" k% o$ C& ~* g3 _3 G5 }
iscsi_helper = lioadm
) `9 e3 K1 Y, y1 V[ceph]7 D! ~) p7 o* k, u
volume_driver = cinder.volume.drivers.rbd.RBDDriver
- ?$ ]) z$ T, Z2 |2 d5 Hrbd_pool = cinder
1 g; y- r/ L. x8 Q9 a# [9 V# brbd_ceph_conf = /etc/cinder/ceph.conf4 v% J8 ?7 z$ F' {# B) Y7 j- V
rbd_flatten_volume_from_snapshot = false( p+ N5 ?( t5 \7 t$ ^* V* [
rbd_max_clone_depth = 5
( |/ S$ |  S) ~! ^( u& prbd_store_chunk_size = 4
+ k' W) }/ l( Orados_connect_timeout = -19 i% u9 \  b2 k  D
glance_api_version = 2
# J* [" j4 c* k3 R3 mrbd_user = cinder7 X" i$ S1 v- P7 o# q
rbd_secret_uuid =457eb676-33da-42ec-9a8c-9293d545c337
6 c) W6 g7 X# @volume_backend_name = ceph% z. |6 a, x/ N; t  _3 n& O" H5 ~' O
$ x( Z+ N# T# s$ G$ ~

& ]6 v) |6 O. o; A  }glance) [1 s7 O4 W9 Y' z3 }% l
[root@controller nova]# cat /etc/glance/glance-api.conf/ i  j) w$ w/ [" c

( K$ R5 h% I2 I. }[DEFAULT]
. g. g( d  _; J2 A+ k: x7 L4 x9 E+ O5 g#default_store = rbd
7 U" f1 r9 C2 u2 p- Vshow_image_direct_url = True
5 m, [9 ^" I) B0 s5 _) {#show_multiple_locations = True$ V3 z1 [, {' c* `$ ]$ w' X( R
[cors]
1 a; ]" ^2 R) A[cors.subdomain]3 w) b) c5 d4 I, d5 e& }- l
[database]9 z: ?& K2 i5 n" M: N: @
connection = mysql+pymysql://glance:Changeme_123@controller/glance
) h8 z4 R1 r3 D: X5 j5 K. m[glance_store]
! ~+ o, F1 [- g: ~. s  E. \. Ostores = rbd8 @( s; h' l& z* Q! `2 Y
default_store = rbd
2 |! h5 v* F- t7 N0 o$ t6 _& wrbd_store_pool = glance, C( u5 X' Y  j/ Y( ]6 f
rbd_store_user = glance
4 i) W* E  H* i. ]9 W* J) Yrbd_store_ceph_conf = /etc/glance/ceph.conf
5 j# C9 O4 l1 B3 p3 grbd_store_chunk_size = 8
' q; M5 a% _! [6 o- E- G[image_format]
" [' [3 m3 |, i$ G[keystone_authtoken]
, B, u3 _; K- y& f5 hauth_uri = http://controller:5000
/ A1 j  e1 b( `( r" }auth_url = http://controller:35357: d. ~" n) K! i" C2 x2 u: z
memcached_servers = controller:11211
9 O! W! }# e3 b# W. i# O* g; Wauth_type = password
- w. ]+ s5 n8 u% b  fproject_domain_name = default1 w0 }+ L" b3 `# w; E8 g- e) Q. I
user_domain_name = default
* A/ D2 X9 q5 t' o3 s7 t3 Z, ousername = glance
. \/ H0 v1 D# ]password = Changeme_1232 ]% X5 O  s: u% Y
project_name = service
( Y7 z6 n7 t6 h" O6 U" [[matchmaker_redis]$ X! x( R" v# r
[oslo_concurrency]
+ Y4 }; R" B! E9 e+ T' U[oslo_messaging_amqp]
6 A. U7 ~7 ~: |$ L) X4 r8 }[oslo_messaging_notifications]1 w) P/ o* D4 y( T- E
[oslo_messaging_rabbit]0 ~* {7 y9 b( g
[oslo_policy]
" i: }, A+ d0 Z8 A. j$ ]! M[paste_deploy]- `1 ~( c, i7 r0 t; n
flavor = keystone* s6 S3 w5 m# Q4 J) U$ q
[profiler]
! x# G" Y9 u/ }4 n[store_type_location_strategy]
: d( T1 H; |4 o/ X; j5 m: ]8 ?1 b[task]) G9 r9 Y( C% f% x/ p8 K0 N& @3 U
[taskflow_executor]
" N7 u4 L, r! Y4 ~" S6 v
4 n; f' ], `  L5 f5 t3 Pceph
2 k! L! w; V0 |( K( d
7 S3 f' B8 t' D5 ?0 U) z[root@controller nova]# cat /etc/cinder/cinder.conf
+ K0 s- O% v1 |0 |+ D- c9 ^[DEFAULT]
2 S5 p" {" N, F  c- [% Hrpc_backend = rabbit( R* Q3 g: h% }. g  q5 q0 }
auth_strategy = keystone
7 ?) L, y+ R4 {" O# fmy_ip = 192.168.8.100
8 B: T' ]1 O3 _! z1 \4 T; R, Wglance_host = controller$ z1 A+ y6 y" h. h6 ?" @& M
enabled_backends = lvm,ceph9 X- p& X. A  C: z) o
glance_api_servers = http://controller:9292
8 N8 Z2 B: F) G2 M; b; F8 r[BACKEND]2 f8 E1 m1 E, Z) s
[BRCD_FABRIC_EXAMPLE]
* U+ o* l, \% {0 [[CISCO_FABRIC_EXAMPLE]
- m5 v" u$ w4 R3 x: z[COORDINATION]
4 g; j# X! G" n6 {4 K. [4 Z! M[FC-ZONE-MANAGER]2 c" m' N2 _" m( F
[KEYMGR]0 x" I: ~  k# [) K# s
[cors]
9 j2 h. ^+ G( V+ f[cors.subdomain]' d' g- z8 e4 m4 O; Y
[database]
9 m# r4 r: s0 k  m9 I- Qconnection = mysql+pymysql://cinder:Changeme_123@controller/cinder
& M' d7 C! m! p# l+ e[keystone_authtoken]3 v$ N* q( F8 H& e% H) Q& A( b
auth_uri = http://controller:50004 l: F" O' g% T9 V- ?  K' ~
auth_url = http://controller:35357* L( N) T& {3 Q( r- v9 f, P  W
memcached_servers = controller:112119 a6 S3 _) Z- a9 x' X- S
auth_type = password
$ J$ H" o' k; A2 w) c- U. lproject_domain_name = default
& l' `7 U) Z1 \# d( |user_domain_name = default- ?/ }( ~# H- T3 D
project_name = service4 s' m' @! u. m% m7 i1 h# C8 z
username = cinder1 J' c& k  J, ~9 O' o# U# }
password = Changeme_123
; O# o# F. p+ {4 u  ?" B* T. C[matchmaker_redis]1 `6 O! T0 f: h4 g5 Z+ e& o
[oslo_concurrency]9 Y" P0 a7 i+ x$ R- ^3 ?
lock_path = /var/lib/cinder/tmp
4 L) S. C0 R% }3 C/ n[oslo_messaging_amqp]& X- ^8 ?" w6 d% G& Z
[oslo_messaging_notifications]
# |6 B4 `3 Z& b  P/ L1 E[oslo_messaging_rabbit]
, {; f3 O" p% {7 k3 w2 krabbit_host = controller, k/ Q8 \0 g$ G# G% Q0 d7 V
rabbit_userid = openstack7 e3 q: d, \( n$ S
rabbit_password = Changeme_123( p% K6 K1 g/ t$ [: h( h; N
[oslo_middleware]
- |( {. `9 ]" V, v% o[oslo_policy]
% H: v) V  S/ j4 E; p[oslo_reports]
$ k5 `/ O0 c7 z  `# ?- e" K[oslo_versionedobjects]$ }. b9 ]; a7 ~/ a$ ~3 S) Y( Q
[ssl]
; y9 H" F! h, R( n: Q; d[lvm]
: ~- S% Z1 r, T5 ?volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
$ S8 x' {8 S( G. f. tvolume_group = cinder-volumes, ?; y9 Z  L: O5 q
iscsi_protocol = iscsi
0 y4 _: w% T! B# k) jiscsi_helper = lioadm& V! }& R+ d+ m' k, i+ S
[ceph]9 _9 r; I# A( \4 ]5 e6 m
volume_driver = cinder.volume.drivers.rbd.RBDDriver8 \* S& l/ F) {6 H
rbd_pool = cinder" o# b1 B) {( a" g( n6 k8 G
rbd_ceph_conf = /etc/cinder/ceph.conf4 A! ^, q( h% F$ N5 B
rbd_flatten_volume_from_snapshot = false
1 H8 c, w) K& O  prbd_max_clone_depth = 5( @9 f" K0 U* r* R8 ^
rbd_store_chunk_size = 45 a/ J  V. X7 ?; A$ r7 c- g: a
rados_connect_timeout = -1
! o: Z  W5 t' j$ ?" \/ Aglance_api_version = 2( G3 i8 j) a/ _1 `+ i4 t2 f
rbd_user = cinder
. C6 H  ~+ ?& V5 Z4 w" lrbd_secret_uuid =457eb676-33da-42ec-9a8c-9293d545c337
  Z4 z" w4 G3 _3 K+ Gvolume_backend_name = ceph5 @+ |: `- B: k% M" i8 e
[root@controller nova]# cat /etc/glance/glance-api.conf5 h7 c% X' d$ |5 }, J
[DEFAULT]* Z* k% t. k7 F+ N* B
#default_store = rbd" u4 D6 C1 D7 L7 g
show_image_direct_url = True
' [, q6 f2 \7 i; e#show_multiple_locations = True
+ h& g. v, W6 C4 x: w[cors]
0 u. H2 \! x! l. T4 |[cors.subdomain]' v: M  J. Y. T0 b5 T5 F6 l
[database]
! n. V8 b. |5 Mconnection = mysql+pymysql://glance:Changeme_123@controller/glance7 G- ]1 p8 I; d+ `
[glance_store]
9 @- t% p6 f1 x. S) ]) _& C: Sstores = rbd6 c$ M' r7 b7 p+ ~! o/ Y. |
default_store = rbd
& M- W* C% @+ L) E, i2 |; W2 Srbd_store_pool = glance
& v, p* z9 v7 O) q- e- o0 E% Trbd_store_user = glance0 E( r2 B/ n; j& ^3 t$ d
rbd_store_ceph_conf = /etc/glance/ceph.conf) O, e' H: a  i" ?; O+ a4 }$ L
rbd_store_chunk_size = 8
# c- u% c. `# D3 ?[image_format]( K. f, W; d+ \0 R# _4 U3 b8 s; N
[keystone_authtoken]. t; f, ^! \) [6 `$ x. i2 y
auth_uri = http://controller:5000/ ~  I! e% G  c" \9 R: G8 c
auth_url = http://controller:35357- P& [" S1 B% ]; Y$ p
memcached_servers = controller:11211
3 G' C. ~1 m, F3 t/ u4 Uauth_type = password+ i5 s4 r& G3 A9 d# [$ L
project_domain_name = default
. {4 b. Q  \, l$ o4 Auser_domain_name = default
8 `4 c+ @: ^0 \username = glance
4 [% Q; @2 z' w6 f+ _1 R" g3 T  apassword = Changeme_123! S! s& h+ H0 N) u: Q3 V( S
project_name = service6 l; j4 T: I% |1 `, j" R. _' b
[matchmaker_redis]# Y$ V) {& |# `9 A% |) _
[oslo_concurrency]
1 t3 j3 h" D5 J& ?[oslo_messaging_amqp]
' D* p1 T' C0 u6 x; W: K[oslo_messaging_notifications]* l' d: L- W5 L6 ^! h3 J; Z
[oslo_messaging_rabbit]
" V5 P5 p/ d7 _1 r[oslo_policy]$ s7 x+ r5 |0 x) d5 B" _# N% Q$ @2 j
[paste_deploy]2 F% U1 h( A7 X. C4 T. h
flavor = keystone
& p* G2 y( \. l8 d[profiler]
! ]( V- x/ p: p, l# w[store_type_location_strategy]
4 u) G2 ?3 S+ b! z$ D) }[task]
; H, i" x0 n9 S1 n1 Q[taskflow_executor]: `; s7 }. S2 o
[root@controller nova]# cat /etc/cinder/ceph.conf. v5 B7 N4 D2 T" E1 d6 u- x
[global]
. e+ i/ K) T; |( ~: r4 s, uheartbeat interval = 51 ?7 U3 y$ P* W8 B: r- e) r' z  _
osd pool default size = 34 p! e. r% ~0 a& H% v# w
osd heartbeat grace = 10" N1 G2 q$ N/ b1 c  J
#keyring = /etc/ceph/keyring.admin+ j- x3 o- P9 j# K0 G! K5 G
mon osd down out interval = 90& u- }3 P, ?- S8 a  [1 I
fsid = 5e8080b0-cc54-11e6-b346-000c29976397
, q& D2 K4 _. B& G2 |% X4 q( Iosd heartbeat interval = 10; q7 Q, G) [9 c
max open files = 131072' ^9 L, b6 ?1 J) v) j
auth supported = cephx0 ^& s% }4 g; a8 z+ m5 j( r
[mon], z4 M- I0 z  w0 p/ ]) g' h
mon osd full ratio = .90" C8 I8 z2 j* i7 q! |
mon data = /var/lib/ceph/mon/mon$id
/ `: \* k* R% G! z' bmon osd nearfull ratio = .75
5 r' \& G. K+ }$ t& t- ?$ Hmon clock drift allowed = .200
; W7 i1 C3 ]9 q2 e! r2 \7 E( Wmon osd allow primary affinity = true
) [( \$ |& y7 k5 ~$ n[mon.0]
, Y* a; E* }& {; Ghost = cloud-node1- {0 v: \2 D5 T* a- C
mon addr = 192.168.8.102:67896 a: \/ \2 F6 M/ J( F
[mon.1]( ?* C& P0 ]' i. o4 X
host = cloud-node2
/ u* r: ~, u) b9 H: @6 Zmon addr = 192.168.8.103:6789$ Y. W- N. l: a3 u
[mon.2]) F8 A9 D6 n1 \  G9 U, b5 ]
host = cloud-node3
* K7 }- K2 [/ A1 ]mon addr = 192.168.8.104:67897 c/ U2 r- C; [2 m
[osd]/ @8 Z! d$ p8 _8 ~! @" b
osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog
) D$ K( w; ]& v+ K$ Uosd crush update on start = false: N! }; E' W* P. @" [" S2 F9 O( f
filestore xattr use omap = true* H2 i* Z2 ?( i
#keyring = /etc/ceph/keyring.$name( {9 s$ p/ k! |9 ]# h6 [  G4 P
osd mkfs type = xfs$ C% N! s  b' ]2 ?2 b& Z! M
osd data = /var/lib/ceph/osd/osd$id$ o2 L" _: ?2 N" \
osd heartbeat interval = 10
" ^# k) o' m9 J' F" k8 Z+ fosd heartbeat grace = 10
) f6 [+ L2 e4 N( x5 sosd mkfs options xfs = -f
% d+ i( O7 J. N6 W# V% S5 qosd journal size = 0
# I8 l: |1 }" ]+ j% z1 a[osd.0]
) F) _! p& g. qosd journal = /dev/sdb1
+ u. m9 e  x/ E' p: ?6 ]devs = /dev/sdb2
2 |  S5 Q  g+ H+ d" s- xhost = cloud-node19 e% V9 r' k! n: ^' \4 E$ h! F
cluster addr = 192.168.8.102
2 y3 s- Z$ R  v0 tpublic addr = 192.168.8.102
0 J4 G& T  ]) Y[osd.1]
) I- Z7 P" N5 h! o0 O: f9 Tosd journal = /dev/sdb1
" k7 E3 W! u( Idevs = /dev/sdb2
* j) O3 l: C  l/ n! k/ D: Y* }. Zhost = cloud-node2
0 a. n: p) x2 a, O/ a# lcluster addr = 192.168.8.103
1 v  f% U, K3 [" ]1 hpublic addr = 192.168.8.103
( B9 \) F7 c  c* ^! r. d[osd.2]
  _5 V8 [3 `: o5 b$ b! W  vosd journal = /dev/sdb1
: q8 N- \$ z7 K! S8 mdevs = /dev/sdb2, \; z" w2 ^8 x/ J
host = cloud-node3
6 g' v# {& `5 Y, Qcluster addr = 192.168.8.104
0 N& T8 U, w7 D  d  upublic addr = 192.168.8.104! H. \7 u, E. n6 c4 x
[client.cinder]8 }) Y4 {5 z' C& K* h2 f8 a& v: }' T
keyring=/etc/ceph/ceph.client.cinder.keyring
' z" V0 o4 j# [4 m2 R- N' P5 f( e* r0 Q6 @* \" |& @
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 00:08 , Processed in 0.020476 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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