牛客秋季活动第六天?
之前我们说了计算,网络,今天我们说说存储部分。
对象存储
对象存储,就是模仿了s3的相关功能,提供单个文件的扩展性功能,不能单一文件持续读写,用于存放一些数据文件,进入云存储的其他数据处理功能和调用api上有着良好的表现。
家用或者小型企业,可以尝试下面几种开源类软件,
minio
适配k8s的存储方向,支持分布式的存储,支持纠删码,目前比例是1:1吧,配置简单方便,同时支持多种api和sdk,兼容s3。
NAS
qnap的nas和群晖的nas均提供了简单的对象存储功能,配置简单方便,支持混合阵列存储的底层搭建。
swift
这个配置稍微复杂些,同时在多主机的基础上需要配置https,需要支持acl,很多云厂商的的对象存储用的就是swift的组件。
openmediavault
这是一个基于debian的系统,提供了很多文件的存取方式和相关协议。
FreeNAS
FreeNAS和FreeNAS Scale都是有s3的协议服务的,直接开启就可以了,底层用的是zfs,复杂的运维的话需要额外学习,老的系统版本是FreeBSD的,学习曲线长些,但是FreeNAS是专用存储,功能强大稳定。
FastDFS
培训班的或者java的课程里面有关于这些的内容,没有客户端和开发的功能,只有api和sdk,仅适合日常开发使用。
块存储
这个执牛耳的估计只有Ceph了,Ceph支持块存储,支持相关方式的切割,除了写入放大的缺点外其他效果挺好,三副本机制比纠删码的方式冗余度高些,同时支持云计算的其他的功能下很多底层操作。
如果不考虑云计算的方式,那么单机zfs的方式,raid5的方式btrfs的方式都是可以考虑的。不展开说明。
可以通过SAN小型机或者中型机的方式提供存储,通过iscsi的模拟块存储也是合理的方式。
归档存储
唔唔唔,这个企业的话上磁带库,自动换磁带的什么方式,结合sas盘控制存取速率,磁带库就完成啦。
家用的话,,,买个LTO-5或者LTO-6的磁带机,再买上二手的磁带,单T成本可以拉到极低。
备份
家用的话直接用备份软件,结合smb,ftp,s3,本地存储,各类云存储,nfs等等方式定期归档就好了,支持增量备份的。
当然,也可以ownCLoud nextCloud,Pydio,Syncthing,btsync等做同步镜像备份。
也可以用unison,rsync,parsync,bbcp等方式做字节级别的备份,效果也不错。
其他的服务提供方式
大数据可以提供HDFS,ClickHouse等等,ELK等方式做对应处理。
可以自建分层存储,这个目前个人使用bcache,也有dm-cache,flashcache,部分系统级软件有直接的分层存储,常用的NAS也有分层存储,windowsserver也有,illmos内核系列的os中也有低于多少TB的支持分层存储。
zfs也支持arc和log,zil负责分离日志和写入到不同的磁盘中。
还有什么遗忘的各位可以补充。