通过obsfs使用OBS服务,需要将OBS的并行文件系统挂载至您本地的文件系统上。挂载完成后,可以像操作本地目录一样操作OBS并行文件系统,比如保存某个文件至挂载目录,即上传对象至OBS。
obsfs挂载到华为云服务器ECS上时占用OBS流量,不占用华为云服务器ECS的流量。
约束与限制obsfs只支持挂载OBS并行文件系统,不支持挂载对象存储桶。
本地挂载目录可以不为空,但是挂载后此目录下原有的内容将不可用,取消挂载后即可恢复。建议使用空目录作为挂载目录。
挂载目录中的文件或文件夹不支持硬链接命令。
创建的目录深度不超过45层。
每次通过命令手动挂载的并行文件系统,在Linux重启后,都需要重新挂载。
并行文件系统的容量请以实际使用情况为准。
您也可以设置开机自动挂载并行文件系统,具体操作请参见开机自动挂载并行文件系统。
一个并行文件系统支持挂载到多台云服务器。
前提条件已初始化obsfs,具体操作请参见初始化obsfs。
本地挂载目录已存在。
您也可以使用mkdir命令创建一个新目录用来挂载并行文件系统。比如创建一个mountpoint目录,命令为:
mkdir mountpoint
手动挂载并行文件系统打开命令行终端。
使用cd命令进入obsfs所在目录。
按照以下格式执行挂载命令。
./obsfs 并行文件系统名 本地挂载目录 -o url=区域终端节点地址 -opasswd_file=密钥文件路径 -ouse_ino其他挂载参数
并行文件系统名:输入待挂载的并行文件系统名称。
本地挂载目录:输入待挂载目录的绝对路径或相对路径。
区域终端节点地址:根据待挂载并行文件系统所在区域名称获取对应的终端节点地址,具体信息请参见地区和终端节点。
挂载参数
挂载参数(除passwd_file、use_ino外)为可选项,根据需求选择合适的参数组合,格式为:-o 参数名称=参数值。在不需要设置参数值的情况下,直接使用-o参数名称即可。OBS支持的挂载参数及说明如表1所示。
关于obsfs挂载时的参数设置,可执行./obsfs --help命令了解更多。
表1挂载参数说明参数名称
参数值
说明
passwd_file
类型:String
取值:根据初始化obsfs配置的密钥文件路径进行设置。
密钥文件路径,使用obsfs时将从此路径中获取AK和SK信息,以对用户身份进行验证。
use_ino
需要
使用该选项,由obsfs分配inode编号。
big_writes
不需要
配置后可更改写缓存最大值大小。
max_write
类型:int
推荐取值:128KB
仅配置big_writes的情况下才生效,默认写大小为4KB,推荐使用128KB。
nonempty
不需要
允许挂载目录非空。
allow_other
不需要
允许其他用户访问并行文件系统。
max_background
类型:int
推荐取值:100
可配置后台最大等待请求数。
use_path_request_style
不需要
当采用路径式(使用legacy API 调用风格)访问OBS时,请使用该参数。
说明:
当url参数值为IP地址时,挂载命令必须携带此参数,否则会报域名解析错误。
umask
不需要
配置文件权限的掩码,用户每次进入文件系统时,umask命令都被执行,并自动设置掩码显示新的权限。
obsfslog
不需要
从配置文件加载日志配置参数,包括日志模式、级别等。使用此参数可以在不重启进程的情况下,更改日志级别。
说明:
配置文件路径固定为:/etc/obsfsconfig,如果要使用此参数,需要手动在本地创建此路径并参照以下示例及注释写入内容。
配置文件内容示例:
//日志模式。值为0,日志模式为前台显示。值为1,模式为生成日志文件,路径:/var/log/obsfs,以进程号命名。值为2,模式为日志写入系统日志。
dbglogmode=1
//日志级别。dbg、info、warn、err、crit。
dbglevel=info
执行以下命令,检查挂载结果。
df -h
当界面显示如下类似回显信息时,表示OBS并行文件系统挂载成功。
Filesystem Size Used Avail Use% Mounted on
obsfs 256T 0 256T 0% /path/to/mountpoint
并行文件系统的容量请以实际使用情况为准。
若没有显示以上类似回显信息,表示OBS并行文件系统挂载失败。此时可在执行的挂载命令后面添加以下参数,用以在回显中输出挂载过程以及详细调试日志:
-d -d -f -o f2 -o curldbg
然后再根据具体的错误信息进行问题定位,常见异常处理请参考挂载并行文件系统失败。
命令示例
此处以挂载一个华北-北京一区域的“filesystem001”并行文件系统、obsfs密钥文件路径为“/etc/passwd-obsfs”作为前提条件提供如下挂载命令示例,介绍挂载OBS并行文件系统时的一些参数配置。
将并行文件系统“filesystem001”挂载至“/mnt/mount_path/”目录,并允许该目录为非空:./obsfs filesystem001 /mnt/mount_path/ -o url=obs.cn-north-1.myhuaweicloud.com -o passwd_file=/etc/passwd-obsfs -o big_writes -o max_write=131072 -o nonempty -o use_ino
将并行文件系统“filesystem001”挂载至“/mnt/mount_path/”目录,并设置写缓存大小:./obsfs filesystem001 /mnt/mount_path/ -o url=obs.cn-north-1.myhuaweicloud.com -o passwd_file=/etc/passwd-obsfs -o big_writes -o max_write=131072 -o max_background=100 -o use_ino
将并行文件系统“filesystem001”挂载至“/mnt/mount_path/”目录,并允许其他用户访问该目录:./obsfs filesystem001 /mnt/mount_path/ -o url=obs.cn-north-1.myhuaweicloud.com -o passwd_file=/etc/passwd-obsfs -o big_writes -o max_write=131072 -o allow_other -o use_ino
当url参数值为IP地址时,请在以上挂载示例中携带-o use_path_request_style参数,否则会报域名解析错误。
开机自动挂载并行文件系统
以下内容以CentOS 7操作系统为例,介绍如何配置开机自动挂载。
使用root用户登录Linux运行机。
执行以下命令,创建一个/home/startobsfs.sh脚本文件。
vi /home/startobsfs.sh
按i进入编辑模式,将以下命令写入/home/startobsfs.sh脚本文件。
#!/bin/bash
cd obsfs所在的绝对路径
./obsfs 并行文件系统名 本地挂载目录 -o url=区域终端节点地址 -o passwd_file=秘钥文件路径-ouse_ino挂载参数
挂载命令参数说明请参见“手动挂载并行文件系统”部分的步骤3。
按Esc键,输入:wq,保存并退出脚本文件。
执行以下命令,赋予root用户对脚本的可执行权限。
chmod +x /home/startobsfs.sh
执行以下命令,赋予root用户对rc.local文件的执行权限。
chmod +x /etc/rc.d/rc.local
不同操作系统的rc.local文件位置不同,在CentOS 7中,该文件位置为/etc/rc.d/rc.local。
编辑/etc/rc.d/rc.local文件,将以下命令添加至文件末尾,保存并退出。
bash /home/startobsfs.sh
若/etc/rc.d/rc.local中有退出的命令,例如“exit 0”,请将本步骤中的命令添加至退出命令之前。
重启后验证。
在重启Linux后,执行以下命令,查看OBS并行文件系统是否挂载成功。
df -h
后续若想取消开机自动挂载并行文件系统,删除rc.local文件中执行obsfs挂载命令的脚本文件即可。
后续操作
后续如果需要对已挂载的并行文件系统进行参数设置(新增、修改或删除),请先取消挂载后再重新挂载。关于取消挂载并行文件系统的具体操作,请参见取消挂载并行文件系统。