虚拟化容器,大数据,DBA,中间件,监控。

centos7部署ceph集群

13 02月
作者:admin|分类:系统运维

服务器信息

IP hostname module
192.168.7.11 ceph1 ceph-deploy,osd,mon
192.168.7.12 ceph2 osd,mon
192.168.7.13 ceph3 osd,mon

 

前期准备

关闭selinux,安装系统信息

    

三台主机分别命名:hostname ceph{1,2,3}

分别配置本地解析

cat >> /etc/hosts << EOF
192.168.7.11 ceph1
192.168.7.12 ceph2
192.168.7.13 ceph3
EOF

开启防火墙端口

    firewall-cmd --permanent --add-port=6789/tcp    #admin

    firewall-cmd --permanent --add-port=6800-8000/tcp    #osd

    firewall-cmd --reload

更换yum源阿里源

    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

    yum clean all

    yum makecache

同步时间

    yum -y install ntpdate ntp
    ntpdate cn.ntp.org.cn
    systemctl restart ntpd && systemctl enable ntpd

ssh免密登陆,ceph1上配置

    ssh-keygen

    ssh-copy-id ceph1

    ssh-copy-id ceph2

    ssh-copy-id ceph3

 

官网推荐遇到报错,从新开始

    ceph-deploy purge {ceph-node} [{ceph-node}]

    ceph-deploy purgedata {ceph-node} [{ceph-node}]

    ceph-deploy forgetkeys

    rm ceph.*

 

安装部署:

增加 yum配置文件

    vim /etc/yum.repos.d/ceph.repo

[Ceph]
name=Ceph packages for $basearch
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/$basearch
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1

[Ceph-noarch]
name=Ceph noarch packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/noarch
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1

[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/SRPMS
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1

更新源 

    yum clean all && yum list

安装ceph-deploy,安装EPEL存储库

    yum install epel-release -y

    yum -y install ceph-deploy python-pip

创建ceph目录

    mkdir ceph && cd ceph

创建集群,创建在此目录生成文件,ceph-deploy –cluster {cluster-name} new ceph1 ceph2 ceph3 #创建一个自定集群名称的ceph集群,默认为ceph

    ceph-deploy new ceph1 ceph2 ceph3

    

    Ceph配置文件、一个日志文件和一个monitor密钥环

遇到报错

    

    故障原因及解决:1.hosts本地解析未添加,添加本地解析

                                 2.命令拷贝出错,手动输入命令,多执行几次解决

修改配置文件

    vim ceph.conf

[global]
fsid = df10a8e8-6610-4ab1-bc56-707e34f5530a
mon_initial_members = ceph1, ceph2, ceph3
mon_host = 192.168.7.11,192.168.7.12,192.168.7.13
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
rbd_default_features = 1
mon clock drift allowed = 2
mon clock drift warn backoff = 30
public_network = 192.168.7.0/24

    部分操作系统kernel只支持layering,所以最好直接在配置文件指明创建rbd时默认支持的特性
    rbd_default_features = 1

    由于ceph分布式对时钟的同步要求很高,可以将同步误差范围调大;
    mon clock drift allowed = 2
    mon clock drift warn backoff = 30

    网络添加

    public_network = 192.168.7.0/24

    官网建议:一般来说,我们不建议用单网卡 OSD 主机部署两个网络。然而这事可以实现,把 public addr 选项配在 [osd.n] 段下即可强制 OSD 主机运行在公共网,其中 n 是其 OSD 号。另外,公共网和集群网必须互通,考虑到安全因素我们不建议这样做

安装Ceph软件包

    yum -y install ceph ceph-radosgw #都需要执行,或者管理端执行ceph-deploy install ceph1 ceph2 ceph3

ceph-deploy安装截图

初始化monitor(s),并收集密钥

    ceph-deploy mon create-initial

    

使用ceph-deploy把配置文件和admin密钥拷贝到所有节点,以便您每次执行Ceph命令行时就无需指定monitor地址和ceph.client.admin.keyringceph.client.admin.keyring

    ceph-deploy admin ceph1 ceph2 ceph3

检查集群状态

    ceph -s   #health: HEALTH_OK就表明成功

    

三台各增加100G硬盘,使用硬盘创建OSD

ceph-deploy disk zap ceph1 /dev/sdb
ceph-deploy osd create ceph1 --data /dev/sdb
ceph-deploy disk zap ceph2 /dev/sdb
ceph-deploy osd create ceph2 --data /dev/sdb
ceph-deploy disk zap ceph3 /dev/sdb
ceph-deploy osd create ceph3 --data /dev/sdb

    注:如果要在LVM卷上创建OSD,则参数 –data 必须是 volume_group/lv_name ,而不是卷的
块设备的路径

部署mgr,L版以后才需要部署

    ceph-deploy mgr create ceph1 ceph2 ceph3

检查集群状态

    ceph -s    #data有数据表明成功

    

可开启dashboard模块,用于UI查看

    ceph mgr module enable dashboard

    

浏览器访问:IP:7000

 

官方文档:http://docs.ceph.org.cn/

 

 

-----------日常记录---------------

 

浏览482 评论0
返回
目录
返回
首页
Windows 下安装pgsql k8s部署prometheus + grafana