diff options
| author | Chris Lu <chris.lu@gmail.com> | 2020-02-26 16:46:01 -0800 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2020-02-26 16:46:01 -0800 |
| commit | 0156e2975aa4aabe142301deb72cc2657eb79ee9 (patch) | |
| tree | 191e0a3c65964fa75c3cdc661aefdab16e97e3a2 /weed/command/mount.go | |
| parent | 543cf1c80e222f3ff4be5fcfa88d2a7e9c868de2 (diff) | |
| download | seaweedfs-0156e2975aa4aabe142301deb72cc2657eb79ee9.tar.xz seaweedfs-0156e2975aa4aabe142301deb72cc2657eb79ee9.zip | |
mount: add mode to run external to SeaweedFS container cluster
Diffstat (limited to 'weed/command/mount.go')
| -rw-r--r-- | weed/command/mount.go | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/weed/command/mount.go b/weed/command/mount.go index f09b285f7..4bdb3415a 100644 --- a/weed/command/mount.go +++ b/weed/command/mount.go @@ -7,17 +7,18 @@ import ( ) type MountOptions struct { - filer *string - filerMountRootPath *string - dir *string - dirListCacheLimit *int64 - collection *string - replication *string - ttlSec *int - chunkSizeLimitMB *int - dataCenter *string - allowOthers *bool - umaskString *string + filer *string + filerMountRootPath *string + dir *string + dirListCacheLimit *int64 + collection *string + replication *string + ttlSec *int + chunkSizeLimitMB *int + dataCenter *string + allowOthers *bool + umaskString *string + outsideContainerClusterMode *bool } var ( @@ -41,6 +42,7 @@ func init() { mountOptions.umaskString = cmdMount.Flag.String("umask", "022", "octal umask, e.g., 022, 0111") mountCpuProfile = cmdMount.Flag.String("cpuprofile", "", "cpu profile output file") mountMemProfile = cmdMount.Flag.String("memprofile", "", "memory profile output file") + mountOptions.outsideContainerClusterMode = cmdMount.Flag.Bool("outsideContainerClusterMode", false, "allows other users to access the file system") } var cmdMount = &Command{ @@ -58,6 +60,12 @@ var cmdMount = &Command{ On OS X, it requires OSXFUSE (http://osxfuse.github.com/). + If the SeaweedFS systemm runs in a container cluster, e.g. managed by kubernetes or docker compose, + the volume servers are not accessible by their own ip addresses. + In "outsideContainerClusterMode", the mount will use the filer ip address instead, assuming: + * All volume server containers are accessible through the same hostname or IP address as the filer. + * All volume server container ports are open external to the cluster. + `, } |
