juicefs并不是把文件原封不动的存储,而是把所有存储的文件按照一定的规则拆分成数据块进行存储,所有的数据都是存在云端而不是本地磁盘,元数据信息存入数据库redis等
需要准备
1.云服务器ECS
2.对象存储
3云数据库redis
1.安装juicefs
https://github.com/juicedata/juicefs/releases
2. 创建新的文件系统
输入以下信息
juicefs format \
--storage minio \ #设置存储类型
--bucket http://endpoint地址:端口/rtc \ #设置对象存储存储桶的域名
--access-key minio的access-key \ #设置访问对象存储api的秘钥(accesskey id)
--secret-key minio的secret-key \ #设置accesskey secret
########以上是对象存储相关的信息
"redis://:redis密码@redis地址:redis端口/数据库编号" \
########以上是数据库相关的信息,如果redis是6.0之前的版本,则不需要设置用户名,只需要密码 ;@是分隔符,后面写地址端口数据库编号
miniofs
########最后是文件系统的名称
3.mount挂载
在挂载文件系统的时候,只需要输入数据库信息+指定挂载点。对象存储和文件系统的名称都不需要指定,因为他们已经写入到了数据库中。
juicefs mount redis://:redis密码@redis地址:redis端口/数据库编号 /mnt -d
df -Th
-d 让文件系统以守护进程的形式挂载到目录/mnt中
4.取消挂载
juicefs umount /mnt
5.开机自动挂载
cp /usr/local/bin/juicefs /sbin/mount.juicefs
vim /etc/fstab
mount redis://:redis密码@redis地址:redis端口/数据库编号 /mnt juicefs _netdev,cache-size=20480 0 0
需要把juicefs客户端重命名为 mount.juicefs,并复制到/sbin/目录
_netdev,cache-size=20480 :挂载选项可以根据实际进行调整。size根据服务器硬盘空间决定