sunty
2020-04-13 32aba6aa23e78886ddca2743f760ff6de22f4b50
controllers/swfsControllers.go
@@ -47,15 +47,20 @@
   var body SWFSInfo
   c.BindJSON(&body)
   role := body.Role
   nowPeers := GetNowPeersList()
   if role == "master" {
      AsMaster(nowPeers)
      AddNewMasterToPeers()
      AsMaster()
      util.ResponseFormat(c, code.AddSuccess, "加入节点成功")
      return
   } else if role == "volume" {
      AsVolume(nowPeers)
      util.ResponseFormat(c, code.AddSuccess, "加入节点成功")
      return
      status := AsVolume()
      if status == true {
         util.ResponseFormat(c, code.AddSuccess, "加入节点成功")
         return
      } else {
         util.ResponseFormat(c, code.AddClusterInfoErr, "当前还没有主节点")
         return
      }
   } else {
      util.ResponseFormat(c, code.RequestParamError, "选择节点类型错误")
      return
@@ -64,7 +69,7 @@
}
func (sc *SeaweedfsController) RoleOfVolumeToMasterController(c *gin.Context) {
   AsMaster(GetNowPeersList())
   AsMaster()
}
func (sc *SeaweedfsController) RestartMasterController(c *gin.Context) {
@@ -101,10 +106,7 @@
//请求作为主节点操作流程
func RequestMasterNodesOperation(nowPeers []interface{}) {
   //fmt.Println("config.Server.CoreBaseUnit", config.Server.CoreBaseUnit)
   coreBaseUnit, _ := strconv.Atoi(config.Server.CoreBaseUnit)
   //fmt.Println("nowPeers: ", nowPeers)
   //fmt.Println("coreBaseUnit: ", coreBaseUnit)
   UpdateAllNodesScriptArgument(nowPeers)
   RestartAllServer(nowPeers, coreBaseUnit)
}
@@ -173,14 +175,23 @@
}
//作为数据节点加入
func AsVolume(nowPeers []interface{}) {
func AsVolume() bool {
   nowPeers := GetNowPeersList()
   if nowPeers == nil || len(nowPeers) == 0 {
      return false
   }
   UpdatePeers(config.Server.ScriptPath, StartServerScript, GetNewPeers(), GetNewPeers())
   ReplaceLineContentBySearch(StartScriptAsVolume, config.Server.ScriptPath, StartServerScript)
   ReplaceLineContentBySearch("peers=", config.Server.ScriptPath, StartServerScript)
   StartServer(config.Server.ScriptPath)
   return true
}
//作为主节点加入(默认包含数据节点)
func AsMaster(nowPeers []interface{}) {
   AddNewMasterToPeers()
func AsMaster() bool {
   nowPeers := GetNowPeersList()
   RequestMasterNodesOperation(nowPeers)
   return true
}
//获取当前集群列表