存储分类:
DAS:直连存储 ide线 sata线 usd线 sas线
NAS:网络附加存储 nfs samba ftp
SAN:存储区域网络 issci
SDS:软件定义存储 ceph
ceph组件:OSD存储设备 Monitors集群监控组件 RGW对象存储网关 MDS存放文件系统的元数据
注:montiitors至少需要3台 因为过半原则超过一半几台宕机整个集群都不能用了
例: 有三台机 41(node1) 42 (node2) 43 (node3)
1.部署ceph集群
环境准备 配置yum源
集群几台无密码连接(包括自己免密自己)
ssh-keygen
for i in 41 42 43 ; do ssh-copy-id 192.168.1.$i ; done
/etc/hosts 域名解析 (三台机都做)
vim /etc/hosts
192.168.1.41 node1
192.168.1.42 node2
192.168.1.43 node3
for i in 41 42 43 ; do scp /etc/hosts 192.168.1.$i :/etc/hosts ; done
配置NTP服务时间同步
vim /etc/chrony.conf
server 192.168.1.254 iburst
systemclt restart chronyd
for i in node1 node2 node3
do
scp /etc/chrony.conf $i:/etc/chrony.conf
ssh $i "systemctl restart chronyd"
done
安装ceph-deploy软件(node1 做就行)
yum -y install ceph-deploy
mkdir ceph-deploy
cd ceph-deploy
给所有节点安装ceph相关软件包
for i in node1 node2 node3
do
ssh $i "yum -y install ceph-mon ceph-osd ceph-mds ceph-redosgw"
done
常见ceph集群配置在ceph-cluster目录下生成ceph配置文件
ceph-deploy new node1 node2 node3
在ceph.conf配置文件里定义mon主机是谁
初始化所有节点mon服务也是启动mon服务
ceph-deploy mon create-initial
2.创建OSD
给每台机准备3个磁盘 2个做存储服务器1各做缓存服务器 注:如果是机台比较多 mon 和osd 分开做的话 只需要给osd机台添加磁盘就可以了
把一个磁盘划分两个分区做令两外两个磁盘的缓存盘
for i in node1 node2 node2
do
ssh $i "parted /dev/vdb mklabel gpt"
ssh $i "parted /dev/vdb mkpart primary 1 50%"
ssh $i "parted /dev/vdb mkpart primary 50% 100%"
done
修改权限 (三台机都要做)
chown ceph.ceph /dev/vdb1 chown ceph.ceph /dev/vdb2
vim /etc/vdev/rules.d/70-vdb.rules
ENV{DEVNAME}=="/dev/vdb1" DENER="ceph",GROUP="ceph"
ENV{DEVNAME}=="/dev/vdb2" DENER="ceph",GROUP="ceph"
初始化清空磁盘 node1做即可
ceph-deploy disk zap node1:vdc node1:vdd
ceph-deploy disk zap node2:vdc node1:vdd
ceph-deploy disk zap node3:vdc node1:vdd
创建osd存储空间
ceph-deploy osd create node1:vdc:/dev/vdb1 node1:vdd:/dev/vdb2 node2:vdc:/dev/vdb1 node2:vdd:/dev/vdb2 node3:vdc:/dev/vdb1 node3:vdd:/dev/vdb2
ceph -s 查看集群状态
3.创建ceph块存储
ceph osd lspools 查看存储池
创建镜像 rbd create demo-image --image -feature layering --size 10G 注: demo-image是镜像名可自定义 10G是大小
rbd info demo-image 查看镜像
4 扩大空间
rbd resize --size 15G demo-image
客户机访问需要:
yum -y install ceph-common
scp 192.168.1.41:/ceph/ceph.conf /etc/ceph 注:拷贝配置文件到客户机不然不知道集群在哪
scp 192.168.1.41:/etc/ceph/ceph.client.admin.keying /etc/ceph 注:拷贝免密 避免无连接权限
rbd showmapped 查看块存储详细信息
rbd map demo-image 查看可以挂载的存储
mkfs.xfs /dev/rbd
mount /dev/rbd /mnt/