aboutsummaryrefslogtreecommitdiff
path: root/go/weed/master.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2014-04-25 22:09:42 -0700
committerChris Lu <chris.lu@gmail.com>2014-04-25 22:09:42 -0700
commitd344e87de098be4954f1ce7d32b21e6d73144de1 (patch)
tree02f56941f2af00b164ad62389b05d1aa5ee2537d /go/weed/master.go
parent8c04c5ed5f3fb8886632ca5111ca8c27317c0e3f (diff)
downloadseaweedfs-d344e87de098be4954f1ce7d32b21e6d73144de1.tar.xz
seaweedfs-d344e87de098be4954f1ce7d32b21e6d73144de1.zip
Adjust command line options.
1. switch to use -publicIp instead of -publicUrl 2. -ip can be empty. It will listen to all available interfaces. 3. For "weed master", these options are changed: -masterPort => -master.port -peers => -master.peers -mdir => -master.dir -volumeSizeLimitMB => -master.volumeSizeLimitMB -conf => -master.conf -defaultReplicaPlacement => -master.defaultReplicaPlacement -port => -volume.port -max => -volume.max
Diffstat (limited to 'go/weed/master.go')
-rw-r--r--go/weed/master.go23
1 files changed, 15 insertions, 8 deletions
diff --git a/go/weed/master.go b/go/weed/master.go
index c494ff42b..b95ca5cb1 100644
--- a/go/weed/master.go
+++ b/go/weed/master.go
@@ -28,7 +28,8 @@ var cmdMaster = &Command{
var (
mport = cmdMaster.Flag.Int("port", 9333, "http listen port")
- masterIp = cmdMaster.Flag.String("ip", "localhost", "master ip address")
+ masterIp = cmdMaster.Flag.String("ip", "", "master listening ip address, default to listen on all network interfaces")
+ mPublicIp = cmdMaster.Flag.String("publicIp", "", "peer accessible <ip>|<server_name>")
metaFolder = cmdMaster.Flag.String("mdir", os.TempDir(), "data directory to store meta data")
masterPeers = cmdMaster.Flag.String("peers", "", "other master nodes in comma separated ip:port list")
volumeSizeLimitMB = cmdMaster.Flag.Uint("volumeSizeLimitMB", 30*1000, "Master stops directing writes to oversized volumes.")
@@ -60,24 +61,30 @@ func runMaster(cmd *Command, args []string) bool {
*volumeSizeLimitMB, *mpulse, *confFile, *defaultReplicaPlacement, *garbageThreshold, masterWhiteList,
)
- glog.V(0).Infoln("Start Weed Master", util.VERSION, "at port", *masterIp+":"+strconv.Itoa(*mport))
+ listeningAddress := *masterIp + ":" + strconv.Itoa(*mport)
- listener, e := util.NewListener(
- *masterIp+":"+strconv.Itoa(*mport),
- time.Duration(*mTimeout)*time.Second,
- )
+ glog.V(0).Infoln("Start Weed Master", util.VERSION, "at", listeningAddress)
+
+ listener, e := util.NewListener(listeningAddress, time.Duration(*mTimeout)*time.Second)
if e != nil {
glog.Fatalf(e.Error())
}
go func() {
time.Sleep(100 * time.Millisecond)
- myAddress := *masterIp + ":" + strconv.Itoa(*mport)
+ if *mPublicIp == "" {
+ if *masterIp == "" {
+ *mPublicIp = "localhost"
+ } else {
+ *mPublicIp = *masterIp
+ }
+ }
+ myPublicMasterAddress := *mPublicIp + ":" + strconv.Itoa(*mport)
var peers []string
if *masterPeers != "" {
peers = strings.Split(*masterPeers, ",")
}
- raftServer := weed_server.NewRaftServer(r, peers, myAddress, *metaFolder, ms.Topo, *mpulse)
+ raftServer := weed_server.NewRaftServer(r, peers, myPublicMasterAddress, *metaFolder, ms.Topo, *mpulse)
ms.SetRaftServer(raftServer)
}()