weswu8 / gcsfuse-win

Gcs fuse system, windows fuse system on top of the google cloud storage service, mount Gcs buckets and folder as local driver on you local windows host
29 stars 6 forks source link
blob-fuse blob-storage fuse fuse-win gcp gcp-fuse gcs gcs-bucket gcs-windows google-cloud-storage win

GcsFuse-Win

GcsFuse-Win is a distributed FUSE based file system backed by Google cloud storage service. It is the first open source native version of gcs fuse on windows.It allows you to mount the buckets/folders in the storage account as a the local folder/driver on Windows system. It support the cluster mode. you can mount the blob container (or part of it) across multiple windows nodes.

Important Notes:

Project Goals

Object storage is one of the most fundamental topic you'll encounter when you decide to start your cloud journey.The main goal of the project is to make gcp storage service easy to use for windows box.

Key Updates:

release v1.0.0

Features:

Architecture and introduction

installation

Installation now is very easy. But I strongly recommend to test and verify it in you environment before you use it. it's at your own risk.

Precondition

you should have a gcp account, and you should create and download the service account json file.[how to do this?](https://cloud.google.com/docs/authentication/getting-started). pls put the file into the conf/ directory

1.Install WinFsp

Download the winfsp-1.7.20038.msi from [WinFsp](https://github.com/billziss-gh/winfsp/releases).

lanuch it and install with default configuration.

2.Install blobfs-win

2.1 Download the blobfs-win released version.

2.2 Edit configuration file:

Open conf/config.xml
change the setting of :
    <ProjectId>gcp_project_id</ProjectId>
    <!--  Gcp service account json file --> 
    <ServiceAccountFile>gcp_service_account.json</ServiceAccountFile>
    <!--  the prefix of target buckets or objects, use / will mount all buckets --> 
    <RootPrefix>/bucket_name/</RootPrefix>
    <!--  the dirve letter of local host --> 
    <MountDrive>F:</MountDrive>
    <!--  cached object TTL in seconds --> 
    <CacheTTL>180</CacheTTL>

final.Start the blobfs service

lanuch gcsfuse-win.exe

It is highly recommended that you should config it as a windows services.

Tips

Performance Test

Dependency

Limitation and known issues:

Supported platforms

Command Line Usage

usage: Blobfs-Win OPTIONS

options:
    -d DebugFlags       [-1: enable all debug logs]
    -D DebugLogFile     [file path; use - for stderr]
    -i                  [case insensitive file system]
    -t FileInfoTimeout  [millis]
    -n MaxFileNodes
    -s MaxFileSize      [bytes]
    -F FileSystemName]
    -m MountPoint       [X:|* (required if no UNC prefix)]s

License

Copyright (C) 2020 Wesley Wu jie1975.wu@gmail.com
This code is licensed under The General Public License version 3

FeedBack

Your feedbacks are highly appreciated! :)