ceph分布式存储系统初探
前言
由于公司的业务调整,现在我又要接触ceph这个东西,由于我接手的是一个网盘类项目,所以分布式存储系统ceph就是我必须要学的了。现在压力还是比较大的,从业务直接到后台核心。
大概在这几天,我将ceph的文档过了一遍,并且大致的了解了什么是ceph,或者说ceph的具体应用场景之类,在这里我会大致的介绍一下。
什么是ceph?它一般用在什么地方?
caph这玩意是一个分布式存储的文件系统。在我司一般是和OpenStack苟合在一起。现在我这里的主要是私有云平台在用。一般做大规模存储的比较多。
ceph的具体架构是什么?或者ceph有哪些重要的服务?
其实有个图可以说明这个问题:

使用元数据服务器,执行元数据操作(来确定数据位置)。元数据服务器管理数据位置,以及在何处存储新数据。值得注意的是,元数据存储在一个存储集群(标为 “元数据 I/O”)。实际的文件 I/O 发生在客户和对象存储集群之间。这样一来,更高层次的 POSIX 功能(例如,打开、关闭、重命名)就由元数据服务器管理,不过 POSIX 功能(例如读和写)则直接由对象存储集群管理
ceph有什么特点?为什么要学它?
ceph 的特点,文档上说了,可扩展,高可用,负载均衡,安全。
但是我并不想直接去抄文档的,我自己看了一下原有的架构,结合了我自己的理解,对ceph的这几个特点有了更深刻的认识。
首先就是可扩展,说白了就是可以随便扩充节点,举个例子,你现在搭建了一个ceph对象存储系统做你自己云平台的后台存储,然后你现在用了三台机器做ceph集群存储,然后你现在又买了一台机器,你就可以直接把它扩进你的ceph集群,这样你就有四台机器做存储了。理论上ceph支持数千个节点扩充,这就是ceph的可扩展性,他可以不断地满足你的存储需求,你可以对它不断地扩容。
高可用服务,这个就需要理解一下了,还是举个例子,一般的情况下,如果你有四台机器四个节点做ceph存储,现在突然有个节点挂了,一般的系统单节点进出,如果挂掉的节点是这个节点,那么系统就玩完了。ceph就不存在这个情况,它消灭了集中化,自己特有的CRUSH算法成功的结束了传统的查表方法,把工作分摊到所有Ceph Clients和Ceph OSD上,增强了弹性扩展和高可用性。
安全这个,是我最近在研究的,所以对ceph的安全也看了一下,首先ceph有个特性叫做高可用认证,Cephx是ceph的一套认证系统,用于用户和daemon的认证,防止攻击。
用户产生密钥,Ceph monitor拥有密钥的拷贝,他们双方都能够向对方证明自己拥有密钥从而完成认证,认证过程中密钥始终不暴露。
任何一个Ceph monitor都可以认证用户,没有单点故障。从monitor返回的认证数据包含一个session key,这个session key用用户的密钥加密,所以只有该用户可以向ceph monitor发起请求。认证成功后,用户可以访问所有的OSD和MDS。
差不多现在,你应该对ceph有个基本的了解了,我现在在写一个网盘项目,我准备边写边分享自己的心得,应该还会持续更新下去。
ceph分布式存储系统初探的更多相关文章
- C工程 交互 ceph 分布式存储系统
网上看到有人问,如何在C项目里调用ceph系统对外提供的API,实现分布式存储. 我在网上搜到了相关信息,但是因为不是会员无法追加答案,故而,贴于此. 赠予有缘人:) ———————————————— ...
- 分布式存储系统 Ceph
你了解Ceph吗? Ceph是一种分布式存储系统,它可以将多台服务器组成一个超大集群,把这些机器中的磁盘资源整合到一块儿,形成一个大的资源池(PB级别),然后按需分配给应用使用. 那么你知道Ceph的 ...
- 分布式存储系统之Ceph集群CephX认证和授权
前文我们了解了Ceph集群存储池操作相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16743611.html:今天我们来聊一聊在ceph上认证和授权的 ...
- [转载] 360分布式存储系统Bada的设计和应用
原文: http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=208931479&idx=1&sn=1dc6ea4fa28a ...
- 高性能、高容错、基于内存的开源分布式存储系统Tachyon的简单介绍
Tachyon是什么? Tachyon是一个高性能.高容错.基于内存的开源分布式存储系统,并具有类Java的文件API.插件式的底层文件系统.兼容Hadoop MapReduce和Apache Spa ...
- 分布式存储系统-HBASE
简介 HBase –Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBse技术可在廉价PC Server上搭建起大规模结构化存储集群.HBase利用Had ...
- (第6篇)大数据发展背后的强力推手——HBase分布式存储系统
摘要: 今天我们介绍可在廉价PC Server上搭建起大规模结构化存储集群的分布式存储系统——HBase. 博主福利 给大家赠送一套hadoop视频课程 授课老师是百度 hadoop 核心架构师 内容 ...
- 关于分布式存储系统中-CAP原则(CAP定理)与BASE理论比较
CAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性). Availability(可用性).Partition tolerance(分区容错性),三者不可得兼. CA ...
- 《SPARK/TACHYON:基于内存的分布式存储系统》-史鸣飞(英特尔亚太研发有限公司大数据软件部工程师)
史鸣飞:大家好,我是叫史鸣飞,来自英特尔公司,接下来我向大家介绍一下Tachyon.我事先想了解一下大家有没有听说过Tachyon,或者是对Tachyon有没有一些了解?对Spark呢? 首先做一个介 ...
随机推荐
- hdu1003(C++)解法1
#include<iostream>using namespace std;int Maxsum(int*a, int n);int main(){ int T,n,i,j,count=0 ...
- FTP经典常用命令
FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作系统下使用FTP,都会遇到大量的FTP内部命令. 熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍 ...
- 【温故知新】——BABYLON.js学习之路·前辈经验(二)
前言:在上一篇随笔BABYLON.js学习之路·前辈经验(一)中回顾了组内同事们长时间在Babylon开发实践中的总结出的学习之路和经验,这一篇主要对开发中常见的一些功能点做一个梳理,这里只作为温故知 ...
- 服务器性能之CPU
有时我们会发现开发的应用在CPU核数一样的虚拟服务器上性能表现出较大的差异,这是为什么呢?上次有童鞋问到我这样一个问题,所以我根据自己的理解给大家简说下! CPU生产商为了提高CPU的性能,通常做法是 ...
- AngularJS取得后台Jason数据显示在页面上
代码下载:https://files.cnblogs.com/files/xiandedanteng/angularjsAjax.rar 前台代码: <%@ page language=&quo ...
- [Android]egit取消文件版本号控制
开发项目,多人合作开发变得越来越重要了,在此同一时候,使用git作为协同工具也是越来越多.在此.介绍一下egit取消文件版本号控制的方法. (egit即为eclipse中的git插件) 1.打开Nav ...
- void 0 或者 undefined
Problem 在检查一个值是否为undefined的时候.你们是假设去測试的? 要是之前的我会这样子測试 function isUndefined(obj){ return obj === unde ...
- 在hibernate3中如何利用HQL语句查询出对象中的部分数据并且返回该对象?
例如现在有一个Customer对象 public class Customer{ private Integer cid; private String cname; private Integer ...
- C#连接Oracle的问题(不安装客户端)
win7环境,本地没有安装oracle或者客户端,现在需要程序里连接远程oracle DB: 如果采用System.Data.OracleClient肯定是不行的,这个要安装客户端的: 所以就尝试O ...
- python 基础 1.2--pycharm 的安装及使用
一. windows 先安装pycharm. PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,其提供了一个带编码补全,代码片段,支持代码折 ...