侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

CEPH 分布式存储部署(Ubuntu 14.04)

2023-09-27 星期三 / 0 评论 / 0 点赞 / 49 阅读 / 9985 字

1. 环境准备 1.1 环境架构图 Paste_Image.png CEPH架构包含如下几个节点角色 ADMIN Node:管理节点 MON Node:监控节点/元数据MDS节

1. 环境准备

1.1 环境架构图

Paste_Image.png

  • CEPH架构包含如下几个节点角色
    • ADMIN Node:管理节点
    • MON Node:监控节点/元数据MDS节点
    • OSD Node:存储节点
.

OS:Ubuntu 14.04.04

OSD节点磁盘结构

.
root@C01:~# lsblkNAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTsda                    8:0    0    16G  0 disk ├─sda1                      8:1    0   243M  0 part /boot├─sda2                      8:2    0     1K  0 part └─sda5                      8:5    0  15.8G  0 part   ├─C01--vg-root (dm-0)   252:0    0  13.8G  0 lvm  /  └─C01--vg-swap_1 (dm-1) 252:1    0     2G  0 lvm  [SWAP]sdb                            8:16   0    20G  0 disk                                          #OSD Disksr0                             11:0    1   579M  0 rom
.

OSD节点网络结构

.
  • Eth0:Public Network
  • Eth1:Cluster Network

1.2 环境准备

1.2.1所有节点操作设置root免密码登录

       sudo visudo -f /etc/sudoers
.

增加如下行,skyrim为用户名
skyrim ALL=(ALL) NOPASSWD:ALL

.

1.2.2 所有节点操作修改host文件

所有节点增加如下内容

192.168.1.40    ADM192.168.1.41    MON192.168.1.60    N01192.168.1.61    N02192.168.1.62    N03

1.2.3 ADMIN节点操作安装pssh工具

  apt-get install -y pssh
  • 设置以下别名:
   alias pssh='parallel-ssh'    alias pscp='parallel-scp'
  • 创建host文件列表hosts.txt:

    .

    MON
    N01
    N02
    N03
    N04

    .

1.2.4 所有节点操作创建ssh信任

  • 所有节点运行如下命令
   ssh-keygen
  • ADMIN节点复制public key到其它节点需在普通用户权限下执行,在对话窗口输入yes,然后输入对端用户密码。

      ssh-copy-id mon  ssh-copy-id n01  ssh-copy-id n02  ssh-copy-id n03
  • 测试方式通过普通用户执行
pssh -h hosts uptime

如果全部结果都为SUCCESS,则说明正常工作。

1.2.5 ADMIN操作修改ububtu apt源

root@C01:~#nano /etc/apt/sources.list
  • 增加网易APT源
    deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse

复制sources.list到其它节点

pscp -h hosts.txt /etc/apt/sources.list /etc/apt/
  • 刷新源
    pssh -h hosts `sudo apt-get update`
    如果全部结果都为SUCCESS,则说明正常工作。

1.3 安装ceph-deploy

  • 以下操作只需要在Admin节点执行,首先需要增加ceph源:

安装ceph apt key

wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -echo deb http://download.ceph.com/debian-{ceph-stable-release}/ $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph.list

注意: ceph-stable-release是选择安装的版本,我部署时选择的是jewel!最新版本为infernalis!同时由于CFW的问题,因此我选择的是网易的国内镜像

echo deb http://mirrors.163.com/ceph/debian-jewel/ $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph.list
  • 安装ceph-deploy:
sudo apt-get update && sudo apt-get install -y ceph-deploy
.

生产环境还需要安装ntp服务,保证集群的时钟一致,这次只是为了测试,故省略这一步。另外由于ubuntu默认防火墙是关的,SELinux也没有安装,故不需要任何操作。使用centos安装时需要打开必要端口。

.

2.开始安装ceph集群

我们使用ceph-deploy部署,后续操作均在admin节点操作。 首先需要创建工作环境,该环境会保存所有的配置文件:

mkdir my-clustercd my-cluster

2.1 创建集群

ceph-deploy new mon

其中mon是monitor节点,执行该命令会生成ceph配置文件、monitor密钥文件以及日志文件。

2.2 修改默认冗余份数(此步骤只有在小于3个OSD节点时需要修改)

.

默认的冗余份数是3,如果是2节点需要设置为2,如果osd节点大于2,则此步骤省略。

.

修改ceph.conf文件,在[global]下增加以下内容:

osd pool default size = 2

2.3 配置网卡和网络(OSD节点单网卡请忽略

OSD节点是双网卡,因此需要设置使用的网卡和网络地址
修改ceph.conf文件,在[global]下增加以下内容:

Public Network = 192.168.1.0/24Cluster Network = 10.10.100.0/24

2.4 开始安装ceph

.

注:因为CFW的问题,管理节点ceph-Deploy前Ceph镜像源修改非常重要,这里采用了网易镜像

.
    export CEPH_DEPLOY_REPO_URL=http://mirrors.163.com/ceph/debian-jewel/    export CEPH_DEPLOY_GPG_URL=http://mirrors.163.com/ceph/keys/release.asc

在所有节点开始安装ceph

ceph-deploy install adm mon n01 n02 n03

2.5初始化mon节点和收集密钥信息

ceph-deploy mon create-initial

执行完毕,目录应该有以下文件:

{cluster-name}.client.admin.keyring{cluster-name}.bootstrap-osd.keyring{cluster-name}.bootstrap-mds.keyring{cluster-name}.bootstrap-rgw.keyring

完成以上步骤,安装完成,但还没有配置osd节点。

2.6 配置osd节点

首先再次确认磁盘结构

.

OSD节点磁盘结构

.
root@C01:~# lsblkNAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTsda                    8:0    0    16G  0 disk ├─sda1                      8:1    0   243M  0 part /boot├─sda2                      8:2    0     1K  0 part └─sda5                      8:5    0  15.8G  0 part   ├─C01--vg-root (dm-0)   252:0    0  13.8G  0 lvm  /  └─C01--vg-swap_1 (dm-1) 252:1    0     2G  0 lvm  [SWAP]sdb                            8:16   0    20G  0 disk                                          #OSD Disksr0                             11:0    1   579M  0 rom

格式化磁盘,注意我们使用的是/dev/sdb

ceph-deploy disk zap n01:sdbceph-deploy disk zap n02:sdbceph-deploy disk zap n03:sdb
.

以上步骤会清空磁盘的所有数据。 接下来创建osd,注意由于我们只是测试,故没有使用单独的磁盘作为journal,实际在生产环境下,需要配备SSD分区作为journal,能够最大化IO吞吐量

.
ceph-deploy osd create n01:sdbceph-deploy osd create n02:sdbceph-deploy osd create n03:sdb

2.7 配置admin节点

admin节点同时也作为我们的client节点,需要拷贝其他节点的配置文件以及密钥,使得不需要指定mon地址以及用户信息就可以直接管理我们的ceph集群,执行以下命令即可:

ceph-deploy admin adm mon n01 n02 n03sudo chmod +r /etc/ceph/ceph.client.admin.keyring # 保证具有读取的密钥的权限

2.8 测试结果

运行以下命令:

ceph health

确认返回HEALTH_OK状态

ceph status

结果返回如下:

    cluster 2a5b2748-6b23-4609-9614-1e838e11597c     health HEALTH_OK     monmap e1: 1 mons at {mon=192.168.1.41:6789/0}            election epoch 3, quorum 0 mon     osdmap e16: 3 osds: 3 up, 3 in            flags sortbitwise,require_jewel_osds      pgmap v52: 64 pgs, 1 pools, 57 bytes data, 4 objects            101 MB used, 45945 MB / 46046 MB avail                  64 active+clean

确认返回active+clean状态

ceph osd tree

确认所有osd节点up状态



作者:无语城市
链接:http://www.jianshu.com/p/ed4de0267275
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

广告 广告

评论区