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

Centos7.4 安装Ceph luminous版本配置

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2018-9-26 09:19:38 | 显示全部楼层 |阅读模式
#环境准备
) Z: L* W$ \) G: F: u$ }#升级内核# c. m1 w# A4 z% \, a8 b1 F1 E/ c
#官网说明 http://docs.ceph.com/docs/master/start/os-recommendations/#linux-kernel
' [0 S2 Y6 \# V3 K/ W2 _7 z#CentOS7 升级内核% m# x  S; X* Y* W, B
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
$ r: W4 d* S- ^9 W( f" ]0 krpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
# h- Y4 |6 A) r8 S#安装kernel最新稳定版. I! m% w9 L: R3 I1 F3 m) O5 ]
yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt -y3 |6 s% A: Q7 [7 j  }
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg #查看启动项) }( o6 d$ q" v+ [
grub2-set-default 0 #设置第一行为默认启动/ G+ X$ }. E8 A2 n& s$ L
rpm -e elrepo-release #删除源
0 G( X- L  I  a" d, Zreboot
8 j  n0 V% J' A! k' e#uname -r #重启后查看内核
4 O) j" _# K$ H3 h1 `( f' k$ T#4.18.98-1.el7.elrepo.x86_64* D- o2 \# P" j) Y# n% `5 m
###########################
! Y9 V  r4 z3 d; }% r6 r2 O, G
! Z- R5 S4 ~; ~1 |( ?! l8 Q" H
1 l& K: I3 M. r- N& r6 lecho '[ceph]2 m+ P* X& V$ c! m: Y+ p
name=ceph
3 Q$ G8 m- ^- o; C) N2 fbaseurl=http://mirrors.cn99.com/ceph/rpm-luminous/el7/x86_64/
* w" [7 M* e8 ogpgcheck=0% `9 j% g" T$ H+ c9 N( W" K
[ceph-noarch]" V0 L* O: M+ F0 e
name=cephnoarch
' G: F9 ]# C; a0 hbaseurl=http://mirrors.cn99.com/ceph/rpm-luminous/el7/noarch/+ \( w# E" ^3 R
gpgcheck=0
* h- v6 y1 N( \" w6 \[ceph-source]
8 Z7 X" C1 {+ G- m# O" C* {: T/ S; Xname=ceph-source
9 k, b' ]" p1 x/ ]8 ^% a2 c+ Mbaseurl=http://mirrors.cn99.com/ceph/rpm-luminous/el7/SRPMS/; u7 s8 X, l' ?
gpgcheck=0; W* @' g7 F( @8 O! N$ x. I
'>/etc/yum.repos.d/ceph.repo
/ A. I$ n  C6 A( ?yum clean all && yum makecache #生成缓存
4 l7 D1 F9 X* o( y4 d: h7 U0 c#关闭selinux、防火墙
- _5 c+ ~% L7 x, Ksystemctl stop firewalld.service
6 e1 n3 H" x7 Jsystemctl disable firewalld.service7 k: P+ c& n; e$ M' k$ S
firewall-cmd --state" W# M1 H$ L3 v  L3 [, t
sed -i '/^SELINUX=.*/c SELINUX=disabled' /etc/selinux/config
2 ]/ m, k" r2 ]sed -i 's/^SELINUXTYPE=.*/SELINUXTYPE=disabled/g' /etc/selinux/config# a1 W$ C  E. g
grep --color=auto '^SELINUX' /etc/selinux/config
1 \& o3 C' E# U1 esetenforce 0
9 H4 B6 y3 O1 J#时间同步
2 d: [: K  ], ~% v  S  a. Y  C[[ -f /usr/sbin/ntpdate ]] || { echo "install ntp";yum install ntp -y &> /dev/null; }   #若没NTP则安装' w- `/ y1 b4 G4 Z
/usr/sbin/ntpdate ntp6.aliyun.com
! Y$ t, r) l" j' M8 e- e* T5 qecho "*/3 * * * * /usr/sbin/ntpdate ntp6.aliyun.com  &> /dev/null" > /tmp/crontab
: M  m; x4 {' Ccrontab /tmp/crontab
+ G* ]7 ?" ?" o5 l3 z###########################
5 _8 R& P+ f; g6 S#网络
, I; b: `  M$ m  J3 h& B4 y# #外网规划+ d! l0 j+ r/ p5 u
# 192.168.0.51 ceph1) n5 `9 A/ o, g9 {
#内网规划,写入hosts
0 ?5 `: T' T6 g; O6 D2 F9 {echo '#ceph( P7 D" p9 i5 T  ^5 \" n; A, x) Y6 h
192.168.90.101 ceph1
- p4 Q3 r5 ~1 _% a; Y192.168.90.102 ceph2  b9 o2 p% w7 k' _. I! _
192.168.90.103 ceph3
5 Z* t$ E: p2 k% n. s0 \192.168.90.104 ceph4
! E) v6 X2 w. N' j" l8 c'>>/etc/hosts4 R" i6 }  N, v: f3 H
, [2 a7 m; _  x
  x/ D) O+ ]# x2 D7 c
#磁盘(添加2快磁盘)
, f$ X5 r2 A2 _# [root@ceph01 ~]# lsblk, ^. e- c" {% L  p$ `3 j
# NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT6 }( E# n! E1 q# B& g
# sdb      8:16   0  100G  0 disk
& J2 P; U2 Z+ Z3 n: F- r# sdc      8:32   0  100G  0 disk
1 k& W% I! x9 k6 b$ V& A% V" C2 `( z
#ceph安装配置* b' T7 F) K& @+ t' y* k, g7 q: H
###########################
0 Q* [$ ^& p! ], y#全部在ceph1操作7 K  _6 o( Y4 F$ _
# #Ceph节点简介
1 `. C" D- g) f# Mon(Montior)监控节点0 |! @  V; s& A) q
# OSD(Object Storage Device)存储节点
" w6 x) k% z0 w* M; ?- K# MDS(Meta Data Server),Ceph作文件系统用到,本实例不配置
, c4 F4 B* E; D$ s9 o) j#ceph01作为部署节点
$ p* g( e+ R1 }5 h#ceph1 ceph2 ceph3作为Mon( \( D! x3 A7 R$ [, i# d1 [
#ceph2 ceph3 ceph4作为OSD7 A' p5 L- ], W3 h
#ssh免密验证# n; Y/ Y/ L+ N
所有节点执行:; }% O0 E3 [6 l% s
yum install -y sshpass
) ^$ }6 t# Y1 c2 A8 @rm -rf ~/.ssh7 ~" G# O/ k7 L# s% M: D6 N: E# h
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
, N, K: y( \3 |3 V: ysshpass -p '123456' ssh-copy-id -o StrictHostKeyChecking=no -i /root/.ssh/id_rsa -p 22 root@ceph1  M7 m2 v) q5 E' e1 A9 F
sshpass -p '123456' ssh-copy-id -o StrictHostKeyChecking=no -i /root/.ssh/id_rsa -p 22 root@ceph2/ o" C! y) W0 J6 z  n
sshpass -p '123456' ssh-copy-id -o StrictHostKeyChecking=no -i /root/.ssh/id_rsa -p 22 root@ceph3: h) x( d! f( ]0 b& x( C
sshpass -p '123456' ssh-copy-id -o StrictHostKeyChecking=no -i /root/.ssh/id_rsa -p 22 root@ceph4
; m) g$ C& O# C6 o2 H#以下在 ceph1节点执行4 e, y: T9 h2 ^2 K
#ceph1 安装ceph-deploy配置工具$ d4 |$ v4 a+ A( U! W, K5 R+ B8 m6 _
yum install -y ceph-deploy& O9 u! V8 t* c; ]5 y3 K" H6 H
#创建配置目录
, b7 t9 u$ B% L4 m' Dmkdir /etc/ceph
* K) n0 r$ h" l; }cd /etc/ceph/% u0 P  C+ @7 k) n! l" o( k9 s: e% k
#初始化Mon配置
. ]& B4 |& @. c4 r1 w0 @ceph-deploy new ceph{1,2,3}7 D% G: x6 j. {, ^6 R
#ceph-deploy new --cluster-network 192.168.90.0/24 --public-network 192.168.13.0/24 ceph{1,2,3}
- T/ I+ Q+ u. u5 Y- ]# #修改冗余份数为2,日志大小2G
7 T$ ]6 Y0 \- v: Q- d1 r# #配置网络,单网卡忽略! }# j/ [6 o" K2 u. ~% _# I+ X
echo '
3 v; \. ]7 ]4 F4 e- F# [' opublic network = 192.168.0.0/241 D& w+ S5 M' _$ _8 ?, p
cluster network = 192.168.1.0/24# ]" i7 p  o/ x, t' Z
mon_clock_drift_allowed = 2   
. v% c- Q$ S1 X5 X# W* T* F& iosd_journal_size = 4086
9 R7 z. H7 |: S: ?osd_pool_default_pg_num = 1282 |1 h$ t2 V$ J& B% @
osd_pool_default_pgp_num = 128/ O7 {0 ?: J$ B" r* E: ]
osd pool default size = 2
* Y$ l" x" w# e* M8 {1 e8 tosd pool default min size = 1
' l! d! P$ ^& B3 g+ V/ u; h8 Hrbd_default_features = 1
. H0 o) p5 w2 c; Iclient_quota = true$ h) [5 E$ j: Y/ J1 K6 m, o
'>>./ceph.conf: ?& x9 f, d* |" [- z. R
#安装Ceph
" t" ~9 b" Q0 T" N  ~ceph-deploy install ceph1 ceph2 ceph3 ceph4
, S& }& Y7 B( U5 N#yum install -y ceph ceph-radosgw #实际上是安装这2个rpm5 I2 z  Z- s! U
#初始化monitor和key
! g! w6 u5 Y% n% G  r; ucd /etc/ceph/
5 I  i4 ]. ~& @6 o5 r: S7 Gceph-deploy --overwrite-conf mon create-initial* K; [- Z' x+ }  v  f
#创建存储节点(使用sdb,sdc磁盘)
8 \6 W1 `: Y- E, ]( \! {#lsblk #查看磁盘
" F1 {5 W% d/ w7 v# ~, k: h8 [#创建osd, W7 C8 x5 q6 {+ S- A/ W
ceph-deploy osd create --data /dev/sdb ceph2
0 Y; U' G3 g# _, a* `ceph-deploy osd create --data /dev/sdb ceph3. p7 I4 Y, X5 ?) a
ceph-deploy osd create --data /dev/sdb ceph4
% _, ^' ^+ Z2 J0 i" z  d7 K3 p" gceph-deploy osd create --data /dev/sdc ceph2, s% x1 k" c( |8 A3 A( u% [/ f
ceph-deploy osd create --data /dev/sdc ceph3' H' }# N& T* c& G2 ~
ceph-deploy osd create --data /dev/sdc ceph4. z8 T1 i: z) J5 X2 l7 S$ f7 h3 N1 c
#拷贝配置及密钥0 `' d  [3 b: o4 s
ceph-deploy admin ceph1 ceph2 ceph3 ceph4
; b' k. ^- `- jchmod 644 /etc/ceph/ceph.client.admin.keyring
6 W3 ]6 w! f6 @7 l: g; ~3 K' a+ Y4 ~#创建mon4 A; L) j5 b% K( P1 S
ceph-deploy --overwrite-conf mon create ceph1
* f$ N# X5 O) Y/ o( r$ `ceph-deploy --overwrite-conf admin ceph1. s6 P* v6 |! o) a, B! ~
ceph-deploy --overwrite-conf mon create ceph2
/ y3 G7 @" [% W5 d3 B2 Y/ Jceph-deploy --overwrite-conf admin ceph28 u7 J( K' e/ ^5 S+ q
ceph-deploy --overwrite-conf mon create ceph3  Q( K, Z! _/ n% @, D
ceph-deploy --overwrite-conf admin ceph3
% |* x* z6 k# L  H+ K( ?- y#添加mgr: u+ E8 Z0 N8 p8 j
#ceph 12开始,monitor必须添加mgr2 L9 E- s, G% p; q) C4 M3 v9 e
ceph-deploy mgr create ceph{1,2,3}:mon_mgr/ a: I; }/ ?4 v% s  g4 U  G
#ceph-deploy mgr create ceph1:mon_mgr ceph2:mon_mgr ceph3:mon_mgr
+ o% K. e" y4 ~1 S; U#启用dashboard (在mon节点)5 Y( M' B- u; a) B7 l
ceph mgr module enable dashboard
# r2 c+ \9 V* A- a7 \3 u#http://ip:7000 访问dashboard
* x- ?# v3 Z' L, g2 Z2 f7 vnetstat -antp|grep 70007 j  N+ V& U2 _
# 设置dashboard的ip和端口
( h- a9 R: V! ?" u# ceph config-key put mgr/dashboard/server_addr 192.168.0.196  #vip地址
6 P  G4 z! r! L. P' ]# ceph config-key put mgr/dashboard/server_port 7000
' q5 i( h+ W! u, Z+ r# I# k2 r! |# systemctl restart ceph-mgr@ceph1& N6 a. ~9 x; }7 D2 j
###########################! w6 r( v! X# L8 F/ D3 \
#查看相关命令
1 e& {# t! R, Q+ ~, Y; Cceph health
5 n4 s$ p# I* @0 Q5 d( Fceph -s
& c9 a/ w8 y" i1 u3 t) h4 @ceph osd tree
$ }, E; ~6 d" q- z9 B* X& y' B6 bceph df
) X% q+ x, |/ n" Q2 D3 {+ ?1 L" Oceph mon stat
8 [+ ^* ?2 l5 |4 N6 P* Zceph osd stat4 H/ y6 L& @5 r
ceph pg stat( ^4 Y2 G; S% A
ceph osd lspools3 ^' o; k2 t* p7 U7 j
ceph auth list
8 U% R8 I6 T# ]$ H% h( M###########################" s6 m, q% R% s+ }+ c
#参考
% @. U% b1 k7 khttps://segmentfault.com/a/1190000011581513" t- `6 @) s: b( p
http://blog.csdn.net/wylfengyujiancheng/article/details/78461801
! ]' f, F: F1 |. P7 ~( ihttps://segmentfault.com/a/1190000011589519
1 l% _3 m2 A5 o3 Zhttps://www.cnblogs.com/netmouser/p/6876846.html- O& ?+ c. ]. Y( G) b. k7 K
#中文 文档
6 a' T% h0 y0 i4 Y( `3 V% Fhttp://docs.ceph.org.cn/man/8/ceph-deploy/4 ?$ d+ M! ^- L& L7 L
#ceph工作原理和安装
; U8 j$ N0 Q: }( Y5 h, L0 F5 d- ahttp://www.jianshu.com/p/25163032f57f
- T) D6 b, ^/ K6 o$ [2 i+ O, J5 {3 x  t9 x

! x- G# N! G- p" p7 X1 s#简单ceph性能测试
' ?+ c9 m+ F) G3 k% `& E#创建测试池mytest
7 P9 Q) Y" t$ f! L$ ~2 fceph osd pool create mytest 128: A: R" x4 K( c3 [3 S* ~
rados lspools- O2 \. |+ N" ?9 @2 w$ r+ t
# ceph osd pool set mytest size 2 #副本为2
1 g9 {( n; r% w# ceph osd pool delete mytest #删除) k* Z$ c5 k' j0 _& @* {

6 d. I- P" p2 Z# \1 r#Rados性能测试(关注 bandwidth带宽,latency延迟)
; [0 G) X  s- u# L6 c, `rados bench -p mytest 10 write --no-cleanup #写测试10秒/ U0 B1 N3 E, m
rados bench -p mytest 10 seq  #顺序读
: r# _0 o$ o6 x  h1 Y, ~rados bench -p mytest 10 rand #随机读6 E- v2 ?: c6 Z& n
rados -p mytest cleanup #清理测试数据
# b8 @0 z* c0 T* Q#rbd块设备测试
- y8 W$ n1 M: y2 \9 X# I4 U' ~1 Urbd create --size 2G mytest/test1 #创建块设备映像test10 T0 B5 a: K0 w1 v* q0 J) s* Z
rbd ls mytest
; c& K3 ~4 H8 yrbd info mytest/test18 _/ _% M0 E2 f+ t5 ?+ j
rbd map mytest/test1   #映射块设备
  _2 _7 U8 L6 H! {+ u: L3 Y#/dev/rbd0
, m; O2 _/ Y* y  [+ x+ P0 e5 q9 G#rbd showmapped         #查看已映射块设备
4 O2 Q1 C! N7 ^6 {; i#挂载' C' U, z  F! `! p( B( h
mkfs.xfs /dev/rbd0
/ [+ D0 v0 O5 q9 f4 zmkdir -p /mnt/ceph
$ M3 C) B% t0 ]' a, Mmount /dev/rbd0 /mnt/ceph/
% Y) [4 X) |- e9 k2 z' Pdf -h /mnt/ceph- A% b( _& p7 M/ I& u
#测试
, L) _2 @1 }) S* S- krbd bench-write mytest/test1
7 t6 C5 O, K4 ?# q#默认参数io 4k,线程数16,总写入1024M, seq顺序写
8 d8 t" j* Z5 P& C7 m
, ?+ B0 R6 K! y  Nrbd unmap mytest/test1 #取消块设备映射. d. V! o. R& X* C4 H" c
rbd rm mytest/test1    #删除块设备映像
/ h1 B3 `, D' |9 B
0 _2 F% s$ A$ j% Q& T/ \$ i
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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