文件访问协议和文件系统是两码事,文件访问协议可以访问多种文件系统,是访问文件的一种方式
NFS(Network File System)是SUN公司开发,现在由IETF(Internet Engineering Task Force)主持新版本开发的文件共享协议,主要应用于Linux、UNIX、Mac OS和VMware操作系统环境的文件系统共享
mount -t nfs serverip/hostname:/home/nfstestdir/mnt/
yum install nfs-utils -y
showmount -e serverip
showmount
mount serverip:/nfsshare/nfs1 /mnt
CIFS(Common Internet File System)是微软公司开发的文件共享协议,主要应用于Windows操作系统环境的文件系统共享。
FTP(File Transfer Protocol)是TCP/IP网络上两台计算机传输文件的协议,主要应用于Internet。
HTTP(Hypertext Transfer Protocol)是用于从WWW(World Wide Web)服务器传输超文本到本地浏览器的传送协议,主要应用于Internet。
一个能让Linux系统应用Microsoft网络通讯协议的软件
Samba既可以用于windows与Linux之间的文件共享,也可
以用于Linux与Linux之间的资源共享
SCSI 即 小型计算机系统接口。小型计算机系统接口(Small Computer System Interface; 简写:SCSI),一种用于计算机和智能设备之间(硬盘、软驱、光驱、打印机、扫描仪等)系统级接口的独立处理器标准。 SCSI是一种智能的通用接口标准,是各种计算机与外部设备之间的接口标准
iSCSI是一种使用TCP/IP协议,在现有IP网络上传输SCSI块命令的工业 标准,它是一种在现有的IP网络上无需安装单独的光纤网络即可同时传输消息和块数据的突破性技术
iSCSI基于应用非常广泛的TCP/IP协议,将SCSI命令/数据块封装为iSCSI包,再封装至TCP 报文,然后封装到IP 报文中
写入U盘本地文件系统协议进行写入的,对比iSCSI写入的数据没有IP和TCP
命名阶段:确定需要访问的存储,以及initiator,与FC不同,命名与位置无关;
发现阶段:找到需要访问的存储;
登录阶段:建立于存储的连接,读写之前首先进行参数协商,按照TCP连接登录。
Amazon Simple Storage Service(简称S3),即简单存储服务,是互联网存储解决方案,提供了一个简单 Web 服务接口,可用于随时在Web 上的任何位置存储和检索任何数量的数据
Bucket就是用来存储对象(object)的一个集合
Bucket和Object都是资源(resources), 也就是aws能操作的一个实体(entity)
Bucket可以容纳无限的Object
默认一个账户可以创建100个bucket,这个上限是软性限制,可以通过向AWS提交case来提高上限(出于需求)
Bucket需要归属于某个Region,不是Global的。虽然S3的web console页面是Global的
Bucket由附属的子资源(subresources)来定义bucket的配置
可以对文件进行分类,一个分类保存在一个bucket上,一般使用业务进行分类
S3需要唯一的命名空间Bucket名字必须在AWS的整个S3生态中是唯一的,而不仅仅是只在Region中唯一
Bucket名字必须要全局唯一的原因就是因为Bucket名字也会是域名的一部分,分为域访问和地址访问
一般互联网上一个bucket对应一个子域名
https://bucket.s3.amazonaws.com
https://bucket.s3-aws-region.amazonaws.com
https://s3-aws-region.amazonaws.com/bucket
Region就是bucket实际存放的位置
存放在某个Region的Object永远不会离开这个Region,除非你显式地将它传输出去
选取Bucket的Region的时候,需要考虑延迟,费用等因素。因为建造和运营成本不同,AWS各个Region的S3费用并不相同。而一般来说,选择最近的Region,延迟就越小
S3是一个可以存储近似无限数量Object的Key-Value存储系统,Object包括如下元素:
Bucket + Key + Version ID 三要素唯一定义了S3中的一个Object
Key - object的名字
Value - 存储的数据,大小范围是0~5TB
Version ID - 当versioning功能开启后,每个Object都会拥有一个Version
ID,用来区分有相同Key的不同的Object
Metadata - 用来存储Object其他相关信息的Name-value键值对
Subresources - 定义了一个Object的额外的资源
Access Control Information - 控制每个对象的访问策略
S3是平面结构的和文件系统不同,S3没有目录
但可以通过使用prefixed来模拟目录
Object的键的名称是一序列的 Unicode 字符,它的 UTF-8编码长度最大为 1024 个字节
强烈建议Object的命名要符合DNS命名要求(因为要通过网络进行访问)
采用如下字符集
字母数字字符 [0-9a-zA-Z]和特殊字符 !、-、_、.、*、’、( 以及)
S3是一个RESTful的web service
提供http&https的交互方式
通过REST API来发送请求
可以通过以下几种方式来操作S3
AWS Management console
AWS CLI (Command Line Interface)
AWS SDK’s (Software Development Kits)
操作方式
GET 对等于 Download/Read
PUT 对等于 Upload/Write
DELETE 对等于 Delete