Skip to content

本篇再 Windows 上 安装 minio 开始,到 rclone 挂载一个盘符,完成一个简单的分布式文件系统。

MinIO

安装 minio

到如下地址下载对应的版本:

minio 默认下载是一个 minio.exe 的文件,其他系统为 minio, chmod +x minio 即可。

采用脚本即可启动服务:

shell
./minio server ./data

minio 启动后,会提示如下信息:

shell
http://172.18.0.104:9000  http://192.168.0.94:9000  http://198.18.0.1:9000  http://127.0.0.1:9000
   RootUser: minioadmin
   RootPass: minioadmin

WebUI: http://172.18.0.104:55400 http://192.168.0.94:55400 http://198.18.0.1:55400 http://127.0.0.1:55400
   RootUser: minioadmin
   RootPass: minioadmin

默认的登录账号和密码是:minioadmin/minioadmin

初始化 minio

启动 minio 后,打开浏览器:http://localhost:9000

minio 的 http://localhost:9000 服务页面,也叫做 minio 的 endpoint 地址。

创建 AccessKey:

shell
AccessKey: Wkjt3onkdwda5YpDzHzQ
SecretKey: EmuiSlJZMKrhYJuYf6ZmchSPEswuIyn9fgjNepCv
Endpoint: http://192.168.252.204:9000

创建 Bucket 等,即可使用。

winfsp

Windows 安装 winfsp

windows 需要采用 winfsp-fuse 挂在磁盘,因此需要先安装 winfsp。

dfs-install-software

安装 winfsp 后,再启动或挂载 rclone。

dfs-windows-install-winfsp-step2

rclone

安装 rclone

rclone 是开源软件。到 https://github.com/rclone/rclone/releases 地址下载对应的版本。

下载后解压到本地目录,设置目录为系统环境变量即可。

rclone 初始化

rclone config 可对 rclone 初始化

shell
rclone config

会提示当前没有远程配置,是否新建? 选择new remote,输入n创建

dfs-rclone-config-fsname

输入远程名称,这里以 tuoda 为例。

选择存储类型: 这里选择Amazon S3(5),输入: 5

dfs-rclone-config-storage

S3服务类型: 之后选择s3服务类型,使用minio为:18,阿里云OSS为:2

dfs-rclone-config-fstype

后 AWS env auth,回车、默认。

然后输入:minio 的 accesss key 和 endpoint 信息。

dfs-rclone-config-minio

  • 选择地区,回车选择默认
  • ACL, 回车选择默认

这里各种ACL分别为:

  • 私有(只有桶owner有完全权限,其余任何用户无法访问)也是s3 create bucket默认的桶类型
  • 公共读(桶owner完全权限,所有用户可读) 公共读写(桶owner完全权限,所有用户可以读写)
  • 认证读(桶owner完全权限,其余s3用户通过aksk认证的用户可以读)
  • 桶拥有者读(对象拥有者拥有对象的完全权限,桶拥有者对桶内所有对象有读权限) 拥有者完全权限(桶和对象拥有者同事拥有对象的完全权限)

服务端加密: 一般不采用,选择默认 KMS: 也选择默认

dfs-rclone-config-auth-config

之后会询问是否编辑高级配置,输入n即可。

确认配置完成,输入y。

dfs-rclone-config-save

最后 q 退出配置。

rclone 挂载

shell
rclone mount tuoda:/pic Z: --cache-dir D:\path\dfs\cache --vfs-cache-mode writes

如果需要其他用户运行,又需要指定配置文件:

shell
rclone mount tuoda:/pic Z: --cache-dir D:\path\dfs\cache --vfs-cache-mode writes \
--config C:\Users\Administrator\AppData\Roaming\rclone\rclone.conf

挂在的磁盘如下:

dfs-rclone-mount-disk

rclone config 默认的配置文件:

windows 保存在 C:\Users\Administrator\AppData\Roaming\rclone\rclone.conf

ini
[tuoda]
type = s3
provider = Minio
access_key_id = Wkjt3onkdwda5YpDzHzQ
secret_access_key = EmuiSlJZMKrhYJuYf6ZmchSPEswuIyn9fgjNepCv
endpoint = http://192.168.252.204:9000

Mac 挂载磁盘

Mac 从挂载网络磁盘,需要先安装 macFUSE

macFUSE 下载地址: https://github.com/macfuse/macfuse/releases

shell
./rclone mount ftp:/ /Users/zhenqin/Documents/ftp240 --vfs-cache-mode writes &
./rclone mount mbp:/pic /Users/zhenqin/Documents/miniodf --vfs-cache-mode writes &

Mac rclone 的配置文件保存在:$HOME/.config/rclone/rclone.conf

采用 WinSW 注册为 Windows 系统服务

下载 WinSW-x64.exe,并重命名为 rclone-install.exe; 同目录创建 rclone-install.xml,修改配置文件内容;

xml
<service>
  <!-- ID of the service. It should be unique across the Windows system-->
  <id>rclone</id>
  <!-- Display name of the service -->
  <name>RCloneDFS Service</name>
  <!-- Service description -->
  <description>RCloneDFS MinIO分布式文件系统服务</description>

  <startmode>Automatic</startmode>
  <!-- Path to the executable, which should be started -->
  <executable>%BASE%\rclone.exe</executable>
  <arguments>mount tuoda:/pic Z: --cache-dir %BASE%\cache --config C:\Users\Administrator\AppData\Roaming\rclone\rclone.conf --vfs-cache-mode writes </arguments>
  <autoRefresh>true</autoRefresh>
</service>

管理员身份运行 command:

shell
rclone-install.exe install

然后可通过 Windows 系统服务进行管理。

基本运维管理

维护方法:

  1. 首先打开系统服务,找到 minio 服务,启动;
  2. 以管理员身份运行command,跳转到 D:\path\dfs 目录下,手动启动 start-rclone.bat;
  3. 或者DFS 已经安装为 windows 系统服务,可到系统管理》服务,找到 rclone 启动或重启服务;
  4. 或者管理员身份运行command:sc query/start/stop/restart rclone;

参考资料