搭建ceph集群(单节点)
https://blog.csdn.net/Greenchess/article/details/77525786
软件环境:
- Centos7 x64
CEPH版本 :
- ceph-deploy v1.5.37
- ceph version 10.2.9
步骤1.修改主机名(即节点名)
1)
sed -i ‘/HOSTNAME/d’ /etc/sysconfig/network
echo “HOSTNAME=主机名” >> /etc/sysconfig/network
cat /etc/sysconfig/network
2)
echo “IP地址 主机名” >> /etc/hosts
cat /etc/hosts
3)
hostname cydb
hostname -f
重启
步骤2.配置SSH
ssh-keygen -t rsa -P ” -f ~/.ssh/id_rsa(-t rsa用RSA加密,-P ‘’空密码,-f保存密码的位置)
ssh-copy-id root@主机名
步骤3.配置firewall
(开启6789端口给MON,6800-7100端口给OSD)
firewall-cmd –zone=public –add-port=6789/tcp –permanent
firewall-cmd –zone=public –add-port=6800-7100/tcp –permanent
firewall-cmd –reload
firewall-cmd –zone=public –list-all
步骤4.关闭selinux
setenforce 0
sed -i s’/SELINUX.*=.*enforcing/SELINUX=disabled’/g /etc/selinux/config
cat /etc/selinux/config
可看到SELINUX=disabled
步骤5.
yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
步骤6.添加ceph.repo文件(把软件包源加入软件仓库)
sudo vim /etc/yum.repos.d/ceph.repo
写入
[ceph-noarch]
name=Ceph noarch packages
baseurl=https://download.ceph.com/rpm-jewel/el7/noarch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
步骤7 安装ceph-deploy(要更新软件库)
sudo yum update
sudo yum install ceph-deploy
检查是否安装成功:ceph-deploy –help
步骤8.部署cluster(集群)
mkdir /opt/ceph-cluster
cd /opt/ceph-cluster
ceph-deploy new 节点名
(这时可以ls一下当前目录,会有一个ceph配置文件、一个monitor密钥环。一个日志文件。)
echo “osd crush chooseleaf type = 0” >> ceph.conf
echo “osd pool default size = 1” >> ceph.conf
echo “osd journal size = 100” >> ceph.conf
cat ceph.conf
步骤9.安装ceph
修改ceph源(外国的源总是timeout)
export CEPH_DEPLOY_REPO_URL=http://mirrors.163.com/ceph/rpm-jewel/el7
export CEPH_DEPLOY_GPG_URL=http://mirrors.163.com/ceph/keys/release.asc
安装ceph
ceph-deploy install 节点名
报错则运行yum remove -y ceph-release之后重新安装ceph
检查是否安装成功:ceph –version
步骤10.部署Monitor
ceph-deploy mon create-initial
检查集群状态:ceph -s
(显示现在是HEALTH_ERR不健康状态)
步骤11.部署两个OSD
1)准备两个块设备(可以是硬盘也可以是LVM卷),这里我们使用LVM(逻辑卷)
dd if=/dev/zero of=ceph-volumes.img bs=1M count=8192 oflag=direct
sgdisk -g –clear ceph-volumes.img
sudo vgcreate ceph-volumes $(sudo losetup –show -f ceph-volumes.img)
sudo lvcreate -L2G -nceph0 ceph-volumes
sudo lvcreate -L2G -nceph1 ceph-volumes
sudo mkfs.xfs -f /dev/ceph-volumes/ceph0
sudo mkfs.xfs -f /dev/ceph-volumes/ceph1
mkdir -p /srv/ceph/{osd0,osd1,mon0,mds0}
sudo mount /dev/ceph-volumes/ceph0 /srv/ceph/osd0
sudo mount /dev/ceph-volumes/ceph1 /srv/ceph/osd1
创建了两个虚拟磁盘ceph0和ceph1并分别挂载到/srv/ceph/osd0和/srv/ceph/osd1目录下
2)挂载两个OSD
ceph-deploy osd prepare monster:/srv/ceph/osd0
ceph-deploy osd prepare monster:/srv/ceph/osd1
3)激活两个OSD
ceph-deploy osd activate monster:/srv/ceph/osd0
ceph-deploy osd activate monster:/srv/ceph/osd1
报错:RuntimeError: Failed to execute command: ceph-disk -v activate –mark-init upstart –mount /srv/ceph/osd0
解决:使用命令 sudo chown ceph:ceph /srv/ceph/osd0,然后重新激活
步骤12.复制admin密钥到其他节点
ceph-deploy admin monster
验证:
ceph的安装状态:ceph -s
ceph集群健康状态:ceph -w
ceph monitor仲裁状态:ceph quorum_status –format json-pretty
ceph mon stat
ceph osd stat
ceph osd tree(显示crush图)
ceph pg stat
ceph auth list(集群的认证密码)
如果碰到麻烦,要从头再来,可以用下列命令清楚配置:
ceph-deploy purgedata {ceph-node} [{ceph-node}]
ceph-deploy forgetkeys
用下列命令可以连 Ceph 安装包一起清除:
ceph-deploy purge {ceph-node} [{ceph-node}]
之后必须重新安装 Ceph
参考文章:http://www.cnblogs.com/YaoDD/p/5217578.htmlUbuntu 14.04 单机安装 CEPH
最后附上一个ceph入门很好的博客地址,讲的都是重点,清楚易懂:
http://www.cnblogs.com/bodhitree/p/4831626.html
还有一个主要讲crush算法的:
http://www.cnblogs.com/chenxianpao/p/5568207.html
---------------------
作者:Green77
来源:CSDN
原文:https://blog.csdn.net/Greenchess/article/details/77525786
版权声明:本文为博主原创文章,转载请附上博文链接!
搭建ceph集群(单节点)的更多相关文章
- CentOS 7 搭建 Ceph 集群(nautilus 版本)
搭建 Ceph 分布式集群( nautilus 版本 ) 一.服务器环境说明 主机名 角色 IP地址 ceph-admin ceph-deploy 192.168.92.21 ceph-node1 m ...
- Vertica集群单节点宕机恢复方法
Vertica集群单节点宕机恢复方法 第一种方法: 直接通过admintools -> 5 Restart Vertica on Host 第二种方法: 若第一种方法无法恢复,则清空宕机节点的c ...
- centos7搭建ceph集群
一.服务器规划 主机名 主机IP 磁盘配比 角色 node1 public-ip:10.0.0.130cluster-ip:192.168.2.130 sda,sdb,sdcsda是系统盘,另外两块数 ...
- elastic集群单节点停机维护
为了elastic时时提供服务,需要elastic至少状态维持在yellow状态.所有,维护时需要依次对elastic单个节点进行维护. 操作步骤如下: 1.停止elastic的自动分配功能 curl ...
- 【Zookeeper】Zookeeper集群单节点提供服务
以下只在特殊情况下使用,不要用在生产环境. 一.问题背景 公司的产品使用Zookeeper做为集群支持,但是客户在验收的时候提出了一个很为难人的要求,那就是3台集群服务,停止2台以后,还要求我们的应用 ...
- Ceph集群搭建及Kubernetes上实现动态存储(StorageClass)
集群准备 ceph集群配置说明 节点名称 IP地址 配置 作用 ceph-moni-0 10.10.3.150 centos7.5 4C,16G,200Disk 管理节点,监视器 monitor ...
- 分布式存储系统之Ceph集群部署
前文我们了解了Ceph的基础架构和相关组件的介绍,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16720234.html:今天我们来部署一个ceph集群: 部 ...
- 利用ansible书写playbook在华为云上批量配置管理工具自动化安装ceph集群
首先在华为云上购买搭建ceph集群所需云主机: 然后购买ceph所需存储磁盘 将购买的磁盘挂载到用来搭建ceph的云主机上 在跳板机上安装ansible 查看ansible版本,检验ansible是否 ...
- Spark集群环境搭建——Hadoop集群环境搭建
Spark其实是Hadoop生态圈的一部分,需要用到Hadoop的HDFS.YARN等组件. 为了方便我们的使用,Spark官方已经为我们将Hadoop与scala组件集成到spark里的安装包,解压 ...
随机推荐
- Lock之ReentrantLock及实现生产者消费者和死锁
Lock是顶层接口,它的实现逻辑并未用到synchronized,而是利用了volatile的可见性.ReentrantLock对了Lock接口的实现主要依赖了Sync,而Sync继承了 Abstra ...
- linux0.11内核源码——用户级线程及内核级线程
参考资料:哈工大操作系统mooc 用户级线程 1.每个进程执行时会有一套自己的内存映射表,即我们所谓的资源,当执行多进程时切换要切换这套内存映射表,即所谓的资源切换 2.但是如果在这个进程中创建线程, ...
- vue.js循环语句
vue.js循环语句 循环使用 v-for 指令. v-for 指令需要以 site in sites 形式的特殊语法, sites 是源数据数组, site 是数组元素迭代的别名. v-for 可以 ...
- Ant Design Pro (中后台系统)教程
一.概念:https://pro.ant.design/docs/getting-started-cn(官方网站) 1.Ant Design Pro 是什么: https://www.cnblogs ...
- 一双木棋(chess)
一双木棋(chess) 题目描述 菲菲和牛牛在一块 nn 行 mm 列的棋盘上下棋,菲菲执黑棋先手,牛牛执白棋后手. 棋局开始时,棋盘上没有任何棋子,两人轮流在格子上落子,直到填满棋盘时结束.落子的规 ...
- 20175120彭宇辰 《Java程序设计》第十周学习总结
教材内容总结 十二章 Java多线程机制 一.进程与线程.操作系统与进程 -线程不是进程,是比进程更小的执行单位.但与进程不同的是,线程的中断和恢复可以更加节省系统的开销. -线程可以共享进程中的某些 ...
- appium常见问题11_小米手机初次启动app,报错255“Requires permission android.permission.WRITE_SECURE_SETTINGS”
问题: 新申请的测试机到啦,申请机型是小米9.打开开发者模式.USB调试后,连接电脑,准备跑一下自动化脚本.但是在pycharm中点击run后,出现报错,报错code:255,提示“Requires ...
- PAT甲级【2019年3月考题】——A1159 Structure_of_a_BinaryTree【30】
Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder and i ...
- Visual Studio Code 键盘参考表
2019年4月6日,对照中英翻译. 一般 Ctrl+Shift+P, F1 显示命令调色板 Ctrl+P 快速打开,转到文件… Ctrl+Shift+N 新建窗口/实例 Ctrl+Shift+W ...
- grep与egrep命令
greo -E 等同于 egrep grep常用两种方式 1. grep -c python a.txt 2. cat a.txt | grep -c python a.txt文件如下 i l ...