zoukankan      html  css  js  c++  java
  • 干货 | 对象存储的跨地域复制概述

    在这里插入图片描述

    一、功能和使用场景

    1、功能

    跨区域复制(Bucket Cross-Region Replication) 是跨不同区域的Bucket自动、异步复制Object,它会将对源Bucket中的对象的改动(除删除操作)同步到目标Bucket。跨区域复制功能能够很好的满足用户数据复制或者提供Bucket跨区域容灾的需求。目标Bucket中的对象是源Bucket中对象的精确副本,它们具有相同的对象名、元数据以及内容。

    2、使用场景

    当您有以下需要时,设置跨区域复制可能对您有所帮助:

    • 数据复制:由于业务原因,需要将数据从一个存储区域迁移至另一个存储区域,原空间数据仍会保留。
    • 合规性要求:合规性要求所规定的数据需要跨一定距离保存一份副本。通过跨区域同步管理功能,可以在远距离的存储区域之间同步数据以满足这些合规性要求。
    • 数据备份与容灾:如果您对所有写入的数据都希望在异地存储区域维护一份副本,以备发生如海啸、地震等特大灾难导致存储区域损毁时,还能启用异地存储区域的备份数据。
    • 最大限度减少延迟:客户处于两个地理位置。为了最大限度缩短访问对象时的延迟,可以在地理位置与用户较近的存储区域维护对象副本。

    二、Demo演示

    Demo演示示意图:

    在这里插入图片描述

    1、创建Bucket

    华北-北京对象存储新建源Bucket(空间)- asource,在华东-宿迁对象存储新建目标Bucket;
    在这里插入图片描述
    在这里插入图片描述

    2、开启【跨区域复制】功能

    在对象存储源Bucket上开启跨区域复制的功能,目标Bucket选择华东-宿迁的Bucket,其他选项根据自己需要选择;

    在这里插入图片描述
    在这里插入图片描述
    跨区域复制成功开启后如下图所示:

    3、在源Bucket生成测试文件

    华北-北京新建一台云主机,使用S3fs将源Bucket挂载到云主机上,然后用dd命令生成100个小文件到源Bucket里;

    3.1 云主机配置:
    地域 操作系统 配置 带宽 云主机命名
    华北-北京 CentOS 7.4 64位 2核4G 2Mbps pocenv-hcc-hb-test

    在这里插入图片描述

    3.2 挂载Bucket

    A. 安装依赖包

    [root@pocenv-hcc-hb-test ~]# yum install automake fuse fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel -y
    

    B. 安装以及编译

    [root@pocenv-hcc-hb-test ~]# git clone https://github.com/s3fs-fuse/s3fs-fuse.git
    [root@pocenv-hcc-hb-test ~]# cd s3fs-fuse
    [root@pocenv-hcc-hb-test s3fs-fuse]# ./autogen.sh
    [root@pocenv-hcc-hb-test s3fs-fuse]# ./configure
    [root@pocenv-hcc-hb-test s3fs-fuse]# make && make install
    

    在这里插入图片描述
    C. 创建密码文件

    [root@pocenv-hcc-hb-test s3fs-fuse]# echo Access_Key_ID:Access_Key_Secret > ~/.passwd-s3fs
    [root@pocenv-hcc-hb-test s3fs-fuse]# chmod 600 ~/.passwd-s3fs
    

    在这里插入图片描述

    Access_Key_ID:Access_Key_Secret获取方式:https://uc.jdcloud.com/account/accessKey

    在这里插入图片描述

    D. 挂载对象存储到本地目录/hcc(目录名称自定义)

    [root@pocenv-hcc-hb-test s3fs-fuse]# cd
    [root@pocenv-hcc-hb-test ~]# mkdir /hcc
    [root@pocenv-hcc-hb-test ~]# s3fs asource /hcc -o passwd_file=~/.passwd-s3fs -o url="https://s3.cn-north-1.jcloudcs.com"
    

    mkdir:创建hcc文件夹作为本地挂载目录
    s3fs:手动挂载命令,其中bucketname为bucket名称、/hcc是本地挂载路径、passwd_file为密码文件位置、url为京东云对象存储兼容S3域名(请输入空间的Bucket域名)

    E. 查看挂载结果

    [root@pocenv-hcc-hb-test ~]# df -Th
    

    在这里插入图片描述

    3.3 生成测试文件

    通过dd命令在所挂载的对象存储里生成文件(我们这里生成小文件

    [root@pocenv-hcc-hb-test /]# cd /hcc
    [root@pocenv-hcc-hb-test hcc]# ll
    total 0
    [root@pocenv-hcc-hb-test hcc]# for ((i=1;i<=100;i++));do dd if=/dev/zero of=block_$i.file bs=1k count=1024;done
    

    这个命令是在所挂载的对象存储Bucket里生成100个大小为1M的小文件。

    生成测试文件过程的部分截图如下:
    在这里插入图片描述

    4、查看结果

    在源Bucket-asource查看文件生成结果:

    在这里插入图片描述
    在目标Bucket-btarget查看异地复制结果:

    在这里插入图片描述

    如上,测试完成。

  • 相关阅读:
    hdu 2222 Keywords Search
    Meet and Greet
    hdu 4673
    hdu 4768
    hdu 4747 Mex
    uva 1513 Movie collection
    uva 12299 RMQ with Shifts
    uva 11732 strcmp() Anyone?
    uva 1401
    hdu 1251 统计难题
  • 原文地址:https://www.cnblogs.com/jdclouddeveloper/p/11673478.html
Copyright © 2011-2022 走看看