环境

系统:Centos 7(系统最小化安装)
版本:Ceph mimic

系统配置

配置主机名hostname、hosts、关闭firewalld、ssh无密码登录、ntp时间同步等,过程略。

保存下载rpm包,安装或升级的同时保留RPM包。yum 默认情况下,升级或者安装后会删除下载的rpm包。不过,我们也可以设置不删除下载的rpm包。

1
2
3
4
vim/etc/yum.conf
[main]
cachedir=/var/cache/yum
keepcache=0

将 keepcache=0 修改为 keepcache=1, 安装或者升级后,在目录 /var/cache/yum 下就会有下载的 rpm 包了。

配置源,使用阿里源

1
2
3
rm -f /etc/yum.repos.d/*
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

删除阿里内网地址

1
sed -i '/aliyuncs.com/d' /etc/yum.repos.d/*.repo

创建ceph源

1
2
3
4
5
6
7
8
9
10
echo '
[ceph-noarch]
name=Ceph noarch packages
baseurl=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/noarch
enabled=1
gpgcheck=1
priority=1
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
'>/etc/yum.repos.d/ceph.repo

生成缓存

1
yum clean all && yum makecache

指定安装版本的源

1
2
export CEPH_DEPLOY_REPO_URL=https://mirrors.aliyun.com/ceph/rpm-mimic/el7
export CEPH_DEPLOY_GPG_URL=https://mirrors.aliyun.com/ceph/keys/release.asc

安装Ceph

ceph-node1:Ceph mon+osd节点
ceph-node2:Ceph mon+osd节点
ceph-node3;Ceph mon+osd节点

安装ceph-deploy配置工具

1
yum install -y ceph-deploy

创建配置目录

1
mkdir /etc/ceph && cd /etc/ceph/

初始化Mon配置

1
ceph-deploy new --public-network 192.168.111.0/24 ceph-node{1,2,3}

配置网络,单网卡忽略 修改冗余份数为2,日志大小2G

1
2
3
4
5
6
7
8
9
10
echo '
mon_clock_drift_allowed = 2
osd_journal_size = 4086
osd_pool_default_pg_num = 128
osd_pool_default_pgp_num = 128
osd pool default size = 2
osd pool default min size = 1
rbd_default_features = 1
client_quota = true
'>>./ceph.conf

安装Ceph

1
ceph-deploy install --release mimic ceph-admin ceph-node{1,2,3}

初始化monitor和key

1
ceph-deploy --overwrite-conf mon create-initial

分发拷贝配置及密钥

1
2
chmod 644 /etc/ceph/ceph.client.admin.keyring
ceph-deploy admin ceph-admin ceph-node{1,2,3}

创建存储节点,清空磁盘

1
2
3
ceph-deploy disk zap ceph-node1 /dev/vdb
ceph-deploy disk zap ceph-node2 /dev/vdb
ceph-deploy disk zap ceph-node3 /dev/vdb

查看可用磁盘

1
2
3
ceph-deploy disk list ceph-node1
ceph-deploy disk list ceph-node2
ceph-deploy disk list ceph-node3

创建osd

1
2
3
ceph-deploy --overwrite-conf osd create ceph-node1 --data /dev/vdb 
ceph-deploy --overwrite-conf osd create ceph-node2 --data /dev/vdb
ceph-deploy --overwrite-conf osd create ceph-node3 --data /dev/vdb

创建 ceph mgr 管理进程服务,自12版本启用

1
2
3
ceph-deploy --overwrite-conf mgr create ceph-node1
ceph-deploy --overwrite-conf mgr create ceph-node2
ceph-deploy --overwrite-conf mgr create ceph-node3

创建mon

1
2
3
4
5
6
ceph-deploy --overwrite-conf mon create ceph-node1
ceph-deploy --overwrite-conf admin ceph-node1
ceph-deploy --overwrite-conf mon create ceph-node2
ceph-deploy --overwrite-conf admin ceph-node2
ceph-deploy --overwrite-conf mon create ceph-node3
ceph-deploy --overwrite-conf admin ceph-node3

取消Cephx认证(可选)
把下列配置加入 Ceph 配置文件的 [global] 段下即可禁用 cephx 认证

1
2
3
auth cluster required = none
auth service required = none
auth client required = none

修改后,需要重启 Ceph服务,在每个ceph节点上都需要执行

1
2
systemctl restart ceph-mon.target
systemctl restart ceph-osd.target

启用dashboard (在mon节点)

1
ceph mgr module enable dashboard

设置dashboard的ip和端口

1
2
3
ceph config-key put mgr/dashboard/server_addr ceph-node1
ceph config-key put mgr/dashboard/server_port 8443
systemctl restart ceph-mgr@ceph-node1

生成并安装自签名证书

1
2
# ceph dashboard create-self-signed-cert
Self-signed certificate created

创建具有管理员角色的用户

1
2
# ceph dashboard set-login-credentials admin admin
Username and password updated

登录Web界面

制作repo文件

拷贝安装下载的ceph rpm包到指定文件夹

1
find /var/cache/yum/ -name *.rpm | xargs -i cp {} ceph_mimic_rpms/

这里要用到createrepo命令,如果没有此命令需要先安装它

1
yum install createrepo -y

生成一个repodata文件夹

1
createrepo ceph_mimic_rpms/

之后就可以正常离线安装ceph。如果机器无法访问外网,需要事先从https://download.ceph.com/keys/release.asc 下载对应的release.asc文件,上传到集群的每一个节点上,执行如下命令:

1
rpm --import './release.asc'

rpm包更新
在使用过程中,可能还需要添加其他rpm包,把rpm包丢到ceph_mimic_rpms/目录下,我们不用重新制作repodata文件,只需要update一下。

1
createrepo --update ceph_mimic_rpms/

本机使用ceph离线源

1
2
mkdir  /etc/yum.repos.d/backup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup

在文件 /etc/yum.repos.d/ceph-deploy.repo中添加以下内容,保存

1
2
3
4
5
[LocalCeph]
name=LocalCeph
baseurl=file:///opt/ceph_mimic_rpms //ceph包存放目录
gpgcheck=0
enabled=1

执行下面命令生效

1
2
3
yum clean all
yum makecache
yum list | grep ceph

最后,离线安装ceph,过程同上。

其他机器使用ceph离线源

在ceph源机器上安装nginx,createrepo,reposync

1
yum install nginx createrepo yum-utils -y

在nginx根目录建立文件夹

1
mkdir -p /usr/share/nginx/html/yum/x86_64/ceph/RPMS

启动nginx

1
systemctl enable nginx && systemctl restart nginx

将下载的ceph包放在/usr/share/nginx/html/yum/x86_64/ceph/RPMS目录下

自动生成repodata

1
createrepo -p /usr/share/nginx/html/yum/x86_64/ceph/

在client端创建repo文件ceph-deploy.repo

1
2
3
4
5
[Ceph]
name=Ceph
baseurl=http://server IP/yum/x86_64/ceph
gpgcheck=0
enabled=1

验证

1
2
3
yum clean all
yum makecache
yum list | grep ceph

Ceph mimic的更多相关文章

  1. 手动部署 Ceph Mimic 三节点

    目录 文章目录 目录 前文列表 部署拓扑 存储设备拓扑 网络拓扑 基础系统环境 安装 ceph-deploy 半自动化部署工具 部署 MON 部署 Manager 部署 OSD 部署 MDS 部署 R ...

  2. ceph mimic版本 部署安装

    ceph 寻址过程 1. file --- object映射, 把file分割成N个相同的对象 2. object - PG 映射, 利用静态hash得到objectID的伪随机值,在 "位 ...

  3. Ceph RBD 的实现原理与常规操作

    目录 文章目录 目录 前文列表 RBD RBD Pool 的创建与删除 块设备的创建与删除 块设备的挂载与卸载 新建客户端 块设备的扩缩容 RBD 块设备的 Format 1 VS Format 2 ...

  4. Kubernetes master服务定制编译docker镜像

    前言 之前部署了Kubernetes 1.13.0,发现master服务的启动方式与1.10.4版本有所区别,kube-apiserver.kube-controller-manager和kube-s ...

  5. Kubernetes添加带Quota限额的CephFS StorageClass

    1. 在Ceph上为Kubernetes创建一个文件系统 # ceph osd pool create cephfs_data # ceph osd pool create cephfs_metada ...

  6. ceph部署实践(mimic版本)

    一.准备环境 4台adminos7.4 环境,存储节点上两块磁盘(sda操作系统,sdb数据盘) clientadmin storage1storage2storage3 二.配置环境 1.修改主机名 ...

  7. 腾讯云存储专家深度解读基于Ceph对象存储的混合云机制

    背景 毫无疑问,乘着云计算发展的东风,Ceph已经是当今最火热的软件定义存储开源项目.如下图所示,它在同一底层平台之上可以对外提供三种存储接口,分别是文件存储.对象存储以及块存储,本文主要关注的是对象 ...

  8. ceph版本号

    概述 第一个 Ceph 版本是 0.1 ,要回溯到 2008 年 1 月.多年来,版本号方案一直没变,直到 2015 年 4 月 0.94.1 ( Hammer 的第一个修正版)发布后,为了避免 0. ...

  9. 虚拟机使用ceph-deploy安装ceph

    参考: ceph官网介绍 使用ceph-deploy安装Ceph 12.x 安装虚拟机 首先安装虚拟机环境,虚拟机安装这里不做介绍,本实验使用的镜像为CentOS-7-x86_64-Everythin ...

随机推荐

  1. arcgis api 3.x for js 入门开发系列十四最近设施点路径分析(附源码下载)

    前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...

  2. POST一下就知道:人生苦短,我用Python!

    Python编程笔记---- 背景: “闸机端”简版程序要求: 读取扫描仪得到的userID; 向服务器发送请求进行验证: 根据返回值(True/False)决定闸机的信号. 1. 文件的读取 网上买 ...

  3. javafx:JavaFX Scene Builder 2.0打开含有第三方jar包的fxml文件报错 Caused by: java.lang.ClassNotFoundException

    报错如下: java.io.IOException: javafx.fxml.LoadException: /C:/User.................test.fxml at com.orac ...

  4. ChromeDriver截图

    一.NuGet安装Selenium.Chrome.WebDriver和Selenium.WebDriver 二.将packages\Selenium.Chrome.WebDriver.2.45\dri ...

  5. 分布式缓存Redis集群配置使用

    Redis 简介          redis是一种开源的.基于内存的.可持久化的.高性能的Key-Value数据存储系统. redis能做什么? 持久化存储  高速缓存 消息中间件         ...

  6. VS Code常用快捷键大全

    常用 General 按 Press 功能 Function Ctrl + Shift + P,F1 显示命令面板 Show Command Palette Ctrl + P 快速打开 Quick O ...

  7. 从Linux 与 Unix 异同,看开源世界的发展!

    从Linux 与 Unix 异同,看开源世界的发展! 如果你是一名20多岁或30多岁的软件开发人员,那么你已成长在一个由Linux主导的世界中.数十年来,它一直是数据中心的重要参与者,尽管很难找到明确 ...

  8. 蚂蚁 uva 10881

    思路: 一,两个点相撞然后,相互弹开.这样其实和两个点穿过去差不多, 但是对于单个点而言,这样肯定不行. 二,当你发现了不管什么情况,这些点的相对位置是不变的, 比如 1, 4, 3, 2 不管怎么移 ...

  9. TypeError: argument 1 must be an integer, not _subprocess_handle/OSError: [WinError 87]

    Error Msg: Traceback (most recent call last): File "c:\python27\lib\site-packages\celery\worker ...

  10. form单选框

    form中的单选框: var resultStartRadio = new Ext.form.RadioGroup({ id : 'resultStartRadio', name :"for ...