电脑疯子技术论坛|电脑极客社区

微信扫一扫 分享朋友圈

已有 2022 人浏览分享

CentOS7安装Ceph

[复制链接]
2022 0
1、安装环境

|-----node1(mon,osd) sda为系统盘,sdb和sdc为osd盘
|
|-----node2(mon,osd) sda为系统盘,sdb和sdc为osd盘
                              admin-----|
|-----node3(mon,osd) sda为系统盘,sdb和sdc为osd盘
|
|-----client

Ceph Monitors 之间默认使用 6789 端口通信, OSD 之间默认用 6800:7300 这个范围内的端口通信

2、准备工作(所有节点)

2.1、修改IP地址

  1. vim /etc/sysconfig/network-scripts/ifcfg-em1
  2. IPADDR=192.168.130.205
  3. NETMASK=255.255.255.0
  4. GATEWAY=192.168.130.2
复制代码


2.2、关闭防火墙

  1. systemctl stop firewalld.service  #停止firewall
  2. systemctl disable firewalld.service  #禁止firewall开机启动
  3. firewall-cmd --state  #查看防火墙状态
复制代码


2.3、修改yum源

  1. cd /etc/yum.repos.d
  2. mv CentOS-Base.repo CentOS-Base.repo.bk
  3. wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
  4. yum makecache
复制代码



.4、修改时区

  1. cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  2. yum -y install ntp
  3. systemctl enable ntpd
  4. systemctl start ntpd
  5. ntpstat
复制代码


2.5、修改hosts

  1. vim /etc/hosts
  2. 192.168.130.205 admin
  3. 192.168.130.204 client
  4. 192.168.130.203 node3
  5. 192.168.130.202 node2
  6. 192.168.130.201 node1
复制代码

2.6、安装epel仓库、添加yum ceph仓库、更新软件库

安装epel仓库

  1. rpm -vih http://mirrors.sohu.com/fedora-epel/7/x86_64/e/epel-release-7-2.noarch.rpm
  2. 添加yum ceph仓库
  3. vim /etc/yum.repos.d/ceph.repo
  4. [ceph]
  5. name=Ceph noarch packages
  6. baseurl=http://mirrors.163.com/ceph/rpm-hammer/el7/x86_64/
  7. enabled=1
  8. gpgcheck=1
  9. type=rpm-md
  10. gpgkey=http://mirrors.163.com/ceph/keys/release.asc
  11. 2.7、安装ceph-deploy,ceph(ceph所有节点都安装,ceph-deploy只需admin节点安装)
  12. yum -y update && yum -y install --release hammer ceph ceph-deploy
复制代码

3、允许无密码 SSH 登录(admin节点)
3.1、生成SSH密钥对,提示 “Enter passphrase” 时,直接回车,口令即为空:
ssh-keygen

3.2、把公钥拷贝至所有节点

  1. ssh-copy-id root@node1
  2. ssh-copy-id root@node2
  3. ssh-copy-id root@node3
  4. ssh-copy-id root@client
复制代码


3.3、验证是否可以无密码SSH登录

  1. ssh node1
  2. ssh node2
  3. ssh node3
  4. ssh client
复制代码


4、创建Monitor(admin节点)

  1. 4.1、在node1、node2、node3上创建monitor
  2. mkdir myceph
  3. cd myceph
  4. ceph-deploy new node1 node2 node3

复制代码


4.2、修改osd的副本数,将osd pool default size = 2添加至末尾

  1. vim /etc/ceph.conf
  2. osd pool default size = 2
复制代码


4.3、配置初始 monitor(s)、并收集所有密钥

  1. ceph-deploy mon create-initial
复制代码

5、创建OSD(admin节点)

5.1列举磁盘

  1. ceph-deploy disk list node1
  2. ceph-deploy disk list node2
复制代码


5.2、擦净磁盘

  1. ceph-deploy disk zap node1:sdb
  2. ceph-deploy disk zap node1:sdc
  3. ceph-deploy disk zap node2:sdb
  4. ceph-deploy disk zap node2:sdc
  5. ceph-deploy disk zap node3:sdb
  6. ceph-deploy disk zap node3:sdc
复制代码


5.3、准备OSD

  1. ceph-deploy osd prepare node1:sdb
  2. ceph-deploy osd prepare node1:sdc
  3. ceph-deploy osd prepare node2:sdb
  4. ceph-deploy osd prepare node2:sdc
  5. ceph-deploy osd prepare node3:sdb
  6. ceph-deploy osd prepare node3:sdc

  7. ceph-deploy osd activate node1:sdb1
  8. ceph-deploy osd activate node1:sdc1
  9. ceph-deploy osd activate node2:sdb1
  10. ceph-deploy osd activate node2:sdc1
  11. ceph-deploy osd activate node3:sdb1
  12. ceph-deploy osd activate node3:sdc1
复制代码



5.4、删除OSD

c
  1. eph osd out osd.3
  2. ssh node1 service ceph stop osd.3
  3. ceph osd crush remove osd.3
  4.         ceph auth del osd.3 //从认证中删除
  5.         ceph osd rm 3 //删除
复制代码


5.5、把配置文件和 admin 密钥拷贝到各节点,这样每次执行 Ceph 命令行时就无需指定 monitor 地址和

  1. ceph.client.admin.keyring
  2. ceph-deploy admin admin node1 node2 node3
复制代码


5.6、查看集群健康状况

  1. ceph health
复制代码


6、配置块设备(client节点)
6.1、创建映像

  1. rbd create foo --size 4096 [-m {mon-IP}] [-k /path/to/ceph.client.admin.keyring]
  2. rbd create foo --size 4096 -m node1 -k /etc/ceph/ceph.client.admin.keyring
复制代码


6.2、将映像映射为块设备

  1. sudo rbd map foo --name client.admin [-m {mon-IP}] [-k /path/to/ceph.client.admin.keyring]
  2. sudo rbd map foo --name client.admin -m node1 -k /etc/ceph/ceph.client.admin.keyring
复制代码


6.3、创建文件系统


  1. sudo mkfs.ext4 -m0 /dev/rbd/rbd/foo
复制代码

6.4、挂载文件系统

  1. sudo mkdir /mnt/ceph-block-device
  2. sudo mount /dev/rbd/rbd/foo /mnt/ceph-block-device
  3. cd /mnt/ceph-block-device
复制代码


1、列出存储池

  1. ceph osd lspools
复制代码


2、创建存储池

  1. ceph osd pool create pool-name pg-num pgp-num
  2. ceph osd pool create test 512 512
复制代码


3、删除存储池

  1. ceph osd pool delete test test --yes-i-really-really-mean-it
复制代码


4、重命名存储池

  1. ceph osd pool rename current-pool-name new-pool-name
  2. ceph osd pool rename test test2
复制代码


5、查看存储池统计信息

  1. rados df
复制代码


6、调整存储池选项值

  1. ceph osd pool set test size 3 设置对象副本数
复制代码


7、获取存储池选项值

  1. ceph osd pool get test size 获取对象副本数
复制代码



1、创建块设备映像

  1. rbd create --size {megabytes} {pool-name}/{image-name}
  2. rbd create --size 1024 test/foo
复制代码


2、罗列块设备映像

  1. rbd ls
复制代码


3、检索映像信息

  1. rbd info {image-name}
  2. rbd info foo
  3. rbd info {pool-name}/{image-name}
  4. rbd info test/foo
复制代码


4、调整块设备映像大小

  1. rbd resize --size 512 test/foo --allow-shrink 调小
  2. rbd resize --size 4096 test/foo 调大
复制代码


5、删除块设备

  1. rbd rm test/foo
复制代码



内核模块操作
1、映射块设备

  1. sudo rbd map {pool-name}/{image-name} --id {user-name}
  2. sudo rbd map test/foo2 --id admin
复制代码


如若启用cephx认证,还需指定密钥

  1. sudo rbd map test/foo2 --id admin --keyring /etc/ceph/ceph.client.admin.keyring
复制代码


2、查看已映射设备

  1. rbd showmapped
复制代码


3、取消块设备映射

  1. sudo rbd unmap /dev/rbd/{poolname}/{imagename}
  2. rbd unmap /dev/rbd/test/foo2
复制代码





您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

关注

0

粉丝

9021

主题
精彩推荐
热门资讯
网友晒图
图文推荐

Powered by Pcgho! X3.4

© 2008-2022 Pcgho Inc.