ceph 详细安装教程
时间: 2023-09-10 12:11:55 浏览: 90
Ceph是一个基于对象存储技术的分布式存储系统,可用于存储海量数据,具有高可靠性、高可扩展性等特点。下面是Ceph的详细安装教程:
1. 安装依赖包
在安装Ceph之前,需要安装一些依赖包。以CentOS 7为例,执行以下命令:
```
sudo yum install -y epel-release
sudo yum install -y wget vim net-tools
sudo yum install -y python-setuptools python-setuptools-devel
sudo yum install -y gcc autoconf automake make
```
2. 下载安装包
下载Ceph的安装包,可以从官网 https://ceph.io/ 下载最新版本的安装包。以Ceph Jewel版本为例,执行以下命令:
```
wget -c https://download.ceph.com/tarballs/ceph-jewel.tar.gz
tar -xzf ceph-jewel.tar.gz
cd ceph-jewel
```
3. 编译安装
执行以下命令编译安装Ceph:
```
./install-deps.sh
./autogen.sh
./configure
make -j4
sudo make install
```
4. 配置Ceph
创建Ceph的配置文件/etc/ceph/ceph.conf,内容如下:
```
[global]
fsid = ceph-cluster-uuid
mon initial members = ceph-mon1
mon host = 192.168.1.101
auth cluster required = cephx
auth service required = cephx
auth client required = cephx
osd journal size = 1024
osd pool default size = 2
osd pool default min size = 1
osd pool default pg num = 128
osd pool default pgp num = 128
osd crush chooseleaf type = 1
```
其中,fsid为Ceph集群的UUID,mon initial members为Ceph Monitor的名称,mon host为Ceph Monitor的IP地址,auth cluster/service/client required为认证方式,osd journal size为OSD日志大小,osd pool default size为数据副本数,osd pool default min size为最小副本数,osd pool default pg num/pgp num为PG数量,osd crush chooseleaf type为CRUSH算法类型。
5. 初始化Ceph集群
执行以下命令初始化Ceph集群:
```
sudo mkdir /var/lib/ceph/mon/ceph-mon1
sudo ceph-mon --mkfs -i ceph-mon1 --monmap /tmp/monmap
sudo ceph-mon -i ceph-mon1
```
其中,/var/lib/ceph/mon/ceph-mon1为Ceph Monitor的存储路径,ceph-mon1为Ceph Monitor的名称,/tmp/monmap为Monitor的IP地址和名称映射文件。
6. 创建OSD
执行以下命令创建OSD:
```
sudo mkdir /var/lib/ceph/osd/ceph-0
sudo ceph-osd --mkfs -i 0 --osd-data /var/lib/ceph/osd/ceph-0 --osd-journal /var/lib/ceph/osd/ceph-0/journal
sudo ceph-osd -i 0
```
其中,/var/lib/ceph/osd/ceph-0为OSD的存储路径,0为OSD的ID。
7. 创建RADOS对象池
执行以下命令创建RADOS对象池:
```
sudo ceph osd pool create rados-pool 128 128
```
其中,rados-pool为RADOS对象池的名称,128为PG数量,128为PGP数量。
至此,Ceph的安装和配置完成。可以使用rados命令测试RADOS对象池是否正常:
```
sudo rados -p rados-pool bench 10 write
```
以上命令将在rados-pool对象池中写入10M的数据,可以通过rados命令查看对象池中的数据:
```
sudo rados -p rados-pool ls
```
如果能够正常列出对象池中的数据,则Ceph已经安装和配置成功了。