找回密码
 注册
查看: 3143|回复: 1

ceph集群与openstack对接

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2021-7-19 11:06:38 | 显示全部楼层 |阅读模式

创建cinder并设置权限

[root@controller ceph]# 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'

设置密钥

[root@controller ceph]# ceph auth get-or-create client.cinder | tee /etc/ceph/ceph.client.cinder.keyring
  \$ R+ X# m# Z: C2 F( l7 Z' C) V; Y7 D
#传送密钥到computer, L7 K% f6 Z, r. o: D- M
: M' S, H8 ?) T, U; d- J- G
[root@controller ~]# ceph auth get-key client.cinder > client.cinder.key, k$ q0 ~3 X! Y  N4 r' [. l

5 ~3 e$ s! h2 X' y0 u/ ~2 u[root@controller ~]# scp client.cinder.key computer:/root/3 t- w3 R7 `* Y
! t3 D1 _5 V( y
#修改权限1 F$ X  s- H" b2 e8 P+ h: U: N
, w. u$ D+ F/ G6 O" S7 N2 k
[root@controller ceph]# chown  cinder.cinder /etc/ceph/ceph.client.cinder.keyring
6 n# D8 A9 Z/ [" T

设置密钥

#computer生成uuid# k" q) d) u8 n, h- F1 T2 o
4 d3 p7 ?( r0 s$ l7 t, M
[root@computer ~]#uuidgen
  l1 f' Z3 t( H# n$ E/ m# q+ d2 r9 ~: K' U" n2 E
1fad1f90-63fb-4c15-bfc3-366c6559c1fe #创建密钥文件
3 C/ V! y8 h5 E' w# Q9 j# U$ B& Z2 z
[root@computer ~]# vi secret.xml
3 q( X5 x& u+ y) C! j  1fad1f90-63fb-4c15-bfc3-366c6559c1fe   client.cinder secret$ u/ M4 p4 t7 ]$ b

* D& c$ N9 I9 J3 u& H1 b

/ W( o" q3 e7 |" s#定义密钥6 T) |4 c( A( D
virsh secret-define --file secret.xml
! {. |8 N' ~& `' M- j
3 o8 l) k! e2 _6 R
' w! [3 \1 p( O! D+ F
#设置密钥1 |+ E0 o4 x/ R& F8 D0 w: r6 j. ]! z1 k

& E6 ?+ b' a( ]) R
" w$ F. X2 l* u) v; Z  Z8 A
virsh secret-set-value --secret 1fad1f90-63fb-4c15-bfc3-366c6559c1fe  --base64 $(cat client.cinder.key) && rm -rf client.cinder.key secret.xml
) h& i& W% N: ?0 b! _4 u  V6 C+ `- u. o  n3 X; L# k' n9 Y2 t

; J* x0 D0 z0 v. C' g) u% N设置对接cinder模块5 y" d4 c* B, m" C

修改配置文件

[root@controller ~]# vi /etc/cinder/cinder.conf, d& Q3 F& U- ]- E
" R" t) `$ w8 F0 [3 v# f: ~
[default]+ L3 r3 g  c+ o5 J

1 A" C+ B2 v% }) C/ frpc_backend = rabbit
% Z. V' w5 {; j  B. L& d4 u. N/ @& `# a6 ^$ b
auth_strategy = keystone
. [' G) ?( `! Y' I. J5 x$ ?6 a. i, X- f# L+ @5 Y; z% x4 i  o
my_ip = 192.168.8.65& K+ q* Z0 C/ W8 a( A/ Y9 b4 ?

+ M* ~+ ?/ X4 l' q8 a4 c4 |! Venabled_backends = ceph-1
$ I0 V) Z; N1 j$ r* |+ F" L8 I! B5 `) u+ D( x' A
[ceph-1]
9 {0 r" I* c3 I( m7 Z
/ \+ B" e; {, M' W4 w% qdefault_volume_type= ceph-1+ A) e- i- q0 E- X) H/ w

( _0 i9 f1 U6 m7 v8 ^glance_api_version = 2  
/ A; [8 W; P  a, T6 l: }( {" X
7 X7 U5 o7 j* cvolume_driver = cinder.volume.drivers.rbd.RBDDriver9 W" S2 d2 r: }" J

$ y: W) I5 Y2 s6 avolume_backend_name = ceph-1$ F! S, x# w3 {
# P3 t& t. B& w# s
rbd_pool = volumes
. m. p8 R! `! t+ Z# p0 B) ], W$ I' g, N
rbd_ceph_conf = /etc/ceph/ceph.conf
& |2 u7 _! M( _, V! _6 l6 g9 Y3 a5 h. f% U% N" a
rbd_flatten_volume_from_snapshot = false
. y0 v0 i5 r1 K- C$ v, f3 b8 f9 O
# d6 S+ B2 Y% I' j+ L. z# [: xrbd_max_clone_depth = 5
% \1 q/ C+ r1 ?8 j, N) f( J" E) }
( t9 T0 V- A# grbd_store_chunk_size = 4$ r/ c5 Q: {9 I1 x% W& O

: J, T( l1 F: a& R/ e* c0 mrados_connect_timeout = -1
0 ^1 O/ E+ ]. R( g' B
: ^8 s8 Z. O! l) H  [5 v! S7 w  \rbd_user = cinder  d5 c7 o& v7 Q) |2 |  S

5 U8 }4 p2 B7 i* N#对应computer创建的uuid0 c( K  D/ y  [8 ~& e: K1 `& b
- U# Z5 c6 K+ a# D, ?
rbd_secret_uuid = 1fad1f90-63fb-4c15-bfc3-366c6559c1fe 4 ?$ P+ F1 T: ]9 n& y0 |& C

同步数据库

#若已经有数据库,对数据库进行删除并重新创建和同步( ~0 G# V/ E) e0 y) }
5 S7 j4 G% Y$ c+ Y/ W' I, ?. K
[root@controller ~]# su -s /bin/sh -c "cinder-manage db sync" cinder& b- s7 \; u% i2 H2 X" i( U

重启服务

[root@controller ~]# systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service openstack-cinder-volume.service

设置ceph的类型和存储类型

[root@controller ~]# source admin-openrc
0 v( |. T2 J" q+ i5 R0 \: k7 B5 f9 u; B" o- N3 B  J2 w3 e+ A
[root@controller ~]# cinder type-create  ceph-10 ^: H' p9 o0 D6 s, d+ R. |& j

# N- {. d5 _0 g! d& a9 Z[root@controller ~]# cinder type-key ceph set volume_backend_name=ceph-1
6 X' c( f4 X) C+ N' x' `( a6 }5 X0 k% t: ?, v2 [; G
对接nova-compute模块/ N0 o0 U$ ]; O6 X2 i

computer结点修改配置文件

[root@computer ~]# vi /etc.nova/nova.conf
: s+ j, A# Q4 t. Y) Y/ s7 R% F7 ^1 [# ?. O0 T' x) }6 B
[libvirt]# ~1 R% D1 t4 H+ f4 M+ ]( m  n

+ V, E2 |! `9 z: g! Yvirt_type = qemu
8 d" D4 ~2 O6 _6 T7 }, {
; `1 p& H5 A! |& zinject_password = true
. K3 B) N# a# Z: @/ H! a$ B
! [+ H+ `# ~- D$ E6 I) i. sinject_partition = -1
$ Y# ]5 D1 i1 F) F# h
2 d, e7 _$ p7 M; |. m1 I# iimages_type = rbd
% g# m! w. q. A! n2 |! D
2 W+ N- {. J0 H& M9 @, Vimages_rbd_pool = vms6 g( ]* C( |/ \7 ^; x2 E+ `
* T  i2 T0 I# a2 Z; p1 v1 ]  d
images_rbd_ceph_conf = /etc/ceph/ceph.conf% U# J, x7 k" `& r

3 V0 q1 }0 Z+ {1 P: vrbd_user = cinder
/ r& t3 i1 x6 K$ F
5 U, }, |- w5 h# Z/ v! ]rbd_secret_uuid = 1fad1f90-63fb-4c15-bfc3-366c6559c1fe
' P( S3 r$ J4 q- t4 |1 G* S, y& J# e  B/ v/ [
disk_cachemodes = "network=writeback"& D" S* h/ r; B: x

. D) ~2 m& U; o% vlive_migration_flag = "VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST,VIR_MIGRATE_TUNNELLED"
6 }& ]. n0 Q  n  ]  l2 _7 v% @3 R
3 T2 Q" n. M  P3 ?3 \# p7 Ahw_disk_discard = unmap  
4 y" t4 g4 t9 _2 T* ^9 u; }( O. w8 k/ n; z
[root@computer ~]# vi /etc/ceph/ceph.conf
$ y1 z% F7 d  v. U
* x5 \6 ^" Q; J[client]! g4 R( U/ i* P" C( h" [3 J
0 L9 Z2 D( e' K0 b+ y$ H# P
rbd cache=true
4 ~# X* \! Q" ^0 g* Y" }4 K; L4 ?  K
0 B1 C) W0 I8 [9 Z: {0 l2 \4 h8 t7 qrbd cache writethrough until flush=true$ t# C2 a8 j( ]  F( {: a5 i
! j" c( Q) P4 c) v
admin socket = /var/run/ceph/guests/$cluster-$type.$id.$pid.$cctid.asok
' p9 m7 g; f! V. N3 i+ u" M% `4 l
. z4 x7 P+ q- ~5 L& h: E- olog file = /var/log/qemu/qemu-guest-$pid.log2 C2 w+ L2 q4 @- W& ~& T% I
& N% Z! e  j  G& U/ d# e# L- A' @
rbd concurrent management ops = 20
$ n) L' b' c: u7 k, r

创建日志目录

[root@computer ~]# mkdir -p /var/run/ceph/guests/ /var/log/qemu/' B( l0 X, O) q2 M5 ?, h
/ P( N* p+ E; ?6 Y0 f7 B
[root@computer ~]# chown 777 -R /var/run/ceph/guests/ /var/log/qemu/
, W. z1 `% U+ |" C; I: H& u6 m

controller下发密钥

[root@controller ~]# cd /etc/ceph# ^0 \0 {  q3 i2 r! |

) s0 j2 ]6 H- L[root@controller ~]# scp ceph.client.cinder.keyring root@compute01:/etc/ceph
8 \( O% e" s1 M  R

重启服务

[root@computer ~]# systemctl stop libvirtd openstack-nova-compute
& b3 [1 Q7 A) y  a! a3 M
$ ]% p4 @) w$ r6 v% Z1 a- h# _[root@computer ~]# systemctl start libvirtd openstack-nova-compute- F& A: \, f& K0 i: I
; U7 C5 H; L5 y1 j  Q9 q
& T4 ^! L4 ~- h( w( j$ f

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2021-7-19 11:13:12 | 显示全部楼层
创建cinder并设置权限
* L3 ?0 U) E5 [5 q4 e3 B" I
4 o% Y2 e4 s( v* Z[root@controller ceph]# 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'9 M; G( U% |2 E' W; H' o7 [6 M
设置密钥
6 s6 I' A. u  \& E7 c5 l2 |' Z; N, F, K5 K, T3 {
[root@controller ceph]# ceph auth get-or-create client.cinder | tee /etc/ceph/ceph.client.cinder.keyring
  O$ Q  m6 A# a& @0 i7 O8 R. B; U' f/ N
#传送密钥到computer
/ w7 b* _, m  [1 C! L! z& t[root@controller ~]# ceph auth get-key client.cinder > client.cinder.key4 i) p4 D" h4 _
[root@controller ~]# scp client.cinder.key computer:/root/" b+ e; g5 T/ O' t. T( H% B9 s
# Y, U+ C: A8 _' K1 f
#修改权限
2 X) c6 F4 }$ h( `; H$ h4 |[root@controller ceph]# chown  cinder.cinder /etc/ceph/ceph.client.cinder.keyring8 w' c; _3 }( P/ O! q1 _3 L
设置密钥% F2 c6 q4 s# B8 K- ~& X* \

' ?' M+ ^7 s; c# e#computer生成uuid
3 L: V$ E$ @- A+ f/ g9 ][root@computer ~]#uuidgen
" o, H9 \- y' u2 o9 a: k1fad1f90-63fb-4c15-bfc3-366c6559c1fe ) }8 d/ {3 [) g# @8 O! j

3 T$ r! b; J0 k" d#创建密钥文件
5 a3 U* F5 L( \' s! E6 I* Z; i[root@computer ~]# vi secret.xml9 C) k7 ^* d  q
  1fad1f90-63fb-4c15-bfc3-366c6559c1fe   client.cinder secret
: ]" F; _* D( X! c" _2 L6 N; @#定义密钥6 C  t" \+ x$ ]6 g6 {% i, L
virsh secret-define --file secret.xml
/ M# _+ r. O4 s1 A5 U0 P1 j! m8 e+ t$ `) E! X( M3 }$ a) Z
#设置密钥
# O1 P" x5 H! E# G  Q; O# p0 cvirsh secret-set-value --secret 1fad1f90-63fb-4c15-bfc3-366c6559c1fe  --base64 $(cat client.cinder.key) && rm -rf client.cinder.key secret.xml4 _. |) t% @  N' X$ m5 v* y
设置对接cinder模块
% C4 G& C- \2 ?8 H9 \1 T- X修改配置文件
& B1 A6 s: z  Y6 O: n0 r/ L- z8 C( Z6 b' V5 H) n3 {
[root@controller ~]# vi /etc/cinder/cinder.conf! X0 E1 C5 O" ]" U( z$ X9 P2 w4 P/ q
[default]
! Z  E9 a* [8 `6 C: Wrpc_backend = rabbit
8 ~: R. P7 g: N; Zauth_strategy = keystone
2 h. C5 H2 N( r, L; {, U4 S( }my_ip = 192.168.29.1486 t; ?8 b. {2 n, K) a
enabled_backends = ceph
6 R# \* n5 ~5 Y4 {3 ~; V& ]! I9 d# a
[ceph]
: k: ?8 f7 l1 e7 R6 v2 C/ @default_volume_type= ceph0 P3 z& _  U9 O8 U* R# o7 z
glance_api_version = 2  . H+ q& \% w! P& |$ v
volume_driver = cinder.volume.drivers.rbd.RBDDriver
" y+ E& {% q# @+ Vvolume_backend_name = ceph& e% J9 b# P, Q5 e# s
rbd_pool = volumes* Q* j. q' W7 x9 X- @
rbd_ceph_conf = /etc/ceph/ceph.conf/ n* @4 d# R/ Y( B  p: i/ e
rbd_flatten_volume_from_snapshot = false0 I0 \( [0 d. d
rbd_max_clone_depth = 5
, V' ]/ |. e) x, B4 W/ T+ }/ g' drbd_store_chunk_size = 4( w4 M: c: t1 w# p2 \
rados_connect_timeout = -1/ k! }+ y, _5 L) ~2 l, {
rbd_user = cinder
$ m. c. r# D6 u$ y  ^9 V  O0 i#对应computer创建的uuid4 e' H7 y: o7 S/ v  ]# [
rbd_secret_uuid = 1fad1f90-63fb-4c15-bfc3-366c6559c1fe * o, g/ ]1 i6 g, l3 L# Y
同步数据库
1 V1 J# T% ^6 U7 X! ^5 ?8 d! E0 c/ F1 ?, b: x
#若已经有数据库,对数据库进行删除并重新创建和同步
, `$ N: W2 ~, B! z[root@controller ~]# su -s /bin/sh -c "cinder-manage db sync" cinder" U# d0 E$ V: P1 b/ G2 d
重启服务
! G9 }; b1 Z! n: p( C8 }2 p4 Z6 r. e5 H* z% r
[root@controller ~]# systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service openstack-cinder-volume.service
8 B1 N  N, v; ]6 m& B设置ceph的类型和存储类型3 L- Z. t6 _" g0 l6 n7 L

, @1 C: ^! y* t! O5 S[root@controller ~]# source admin-openrc
( Z* ^3 ~0 I( Z+ P; v; S[root@controller ~]# cinder type-create  ceph
/ b' G. L1 A- o( x( h[root@controller ~]# cinder type-key ceph set volume_backend_name=ceph3 K: y- F# @. P7 C) D
对接nova-compute模块
# L2 d8 _  F7 f4 X* O: g1 h# k0 dcomputer结点修改配置文件4 s/ ?- k: E  e) D3 m2 U
2 D* K& Z3 x% k/ b2 i  X
[root@computer ~]# vi /etc.nova/nova.conf
- `! Y" |/ S9 l: ~' y" P  P[libvirt]
% C$ Z6 |% i9 o( x2 o; v3 V- Yvirt_type = qemu* N! M; O  G6 j# Z4 \6 q$ _: ]: B
inject_password = true# ^5 X9 C; U! m1 Q4 \
inject_partition = -13 e( q3 }# {7 t" W/ c* \9 Y! S
images_type = rbd
- y; T$ Z# U' G* `0 T: {images_rbd_pool = vms
5 n0 b+ O: n) ]( Bimages_rbd_ceph_conf = /etc/ceph/ceph.conf: ], F# i* b, ^3 w
rbd_user = cinder
, i4 I# x+ B& ]8 {rbd_secret_uuid = 1fad1f90-63fb-4c15-bfc3-366c6559c1fe: s  i; w1 f9 `0 A% W
disk_cachemodes = "network=writeback"
5 Z1 S* b0 _4 e6 Z+ S7 Z; Ylive_migration_flag = "VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST,VIR_MIGRATE_TUNNELLED"
1 `, T. y  L- ]6 H% f8 J; `7 B; Vhw_disk_discard = unmap( q' _) Y( m7 d
[root@computer ~]# vi /etc/ceph/ceph.conf 8 k7 T- o, d7 z* M3 g! G2 F3 R2 C
[client]0 s5 ^/ X& Q1 p5 M5 t9 o) S6 Z
rbd cache=true2 X0 }+ {6 o9 L) P5 p& q# G8 B
rbd cache writethrough until flush=true
$ v; \2 `2 D8 b, a+ u% F( Q1 K( f# f# sadmin socket = /var/run/ceph/guests/$cluster-$type.$id.$pid.$cctid.asok
! J1 i/ v0 @. A. d1 i' D, S9 llog file = /var/log/qemu/qemu-guest-$pid.log1 W, D& C$ j. E* C7 `. `
rbd concurrent management ops = 20" y6 M& a' g% x6 G! H" x
创建日志目录# B: M+ r9 T$ n. p/ ?- K

) N5 f4 s% _: H4 `4 ][root@computer ~]# mkdir -p /var/run/ceph/guests/ /var/log/qemu/
7 V. P0 N) L. e[root@computer ~]# chown 777 -R /var/run/ceph/guests/ /var/log/qemu/, r3 t. }/ m& u3 p( i
controller下发密钥
, c0 K! K- l2 {7 C8 Z) Y% r' B. p+ h9 Q! S7 j: h$ v0 K% m
[root@controller ~]# cd /etc/ceph
# z5 Z) {- |5 O0 p* g( A[root@controller ~]# scp ceph.client.cinder.keyring root@computer:/etc/ceph. y$ n6 p, o4 p0 i# I/ Z0 o
重启服务
( u  z& U  X- t5 N& p' T3 G: K* G3 v) P9 L) V1 `) X) C2 V
[root@computer ~]# systemctl stop libvirtd openstack-nova-compute! J4 x) N' ?- Z, R! }
[root@computer ~]# systemctl start libvirtd openstack-nova-compute
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 03:22 , Processed in 0.017302 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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