一 Ceph文件系统

1.1 概述

Ceph 对象网关是一个构建在 librados 之上的对象存储接口,它为应用程序访问Ceph 存储集群提供了一个 RESTful 风格的网关 。
Ceph 对象存储支持 2 种接口:
兼容S3: 提供了对象存储接口,兼容亚马逊S3 RESTful接口的一个大子集。
兼容Swift: 提供了对象存储接口,兼容Openstack Swift接口的一个大子集。
Ceph 对象存储使用 Ceph 对象网关守护进程( radosgw ),一个与 Ceph 存储集群交互的 FastCGI 模块。提供了与 OpenStack Swift 和 Amazon S3 兼容的接口, RADOS 要有它自己的用户管理。 Ceph 对象网关可与 Ceph FS 客户端或 Ceph 块设备客户端共用一个存储集群。 S3 和 Swift 接口共用一个通用命名空间,即可以用一个接口写入数据、然后用另一个接口取出数据。
提示:Ceph 对象存储不使用 Ceph 元数据服务器。
新版Ceph Storage简化Ceph对象网关的安装和配置,Gateway守护程序嵌入Civetweb,因此您不必安装Web服务器或配置FastCGI。此外,ceph-deploy可以安装网关包,生成密钥,配置数据目录并为您创建网关实例。

二 对象存储安装

2.1 切换部署用户

 [root@deploy ~]# su - manager

2.2 添加RGW

 [manager@deploy my-cluster]$ ceph-deploy rgw create node1
提示:要使用Ceph的Ceph对象网关组件,必须部署RGW实例;
默认情况下,RGW实例将侦听端口7480.可以通过在运行RGW的节点上编辑ceph.conf来更改此设置。
注意:若使用ceph-deploy部署的时候出现安装包无法下载,可在部署时候指定ceph.repo为国内源:
 ceph-deploy install --rgw cephclient --repo-url=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/ --gpg-url=https://mirrors.aliyun.com/ceph/keys/release.asc
Civetweb 7480默认使用端口。
 [manager@deploy my-cluster]$ ceph-deploy admin node1
提示:为方便后期deploy节点管理node1,在CLI中使用命令中简化相关key的输出,可将key复制至相应节点。ceph-deploy 工具会把密钥环复制到/etc/ceph目录,要确保此密钥环文件有读权限(如 sudo chmod +r /etc/ceph/ceph.client.admin.keyring )。

2.3 测试访问

浏览器访问:http://172.24.8.72:7480/

三 对象存储使用-S3方式使用

3.1 创建S3网关用户

 [root@cephclient ~]# sudo radosgw-admin user create --uid="rgwuser" --display-name="This is first rgw test user"
 "access_key": "Q0NR1HSL1JQJLXY8LOLF",
"secret_key": "eOkVtFjQjgTjJn12CcxFOIe4CDdVTW0nErJoiLso"
[root@cephclient ~]# yum -y install python-boto #安装测试所需依赖包
 

3.2 创建测试脚本

 [root@cephclient ~]# vim s3.py
#!/usr/bin/python
#****************************************************************#
# ScriptName: s3.py
# Author: xhy
# Create Date: 2019-02-01 22:32
# Modify Author: xhy
# Modify Date: 2019-02-01 22:32
# Version:
#***************************************************************#
import boto
import boto.s3.connection
access_key = 'Q0NR1HSL1JQJLXY8LOLF'
secret_key = 'eOkVtFjQjgTjJn12CcxFOIe4CDdVTW0nErJoiLso'
conn = boto.connect_s3(
aws_access_key_id = access_key,
aws_secret_access_key = secret_key,
host = 'node1', port= 7480,
is_secure=False,
calling_format = boto.s3.connection.OrdinaryCallingFormat(),
)
bucket = conn.create_bucket('my-first-s3-bucket')
for bucket in conn.get_all_buckets():
print "{name}\t{created}".format(
name = bucket.name,
created = bucket.creation_date,
)
[root@cephclient ~]# python s3.py #运行脚本
my-first-s3-bucket 2019-02-01T15:14:55.284Z
 
注意:安装所需python-boto 包,使用认证信息连接 S3,然后创建了一个 my-first-s3-bucket 的 bucket,最后列出所有已创建的 bucket,打印名称和创建时间。

四 对象存储使用-SWIFT方式使用

4.1 创建Swift用户

 [root@cephclient ~]# sudo radosgw-admin subuser create --uid=rgwuser --subuser=rgwuser:swift --access=full
     "swift_keys": [
{
"user": "rgwuser:swift",
"secret_key": "yMoTQlEeFmwDw5gojPcJh44G5xpp3gvGItN3GoEE"
}
 

4.2 安装相关依赖包

 [root@cephclient ~]# curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
[root@cephclient ~]# python get-pip.py
[root@cephclient ~]# pip install --upgrade setuptools
[root@cephclient ~]# pip install --upgrade python-swiftclient
 

4.3 测试确认

 [root@cephclient ~]# swift -A http://node1:7480/auth/1.0 -U rgwuser:swift -K 'yMoTQlEeFmwDw5gojPcJh44G5xpp3gvGItN3GoEE' list			#查看相关bucket
my-first-s3-bucket
 
注意:node1:7480 为网关服务器的外网访问 IP 地址,即172.24.8.72主机,端口默认 7480,若已修改端口号,则修改为对应端口。
 
参考链接:http://docs.ceph.org.cn/install/install-ceph-gateway/

006.Ceph对象存储基础使用的更多相关文章

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

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

  2. Ceph对象存储网关中的索引工作原理<转>

    Ceph 对象存储网关允许你通过 Swift 及 S3 API 访问 Ceph .它将这些 API 请求转化为 librados 请求.Librados 是一个非常出色的对象存储(库)但是它无法高效的 ...

  3. 基于LAMP php7.1搭建owncloud云盘与ceph对象存储S3借口整合案例

    ownCloud简介 是一个来自 KDE 社区开发的免费软件,提供私人的 Web 服务.当前主要功能包括文件管理(内建文件分享).音乐.日历.联系人等等,可在PC和服务器上运行. 简单来说就是一个基于 ...

  4. Ceph对象存储 S3

    ceph对象存储 作为文件系统的磁盘,操作系统不能直接访问对象存储.相反,它只能通过应用程序级别的API访问.ceph是一种分布式对象存储系统,通过ceph对象网关提供对象存储接口,也称为RADOS网 ...

  5. ceph 对象存储跨机房容灾

    场景分析 每个机房的Ceph都是独立的cluster,彼此之间没有任何关系. 多个机房都独立的提供对象存储功能,每个Ceph Radosgw都有自己独立的命名空间和存储空间. 这样带来两个问题: 针对 ...

  6. ceph对象存储RADOSGW安装与使用

    本文章ceph版本为luminous,操作系统为centos7.7,ceph安装部署方法可以参考本人其他文章. [root@ceph1 ceph-install]# ceph -v ceph vers ...

  7. CEPH 对象存储的系统池介绍

    RGW抽象来看就是基于rados集群之上的一个rados-client实例. Object和pool简述 Rados集群网上介绍的文章很多,这里就不一一叙述,主要要说明的是object和pool.在r ...

  8. ceph对象存储场景

    安装ceph-radosgw [root@ceph-node1 ~]# cd /etc/ceph # 这里要注意ceph的源,要和之前安装的ceph集群同一个版本 [root@ceph-node1 c ...

  9. 直播流怎么存储在Ceph对象存储上? Linux内存文件系统tmpfs(/dev/shm) 的应用

    一./dev/shm理论 默认的Linux发行版中的内核配置都会开启tmpfs,映射到了/dev/下的shm目录.可以通过df 命令查看结果./dev/shm/是linux下一个非常有用的目录,因为这 ...

随机推荐

  1. Confluence 6 MySQL 问题解决

    如果 Confluence 提示没有 class 文件,你可能将你的 JDBC 驱动放置到了错误的文件夹. 如果你收到了下面的错误信息,请确认 confluenceuser 用户已经具有了所有需求的数 ...

  2. Max Sum (dp)

    Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. F ...

  3. LeetCode(69):x 的平方根

    Easy! 题目描述: 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去. 示例 1: 输入: ...

  4. PLC漏洞问题

    1.PLC采用大多是经过裁剪的实时操作系统,比如像linux RT.QNX.VxWorks等,这些实时操作系统广泛应用在通信.军事.航天.等工程领域,但是随之工业与网络的互连爆发出很多问题,常见的PL ...

  5. requests中get和post传参

    get请求 get(url, params=None, **kwargs) requests实现get请求传参的两种方式 方式一: import requests url = 'http://www. ...

  6. 目标检测算法之YOLOv1与v2

    YOLO:You Only Look Once(只需看一眼) 基于深度学习方法的一个特点就是实现端到端的检测,相对于其他目标检测与识别方法(如Fast R-CNN)将目标识别任务分成目标区域预测和类别 ...

  7. 转: 解压Assets.car (iOS加密资源)

    今天想获取APP的资源,但是查看xxx.app文件夹里面,缺少了大部分资源.在文件夹里面发现Assets.car这个文件,发现文件很大有40多M,猜想图片资源会不会被压缩到这里面了,所以就网络上查了下 ...

  8. zookeeper 学习 状态机复制的共识算法

    https://www.youtube.com/watch?v=BhosKsE8up8 state machine replication 的 共识(consensus) 算法 根据CAP理论,一个分 ...

  9. cuda by example【读书笔记1】

    cuda 1. 以前用OpenGL和DirectX API简介操作GPU,必须了解图形学的知识,直接操作GPU要考虑并发,原子操作等等,cuda架构为此专门设计.满足浮点运算,用裁剪后的指令集执行通用 ...

  10. 转:ubuntu-E:Encountered a section with no Package: header的解决办法

    http://blog.csdn.net/hs794502825/article/details/7835902 blog.csdn.net/lixiang0522/article/details/7 ...