From f6ca7bb43270474fa876ff6ba62c6b2113b045ad Mon Sep 17 00:00:00 2001 From: sunty <1172534965@qq.com> Date: 星期五, 31 五月 2024 14:03:29 +0800 Subject: [PATCH] Optimize day and night algorithm, format date and time, batch process by date. --- ClusterApi.go | 49 +++++++++++++++++++++++++++++++++++-------------- 1 files changed, 35 insertions(+), 14 deletions(-) diff --git a/ClusterApi.go b/ClusterApi.go index 269e662..57d35e4 100644 --- a/ClusterApi.go +++ b/ClusterApi.go @@ -5,12 +5,13 @@ "encoding/json" "errors" "fmt" - "github.com/spf13/viper" "io/ioutil" "net/http" "os/exec" "strings" "time" + + "github.com/spf13/viper" ) //鍒濆鍖栭厤缃枃浠� @@ -29,14 +30,22 @@ return true, nil } +//鍒濆鍖栫储寮� +func InitIndex(indexPath string) bool { + resultMsg := CMDSC("sh " + indexPath + "/indexInit.sh") + if resultMsg == "杩愯澶辫触" { + return false + } + return true +} + //鍚姩鏈嶅姟 func StartServer(binPath string, ip string, port string) bool { resultMsg := CMDSC("sh " + binPath + "/es_start.sh") if resultMsg == "杩愯澶辫触" { return false } - b := VerifyNodeServer(ip, port) - return b + return true } //鍏抽棴鏈嶅姟 @@ -47,11 +56,11 @@ if resultMsg == "杩愯澶辫触" { return true } + time.Sleep(time.Second * 3) } bs := VerifyShortNodeServer(ip, port) return bs } - //鏇存崲鑺傜偣瑙掕壊 func UpdateNodeRole(configPath string, role string) (bool, error) { @@ -74,8 +83,25 @@ return true, nil } +//鏇存崲鑺傜偣闆嗙兢鍚嶇О +func UpdateClusterName(configPath string, name 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("cluster.name", name) + if err := v.WriteConfig(); err != nil { + return false, err + } + return true, nil +} + //楠岃瘉璇ヨ妭鐐规槸鍚﹁浣跨敤杩� -func VerifyCreated(configPath string, ip string) (bool, error) { +func VerifyCreated(configPath string) (bool, error) { v := viper.New() v.SetConfigType("yml") v.SetConfigName("elasticsearch") @@ -85,19 +111,14 @@ return true, err } hosts := v.GetStringSlice("discovery.zen.ping.unicast.hosts") - for _, pick := range hosts { - if pick == ip { - return true, errors.New("璇ヨ妭鐐瑰凡缁忚鎵ц鈥滃垱寤洪泦缇も��") - } - } if len(hosts) > 1 { - return true, errors.New("璇ヨ妭鐐瑰凡缁忚鎵ц鈥滃姞鍏ラ泦缇も��") + return true, errors.New("璇ヨ妭鐐瑰凡缁忚浣跨敤") } return false, nil } //楠岃瘉鑺傜偣鏈嶅姟鏄惁姝e父鍚姩 -func VerifyNodeServer(ip string, port string) bool { +func VerifyNodeServer(ip string, port string, waitTime int) bool { b := false url := "http://" + ip + ":" + port for i := 1; i < 3; i++ { @@ -105,7 +126,7 @@ if err != nil { b = false if i < 3 { - time.Sleep(time.Second * 10) + time.Sleep(time.Second * time.Duration(waitTime)) continue } } else { @@ -127,7 +148,7 @@ } //楠岃瘉鑺傜偣瑙掕壊 -func VerifyNodeRole(configPath string, ) (string, error) { +func VerifyNodeRole(configPath string) (string, error) { role := "slave" v := viper.New() v.SetConfigType("yml") -- Gitblit v1.8.0