将设为首页浏览此站
开启辅助访问 天气与日历 收藏本站联系我们切换到窄版

易陆发现论坛

 找回密码
 开始注册
查看: 73|回复: 2
收起左侧

ceph 14.2版本手动部署步骤总结

[复制链接]
发表于 2022-8-23 15:09:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?开始注册

x
1 文档描述
此文档描述了ceph 14.2 nautilus (stable)版本,手动部署各个组建的详细步骤。
2 操作环境
Ceph 版本:14.2 nautilus (stable)
3 初始化环境
注意事项:文档中盘符、主机名hostname、ip地址、fsid等请根据实际情况填写
1)配置主机名及静态域名解析
#hostnamectl set-hostname {hostname}
#vim /etc/hosts
ip {hostname}
……
2)关闭防火墙和Selinux
#systemctl stop firewalld.service && systemctl disable firewalld.service
# setenforce 0
#sed -i ‘s/enforcing/disabled/’ /etc/selinux/config
#reboot
3)配置时间同步
#yum install -y chrony
Server端配置:
#vim /etc /chrony.conf
将 server http://0.centos.pool.ntp.org iburst 改成:
server <Server IP> iburst
删除其它几行默认 iburst
去掉这一行的注释并将 IP 信息改成主节点管理 IP 网段:
allow ip网段
去掉这一行的注释:
local stratum 10
# systemctl restart chronyd.service
# systemctl enable chronyd.service
Client端配置:
#vim /etc/chronyd.conf
将 server http://0.centos.pool.ntp.org iburst 改成:
server <Server ip> iburst
# systemctl restart chronyd.service
# systemctl enable chronyd.service
验证配置是否成功:
#chronyc sources
4)免密配置
#ssh-keygen -t rsa (一直回车)
#ssh-copy-id root@{hostname}
以上每个节点执行。
4 本地yum源配置
假设ceph文件存放于/root/ceph-14.2文件夹下;
1)备份系统自带的yum文件
#cd /etc/yum.repo.d/
#mkdir bak
#mv * bak
2)创建ceph.repo文件
#vim ceph.repo,添加如下内容
[base]
name=local-ceph
baseurl=<url>
enabled=1
gpgcheck=0
3)清除缓存
#yum clean all
4)建立新缓存
#yum makecache fast
5 安装ceph
#yum install ceph -y
6 MON部署6.1 创建第一个mon节点
1)创建ceph.conf
#uuidgen  
#vim /etc/ceph/ceph.conf
[global]
fsid = {uuid}    # uuidgen生成集群uuid
mon_initial_members = {hostname}……
mon_host = ip01,ip02……
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
[mon]
mon_clock_drift_allowed = 0.5
mon_clock_drift_warn_backoff = 0.5
mon_pg_warn_max_per_osd = 600
mon_osd_down_out_interval = 900
mon_osd_full_ratio = .85
mon_osd_nearfull_ratio = .75
2)创建mon keyring
#ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'
3)创建client.admin keyring
# ceph-authtool --create-keyring /etc/ceph/ceph.client.admin.keyring --gen-key -n client.admin --cap mon 'allow *' --cap osd 'allow *' --cap mds 'allow *' --cap mgr 'allow *'
4)创建 bootstrap-osd keyring
#ceph-authtool --create-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring --gen-key -n client.bootstrap-osd --cap mon 'profile bootstrap-osd'
5)添加client.admin keyring、 bootstrap-osd keyring至mon keyring中
#ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
#ceph-authtool /tmp/ceph.mon.keyring --import-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring
6)创建monitor map
#monmaptool --create --add {hostname} {IP} --fsid {uuid} /tmp/monmap
7)创建monitor数据目录
#sudo -u ceph mkdir /var/lib/ceph/mon/ceph-{hostname}
8)修改ceph.mon.keyring所属用户和用户组
#chown ceph:ceph /tmp/ceph.mon.keyring
#chown ceph:ceph /tmp/monmap
9)构建monitor守护进程所需的初始数据
#sudo -u ceph ceph-mon --mkfs -i {hostname} --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
10)创建done空文件,表明该mon已创建并可以启动
touch /var/lib/ceph/mon/ceph-{hostname}/done
11)启动mon进程
#systemctl enable ceph-mon@{hostname}
#systemctl start ceph-mon@{hostname}
12)创建upstart空文件,为保证每次重启后该mon进程能正常启动(ubuntu环境下创建)
#touch /var/lib/ceph/mon/ceph-{hostname}/upstart
13)添加mon到集群
#ceph mon add {hostname} IP:6789
6.2 添加mon节点
1)将第一个mon节点生成的配置文件和密钥文件拷贝至本节点
#scp /etc/ceph/* root@{new-hostname}:/etc/ceph/
#scp /var/lib/ceph/bootstrap-osd/ ceph.keyring root@{new-hostname}:/var/lib/ceph/bootstrap-osd/
2)创建monitor数据目录
#ceph mkdir /var/lib/ceph/mon/ceph-{new-hostname}
3) 修改ceph.mon.keyring所属用户和用户组
#chown ceph:ceph /tmp/ceph.mon.keyring
#chown ceph:ceph /tmp/monmap
4) 获取密钥和monmap信息
# ceph auth get mon. -o /tmp/ceph.mon.keyring
# ceph mon getmap -o /tmp/ceph.mon.map
5)初始化mon
#ceph ceph-mon --mkfs -i {new-hostname} \
--monmap /tmp/ceph.mon.map --keyring /tmp/ceph.mon.keyring
6)创建done空文件,表明该mon已创建并可以启动
#touch /var/lib/ceph/mon/ceph-{new-hostname}/done
7)将新的mon节点添加至ceph集群的mon列表
# ceph mon add {new-hostname} IP:6789
8)启动mon进程
#systemctl enable ceph-mon@{hostname}
#systemctl start ceph-mon@{hostname}
9)创建upstart空文件,为保证每次重启后该mon进程能正常启动(ubuntu环境下创建)
#touch /var/lib/ceph/mon/ceph-{hostname}/upstart
注意:新添加mon节点参考上述步骤。
7 OSD部署
#ceph-volume lvm create --data /dev/sd$?
8 MGR管理
ceph-mgr的主要功能是提供外部监测和管理系统的接口。
8.1 配置并启动MGR
1)生成mgr密钥
#ceph auth get-or-create mgr.{hostname} mon 'allow *' osd 'allow *'
2)创建mgr数据目录
#mkdir /var/lib/ceph/mgr/ceph-{hostname}/
3)保存密钥文件
#ceph auth get mgr.{hostname} -o /var/lib/ceph/mgr/ceph-{hostname}/keyring
4)启动mgr
使用 ceph-mgr -i {hostname} 可以对mgr进行启动,例如: ceph-mgr -i ceph1,启动之后通过ceph -s 可以看到mgr active的信息。
8.2 启用并配置dashboard
1)安装mgr-dashboard
# yum install ceph-mgr-dashboard -y
2)修改ceph.conf添加如下配置:
mgr_initial_modules = dashboard
3) mgr提供一个web界面,可以用来显示监控信息。默认是没有启动的,可以通过以下命令启用dashboard
#ceph mgr module enable dashboard
4)生成签名证书,快速访问
#ceph dashboard create-self-signed-cert
5)创建具有管理员角色的用户
ceph dashboard set-login-credentials {username} {password}
6)查看ceph-mgr服务
#ceph mgr services
6)配置完成后,可以通过浏览器使用 https://$IP/7000 的方式进行访问dashboard
9 FS使用9.1 部署MDS
1)为MDS元数据服务器创建一个数据目录
# mkdir -p /var/lib/ceph/mds/ceph-{hostname}
2) 创建MDS用户
# ceph auth get-or-create mds.{hostname} osd "allow rwx" mds "allow" mon "allow profile mds"
3)获取MDS密钥并导入其数据目录
# ceph auth get mds.{hostname} | tee /var/lib/ceph/mds/ceph-{hostname}/keyring
4)启动守护进程
#systemctl restart ceph-mds@{hostname} && systemctl enable ceph-mds@{hostname}
9.2 创建cephfs
1)创建
#ceph osd pool create cephfsdata <pg_num> <pgp_num>
#ceph osd pool create metadata <pg_num> <pgp_num>
#ceph fs new cephfs metadata cephfsdata
2)检查状态
#ceph mds stat
#ceph fs status
9.3 挂载cephfs
1)创建挂载目录
#mkdir /mnt/cephfs
2)查看管理员密钥
密钥存放于ceph.client.admin.keyring内,key值即为密钥
3)使用mount命令挂载
# mount ceph monip:6789/ /mnt/cephfs -o name=admin,secret={secretkey}
4)使用df -Th命令查看挂载情况
10 RGW使用10.1 配置RGW
1)创建RGW数据目录
# mkdir – p /var/lib/ceph/radosgw/ceph-rgw.{hostname}
2)创建 auth认证
#ceph auth get-or-create client.rgw.{hostname} osd "allow rwx" mon "allow rw"
3)获取auth认证密钥
#ceph auth get client.rgw.{hostname} | tee /var/lib/ceph/radosgw/ceph-rgw.{hostname}/keyring
4)修改rgw数据目录所属用户和用户组
chown -R ceph:ceph /var/lib/ceph/radosgw/ceph-rgw.{hostname}
5)创建对象网关所需存储池
# for pools in {.rgw.root,default.rgw.control,default.rgw.meta,default.rgw.log,default.rgw.buckets.index,default.rgw.buckets.data};do ceph osd pool create $pools <pg_num> <pgp_num> ;done
6)启动rgw进程
#systemctl enable ceph-radosgw@rgw.{hostname}
#systemctl start ceph-radosgw@rgw.{hostname}
7)创建s3类型访问用户
#radosgw-admin user create --uid="user" --display-name="First User"
8)创建swift类型访问用户
#radosgw-admin subuser create --uid=user --subuser=user:swift --access=full
10.2 Swift 验证
1)依赖安装
#yum install python-setuptools
#easy_install pip
#pip install --upgrade setuptools
#pip install --upgrade python-swiftclient
2)运行测试命令,注意:红色部分为创建switf用户时产生的swift_keys-->secret_key的值
#swift -A http://IP:<port>/auth/1.0 -U
user:swift -K '244+fz2gSqoHwR3lYtSbIyomyPHf3i7rgSJrF/IA' list
3)返回结果大概如下
my-new-bucket
10.3 S3验证
1)安装依赖库
#yum install python-boto -y
2)创建s3测试脚本,红色部分为创建s3用户产生的keys-->access_key、secret_key的值
vim s3test.py
import boto.s3.connection
access_key = 'K5983B5LRRCJAY3XJZE7'
secret_key = 'ZJQ0DFerteSSinagLNv70EFdEBRf5vFj94q9n8Eo'
conn = boto.connect_s3(
aws_access_key_id=access_key,
aws_secret_access_key=secret_key,
host='ip', port=<port>,
is_secure=False, calling_format=boto.s3.connection.OrdinaryCallingFormat(),
)
bucket = conn.create_bucket('new-bucket')
for bucket in conn.get_all_buckets():
print "{name} {created}".format(
name=bucket.name,
created=bucket.creation_date,
)
3)运行脚本
python s3test.py
4)返回结果大概如下
s3-test-bucket 2021-10-08T02:36:23.913Z
11 存储池相关操作11.1 创建存储池
--创建存储池
#ceph osd pool create <poolname> <pg_num> <pgp_num>
--修改存储池应用类型
#ceph osd pool application enable <poolname> [cephfs,rbd,rgw]
11.2 删除存储池
#ceph osd pool delete <poolname> <poolname> --yes-i-really-really-mean-it
2 i5 e4 Z% L4 I- a- x
 楼主| 发表于 2022-8-23 15:28:49 | 显示全部楼层
部署Ceph mon服务
) Q, T: Q4 g( ]3 Q# v5 s( s0 k安装Ceph-mon服务程序(所有设备执行)+ {; N7 g" v* D8 M. L
, m5 k9 Z/ y, H4 }9 L
yum install -y ceph-mon! z' i! w8 `3 x# D1 v3 b1 n0 Y" i
. O+ `4 y; t4 m! [% Y, S( L2 O* D4 _
, t5 h, u; n; ~5 q$ i6 j% S7 r
初始化Mon服务(Ceph 01执行). i, I+ E( G+ o+ Q* E& Y5 n; M
9 p: M! `/ }9 C  p
生成uuid, M3 O; U9 g9 Q$ B+ W" u8 G
% p3 Z2 o4 C$ M& O$ P
uuidgen
- m/ M8 [2 ^5 r) B. n8 `& l> 9bf24809-220b-4910-b384-c1f06ea80728( C* B( R9 B  s- x. S% g: h) ]: e

2 X" Z: g* G0 P7 C8 p
3 O0 ~" z& {% e( n创建Ceph配置文件
% ?! R+ Z  j0 }. |! m( y7 V7 X3 X3 D0 X: U3 j
cat >> /etc/ceph/ceph.conf <<EOF8 ]) o# G4 ?; |: K. ]! o
[global]
1 _9 B& g; b8 {9 mfsid = 9bf24809-220b-4910-b384-c1f06ea80728# `$ O% ]5 I9 C1 r( h* K
mon_initial_members = ceph01,ceph02,ceph03. x- `" n" T5 Z
mon_host = 10.40.65.156,10.40.65.175,10.40.65.129% B$ I+ H) k" P
public_network = 10.40.65.0/247 F7 [' v6 O" c0 @1 m6 n
auth_cluster_required = cephx
, d) R" ?( Z3 Dauth_service_required = cephx1 ~3 N4 |/ @  i3 o! b
auth_client_required = cephx
% I  `8 O0 L  y0 R. Tosd_journal_size = 1024; l& O2 L  u# P1 a
osd_pool_default_size = 3
1 n; X9 [- m7 Q5 sosd_pool_default_min_size = 2
# b1 N+ D1 M% v4 `- gosd_pool_default_pg_num = 64
) e4 |7 w9 e& ^' z8 w1 rosd_pool_default_pgp_num = 64" {  J6 J7 a+ p) y2 R, H
osd_crush_chooseleaf_type = 1
, `6 z' h" O/ g7 K( f9 gEOF; T! p# b& Q$ ]+ z' g5 Q5 T

& q- H! A3 a/ r( h1 _8 V. m
: O5 f5 d8 }% w+ q  [; k创建集群Monitor密钥。
" ]' Z7 V* y3 E2 s1 c9 E! A
, P9 m3 f, U( t& I8 \( c# ^ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'3 t& L3 g; o9 T& A* ]

% G5 I4 A" t4 R8 R
2 L; H7 e. q) X* q7 n创建client.admin用户、client.bootstrap-osd用户密钥,添加到集群密钥中。/ U$ m4 V/ ]# P' J  n! t
0 i0 K; j6 b$ G
ceph-authtool --create-keyring /etc/ceph/ceph.client.admin.keyring --gen-key -n client.admin --cap mon 'allow *' --cap osd 'allow *' --cap mds 'allow *' --cap mgr 'allow *'- e6 }1 D; |2 t( d. W: j1 J& p6 K' A
ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
4 ?! Y; C7 q5 g  `* g" t# O! s0 @( m2 t# g# L0 ]: i! v& Z5 u  E

: F! x$ ]9 Y: E/ h" qceph-authtool --create-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring --gen-key -n client.bootstrap-osd --cap mon 'profile bootstrap-osd' --cap mgr 'allow r'0 A. Q0 t, M' L: N8 k
ceph-authtool /tmp/ceph.mon.keyring --import-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring8 k0 w1 O. b! ]' |% k4 `

6 @) g( s& F4 V) Y  [9 I% L# }% F- W7 u: C5 r8 d
使用主机名、主机IP地址、FSID生成monitor map。$ ]6 {8 D3 t  E; s/ s/ w9 I

& ?; u: u* b  F/ Umonmaptool --create --add ceph01 10.40.65.156 --add ceph02 10.40.65.175 --add ceph03 10.40.65.129 --fsid 9bf24809-220b-4910-b384-c1f06ea80728 /tmp/monmap5 u0 {, n. B+ z' y

# Z3 L. y7 S& ^+ ~
9 X: `9 E( Q! q# G& w* G9 p& n% q" `* \
初始化并启动monitor服务
" m" L) g1 z7 P4 ^9 T! f, D* G: ^, w3 d* b9 E
sudo -u ceph mkdir /var/lib/ceph/mon/ceph-ceph01
; p4 r0 x( X7 p2 j% `# Dchown ceph.ceph -R /var/lib/ceph /etc/ceph /tmp/ceph.mon.keyring /tmp/monmap, c( Z6 _" s2 p" G
sudo -u ceph ceph-mon --mkfs -i ceph01 --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
7 K9 T+ b1 s, Nls /var/lib/ceph/mon/ceph-ceph01/, M" N6 q; v) {& q- h( b

4 ^6 J( s- l; g" a+ h
6 u$ @% S: o4 U2 D$ q" T/ ]systemctl start ceph-mon@ceph011 @5 ^) |' |( {+ F8 L
systemctl enable ceph-mon@ceph01
0 _, w/ |' D7 c0 f5 Z  M, Usystemctl status ceph-mon@ceph01
& Q; T- V! M' Y( @6 A: U2 V
7 k: n( @. M* G) [+ X4 p! J/ ?
( I3 ^5 h# H  l6 q同步配置文件、密钥、monmap到其他节点中(Ceph 01执行)6 B. t$ {3 o8 C0 K" C( d. j
; g) @4 S7 n% h2 L
复制ceph.client.admin.keyring、client.bootstrap-osd key、ceph.mon.keyring、monitor map、ceph.conf到另外2个节点- n5 P% F/ O* m

2 [" _4 r7 w! v0 }. Q3 s$ b* _$ yscp /etc/ceph/ceph.client.admin.keyring root@ceph02:/etc/ceph/7 M8 N! j3 n4 N$ B4 e, S
scp /etc/ceph/ceph.client.admin.keyring root@ceph03:/etc/ceph/* Z# S6 l( O! H# r# c/ ^" @8 h9 V1 i
' z; {+ }7 F; m/ U5 j' C3 l$ y& \
% i, p. V, s. f' y" M: m
scp /var/lib/ceph/bootstrap-osd/ceph.keyring root@ceph02:/var/lib/ceph/bootstrap-osd/
) W7 K3 p! e3 K/ [! [scp /var/lib/ceph/bootstrap-osd/ceph.keyring root@ceph03:/var/lib/ceph/bootstrap-osd/; f; K" m: _& V: P
9 R1 {7 q/ R$ a- r6 ^& o

. D+ N+ ^0 n1 v1 c, W" P* Bscp /tmp/ceph.mon.keyring root@ceph02:/tmp/; l) f1 L5 y6 F! t. ^; ~
scp /tmp/ceph.mon.keyring root@ceph03:/tmp/
# g% d6 k* O( }+ s/ o  J* S, e$ Y0 b! l1 U( ~9 ]) C

" j# D+ D4 t: [6 ?6 p" hscp /tmp/monmap root@ceph02:/tmp/
' N$ v4 \5 {. x" g( Q4 _0 Z# Bscp /tmp/monmap root@ceph03:/tmp/
" y, S6 U3 l0 t0 n) v5 r$ t" U4 j- U1 z# G
; I' \" o& t! Q8 _2 _) F
scp /etc/ceph/ceph.conf root@ceph02:/etc/ceph/
+ G) j- u- n1 `$ Z4 escp /etc/ceph/ceph.conf root@ceph03:/etc/ceph/
2 E) x8 \& r1 Q9 M7 P& U# g! V2 W' s/ p7 f9 g
- e  J3 H! V* f/ p7 S. Q/ x
启动其他节点的monitor服务(Ceph 02执行)
# {$ Y) p0 w9 ?5 |( \# P! ~4 d  U! J1 ]* P! C& e6 X0 m3 r: F
sudo -u ceph mkdir /var/lib/ceph/mon/ceph-ceph02
) @# m+ p6 j3 x7 Achown ceph.ceph -R /var/lib/ceph /etc/ceph /tmp/ceph.mon.keyring /tmp/monmap
- `9 x7 M* s, r' S3 C+ Q2 o/ f) |sudo -u ceph ceph-mon --mkfs -i ceph02 --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
: y& p9 v+ B; Q. E. ]# {ls /var/lib/ceph/mon/ceph-ceph02/
. y  s6 U* v- b/ P* x* Y
! p* f7 t7 V$ k2 |/ R$ U
! o! V; |: S( u) H0 y  R7 n1 X. d* [! isystemctl start ceph-mon@ceph02
& P. ?* p/ y: B. F# Q3 Z8 Rsystemctl enable ceph-mon@ceph02- n5 v, r2 D0 C$ W! b
systemctl status ceph-mon@ceph02  S6 a6 {5 N1 Y, ]  }; b  a) \% P% l6 U7 B1 y
2 u8 `* V3 {. u$ c  ]( ~% t
- R+ \; q, Z: r4 W7 p2 |: L8 Y
启动其他节点的monitor服务(Ceph 03执行)
. K9 x. x& F& q6 b% I3 G1 [
. T; k# i  S! M8 S# r5 X- csudo -u ceph mkdir /var/lib/ceph/mon/ceph-ceph03/ b) ]" O$ f% \
chown ceph.ceph -R /var/lib/ceph /etc/ceph /tmp/ceph.mon.keyring /tmp/monmap  W0 S' X! P& _
sudo -u ceph ceph-mon --mkfs -i ceph03 --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
  p- B5 G6 e! {( _ls /var/lib/ceph/mon/ceph-ceph03/
: d) ?% s- q( k' [# {6 ]: E$ v4 i% o  m/ |3 L% X  {" f2 J8 b# V

# A6 `: G' p: _6 {# k& ^systemctl start ceph-mon@ceph03
+ i' p+ q* ?5 a, bsystemctl enable ceph-mon@ceph038 g' u* z$ B  @5 _# k
systemctl status ceph-mon@ceph03& K0 ~  I: w% S
4 {5 b: u: S4 b3 M8 x9 E9 I$ E/ o& _
/ s  B  U  {5 q  A2 q
查看当前集群状态(任意节点执行)
+ r- b3 S8 p( d0 l% |通过ceph -s命令查询集群状态,可见集群services中3个mon服务已启动。" L9 y1 e4 e# A( C1 |! I" t- J

  n/ w. v+ f, ?, d& b1 j! ^        ceph -s( X& A. m# J4 w" E' l

- U3 y6 m6 b# e, ^, l>   cluster:
6 x1 h: i$ c, M5 D/ `>     id:     ef944f47-8f98-4b50-b1cb-983e9948deee$ W# N% }' L4 i( S" O
>     health: HEALTH_OK' W( V1 r! E, e0 B% j. z1 d/ q8 F
>   services:
$ }6 a6 J' @, ^>     mon: 3 daemons, quorum controller2,controller3,controller1 (age 2s); w8 F6 v7 V0 p  l. a
>     mgr: no daemons active& d2 t4 d% p: X9 e2 e/ `6 Q2 t+ {
>     osd: 0 osds: 0 up, 0 in2 a# L( z1 K- Q6 A( ]( \
>     data:2 h, `; ]9 B2 t' W, w+ ~
>     pools:   0 pools, 0 pgs! @5 Q* D2 C% R* w( \
>     objects: 0 objects, 0 B
/ Z4 W+ z0 J% L; w2 H>     usage:   0 B used, 0 B / 0 B avail& @& Q( E; ~4 C8 r$ @
>     pgs:% M( q% {4 h; a! a# a8 C0 o1 ~
1 l. o+ W/ M3 H. e" g
1 B3 d% y( \* o
HEALTH_WARN警报信息清除# H/ n% d# O0 X9 n' z) |

$ ^, [1 C1 W. `- s: J出现警告:mons are allowing insecure global_id reclaim。
6 Z- x, S1 R& s+ Q& ^$ z* [0 D5 }  D解决办法:ceph config set mon auth_allow_insecure_global_id_reclaim false
+ Z# \+ r1 b* v5 S  h& [$ ?! {- g7 }5 ]: R" q
出现警告:monitors have not enabled msgr2
! l: K6 u9 ?- C) ^5 c' a, Q, l解决办法:ceph mon enable-msgr2  M; h8 _) Y! a2 G# M5 H
$ |2 D+ x3 R& i9 f
部署Ceph osd服务(ceph-volume 自动化创建)
/ y% V& ]# ~( h3 f安装Ceph-osd服务程序(所有设备执行)9 G3 ~: J  X0 M0 c7 V4 @7 P
yum install -y ceph-osd( P5 E. K$ b7 s

, f% I/ h% I6 _) r" `, {7 ]$ s0 L
初始化osd服务(所有设备执行)
8 s! V) l) D' g, S7 e通过fdisk等工具查看磁盘盘符,然后利用ceph-volume工具自动化创建osd服务。
. r5 X9 }/ D8 k$ ?' fceph-volume lvm create --data /dev/sda
9 c) t* t" b' Q% l4 c3 ^/ [ceph-volume lvm create --data /dev/sdb2 A6 u/ i8 a$ @# c7 |
ceph-volume lvm create --data /dev/sdc( n5 a: M; C- B1 j0 N
; _8 o% [/ J3 `$ E7 _1 x  w
5 h8 s  d3 M3 a
查看当前集群状态(任意节点执行)
6 a7 H4 \+ Q6 v4 v/ J+ e通过ceph osd tree命令查询集群状态,可见集群services中所有osd服务已启动。) a9 Y* k$ I6 |$ ]
ceph osd tree& A5 Y/ r. u- q4 A. @
> ID CLASS WEIGHT   TYPE NAME       STATUS REWEIGHT PRI-AFF
2 H* L7 w: E4 ^) B& m* z> -1       16.36908 root default, Z" a" o+ _2 ~, |9 l- R4 n# O$ I* ?
> -3        5.45636     host ceph01% x5 z6 \- h' \2 u0 t7 O
>  0   hdd  1.81879         osd.0       up  1.00000 1.000005 n: H. ?9 c0 Q; v7 G+ [1 b1 Q& U
>  1   hdd  1.81879         osd.1       up  1.00000 1.00000
2 o6 S- `" B) D: ^7 S>  2   hdd  1.81879         osd.2       up  1.00000 1.00000
* ~  `- o' K' e) ]. A> -5        5.45636     host ceph02, x9 B. h4 ?, g' z3 i( M6 I* E2 F- s
>  3   hdd  1.81879         osd.3       up  1.00000 1.00000+ d5 q& H# s3 m" f- w0 F
>  4   hdd  1.81879         osd.4       up  1.00000 1.00000
: _* B3 j6 u2 X. [>  5   hdd  1.81879         osd.5       up  1.00000 1.00000
8 Q3 \" [8 _5 Q- i2 s6 H> -7        5.45636     host ceph035 j0 a3 e) Z% y# n! K
>  6   hdd  1.81879         osd.6       up  1.00000 1.00000
, A5 u' V3 a' g# A5 F0 y3 B# F>  7   hdd  1.81879         osd.7       up  1.00000 1.000008 W" p9 Z1 s  o
>  8   hdd  1.81879         osd.8       up  1.00000 1.00000/ F$ L' B1 q) B+ q) r$ d3 n* P! K5 N

0 u; s) k- L0 x
# v3 U: C! T8 n6 b! d% Q7 N" F( ^# Y" j2 @7 B

1 h. k  F: e# T6 p1 z& {* v部署Ceph mgr服务并开启Dashboard
! |; v2 n  K& X: D安装Ceph-mgr服务程序(所有设备执行)+ U  e9 f* `" G
1 e) i/ K5 d5 K4 G* p4 i
yum install -y ceph-mgr
% ~* c8 ]. [8 ~+ g" ?
3 h% H; o- }. D0 ~+ N$ O0 S3 }. k6 o) N& ~5 C
初始化并启动主MGR服务(Ceph01执行)' k2 g' u# N$ Z, v# c- j! D, F1 o
% E: x! }3 A; b  S3 _  m
mkdir -p /var/lib/ceph/mgr/ceph-ceph014 G3 @5 h- B6 L& Z* y7 b) _$ A
chown ceph.ceph -R /var/lib/ceph1 r1 Q4 `4 d( i: `- M: K3 I
ceph-authtool --create-keyring /etc/ceph/ceph.mgr.ceph01.keyring --gen-key -n mgr.ceph01 --cap mon 'allow profile mgr' --cap osd 'allow *' --cap mds 'allow *'. _1 |- z3 F/ m  @  S: W
ceph auth import -i /etc/ceph/ceph.mgr.ceph01.keyring
2 o& [2 X* j2 aceph auth get-or-create mgr.ceph01 -o /var/lib/ceph/mgr/ceph-ceph01/keyring
3 m* H, j3 P' T9 I. P$ A; D% o+ f  B& _  s5 ]+ F. {- _2 |

) w, R. F9 @7 w. y# x- \1 C% bsystemctl start ceph-mgr@ceph01
3 b9 D9 D* t: x& r+ ?+ n+ Gsystemctl enable ceph-mgr@ceph01: i3 Y( k, @- s! ~
systemctl status ceph-mgr@ceph01
/ B! t' K- L8 D
+ P' q$ ~6 T+ C, C/ c% T: n( j3 {) Q
初始化并启动从MGR服务(Ceph02执行)
0 H$ L0 \8 p3 p$ L" @1 O8 u( T7 f6 M
mkdir -p /var/lib/ceph/mgr/ceph-ceph02; e) Q- C9 V. B' t4 F
chown ceph.ceph -R /var/lib/ceph; H* S/ h! a7 b
ceph-authtool --create-keyring /etc/ceph/ceph.mgr.ceph02.keyring --gen-key -n mgr.ceph02 --cap mon 'allow profile mgr' --cap osd 'allow *' --cap mds 'allow *'- Y. _8 @8 U) n+ G7 a( E
ceph auth import -i /etc/ceph/ceph.mgr.ceph02.keyring6 i+ {( Z6 H7 R! _) w5 V
ceph auth get-or-create mgr.ceph02 -o /var/lib/ceph/mgr/ceph-ceph02/keyring
2 i6 K. M) _: E$ n. x  w2 ?% r0 Z( k
6 c8 B" U- @$ ?$ j* X7 q! ^
systemctl start ceph-mgr@ceph028 O; T- q$ N3 x
systemctl enable ceph-mgr@ceph02$ S9 j3 o2 C: t: O; i7 e1 o
systemctl status ceph-mgr@ceph02' T$ G+ d4 v7 D9 N# V

9 }- ]6 j0 {, r2 c% b
! T5 o4 P+ Q+ K; f) m初始化并启动从MGR服务(Ceph03执行)  u# J4 D: _, n2 i8 C4 s

4 i! c7 w! M$ U- @' k9 lmkdir -p /var/lib/ceph/mgr/ceph-ceph03
* F/ M2 B8 N' }+ G: ~2 Fchown ceph.ceph -R /var/lib/ceph- Q+ G* T2 z7 u( P# S0 n! ?
ceph-authtool --create-keyring /etc/ceph/ceph.mgr.ceph03.keyring --gen-key -n mgr.ceph03 --cap mon 'allow profile mgr' --cap osd 'allow *' --cap mds 'allow *'8 a. x5 d1 |; D6 }) y% }
ceph auth import -i /etc/ceph/ceph.mgr.ceph03.keyring/ o* J" X; {+ A3 l) s
ceph auth get-or-create mgr.ceph03 -o /var/lib/ceph/mgr/ceph-ceph03/keyring
/ }* j- @% `: n$ ]
' D# u. w& ]% q7 m
+ K" `- Y7 S! @- A$ p5 V) Qsystemctl start ceph-mgr@ceph031 |" t, N4 L' u5 ^" P' o
systemctl enable ceph-mgr@ceph03- f! i( X1 V  q5 w
systemctl status ceph-mgr@ceph03
  R+ R  q' i7 A( @
! t: Q% `# u, p+ ]" |" [! _6 B: @4 Y$ a9 F  S+ d! K

1 o  c/ j# k5 G9 N7 M  p* g: V6 o# _2 W  K
查看当前集群状态(任意节点执行)& r) Q( d7 x7 @; d! r) J. E
通过ceph -s命令查询集群状态,可见集群services中3个mgr服务已启动。, ^; _3 M2 }  a7 r1 H

8 J/ L9 t) |  [  s1 ^  G3 eceph -s0 y- X2 S2 a. V
> cluster:
2 ^4 \5 z' ^# j6 G8 L2 S7 g>                 id:     cf3862c5-f8f6-423e-a03e-beb40fecb74a        
' [% _0 W; h# ?: Q" V>                 health: HEALTH_OK% V, N2 K, q, A1 r# Z
>
, f5 z/ [9 ?+ g! D5 Z> services:         2 B' j/ x' b6 B- T9 w; m
>                 mon:         3 daemons, quorum ceph03,ceph02,ceph01 (age 12d)         ' ~% |; @5 ]. L$ [( i& o$ @
>                 mgr:        ceph01(active, since 3w), standbys: ceph02、ceph03                       
: x6 f  Y& P8 t$ N3 \8 T>                 osd:    9 osds: 9 up (since 89s), 9 in (since 89s)
  I3 O5 u2 M) D: B3 C>
. Y' A+ R( [! m5 |# w8 d: r> data:
7 a- f! _$ K/ Q! E) h) a# L0 o>                  pools:   0 pools, 0 pgs
# l& ~5 Z) a( F% v7 v2 L! v2 i9 X>                 objects: 0 objects, 0 B" F  L) l) D8 I" l; x1 ~2 v
>                 usage:   9.0 GiB used, 16 TiB / 16 TiB avail  V$ \* U& P* b2 _9 P" G) E9 U
>                 pgs:8 Y: R7 e6 s1 H6 o( t( L" _9 I
* J$ X& G* y: R& f& Q  E
# b0 r, ]5 ?9 \0 e/ k
使能Dashboard访问功能(任意节点执行)0 v) g6 p) n8 Z  j$ O" _
开启mgr dashboard功能
4 v+ N9 n# c* ?
0 d, {! p% y0 A! p3 L  Fceph mgr module enable dashboard
* d8 _7 ^" F/ M4 N0 ]3 D" I1 C) ?$ m* P' L7 s# c
生成并安装自签名的证书) f: g0 h, H/ K" j
1 S$ d4 H* V$ Q* Z7 z+ }) o& p
ceph dashboard create-self-signed-cert
' H( m# T* S( M1 O5 ^3 g" M1 O1 O# F# O( z0 Y7 h( J
配置dashboard
) ^7 i; G3 y0 T- Y( }0 G# E3 a$ a5 V, F/ r
ceph config set mgr mgr/dashboard/server_addr 10.40.65.148- y& x: L% W* D! N8 M* w% [1 E
ceph config set mgr mgr/dashboard/server_port 8080
1 T) ]3 `- S" I2 R3 j, m( Vceph config set mgr mgr/dashboard/ssl_server_port 84437 t2 x& g2 K2 P0 ]( k  _$ B
4 Y' l% `# ~1 @9 e
* J4 }% X# n1 S1 _
创建一个dashboard登录用户名密码
) o9 T6 x7 Z& C% ]. [
4 L. G& Q4 p  p: recho '123456' > password.txt: H3 |* C2 s4 y) b: T
ceph dashboard ac-user-create admin  administrator -i password.txt) D/ H" y* Q  J' j3 n9 S0 w
4 v# T4 T8 ^8 [* e9 s; S

% x% P' T8 e1 h5 S) H查看服务访问方式
- a# h. `; _. w- N
, V1 v7 h+ g  a0 o        ceph mgr services
/ v: Q  d* c3 k6 D5 H8 Z- J>         {- R& u1 i' g4 B3 Z2 g2 q
>     "dashboard": "https://ceph01:8443/"
4 a/ I: @5 @$ x1 @* Q7 ^# d>   }% _& J" H, _" A2 E9 O( q$ S
& ?% [3 p6 N2 r) C; W
7 I8 n, V0 t4 v6 ?. `
通过web访问Ceph Dashboard,用户名密码为admin/123456
/ w+ Y0 H9 Q/ ]' ^+ `: Z" X. o; [' t+ d6 v* s4 L* m
https://10.40.65.148:8443
2 j  L% e/ t- t8 H
& g7 x/ _; v5 N# g4 l  }: a9 Y2 [1 z) j6 T  q/ A7 f/ D
  t* v3 f; A- L% f7 a! z& M' F+ ~
客户端访问配置(RBD权限)(客户端执行)
* H9 ~7 `0 }5 i* q, y4 X3 O& Q安装Ceph
; h; O/ {1 j& Q, c: D6 }, n3 Y  C$ y+ k4 O
yum install -y ceph-common$ I$ w; q! `( ~1 K. h3 d

9 V  o8 e( f5 L2 o
# q# Z! l# s& U拷贝服务器端的配置文件及密钥+ g4 K6 x- G+ f- ?0 t
/ L7 S5 z, l& I
scp root@ceph01:/etc/ceph/ceph.conf ./8 D' k0 l/ ~6 N* f" }- J
scp root@ceph01:/etc/ceph/ceph.client.admin.keyring ./& m' ^) j$ n6 e8 J/ S9 Q7 w: u

+ M1 k' g/ S8 s6 z* ]( Z9 f- M/ ~% D1 G9 F: Y* C
测试连接状态
3 U& F/ Z* T2 ]  `+ U- V; j) r% d/ C" {
+ [6 X/ O( S# t8 uceph -s6 x) u0 O# Y, V0 x
> cluster:
  o5 O8 E9 x. ]% g$ P, ]: l% u>                 id:     cf3862c5-f8f6-423e-a03e-beb40fecb74a        
; r- `. l0 W: D) M  m/ N>                 health: HEALTH_OK
4 ]; r, ]3 V+ W! n) p3 j# a+ f> 2 }# r; {; L: @! C+ |( U, M$ ]+ u
> services:        
% R% _( S0 w, c; w9 @>                 mon:         3 daemons, quorum ceph03,ceph02,ceph01 (age 12d)        
  A; s9 o0 p) c( M. d5 W* o>                 mgr:        ceph01(active, since 3w), standbys: ceph02、ceph03                        . s! `) l  D' x6 s
>                 osd:    9 osds: 9 up (since 89s), 9 in (since 89s)8 f5 l8 w3 G/ m! N4 a
>
% }9 w( {- @" z3 m$ F> data:# D* K0 ^& _) z) i4 O- i; @  L
>                  pools:   0 pools, 0 pgs% c( K) O2 y  g  c% X( j
>                 objects: 0 objects, 0 B1 |8 ]% V6 ?7 }" U6 U9 f
>                 usage:   9.0 GiB used, 16 TiB / 16 TiB avail
# r% T2 o, A% |" |* T  w- s/ M3 {>                 pgs:+ S! D: H/ F- e3 ^; w  k* Q
8 b' [) p3 B1 ]( r1 d, e
9 R7 f: W! p6 [% a
块设备服务测试(客户端执行)! r% Z9 U7 t. u- G6 I5 C2 f
创建块设备池
: c/ S) O7 ?  L5 z! ^: {ceph osd pool create test-pool 128
; H# g* c, j6 s$ eceph osd pool application enable test-pool rbd
' |: x8 o* v4 {; |ceph osd lspools
% m" x: K9 j) F0 s4 x1 W* e( e: l. J
创建块设备镜像
  l. ]: H( D" ?) H, ~rbd create --size 1T disk01 --pool test-pool) S8 T# x0 J5 w9 e+ t

+ P  A7 j* |, \) Krbd ls test-pool -l# _4 O: P! a2 Z4 o
rbd info test-pool/disk01
; y; B* K, I  l6 B" `/ j
; x! S* T" \) @* |5 z修改块设备镜像能力(镜像能力与内核版本相关). |  u& w) w" K
rbd feature disable test-pool/disk01 exclusive-lock, object-map, fast-diff, deep-flatten
- r, a% N* }6 A( X+ _: f; c2 D
5 F* k) Q! j  M, h& q映射块设备/ J  \* q/ Z6 A0 X6 q
rbd map test-pool/disk01
# t# N8 f+ h' W1 bmkfs.xfs /dev/rbd0
3 |) ]+ z* o- C2 e4 t' ]! brbd showmapped
0 O4 v* t- a+ ?1 h( k+ k
% ?* \' L! p* J  b; \挂载并使用块设备
( U3 Y, _2 ?4 e2 V1 b' l: Z( C9 s6 ?mkdir /home/loongson/ceph_disk01
4 U/ `0 k0 x# m$ G  Y; t0 f+ fmount /dev/rbd0 /home/loongson/ceph_disk01
7 ?" m& F9 A8 j3 Y6 qcd /home/loongson/ceph_disk01
4 D3 d- m' k2 ]! E+ |0 T7 `, S0 `/ v2 k1 P) S: s, I

# B3 h2 ~3 X3 s' M% W0 I" P
 楼主| 发表于 2022-8-23 17:04:35 | 显示全部楼层
# radosgw-admin zonegroup remove --rgw-zonegroup=default --rgw-zone=default
6 T+ A3 @" n! K% R# I  `# radosgw-admin period update --commit; R' y) W* s, t: X7 _4 P, @3 V
# radosgw-admin zone delete --rgw-zone=default
$ w1 c, C/ i3 W& B# radosgw-admin period update --commit
; v4 [% _+ ^, z% y8 f, o+ ^2 E# radosgw-admin zonegroup delete --rgw-zonegroup=default
9 n# J7 K4 l1 x8 K! Y# o5 I# radosgw-admin period update --commit
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

如有购买积分卡请联系497906712

QQ|返回首页|Archiver|手机版|小黑屋|易陆发现 点击这里给我发消息

GMT+8, 2022-10-4 06:03 , Processed in 0.057037 second(s), 21 queries .

Powered by LR.LINUX.cloud bbs168x X3.2 Licensed

© 2012-2022 Comsenz Inc.

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