泉州企业网站制作定制,医院网站建设预算表,网站的建设目标是什么意思,中国人做英文网站1.对象存储介绍
1.1 分类
分布式存储的应用场景相对于其存储接口#xff0c;现在流行分为三种: 块存储: 这种接口通常以QEMU Driver或者Kernel Module的方式存在#xff0c;这种接口需要实现Linux的Block Device的接口或者QEMU提供的Block Driver接口#xff0c;块存储一般…
1.对象存储介绍
1.1 分类
分布式存储的应用场景相对于其存储接口现在流行分为三种: 块存储: 这种接口通常以QEMU Driver或者Kernel Module的方式存在这种接口需要实现Linux的Block Device的接口或者QEMU提供的Block Driver接口块存储一般体现形式是卷或者硬盘比如windows里面看到的c盘数据是按字节来访问的对于块存储而言对里面存的数据内容和格式是完全一无所知的。可以简单的理解为玉米粒。 文件存储: 通常意义是支持POSIX接口它跟传统的文件系统如Ext4是一个类型的但区别在于分布式存储提供了并行化的能力如Ceph的CephFS(CephFS是Ceph面向文件存储的接口)但是有时候又会把GFSHDFS这种非POSIX接口的类文件存储接口归入此类。可以简单的理解为数据像玉米粒一样组成玉米棒子再对应到不同的玉米杆上要找到某个玉米粒先找到玉米杆再找到玉米棒子然后根据玉米粒在玉米棒子上的位置找到它。 对象存储: 也就是通常意义的键值存储其接口就是简单的GET、PUT、DEL和其他扩展如七牛、腾讯cos、阿里oss、亚马逊S3。可以简单的理解为数据的玉米粒被做成了玉米罐头每个玉米罐头都有一个唯一出厂号但是买卖罐头都一次是一盒为单位。
1.2 挂载协议 本章重点介绍基于S3FS协议的云存储挂载。 S3FS是Google开发的一款支持将对象存储中的bucket以文件形式导出的文件系统接口兼容POSIX语法
S3FS基于FUSE开发的文件系统允许Linux和MacOS以及windows挂载S3的存储桶到本地文件系统并保持对象原来格式。
只要支持S3存储协议的都支持挂载比如minio、华为云OBS、阿里云OSS等特殊一点的腾讯cos自己整了个cosfs类似于S3FS。
2.华为云OBS、亚马逊云S3等挂载Linux系统
2.1 安装s3fs
#centos 安装
yum -y install s3fs-fuse
#ubantu 安装
apt install s3fs2.2 挂载明亮介绍
S3FS参数说明 命令 s3fs BUCKET:[/PATH] MOUNTPOINT [OPTION]… OPTIONS:
passwd_file: 指定要使用的s3fs密码文件url: 设置用于访问对象存储的 urlendpoint: 存储端点默认值为us-east-1umask: 为装载目录设置umaskno_check_certificate: 不检查认证use_path_request_style: 使用路径请求样式(使用传统API调用)兼容支持与不支持S3的类似api的虚拟主机请求 nonempty: 允许挂载点为非空目录default_acl: 默认private取值有privatepublic-readensure_diskfree: 设置磁盘可用空间。如果磁盘空闲空间小于此值s3fs不适用磁盘空间allow_other: 允许所有用户访问挂载点目录可将该挂载点用于创建NFS共享use_cache: 指定本地文件夹用作本地文件缓存。默认为空del_cache: 在S3FS启动和退出时删除本地缓存enable_noobj_cache: 减少s3fs发送的列举桶的请求从而提升性能dbglevel: 设置消息级别默认关键critical, 可以使用 info 进行调试输出multireq_max: 列出对象的并行请求的最大数据parallel_count: 上传大对象的并行请求数retries: 默认值为5传输失败重试次数storage_class: 存储类默认为标准) 值有 standardstandard_ia , onezone_ia , reduced_redundancyconnect_timeout: 连接超时时间默认为300秒readwrite_timeout: 读写超时默认值为60秒max_stat_cache_size: 最大静态缓存大小默认值为100000个条目(约40MB)stat_cache_expire: 为stat缓存中条目指定过期时间(秒)。此过期时间表示自stat缓存后时间-f : 前台输出执行信息-d: 将dubug消息输出到 syslog中
2.3 创建访问密钥文件
#命令格式echo [IAM用户访问密钥ID]:[ IAM用户访问密钥] [密钥文件名] ( $ACCESS_KEY_ID:SECRET_ACCESS_KEY)
echo username:password /data/s3fs/.passwd-s3fs
# 设置密钥智能被当前用户访问
chmod 600 /data/s3fs/.passwd-s3fs2.4 运行挂载命令
亚马逊云s3官网参考https://aws.amazon.com/cn/blogs/china/s3fs-amazon-ec2-linux/ 华为云官网OBS官网参考https://support.huaweicloud.com/fstg-obs/obs_12_0008.html
#挂载 S3存储
# 命令格式s3fs [S3存储桶名] [本地目录名] -o passwd_file[密钥文件名] -o endpoint[区域名]
s3fs prodfile-bucket /data/s3fs/s3mnt -o passwd_file/data/s3fs/.passwd-s3fs -o urlhttp://s3.cn-north-1.amazonaws.com.cn -o endpointcn-north-1
#挂载华为云OBS
# 命令格式s3fs [S3存储桶名] [本地目录名] -o passwd_file[密钥文件名] -o endpoint[区域名]
s3fs prodfile-bucket /data/s3fs/s3mnt -o passwd_file/data/s3fs/.passwd-s3fs -o urlhttp://obs.cn-north-4.myhuaweicloud.com
#挂载minio存储
# 需要加上 use_path_request_style进行兼容
s3fs prodfile-bucket /data/s3fs/s3mnt -o passwd_file/data/s3fs/.passwd-s3fs -o urlhttp://www.mydomain.com:9001 -o use_path_request_style
# 可以使用 -o dbglevelinfo -f 进行输出调试信息
s3fs prodfile-bucket /data/s3fs/s3mnt -o passwd_file/data/s3fs/.passwd-s3fs -o urlhttp://www.mydomain.com:9001 -o use_path_request_style -o dbglevelinfo -f2.5 开机自动挂载 写入到 /etc/fstab # 命令格式s3fs#[S3存储桶名] [本地目录名] fuse _netdev,[options1],[optins2]... 0 0
s3fs prodfile-bucket /data/s3fs/s3mnt fuse _netdev,passwd_file/data/s3fs/.passwd-s3fs,urlhttp://obs.cn-north-4.myhuaweicloud.com 0 03.阿里云oss等挂载MacOS系统 步骤基本上于Linux系统相同命令略有差别 阿里云oss挂载官网参考https://www.alibabacloud.com/help/zh/oss/developer-reference/mount-oss-buckets-to-local-file-systems-by-using-amazon-s3-protocols 3.1 装s3fs的命令
brew install --cask macfuse
brew install gromgit/fuse/s3fs-mac3.2 配置账号访问信息
#将具有Bucket访问权限的AccessKey ID和AccessKey Secret信息存放在.passwd-s3fs文件中。
echo $ACCESS_KEY_ID:SECRET_ACCESS_KEY ${HOME}/.passwd-s3fs
#将.passwd-s3fs文件的权限设置为600。
chmod 600 ${HOME}/.passwd-s3fs3.3 挂载存储空间
#创建挂载点
mkdir /tmp/oss-bucket
#将华东1杭州地域的examplebucket挂载至/tmp/oss-bucket。
s3fs examplebucket /tmp/oss-bucket -o passwd_file$HOME/.passwd-s3fs -ourlhttp://oss-cn-hangzhou.aliyuncs.com
#如果是与OSS同地域的ECS访问您可以使用oss-cn-hangzhou-internal.aliyuncs.com的内网endpoint。3.4 设置开机自动启动
创建开机自启动脚本
#vim oss-start.sh
#初始化需要先解绑定否则会有意外的错误发生
umount -f /tmp/oss-bucket
nohup s3fs -f examplebucket /tmp/oss-bucket -o passwd_file$HOME/.passwd-s3fs -ourlhttp://oss-cn-hangzhou.aliyuncs.com /dev/null 21
#增加可执行权限
#chmod x oss-start.sh将启动脚本增加到启动项中
4.阿里云oss、腾讯云cos等挂载windos系统
阿里云oss挂载官网参考https://www.alibabacloud.com/help/zh/oss/developer-reference/mount-oss-buckets-to-local-file-systems-by-using-amazon-s3-protocols 腾讯云cos挂载官网参考https://cloud.tencent.com/document/product/436/55241 windos系统挂载云盘需要借助RcloneRclone是一个命令行程序用于管理云存储中的数据支持在50多种云存储产品间同步数据。相对于s3fs和goofysRclone还支持将存储空间挂载到Windows系统上作为本地磁盘共享数据。
4.1 Rclone特点
Rclone支持文件同步、文件传输、加密、挂载等。Rclone支持多种系统能让您将存储空间挂载到本地文件系统中并通过多种协议提供服务 关于Rclone的介绍请参见Rclone。
4.2 安装Winfsp
以下载winfsp-1.12.22339版本为例。下载地址请参见Winfsp
4.3 下载Rclone工具
以下载rclone-v1.60.1-windows-amd64版本为例。下载地址请参见Rclone。Rclone是一个命令行程序下载后只需解压到本地任意目录即可此处以解压到D:\Rclone目录为例。
4.4 配置Rclone。
将D:\Rclone添加到环境变量。 小提示环境变量设置在“我的电脑”-“属性”-“高级”-“环境变量”中增加或修改环境变量后一般需重启系统才能使之生效 打开命令行窗口输入rclone --version然后按下Enter。返回rclone v1.60.1表明Rclone已成功安装。 输入rclone config命令然后按下Enter。 输入n按下Enter然后新建new remote。 以new remote命名为test-remote为例。 输入磁盘名称例如oss-disk然后按下Enter。 选择包含Amazon S3 Compliant Storage的选项即输入5然后按下Enter。 选择包含Alibaba Cloud Object Storage System (OSS)的选项即输入2然后按下Enter。 执行到env_auth按下Enter。 执行到access_key_id输入OSS的访问密钥AccessKey ID然后按下Enter。 执行到 secret_access_key 输入OSS的访问密钥AccessKey Secret然后按下Enter。 执行到endpoint输入访问OSS的endpoint然后按下Enter。 以访问华东1杭州外网为例endpoint填写为oss-cn-hangzhou.aliyuncs.com。如果是ECS上的Windows环境您可以使用oss-cn-hangzhou-internal.aliyuncs.com的内网endpoint。 执行到acl选择Object读写权限。该选项仅对新上传的Object有效。您可以根据实际需求选择合适的读写权限。此处以选择default私有权限为例即输入1然后按下Enter。 执行到storage_class选择Object的存储类型。 此处以选择default继承Bucket存储类型为例即输入1然后按下Enter。 执行到Edit advanced config? (y/n) 输入n然后按下Enter。 输入q完成所有配置。
4.5 挂载存储空间
以将examplebucket挂载到E:盘并以D:\disk-cache路径作为缓存目录为例。
rclone mount oss-disk:/examplebucket E: --cache-dir D:\disk-cache --vfs-cache-mode writes返回The service rclone has been started信息表示挂载成功。此时您还可以查看到examplebucket(E:)的磁盘。
4.6 设置开机启动
创建oss挂载启动脚本
#在E:\oss-cache\start-shell目录创建oss-start.bat内容如下
rclone mount oss-disk:/examplebucket E: --cache-dir D:\disk-cache --vfs-cache-mode writes创建windows程序开机启动脚本
#创建start-oss-shell.bat文件
powershell.exe -command {Start-Process -WindowStyle hidden -FilePath E:\oss-cache\start-shell\oss-start.bat}将开机启动脚本移动至powershell开机启动项下 winR输入 shell:startup,随后将start-oss-shell.bat文件放在该文件下 关机重启即可测试
5.特殊项腾讯云cos挂载Linux系统 腾讯云cos挂载windows和oss、s3等基本类似均是需要借助上述Rclone工具 但是cos挂载到linux系统时与其他云盘就不一样了很是特殊使用s3fs挂载之后打不开cos需要借助其特有的挂载工具cosfs才可以真是格色…。 腾讯云cosfs官网参考https://cloud.tencent.com/document/product/436/30743
5.1 cosfs安装
官网教程:https://cloud.tencent.com/document/product/436/6883 工具下载地址https://github.com/tencentyun/cosfs/releases 下载与系统相匹配的rpm文件后安装
#CentOS7.0
sudo wget https://github.com/tencentyun/cosfs/releases/download/v1.0.21/cosfs-1.0.21-centos7.0.x86_64.rpm
sudo rpm -ivh cosfs-1.0.21-centos7.0.x86_64.rpm
#注意 如果安装时报错提示 conflicts with file from package fuse-libs-*则加 --force 参数再次安装。
#查看是否安装完成
cosfs --help5.2 配置账号访问信息
#将具有Bucket访问权限的AccessKey ID和AccessKey Secret信息存放在.passwd-s3fs文件中。
echo $ACCESS_KEY_ID:SECRET_ACCESS_KEY /tmp/passwd-sts
#将.passwd-s3fs文件的权限设置为600。
chmod 600 /tmp/passwd-sts5.3 执行挂载命令
#使用命令选项 -ocam_role[role] 指定角色为 sts、-opasswd_file[path] 指定密钥文件路径示例如下
cosfs examplebucket-1250000000 /mnt/cosfs -ourlhttp://cos.ap-guangzhou.myqcloud.com -odbglevelinfo -oallow_other -ocam_rolests -opasswd_file/tmp/passwd-stscosfs bucketName mount_address -ourlhttp://cos.ap-beijing.myqcloud.com -odbglevelinfo -opasswd_file/tmp/passwd-sts
#如何挂载 Bucket 下的一个目录
cosfs examplebucket-1250000000:/my-dir /mnt/cosfs -ourlhttp://cos.ap-guangzhou.myqcloud.com -odbglevelinfo
#注意my-dir 必须以 / 开头。5.4 设定 COSFS 开机自动挂载
#安装 fuse 包
#CentOS系统
sudo yum install -y fuse
#Ubuntu系统
sudo apt-get install fuse#在 /etc/fstab 文件中添加如下的内容其中_netdev 选项使得网络准备好后再执行当前命令
cosfs#examplebucket-1250000000 /mnt/cosfs fuse _netdev,allow_other,urlhttp://cos.ap-guangzhou.myqcloud.com,dbglevelinfo