From 4cda874e24e56e0310e7bf946bc1fc97b91784d4 Mon Sep 17 00:00:00 2001 From: sunty <1172534965@qq.com> Date: 星期四, 22 十月 2020 16:32:21 +0800 Subject: [PATCH] fic --- ClusterApi.go | 69 ++++++++++++++++++++++++++++------ 1 files changed, 56 insertions(+), 13 deletions(-) diff --git a/ClusterApi.go b/ClusterApi.go index 81614f8..269e662 100644 --- a/ClusterApi.go +++ b/ClusterApi.go @@ -30,19 +30,28 @@ } //鍚姩鏈嶅姟 -func StartServer(binPath string, ip string) bool { - resultMsg := CMDSC("sh " + binPath + "/elasticsearch -d") +func StartServer(binPath string, ip string, port string) bool { + resultMsg := CMDSC("sh " + binPath + "/es_start.sh") if resultMsg == "杩愯澶辫触" { return false } - bool := VerifyNodeServer(ip, "9200") - return bool + b := VerifyNodeServer(ip, port) + return b } //鍏抽棴鏈嶅姟 -func StopServer(binPath string) { - +func StopServer(binPath string, ip string, port string) bool { + b := VerifyShortNodeServer(ip, port) + if b == true { + resultMsg := CMDSC("sh " + binPath + "/es_stop.sh") + if resultMsg == "杩愯澶辫触" { + return true + } + } + bs := VerifyShortNodeServer(ip, port) + return bs } + //鏇存崲鑺傜偣瑙掕壊 func UpdateNodeRole(configPath string, role string) (bool, error) { @@ -65,7 +74,7 @@ return true, nil } -//楠岃瘉璇ヨ妭鐐规槸鍚﹁鍒涘缓杩� +//楠岃瘉璇ヨ妭鐐规槸鍚﹁浣跨敤杩� func VerifyCreated(configPath string, ip string) (bool, error) { v := viper.New() v.SetConfigType("yml") @@ -135,6 +144,37 @@ return role, nil } +//鏌ヨ缁勬挱鍒楄〃 +func GetDiscoveryZenPingUnicastHosts(configPath string) ([]string, error) { + v := viper.New() + v.SetConfigType("yml") + v.SetConfigName("elasticsearch") + v.AddConfigPath(configPath) + err := v.ReadInConfig() + if err != nil { + return nil, err + } + hosts := v.GetStringSlice("discovery.zen.ping.unicast.hosts") + return hosts, nil +} + +//璁剧疆缁勬挱鍒楄〃 +func SetDiscoveryZenPingUnicastHosts(configPath string, hosts []string) (bool, error) { + v := viper.New() + v.SetConfigType("yml") + v.SetConfigName("elasticsearch") + v.AddConfigPath(configPath) + err := v.ReadInConfig() + if err != nil { + return false, err + } + v.Set("discovery.zen.ping.unicast.hosts", hosts) + if err := v.WriteConfig(); err != nil { + return false, err + } + return true, nil +} + //鏇存柊缁勬挱鍒楄〃 func UpdateDiscoveryZenPingUnicastHosts(configPath string, oldIp string, newIp string) (bool, error) { v := viper.New() @@ -164,18 +204,22 @@ } //娣诲姞缁勬挱鎴愬憳 -func AddDiscoveryZenPingUnicastHosts(configPath string, ip string) []string { +func AddDiscoveryZenPingUnicastHosts(configPath string, ip string) (bool, error) { v := viper.New() v.SetConfigType("yml") v.SetConfigName("elasticsearch") v.AddConfigPath(configPath) - err := v.ReadInConfig() - if err != nil { - + errR := v.ReadInConfig() + if errR != nil { + return false, errR } hosts := v.GetStringSlice("discovery.zen.ping.unicast.hosts") hosts = append(hosts, ip) - return hosts + v.Set("discovery.zen.ping.unicast.hosts", hosts) + if errW := v.WriteConfig(); errW != nil { + return false, errW + } + return true, nil } type NodeInfo struct { @@ -257,7 +301,6 @@ } request, err := http.NewRequest(method, url, bytes.NewBuffer(parama)) request.Header.Set("Content-type", "application/json") - if err != nil { fmt.Println("build request fail !") return nil, err -- Gitblit v1.8.0