最近更新时间:2025-02-25 17:44:47
登录文件存储KPFS控制台。
在文件系统列表页,单击创建按钮。
在创建页面,配置文件系统相关信息。
参数 | 说明 |
计费方式 | 包年包月、按量付费(按日月结) |
地域 | 选择文件系统所在地域。
|
可用区 | 选择文件系统所在的可用区。
|
类型 | 文件系统存储类型,包括:
更多信息,请参见产品规格。 |
文件系统名称 | 输入文件系统的自定义名称。
|
条带块大小 | 选择文件系统的条带块大小,建议根据您业务的文件大小进行选择。仅性能Ⅰ型支持。
|
容量 | 设置文件系统的存储容量。
|
单击立即购买,完成文件系统创建。
进入文件系统详情,查看文件系统挂载方法。
在KPFS服务所在的相同地域中,创建云服务器KEC实例。
获取访问密钥
文件存储服务KPFS需使用您金山云账户的访问秘钥作为访问凭证,支持主用户或子用户,获取方式如下:
子用户(推荐)
主用户
在IAM控制台Access Keys页,创建密钥并下载到本地保存。
注意
若您禁用或更换密钥对,使用该访问密钥进行挂载的客户端将无法读写。
安装客户端
参考文件系统详情-挂载方法栏位
sudo curl -L http://198.19.28.45:8080/onpremise/juicefs -o /usr/local/bin/juicefs && sudo chmod +x /usr/local/bin/juicefs
完成安装后,在命令行运行 juicefs --help
,如果正常打印出帮助信息,表示客户端安装完成。如果报错 command not found
,请检查系统环境变量设置,确保将 /usr/local/bin
加入 PATH
。
挂载文件系统
参考文件系统详情-挂载方法栏位
sudo /usr/local/bin/juicefs mount $VOL_NAME $MOUNTPOINT
$VOL_NAME
输入文件系统名称,$MOUNTPOINT
输入实际际挂载的路径。
客户端挂载过程中,需输入文件系统的Token和访问密钥。
sudo /usr/local/bin/juicefs mount test-fs /test
Token for test-fs:********
Secret ID for ks3 bucket 2000176024-test-fs-snx187g2:********
Secret Key for ks3 bucket 2000176024-test-fs-snx187g2:********
通过juicefs bench
命令对文件系统进行基础的性能和功能验证,确保文件系统能够正常访问且性能符合预期。
juicefs bench /test
运行 juicefs bench
命令以后会根据指定的并发度(默认为 1)往文件系统中写入及读取 N 个大文件(默认为 1)及 N 个小文件(默认为 100),并统计读写的吞吐和单次操作的延迟,以及访问元数据引擎的延迟。
mount
命令支持平滑重新挂载,只需编辑挂载选项并运行 juicefs mount
即可。
# 确认挂载点已经存在
$ df -h /test
Filesystem Size Used Avail Use% Mounted on
JuiceFS:mytest 1.0T 11G 1014G 1% /test
# 修改挂载选项,重新挂载
# 如果忘记了当前的挂载命令,使用ps -ef | grep /usr/local/bin/juicefs命令获取原挂载命令
$ sudo /usr/local/bin/juicefs mount mytest /test --buffer-size=300
OK, mytest is ready at /test.
# 检查运行时配置文件,确认参数生效
grep -i buffer /jfs/.config
平滑重启不支持修改 FUSE参数。如需修改 FUSE参数,请先卸载后重新挂载。
文件系统挂载成功可以正常使用后,按需设置开机自动挂载。KPFS客户端内置了自动更新fstab的功能,将挂载信息写入 /etc/fstab
,便能实现开机自动挂载。
# 需要 root 权限才能修改 /etc/fstab
$ sudo /usr/local/bin/juicefs mount --update-fstab $VOL_NAME $MOUNTPONT
$ grep $VOL_NAME /etc/fstab
<VOL_NAME> <MOUNTPONT> juicefs _netdev 0 0
如果你有意自行控制,请注意:
需要创建一个从 /sbin/mount.juicefs
到 juicefs
可执行文件的软链接,操作系统解析 fstab 时会调用 /sbin/mount.juicefs
命令。
挂载命令所包含的各种参数,也需要在 fstab options 列加以声明,注意去掉 -
前缀,并将参数取值以 =
连接,举例说明:
$ sudo /usr/local/bin/juicefs mount --update-fstab $VOL_NAME $MOUNTPONT -b --max-uploads=1 --prefetch 2 --writeback mytest /test -o max_read=3
# -o 是 FUSE options,在 fstab 中需特殊对待
$ grep $VOL_NAME /etc/fstab
<VOL_NAME> <MOUNTPONT> juicefs _netdev,background,max-uploads=1,max_read=3,prefetch=2,writeback 0 0
使用 umount
命令卸载文件系统。
umount /test
如果命令行返回 umount: /test: target is busy.
,说明文件系统正在使用,可以使用 lsof $MOUNTPOINT
找到并结束相关应用的进程后再执行卸载。
对于 Linux 发行版,可以使用 -l
选项执行延迟卸载(立即卸载文件系统,已经打开的文件句柄释放之后,客户端才真正退出)。
umount -l /test
安装前的准备工作
确定安装客户端的节点在存储侧已经完成授权
AMD机型,需关闭iommu
Linux下的/etc/default/grub需有下列参数
GRUB_CMDLINE_LINUX:需包含"split_lock_detect=off"
下载客户端
按照集群使用的内核选择客户端版本,不同内核需使用不同的安装包。如更换内核,需先卸载客户端后再更换内核,然后重新安装部署客户端。
如客户端不通公网,请使用内网地址下载。
wget https://nas-s-bj.ks3-cn-beijing.ksyuncs.com/posix-client/v412-91030/ofs-client-ubuntu22.04.3-5.15.0-88-generic-X86-MLX5.8_3.0-330000-000-UStor_ofs4.1.2_930_release_412c33989cea_20241030_093039-53-1.tar.xz
地域 | 外网下载地址 | 内网下载地址 | 适配内核 | 适配网卡驱动 |
华北1(北京亦庄) cn-beijing-6 | Ubuntu 22.04.3:内核:5.15.0-88-generic | 网卡驱动:5.8-3.0.7.0-LTS | ||
华东2(宁波) cn-ningbo-1 | Ubuntu 22.04.3:内核:5.15.0-88-generic | 网卡驱动:5.8-3.0.7.0-LTS | ||
西北1(庆阳) cn-northwest-1 | Ubuntu 20.04:内核:5.4.0-125-generic | 网卡驱动:5.8-3.0.7.0-LTS | ||
西北3(宁夏) cn-northwest-3 | Ubuntu 22.04.3:内核:5.15.0-88-generic | 网卡驱动:5.8-3.0.7.0-LTS | ||
西北4(海东) cn-northwest-4 西北5(克拉玛依) cn-northwest-5 | Ubuntu 22.04.3:内核:5.15.0-88-generic | 网卡驱动:5.8-3.0.7.0-LTS |
使用tar指令对客户端解压缩
tar xvf ofs-client-ubuntu22.04.3-MLX5.8_3.0-202628-development_ofs4.0.2_lc_v3_release_682c67e0e707_20240305_220218-53-1.tar.xz
安装客户端并挂载文件系统
4.1 自动挂载
cd client
python3 ./install.py --ips=xxxxx
# 如果本机无python3环境,将第二步替换为
./install.py --ips=xxxxx
参数 | 是否必填 | 说明 |
--ips | 是 | 存储节点的数据网IP,联系金山云技术团队获取。 |
--historyloglocation | 否 | 可自行指定历史日志存放路径(安装时把这个路径作为源路径,创建一个到/var/log/backup的软链接,且卸载软件不会删除该软链接);如不填,历史日志默认存放在/var/log/backup |
--force=1 | 否 | 检查存储版本和客户端版本是否一致,force=1 表示强制安装。 |
安装完成后,执行df -h,查看文件系统是否成功挂载。
4.2 手动挂载(可选)
mount -t storage -o sysname=xxxx -o fsname=xxxx -o async,user_xattr $sysname_fsname $mntname
参数 | 说明 |
-t storage | 文件存储类型 |
sysname | 前往 控制台>文件系统详情 >基本信息,获取存储池名称 |
fsname | 文件系统名称 |
sysname_fsname | 远端挂载点,由存储系统名称及文件系统名称组成,两个名称中间使用下划线连接。 |
mntname | 本地挂载点,建议使用/mnt下的同名目录(与文件系统同名) |
挂载参数 sync/async | 同步/异步写,默认采用异步写以有效利用缓存来提升数据写入性能,但异步写入在节点断电时存在丢失缓存中数据的风险,若不能接受此风险,请选择同步写。 |
挂载参数 atime/noatime | 即仅访问、不修改文件内容时也更改文件的时间戳,开启此选项会影响集群性能,默认不跟踪访问文件的时间戳。 |
挂载参数 acl/no_acl | POSIX ACL,针对Unix系统的访问控制列表;默认关闭,文件/目录可设置owner、group、other的基本权限;若要为文件/目录设置其他指定用户/用户组的权限,可开启此选项后通过setfacl、getfacl进行设置; |
挂载参数 user_xattr/no_user_xattr | 开启此选项以支持setfattr、getfattr操作,用户可以为文件/目录自定义添加自定义的key/value键值对属性,建议开启 |
执行卸载脚本
/clikingstorage/uninstall.py
纯净模式