Browse Source

添加killdb, cmd 命令

GTong 11 months ago
parent
commit
8c265d533b
37 changed files with 1307 additions and 58 deletions
  1. 5 1
      BIN/xgad/config.toml
  2. 3 1
      BIN/xgad/file/cluster.ini
  3. 175 0
      BIN/xgad/logs/xg_autodeploy.log
  4. BIN
      BIN/xgad/xgad.exe
  5. 10 7
      config.toml
  6. 24 0
      config2.toml
  7. 0 0
      file/xugu/XuguDB-aarch64/BIN/xgconsole-linux-aarch64
  8. 0 0
      file/xugu/XuguDB-aarch64/BIN/xugu_cluster_linux_aarch64_20240416
  9. 0 0
      file/xugu/XuguDB-aarch64/BIN/xugu_init.sql
  10. 0 0
      file/xugu/XuguDB-aarch64/BIN/xugu_start.sh
  11. 0 0
      file/xugu/XuguDB-aarch64/SETUP/cluster.ini.template
  12. 0 0
      file/xugu/XuguDB-aarch64/SETUP/mount.ini
  13. 0 0
      file/xugu/XuguDB-aarch64/SETUP/trust.ini
  14. 0 0
      file/xugu/XuguDB-aarch64/SETUP/types.ini
  15. 0 0
      file/xugu/XuguDB-aarch64/SETUP/xugu.ini
  16. 0 0
      file/xugu/XuguDB-x64/BIN/xgconsole-linux-x64
  17. 0 0
      file/xugu/XuguDB-x64/BIN/xugu_cluster_linux_x86_64_20240416
  18. 0 0
      file/xugu/XuguDB-x64/BIN/xugu_init.sql
  19. 0 0
      file/xugu/XuguDB-x64/BIN/xugu_start.sh
  20. 0 0
      file/xugu/XuguDB-x64/SETUP/cluster.ini.template
  21. 0 0
      file/xugu/XuguDB-x64/SETUP/mount.ini
  22. 0 0
      file/xugu/XuguDB-x64/SETUP/trust.ini
  23. 0 0
      file/xugu/XuguDB-x64/SETUP/types.ini
  24. 0 0
      file/xugu/XuguDB-x64/SETUP/xugu.ini
  25. 52 0
      internal/auto/kill_db.go
  26. 42 0
      internal/auto/send_cmd.go
  27. 0 1
      internal/auto/send_file.go
  28. 18 9
      internal/auto/xugu_deploy.go
  29. 21 4
      internal/auto/xugu_start.go
  30. 152 23
      internal/cmd/cmd.go
  31. 6 2
      internal/config/cluster.go
  32. 112 7
      internal/global/global.go
  33. 5 2
      internal/remote/upload.go
  34. 1 1
      internal/utils/utils.go
  35. 681 0
      logs/xg_autodeploy.log
  36. BIN
      xgAD使用说明.docx
  37. BIN
      ~$AD使用说明.docx

+ 5 - 1
BIN/xgad/config.toml

@@ -9,6 +9,9 @@ user_password ="root:Xugu@2023!@#"
 ip_port = "10.28.20.102:22"
 user_password ="root:Xugu@2023!@#"
 
+[node.3]
+ip_port = "10.28.20.103:22"
+user_password ="root:Xugu@2023!@#"
 
 [xugu]
 #local_file = "./file/xugu.ini"
@@ -16,6 +19,7 @@ data_buff_mem = "1024"
 listen_port = "5189"
 
 [cluster]
-local_file ="./file/cluster.ini"
+#local_file ="./file/cluster.ini"
+template = "50000:2"
 
 

+ 3 - 1
BIN/xgad/file/cluster.ini

@@ -2,6 +2,8 @@
  MSG_HAVE_CRC=0    MERGE_SMALL_MSG=1    MSG_SIZE=9000    TIMEOUT=20000    RPC_WINDOW=16 
  EJE_WINDOW=16    MAX_SHAKE_TIME=1200    MY_NID=0001    CHECK_RACK=0  ADDR_TYPE='IPV4'
 
- NID=0001  RACK=0001  PORTS='10.28.20.101:40421,10.28.20.101:40422,10.28.20.101:40423,10.28.20.101:40424'  ROLE='MSQW'  LPU=3  STORE_WEIGHT=3  STATE=DETECT;
+ NID=0001  RACK=0001  PORTS='10.28.20.101:40421,10.28.20.101:40422,10.28.20.101:40423,10.28.20.101:40424,'  ROLE='MSQW'  LPU=3  STORE_WEIGHT=3  STATE=DETECT;
  NID=0002  RACK=0001  PORTS='10.28.20.102:40421,10.28.20.102:40422,10.28.20.102:40423,10.28.20.102:40424'  ROLE='MSQW'  LPU=3  STORE_WEIGHT=3  STATE=DETECT;
  NID=0003  RACK=0001  PORTS='10.28.20.104:40421,10.28.20.104:40422,10.28.20.104:40423,10.28.20.104:40424'  ROLE='SQW'  LPU=3  STORE_WEIGHT=3  STATE=DETECT;
+
+

+ 175 - 0
BIN/xgad/logs/xg_autodeploy.log

@@ -190,3 +190,178 @@
 {"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T10:28:33+08:00"}
 {"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T10:28:34+08:00"}
 {"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T10:28:34+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T10:30:30+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T10:30:33+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T10:30:33+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T10:30:33+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T10:30:33+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T10:30:34+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T10:33:11+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T10:33:13+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T10:33:13+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T10:33:13+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:04:33+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:04:35+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:04:35+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:14:17+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:14:19+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:14:19+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:14:19+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:14:39+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:14:42+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:14:42+08:00"}
+{"level":"fatal","msg":"创建文件失败: /DATA2/GT/xugu/start3/BIN/xugu_init.sql, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:14:42+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:15:12+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:15:14+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:15:14+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:15:14+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:15:24+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:15:26+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:15:26+08:00"}
+{"level":"fatal","msg":"创建文件失败: /DATA2/GT/xugu/start3/BIN/xugu_init.sql, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:15:27+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:21:23+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:21:26+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:21:26+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:21:36+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:21:38+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"1节点未设置cluser.ini文件\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T15:21:39+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:21:58+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:22:00+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:22:00+08:00"}
+{"level":"fatal","msg":"创建文件失败: /DATA2/GT/xugu/start3/BIN/xugu_init.sql, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:22:01+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:28:29+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:28:31+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:28:32+08:00"}
+{"level":"fatal","msg":"文件传输失败: file\\xugu\\XuguDB-aarch64/BIN/xugu_cluster_linux_aarch64_20240416, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T15:28:32+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:28:47+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:28:50+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T15:28:50+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T15:28:51+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:31:54+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:31:57+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T15:31:57+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T15:31:58+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:34:27+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:34:29+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:34:29+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:36:00+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:36:02+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:36:02+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:44:08+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:44:10+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:44:11+08:00"}
+{"level":"fatal","msg":"文件传输失败: file\\xugu\\XuguDB-aarch64/BIN/xgconsole-linux-aarch64, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T15:44:11+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:45:43+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:45:46+08:00"}
+{"level":"fatal","msg":"文件传输失败: file\\xugu\\XuguDB-aarch64/BIN/xgconsole-linux-aarch64, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T15:45:46+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:48:24+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:48:26+08:00"}
+{"level":"fatal","msg":"文件传输失败: file\\xugu\\XuguDB-aarch64/BIN/xgconsole-linux-aarch64, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T15:48:27+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:50:10+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:50:12+08:00"}
+{"level":"fatal","msg":"文件传输失败: file\\xugu\\XuguDB-aarch64/BIN/xgconsole-linux-aarch64, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T15:50:13+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:51:47+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:51:49+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:51:49+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:51:49+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:51:58+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:52:01+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:52:01+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:file does not exist","time":"2024-06-20T15:52:01+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:52:13+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:52:15+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:52:15+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:file does not exist","time":"2024-06-20T15:52:15+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:40:47+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:40:49+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:40:50+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:40:53+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:40:53+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:40:56+08:00"}
+{"level":"info","msg":"----- 3节点上传文件成功\n","time":"2024-06-20T16:40:57+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"--------------------3节点--------------------------------------:\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:40:58+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:40:58+08:00"}

BIN
BIN/xgad/xgad.exe


+ 10 - 7
config.toml

@@ -1,21 +1,24 @@
 [node]
-local_file = "./file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64" 
-target_file = "/DATA2/GT/xugu/start"
-xugu_addr = "/DATA2/GT/xugu/start"
+#local_file = "./file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64" 
+#target_file = "/DATA2/GT/xugu/start"
+xugu_addr = "/DATA2/GT/xugu/start3"
 [node.1]
 ip_port = "10.28.20.101:22"
-user_password ="root:Xugu@2023"
+user_password ="root:Xugu@2023!@#"
 [node.2]
 ip_port = "10.28.20.102:22"
-user_password ="root:Xugu@2023"
+user_password ="root:Xugu@2023!@#"
+[node.3]
+ip_port = "10.28.20.103:22"
+user_password ="root:Xugu@2023!@#"
 
 [xugu]
 #local_file = "./file/xugu.ini"
 data_buff_mem = "1024"
-listen_port = "5189"
+listen_port = "5181"
 
 [cluster]
 #local_file ="./file/cluster.ini"
-
+template = "50338:2"
 
 

+ 24 - 0
config2.toml

@@ -0,0 +1,24 @@
+[node]
+#local_file = "./file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64" 
+#target_file = "/DATA2/GT/xugu/start"
+xugu_addr = "/DATA2/GT/xugu/start3"
+[node.1]
+ip_port = "10.28.20.101:22"
+user_password ="root:Xugu@2023!@#"
+[node.2]
+ip_port = "10.28.20.102:22"
+user_password ="root:Xugu@2023!@#"
+[node.3]
+ip_port = "10.28.20.103:22"
+user_password ="root:Xugu@2023!@#"
+
+[xugu]
+#local_file = "./file/xugu.ini"
+data_buff_mem = "1024"
+listen_port = "5181"
+
+[cluster]
+#local_file ="./file/cluster.ini"
+template = "50338:2"
+
+

+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/BIN/xgconsole-linux-aarch64 → file/xugu/XuguDB-aarch64/BIN/xgconsole-linux-aarch64


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/BIN/xugu_cluster_linux_aarch64_20240416 → file/xugu/XuguDB-aarch64/BIN/xugu_cluster_linux_aarch64_20240416


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/BIN/xugu_init.sql → file/xugu/XuguDB-aarch64/BIN/xugu_init.sql


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/BIN/xugu_start.sh → file/xugu/XuguDB-aarch64/BIN/xugu_start.sh


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/SETUP/cluster.ini.template → file/xugu/XuguDB-aarch64/SETUP/cluster.ini.template


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/SETUP/mount.ini → file/xugu/XuguDB-aarch64/SETUP/mount.ini


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/SETUP/trust.ini → file/xugu/XuguDB-aarch64/SETUP/trust.ini


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/SETUP/types.ini → file/xugu/XuguDB-aarch64/SETUP/types.ini


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-aarch64/SETUP/xugu.ini → file/xugu/XuguDB-aarch64/SETUP/xugu.ini


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/BIN/xgconsole-linux-x64 → file/xugu/XuguDB-x64/BIN/xgconsole-linux-x64


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/BIN/xugu_cluster_linux_x86_64_20240416 → file/xugu/XuguDB-x64/BIN/xugu_cluster_linux_x86_64_20240416


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/BIN/xugu_init.sql → file/xugu/XuguDB-x64/BIN/xugu_init.sql


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/BIN/xugu_start.sh → file/xugu/XuguDB-x64/BIN/xugu_start.sh


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/SETUP/cluster.ini.template → file/xugu/XuguDB-x64/SETUP/cluster.ini.template


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/SETUP/mount.ini → file/xugu/XuguDB-x64/SETUP/mount.ini


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/SETUP/trust.ini → file/xugu/XuguDB-x64/SETUP/trust.ini


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/SETUP/types.ini → file/xugu/XuguDB-x64/SETUP/types.ini


+ 0 - 0
file/xugu/XuguDB-12.4_20240416-cluster-linux-x64/SETUP/xugu.ini → file/xugu/XuguDB-x64/SETUP/xugu.ini


+ 52 - 0
internal/auto/kill_db.go

@@ -0,0 +1,52 @@
+package auto
+
+import (
+	"fmt"
+	"xg_auto_deploy/internal/global"
+	"xg_auto_deploy/internal/remote"
+)
+
+func KillToNodes(nodeIds []string) {
+	global.Logs.Infoln("----------------开始kill----------------------------")
+
+	if nodeIds[0] == "all" {
+		fmt.Println("is ALL")
+		for _, nodeTemp := range global.ServerNodeConfigs {
+			//NodeId := nodeTemp.NodeId
+			id, err := remote.SingleCmd(&nodeTemp, fmt.Sprintf("ps -ef | grep %s | grep -v grep | awk '{print $2}'", nodeTemp.XuguAddr))
+			if err != nil {
+				global.Logs.Errorf("查询节点%s kill进程失败:%s \n", nodeTemp.NodeId, err)
+				return
+			}
+			cmd := fmt.Sprintf("kill -9 %s", id)
+			msg, err := remote.SingleCmd(&nodeTemp, cmd)
+			if err != nil {
+				global.Logs.Errorf("查询节点%s 发送kill进程失败:%s \n", nodeTemp.NodeId, err)
+				return
+			}
+			global.Logs.Infof("查询节点%s kill进程成功:%s", nodeTemp.NodeId, msg)
+		}
+		return
+	}
+
+	if !IsNumericArray(nodeIds) {
+		fmt.Println("传入指定节点参数错误,请检查:", nodeIds)
+		return
+	}
+
+	for _, NodeId := range nodeIds {
+		nodeTemp := global.ServerNodeConfigs[NodeId]
+		id, err := remote.SingleCmd(&nodeTemp, fmt.Sprintf("ps -ef | grep %s | grep -v grep | awk '{print $2}'", nodeTemp.XuguAddr))
+		if err != nil {
+			global.Logs.Errorf("查询节点%s kill进程失败:%s \n", nodeTemp.NodeId, err)
+			return
+		}
+		cmd := fmt.Sprintf("kill -9 %s", id)
+		msg, err := remote.SingleCmd(&nodeTemp, cmd)
+		if err != nil {
+			global.Logs.Errorf("查询节点%s 发送kill进程失败:%s \n", nodeTemp.NodeId, err)
+			return
+		}
+		global.Logs.Infof("查询节点%s kill进程成功 %s", nodeTemp.NodeId, msg)
+	}
+}

+ 42 - 0
internal/auto/send_cmd.go

@@ -0,0 +1,42 @@
+package auto
+
+import (
+	"fmt"
+	"xg_auto_deploy/internal/global"
+	"xg_auto_deploy/internal/remote"
+)
+
+func CmdToNodes(nodeIds []string, cmd string) {
+
+	global.Logs.Infoln("----------------开始发送命令----------------------------")
+
+	if nodeIds[0] == "all" {
+		fmt.Println("is ALL")
+		for _, nodeTemp := range global.ServerNodeConfigs {
+
+			msg, err := remote.SingleCmd(&nodeTemp, cmd)
+			if err != nil {
+				global.Logs.Errorf("节点%s 发送命令失败:%s \n", nodeTemp.NodeId, err)
+				return
+			}
+			global.Logs.Infof("节点%s 发送命令成功:%s", nodeTemp.NodeId, msg)
+		}
+		return
+	}
+
+	if !IsNumericArray(nodeIds) {
+		fmt.Println("传入指定节点参数错误,请检查:", nodeIds)
+		return
+	}
+
+	for _, NodeId := range nodeIds {
+		nodeTemp := global.ServerNodeConfigs[NodeId]
+
+		msg, err := remote.SingleCmd(&nodeTemp, cmd)
+		if err != nil {
+			global.Logs.Errorf("节点%s 发送命令失败:%s \n", nodeTemp.NodeId, err)
+			return
+		}
+		global.Logs.Infof("节点%s 发送命令成功:%s", nodeTemp.NodeId, msg)
+	}
+}

+ 0 - 1
internal/auto/sendF_file.go → internal/auto/send_file.go

@@ -12,7 +12,6 @@ import (
 )
 
 func SendToNodes(nodeIds []string, local_file string, target_file string) {
-	fmt.Println("SendToNodes: ", nodeIds, local_file, target_file)
 	if nodeIds[0] == "all" {
 		fmt.Println("is ALL")
 		for _, nodeTemp := range global.ServerNodeConfigs {

+ 18 - 9
internal/auto/xugu_deploy.go

@@ -14,6 +14,8 @@ import (
 	"xg_auto_deploy/internal/models"
 	"xg_auto_deploy/internal/remote"
 	"xg_auto_deploy/internal/utils"
+
+	"golang.org/x/crypto/ssh"
 )
 
 var wg sync.WaitGroup
@@ -22,7 +24,8 @@ func AutoDeployALL() {
 	global.Logs.Infoln("----------------开始部署----------------------------")
 	for NodeId, nodeTemp := range global.ServerNodeConfigs {
 		wg.Add(1)
-		go func(serverNodeConfig models.ServerNodeConfig, serverNodeId string) {
+		func(serverNodeConfig models.ServerNodeConfig, serverNodeId string) {
+
 			//检查环境
 			CheckSysEnv(&serverNodeConfig)
 			CheckAppEnv(&serverNodeConfig)
@@ -31,7 +34,7 @@ func AutoDeployALL() {
 			//设置xugu.ini
 			AutoXuguini(&serverNodeConfig)
 			//设置cluster
-			if global.ClusterConfigMap["local_file"] != "" {
+			if global.ClusterConfigMap["local_file"] != "" || global.ClusterConfigMap["template"] != "" {
 				AutoCluster(&serverNodeConfig, true)
 			} else {
 				global.Logs.Printf("%s节点未设置cluser.ini文件\n", serverNodeConfig.NodeId)
@@ -52,6 +55,9 @@ func AutoDeployALL() {
 // 上传cluster到目标服务器
 func AutoCluster(nodeTemp *models.ServerNodeConfig, onOFF bool) {
 	if !onOFF {
+		//获取节点 ,节点ip ,
+		//获取集群配置文件
+
 		return
 	}
 	id, err := strconv.Atoi(nodeTemp.NodeId)
@@ -157,6 +163,7 @@ func setxginiMemory(nodeTemp *models.ServerNodeConfig, onOff bool) {
 
 // 上传文件到目标服务器
 func UploadFileOrDir(serverNodeId string, serverNodeConfig *models.ServerNodeConfig) {
+
 	//传送文件
 	upFiles := func(serverNodeConfig *models.ServerNodeConfig, LocalFile string) {
 		//检测上传为文件还是文件夹
@@ -172,17 +179,19 @@ func UploadFileOrDir(serverNodeId string, serverNodeConfig *models.ServerNodeCon
 			global.Logs.Printf("----- %s节点上传文件成功\n", serverNodeId)
 			remote.SingleCmd(serverNodeConfig, fmt.Sprintf(`chmod -R +x %s`, serverNodeConfig.XuguAddr))
 		case "folder":
-			// // 连接到远程主机
-			// client, err := ssh.Dial("tcp", serverNodeConfig.IpPort, serverNodeConfig.SSHClient)
-			// if err != nil {
-			// 	panic(err)
-			// }
-			// defer client.Close()
+			// 连接到远程主机
+			client, err := ssh.Dial("tcp", serverNodeConfig.IpPort, serverNodeConfig.SSHClient)
+			if err != nil {
+				panic(err)
+			}
+			defer client.Close()
 			// 检测远端文件夹是否存在,不存在则创建 [ ! -d "/DATA2/GT/test" ] && mkdir -p /DATA2/GT/test
 			remote.SingleCmd(serverNodeConfig, fmt.Sprintf(`[ ! -d "%s" ] && mkdir -p %s`, serverNodeConfig.XuguAddr, serverNodeConfig.XuguAddr))
 			// 上传文件夹
-			err := remote.UploadDir(serverNodeConfig, LocalFile, serverNodeConfig.XuguAddr)
+			err = remote.UploadDir(serverNodeConfig, LocalFile, serverNodeConfig.XuguAddr)
 			if err != nil {
+
+				global.Logs.Errorf("----- %s节点上传文件夹错误\n", serverNodeId)
 				panic(err)
 			}
 			global.Logs.Printf("----- %s节点上传文件成功\n", serverNodeId)

+ 21 - 4
internal/auto/xugu_start.go

@@ -3,6 +3,7 @@ package auto
 import (
 	"fmt"
 	"strings"
+	"time"
 	"xg_auto_deploy/internal/config"
 	"xg_auto_deploy/internal/global"
 	"xg_auto_deploy/internal/models"
@@ -15,8 +16,13 @@ func StartAll() {
 
 		wg.Add(1)
 		go func(serverNodeConfig models.ServerNodeConfig, serverNodeId string) {
-			fmt.Println("serverNodeConfig.XuguAddr: ", serverNodeConfig.XuguAddr)
+
 			if serverNodeConfig.XuguAddr != "" {
+				//删除stdout.txt文件
+				_, err := remote.SingleCmd(&serverNodeConfig, fmt.Sprintf("rm -f %s/BIN/stdout.txt", serverNodeConfig.XuguAddr))
+				if err != nil {
+					global.Logs.Errorf("删除%s节点stdout.txt文件失败\n", serverNodeId)
+				}
 				xgBin := findXuguBin(&serverNodeConfig)
 				//fmt.Println("启动服务器:", serverNodeId)
 				cmd := fmt.Sprintf("stdbuf -o0  %s/BIN/%s -service  ", serverNodeConfig.XuguAddr, xgBin)
@@ -33,7 +39,20 @@ func StartAll() {
 				if checkXuguPort(&serverNodeConfig) {
 					global.Logs.Infof("启动%s节点数据库成功\n", serverNodeId)
 				} else {
-					global.Logs.Errorf("启动%s节点数据库失败\n", serverNodeId)
+					//等待5秒进行第二次查询
+					time.Sleep(5 * time.Second)
+
+					if checkXuguPort(&serverNodeConfig) {
+						global.Logs.Infof("启动%s节点数据库成功\n", serverNodeId)
+					} else {
+						global.Logs.Errorf("启动%s节点数据库失败\n", serverNodeId)
+						//对stdout.txt查询
+						ret, err := remote.SingleCmd(&serverNodeConfig, fmt.Sprintf("cat %s/BIN/stdout.txt", serverNodeConfig.XuguAddr))
+						if err != nil {
+							global.Logs.Errorf("查询%s节点数据库stdout.txt文件失败\n", serverNodeId)
+						}
+						global.Logs.Printf("查询%s节点数据库stdout.txt : %s\n", serverNodeId, ret)
+					}
 
 				}
 			}
@@ -78,7 +97,6 @@ func checkXuguPort(serverNodeConfig *models.ServerNodeConfig) bool {
 
 	port, err := config.GetXginiValue(xuguIniDownloadTempbuf, keyToFind)
 	if err != nil {
-
 		global.Logs.Errorf("查找虚谷ini配置文件出错 Error:\n", err)
 	}
 	remote.SingleCmd(serverNodeConfig, "chmod -R +x "+serverNodeConfig.XuguAddr)
@@ -87,7 +105,6 @@ func checkXuguPort(serverNodeConfig *models.ServerNodeConfig) bool {
 		//fmt.Println("执行命令失败:", err)
 		return false
 	} else {
-
 		global.Logs.Infoln("执行命令返回 ret:", ret)
 		return true
 	}

+ 152 - 23
internal/cmd/cmd.go

@@ -16,6 +16,8 @@ func Execute() {
 		fmt.Println("  install  : 自动部署数据库")
 		fmt.Println("  send  :  发送文件或文件夹")
 		fmt.Println("  start  :  启动配置文件内的所有节点")
+		fmt.Println("  killdb  :  kill -9 数据库")
+		fmt.Println("  cmd  : 向指定节点发送命令")
 		os.Exit(1)
 	}
 
@@ -23,44 +25,171 @@ func Execute() {
 	case "version":
 		fmt.Println("Version: 1.0.0")
 	case "install":
-		allCmd := flag.NewFlagSet("install", flag.ExitOnError)
-		hMode := allCmd.String("s", "./config.toml", "指定配置文件")
-
-		// 如果只有 "all" 命令,没有其他参数
-		if len(os.Args) == 2 {
-			fmt.Println("使用默认配置文件")
-			global.InitNodeSetting("./config.toml")
-			auto.AutoDeployALL()
-			return
-		}
-
-		// 解析 all 命令的参数
-		allCmd.Parse(os.Args[2:])
-
-		if *hMode != "" {
-			fmt.Printf("指定配置文件: %s\n", *hMode)
-			global.InitNodeSetting(*hMode)
-			auto.AutoDeployALL()
-		} else {
-			fmt.Println("使用默认配置文件")
-			global.InitNodeSetting("./config.toml")
-			auto.AutoDeployALL()
-		}
+		parainstall()
 	case "start":
 		paraStart()
 	case "send":
 		paraSend()
+	case "cmd":
+		paraSendCmd()
+	case "killdb":
+		paraKillDB()
 	default:
 		fmt.Printf("(未知命令)Unknown command: %s\n", os.Args[1])
 		fmt.Println("Commands:")
 		fmt.Println("  install  : 自动部署数据库")
 		fmt.Println("  send  :  发送文件或文件夹")
 		fmt.Println("  start  :  启动配置文件内的所有节点")
+		fmt.Println("  killdb  :  kill -9 数据库")
+		fmt.Println("  cmd  : 向指定节点发送命令")
 		os.Exit(1)
 	}
 
 }
 
+func paraSendCmd() {
+	SendCmd := flag.NewFlagSet("cmd", flag.ExitOnError)
+	hMode := SendCmd.String("s", "", "指定配置文件")
+
+	// 如果只有 "send" 命令,没有其他参数
+	if len(os.Args) == 2 {
+		fmt.Println("缺少命令参数")
+		//global.InitNodeSetting("./config.toml")
+
+		return
+	}
+	// 解析 all 命令的参数
+	SendCmd.Parse(os.Args[2:])
+
+	if *hMode != "" {
+		//fmt.Printf("指定配置文件参数发送: %s\n", *hMode)
+		global.InitNodeSetting(*hMode)
+
+		paraArgs := os.Args[2:]
+
+		switch len(paraArgs) {
+		case 2:
+			//fmt.Printf("指定配置文件参数发送至所有节点: %s\n", *hMode)
+			fmt.Println("缺少命令参数 cmd")
+			return
+
+		case 3:
+			//	fmt.Println("缺少命令参数 cmd")
+			auto.CmdToNodes([]string{"all"}, paraArgs[2])
+			return
+
+		case 4:
+			if paraArgs[2] == "all" {
+				//fmt.Printf("发送至所有节点\n")
+
+				auto.CmdToNodes([]string{"all"}, paraArgs[3])
+				return
+			}
+			nodeIds := strings.Split(paraArgs[2], ",")
+			//fmt.Printf("指定配置文件参数发送至所有节点: %s\n", nodeIds)
+
+			auto.CmdToNodes(nodeIds, paraArgs[3])
+
+		}
+
+	} else {
+		//fmt.Println("使用默认配置文件参数发送")
+		paraArgs := os.Args[2:]
+
+		global.InitNodeSetting("./config.toml")
+		switch len(paraArgs) {
+		case 1:
+			nodeIds := strings.Split(paraArgs[0], ",")
+			fmt.Printf("使用默认配置文件参数发送至所有节点: %s\n", nodeIds)
+			//auto.SendToNodes(nodeIds, "", "")
+			auto.CmdToNodes([]string{"all"}, paraArgs[0])
+		case 2:
+
+			nodeIds := strings.Split(paraArgs[0], ",")
+			fmt.Printf("使用默认配置文件参数发送至所有节点: %s\n", nodeIds)
+			auto.CmdToNodes(nodeIds, paraArgs[1])
+		}
+
+	}
+}
+
+func parainstall() {
+	allCmd := flag.NewFlagSet("install", flag.ExitOnError)
+	hMode := allCmd.String("s", "./config.toml", "指定配置文件")
+
+	// 如果只有 "all" 命令,没有其他参数
+	if len(os.Args) == 2 {
+		fmt.Println("使用默认配置文件")
+		global.InitNodeSetting("./config.toml")
+		auto.AutoDeployALL()
+		return
+	}
+
+	// 解析 all 命令的参数
+	allCmd.Parse(os.Args[2:])
+
+	if *hMode != "" {
+		fmt.Printf("指定配置文件: %s\n", *hMode)
+		global.InitNodeSetting(*hMode)
+		auto.AutoDeployALL()
+	} else {
+		fmt.Println("使用默认配置文件")
+		global.InitNodeSetting("./config.toml")
+		auto.AutoDeployALL()
+	}
+}
+
+func paraKillDB() {
+	killdbCmd := flag.NewFlagSet("killdb", flag.ExitOnError)
+	hMode := killdbCmd.String("s", "", "指定配置文件")
+
+	// 如果只有 "send" 命令,没有其他参数
+	if len(os.Args) == 2 {
+		//fmt.Println("使用默认配置文件参数发送至全部节点")
+		global.InitNodeSetting("./config.toml")
+		auto.KillToNodes([]string{"all"})
+
+		return
+	}
+	// 解析 all 命令的参数
+	killdbCmd.Parse(os.Args[2:])
+
+	if *hMode != "" {
+		//fmt.Printf("指定配置文件参数发送: %s\n", *hMode)
+		global.InitNodeSetting(*hMode)
+
+		paraArgs := os.Args[2:]
+
+		switch len(paraArgs) {
+		case 2:
+			//fmt.Printf("指定配置文件参数发送至所有节点: %s\n", *hMode)
+
+			auto.KillToNodes([]string{"all"})
+			return
+
+		case 3:
+			if paraArgs[2] == "all" {
+				//fmt.Printf("发送至所有节点\n")
+
+				auto.KillToNodes([]string{"all"})
+				return
+			}
+			nodeIds := strings.Split(paraArgs[2], ",")
+			//fmt.Printf("发送至指定节点: %s\n", nodeIds)
+
+			auto.KillToNodes(nodeIds)
+			return
+		}
+
+	} else {
+		fmt.Println("使用默认配置文件参数发送")
+
+		global.InitNodeSetting("./config.toml")
+		auto.KillToNodes([]string{"all"})
+
+	}
+}
+
 func paraSend() {
 	allCmd := flag.NewFlagSet("send", flag.ExitOnError)
 	hMode := allCmd.String("s", "", "指定配置文件")

+ 6 - 2
internal/config/cluster.go

@@ -9,7 +9,11 @@ import (
 	"xg_auto_deploy/internal/models"
 )
 
-//var ClusterConfig1 models.ClusterConfig
+// var ClusterConfig1 models.ClusterConfig
+
+// func SetClusterFlied(cluster *models.ClusterConfig) (*models.ClusterConfig, error) {
+
+// }
 
 func GetClusterConfig(path string) (*models.ClusterConfig, error) {
 	clusterConfig := models.ClusterConfig{}
@@ -183,7 +187,7 @@ EJE_WINDOW=%s  MAX_SHAKE_TIME=%s MY_NID=%s  CHECK_RACK=%s
 		clusterConfig.FirstPart.MaxShakeTime, MyNID, clusterConfig.FirstPart.CheckRack)
 
 	for _, v := range clusterConfig.SecondParts {
-		str += fmt.Sprintf(`NID=%s  RACK=%s  PORTS=%s  ROLE=%s  LPU=%s  STORE_WEIGHT=%s  STATE=%s;
+		str += fmt.Sprintf(`NID=%s  RACK=%s  PORTS='%s'  ROLE='%s'  LPU=%s  STORE_WEIGHT=%s  STATE=%s;
 `, v.NID, v.RACK, v.PORTS, v.ROLE, v.LPU, v.StoreWeight, v.STATE)
 	}
 	buffer := bytes.NewBufferString(str)

+ 112 - 7
internal/global/global.go

@@ -3,11 +3,14 @@ package global
 import (
 	"fmt"
 	"os"
+	"strconv"
+	"strings"
 	"time"
 
 	"xg_auto_deploy/internal/config"
 	"xg_auto_deploy/internal/logger"
 	"xg_auto_deploy/internal/models"
+	"xg_auto_deploy/internal/utils"
 
 	"golang.org/x/crypto/ssh"
 )
@@ -33,13 +36,6 @@ func InitNodeSetting(path string) {
 	XginiConfigMap = configTemp.GetXuguini()
 	ClusterConfigMap = configTemp.GetCluster()
 	//ClusterInfo = config.ReadXgClusterConfig(ClusterConfigMap["local_file"])
-	var err error
-	if ClusterConfigMap["local_file"] != "" {
-		ClusterInfo, err = config.GetClusterConfig(ClusterConfigMap["local_file"])
-		if err != nil {
-			Logs.Fatalf("config.GetClusterConfig 失败")
-		}
-	}
 
 	for key, value := range configTemp.GetNodeConfig() {
 		//fmt.Println(key, value)
@@ -81,6 +77,8 @@ func InitNodeSetting(path string) {
 		}
 		ServerNodeConfigs[key] = nodeTemp
 	}
+	//初始化集群配置
+	initCluster()
 }
 
 func initFiles() {
@@ -102,6 +100,113 @@ func chenckFiles(dir string) {
 
 }
 
+func initCluster() {
+	//设置cluster.ini文件配置
+	if ClusterConfigMap["template"] != "" {
+		nodeNum := 0
+		var clustersecondParts []models.ClustersecondPart
+		var msgPortNum string
+		for _, node := range ServerNodeConfigs {
+
+			nodeNum++
+			//切分ip端口
+			nodeIp, _ := utils.SplitColon(node.IpPort)
+
+			//识别template端口数量,并添加端口
+			portsRet := strings.Split(ClusterConfigMap["template"], ",")
+			for _, v := range portsRet {
+
+				nid := ""
+				NodeId, err := strconv.Atoi(node.NodeId)
+				if err != nil {
+					fmt.Println("NodeId转换失败")
+					os.Exit(1)
+				}
+				if NodeId < 10 {
+					nid = fmt.Sprintf("000%s", node.NodeId)
+				} else if NodeId < 100 {
+					nid = fmt.Sprintf("00%s", node.NodeId)
+				} else if NodeId < 1000 {
+					nid = fmt.Sprintf("0%s", node.NodeId)
+				}
+				// 50000:2
+				port, num := utils.SplitColon(v)
+				msgPortNum = num
+				numI, err := strconv.Atoi(num)
+				if err != nil {
+					fmt.Println("端口数量转换失败")
+					os.Exit(1)
+				}
+				portI, err := strconv.Atoi(port)
+				if err != nil {
+					fmt.Println("端口转换失败")
+					os.Exit(1)
+				}
+				Ports := ""
+
+				for i := 0; i < numI; i++ {
+					Ports += fmt.Sprintf("%s:%v,", nodeIp, portI)
+					portI++
+				}
+
+				//去除Ports 最后的逗号
+				Ports = Ports[:len(Ports)-1]
+
+				// 筛选主副节点
+				Role := ""
+				gRole := 0
+				if node.NodeId == "1" || node.NodeId == "2" {
+					Role = "MSQW"
+				} else if gRole == 0 {
+					Role = "SQWG"
+				} else {
+					Role = "SQW"
+				}
+				cTemp := &models.ClustersecondPart{
+					NID:         nid,
+					RACK:        "0001",
+					PORTS:       Ports,
+					ROLE:        Role,
+					LPU:         "3",
+					StoreWeight: "3",
+					STATE:       "DETECT",
+				}
+				clustersecondParts = append(clustersecondParts, *cTemp)
+			}
+		}
+
+		ClusterInfo = &models.ClusterConfig{
+			FirstPart: models.ClusterfirstPart{
+				MaxNodes:      "32",
+				MasterGrps:    "1",
+				Protocol:      "UDP",
+				MsgPortNum:    msgPortNum,
+				MaxSendWin:    "1024",
+				MsgHaveCRC:    "0",
+				MergeSmallMsg: "1",
+				MsgSize:       "9000",
+				Timeout:       "20000",
+				RPCWindow:     "16",
+				EJEWindow:     "16",
+				MaxShakeTime:  "1200",
+				MyNID:         "",
+				CheckRack:     "0",
+			},
+			SecondParts: clustersecondParts,
+		}
+
+	}
+
+	var err error
+	if ClusterConfigMap["local_file"] != "" {
+
+		ClusterInfo, err = config.GetClusterConfig(ClusterConfigMap["local_file"])
+		if err != nil {
+			Logs.Fatalf("config.GetClusterConfig 失败")
+		}
+	}
+}
+
 func chenckDefaultConfig() {
 	// 检查文件是否存在
 	// 要检查和创建的文件路径

+ 5 - 2
internal/remote/upload.go

@@ -84,7 +84,7 @@ func UploadFile(nodeConfig *models.ServerNodeConfig, localFilePath string, targe
 	// 5. 数据复制
 	n, err := io.Copy(target, localFile)
 	if err != nil {
-		global.Logs.Fatal("文件传输失败 ", err)
+		global.Logs.Fatalf("节点 %s文件传输失败 %s ", nodeConfig.NodeId, err)
 		return err
 	}
 
@@ -163,6 +163,7 @@ func UploadDir(nodeConfig *models.ServerNodeConfig, localPath, remotePath string
 			if file.IsDir() {
 				subLocalFiles, err := os.ReadDir(localFilePath)
 				if err != nil {
+					global.Logs.Fatalf("读取文件夹失败: %s, err:%s", localFilePath, err)
 					return err
 				}
 				//_, err = SingleCmd(nodeConfig, fmt.Sprintf(`[ ! -d "%s" ] `, remoteFilePath))
@@ -175,6 +176,7 @@ func UploadDir(nodeConfig *models.ServerNodeConfig, localPath, remotePath string
 
 				err = dirfunc(nodeConfig, localFilePath, remoteFilePath, subLocalFiles)
 				if err != nil {
+					global.Logs.Fatalf("递归上传文件夹失败: %s, err:%s", localFilePath, err)
 					return err
 				}
 
@@ -189,13 +191,14 @@ func UploadDir(nodeConfig *models.ServerNodeConfig, localPath, remotePath string
 
 				dstFile, err := sftpClient.Create(remoteFilePath)
 				if err != nil {
+					global.Logs.Fatalf("创建文件失败: %s, err:%s", remoteFilePath, err)
 					return err
 				}
 				defer dstFile.Close()
 
 				_, err = io.Copy(dstFile, srcFile)
 				if err != nil {
-					global.Logs.Fatalf("文件传输失败: %s, err:%s ", localFilePath, err)
+					global.Logs.Fatalf("节点 %s 文件传输失败: %s, err:%s ", nodeConfig.NodeId, remoteFilePath, err)
 					return err
 				}
 			}

+ 1 - 1
internal/utils/utils.go

@@ -61,6 +61,6 @@ func FindDirWithSubstring(path string, substring string) (string, error) {
 	if err != nil && err.Error() != "found" {
 		return "", err
 	}
-	fmt.Println("foundPath", foundPath)
+
 	return foundPath, nil
 }

+ 681 - 0
logs/xg_autodeploy.log

@@ -1149,3 +1149,684 @@
 {"level":"info","msg":"Stdout: COMMAND       PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME\nxugu_clus 1477051 root   24u  IPv6 60044713      0t0  TCP *:5189 (LISTEN)\n","time":"2024-06-11T14:42:08+08:00"}
 {"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-11T14:42:08+08:00"}
 {"level":"info","msg":"启动2节点数据库成功\n","time":"2024-06-11T14:42:08+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:05:37+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-12.4_20240416-cluster-linux-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:05:39+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-12.4_20240416-cluster-linux-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:05:39+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:05:39+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:07:14+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-12.4_20240416-cluster-linux-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:07:16+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-12.4_20240416-cluster-linux-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:07:16+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:08:19+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-12.4_20240416-cluster-linux-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:08:22+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-12.4_20240416-cluster-linux-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:08:22+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:10:11+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-12.4_20240416-cluster-linux-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:10:13+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-12.4_20240416-cluster-linux-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:10:13+08:00"}
+{"level":"fatal","msg":"创建文件失败: /DATA2/GT/xugu/start3/BIN/xugu_init.sql, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:10:14+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:11:28+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:11:31+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:11:31+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:11:31+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:11:45+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:11:47+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:11:47+08:00"}
+{"level":"fatal","msg":"创建文件失败: /DATA2/GT/xugu/start3/BIN/xugu_init.sql, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T15:11:47+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T15:53:02+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:53:04+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T15:53:04+08:00"}
+{"level":"fatal","msg":"节点 2 文件传输失败: file\\xugu\\XuguDB-aarch64/BIN/xgconsole-linux-aarch64, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T15:53:04+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:04:08+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:04:10+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:04:10+08:00"}
+{"level":"fatal","msg":"节点 2 文件传输失败: /DATA2/GT/xugu/start3/BIN/xgconsole-linux-aarch64, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T16:04:11+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:07:06+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:07:08+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:07:09+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:07:12+08:00"}
+{"level":"fatal","msg":"节点 2 文件传输失败: /DATA2/GT/xugu/start3/BIN/xgconsole-linux-aarch64, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T16:07:12+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:07:53+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:07:55+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:07:56+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:07:57+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:08:10+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:08:12+08:00"}
+{"level":"fatal","msg":"节点 2 文件传输失败: /DATA2/GT/xugu/start3/BIN/xgconsole-linux-aarch64, err:sftp: \"Failure\" (SSH_FX_FAILURE) ","time":"2024-06-20T16:08:12+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:08:59+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:09:01+08:00"}
+{"level":"info","msg":"----- 3节点上传文件成功\n","time":"2024-06-20T16:09:01+08:00"}
+{"level":"info","msg":"--------------------3节点--------------------------------------:\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:09:02+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:28:09+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:28:11+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:28:11+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:28:52+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:28:54+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:28:54+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:29:21+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:29:23+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:29:24+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:29:27+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:29:27+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:29:28+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:31:41+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:31:43+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:31:44+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:31:47+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:31:47+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:31:48+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T16:32:23+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T16:32:23+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T16:32:23+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T16:32:23+08:00"}
+{"level":"info","msg":"1节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T16:32:23+08:00"}
+{"level":"info","msg":"2节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T16:32:23+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"2节点执行命令返回: 执行超时","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"1节点执行命令返回: 执行超时","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"Stdout: COMMAND      PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME\nxugu_clus 741310 root   27u  IPv6 26378794      0t0  TCP *:5189 (LISTEN)\n","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"启动2节点数据库成功\n","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"Stdout: COMMAND       PID USER   FD   TYPE    DEVICE SIZE/OFF NODE NAME\nxugu_clus 2442714 root   28u  IPv6 177653989      0t0  TCP *:5189 (LISTEN)\n","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"启动1节点数据库成功\n","time":"2024-06-20T16:32:29+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:36:32+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:36:34+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:36:35+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:36:38+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:36:38+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:36:39+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:43:10+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:43:13+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:43:13+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:43:17+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:43:17+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:43:20+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:43:20+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:44:29+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:44:31+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:44:31+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:46:44+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:46:47+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:46:47+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:47:39+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:47:42+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:47:42+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:47:45+08:00"}
+{"level":"info","msg":"----- 3节点上传文件成功\n","time":"2024-06-20T16:47:45+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:47:49+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:47:49+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"--------------------3节点--------------------------------------:\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:47:50+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:54:36+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:54:38+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:54:38+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:54:47+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:54:50+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:54:50+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:55:14+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:55:17+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:55:17+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:55:20+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:55:21+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:55:24+08:00"}
+{"level":"info","msg":"----- 3节点上传文件成功\n","time":"2024-06-20T16:55:24+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"--------------------3节点--------------------------------------:\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:55:25+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:55:58+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:56:00+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:56:01+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:56:09+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:56:11+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:56:12+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:56:15+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:56:15+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:56:18+08:00"}
+{"level":"info","msg":"----- 3节点上传文件成功\n","time":"2024-06-20T16:56:19+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"--------------------3节点--------------------------------------:\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:56:20+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:56:35+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:56:37+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:56:37+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:56:46+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:56:48+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T16:56:49+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T16:58:32+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:58:34+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T16:58:35+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:58:38+08:00"}
+{"level":"info","msg":"----- 3节点上传文件成功\n","time":"2024-06-20T16:58:38+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T16:58:42+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T16:58:42+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"--------------------3节点--------------------------------------:\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T16:58:43+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"2节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"3节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"1节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T16:59:42+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"Stdout: XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r\nStart at: 2024-06-20 16:59:37\r\nStart database process PID=755082,output redirects to file stdout.txt.\n","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"2节点执行命令返回: 执行完毕","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"Stdout: XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r\nStart at: 2024-06-20 16:59:36\r\nStart database process PID=2459870,output redirects to file stdout.txt.\n","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"1节点执行命令返回: 执行完毕","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"Stdout: COMMAND      PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME\nxugu_clus 741310 root   27u  IPv6 26378794      0t0  TCP *:5189 (LISTEN)\n","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"启动2节点数据库成功\n","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"Stdout: COMMAND       PID USER   FD   TYPE    DEVICE SIZE/OFF NODE NAME\nxugu_clus 2442714 root   28u  IPv6 177653989      0t0  TCP *:5189 (LISTEN)\n","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"启动1节点数据库成功\n","time":"2024-06-20T16:59:43+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T16:59:47+08:00"}
+{"level":"info","msg":"3节点执行命令返回: 执行超时","time":"2024-06-20T16:59:47+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T16:59:48+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T16:59:48+08:00"}
+{"level":"error","msg":"启动3节点数据库失败\n","time":"2024-06-20T16:59:48+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"3节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/stdout.txt -service  \n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"2节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/stdout.txt -service  \n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"1节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/stdout.txt -service  \n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 2","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"Stderr: /DATA2/GT/xugu/start3/BIN/stdout.txt:行1: 未预期的符号“(”附近有语法错误\n/DATA2/GT/xugu/start3/BIN/stdout.txt:行1: `XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r'\n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"error","msg":"启动3节点数据库失败\n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 2","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"Stderr: /DATA2/GT/xugu/start3/BIN/stdout.txt:行1: 未预期的符号“(”附近有语法错误\n/DATA2/GT/xugu/start3/BIN/stdout.txt:行1: `XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r'\n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"error","msg":"启动2节点数据库失败\n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 2","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"Stderr: /DATA2/GT/xugu/start3/BIN/stdout.txt:行1: 未预期的符号“(”附近有语法错误\n/DATA2/GT/xugu/start3/BIN/stdout.txt:行1: `XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r'\n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"error","msg":"启动1节点数据库失败\n","time":"2024-06-20T17:01:46+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:01:47+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:01:47+08:00"}
+{"level":"error","msg":"启动3节点数据库失败\n","time":"2024-06-20T17:01:47+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:01:47+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:01:47+08:00"}
+{"level":"error","msg":"启动2节点数据库失败\n","time":"2024-06-20T17:01:47+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:01:47+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:01:47+08:00"}
+{"level":"error","msg":"启动1节点数据库失败\n","time":"2024-06-20T17:01:47+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T17:01:51+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T17:01:54+08:00"}
+{"level":"fatal","msg":"创建文件夹失败 ( 查看目标端目录文件夹是否已存在 ): /DATA2/GT/xugu/start3/BIN, err:sftp: \"Failure\" (SSH_FX_FAILURE)","time":"2024-06-20T17:01:54+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T17:02:05+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T17:02:07+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T17:02:08+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T17:02:11+08:00"}
+{"level":"info","msg":"----- 3节点上传文件成功\n","time":"2024-06-20T17:02:11+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T17:02:14+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T17:02:15+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"--------------------3节点--------------------------------------:\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T17:02:16+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"3节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"2节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"1节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T17:02:22+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T17:02:27+08:00"}
+{"level":"info","msg":"3节点执行命令返回: 执行超时","time":"2024-06-20T17:02:27+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T17:02:27+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T17:02:27+08:00"}
+{"level":"info","msg":"1节点执行命令返回: 执行超时","time":"2024-06-20T17:02:27+08:00"}
+{"level":"info","msg":"2节点执行命令返回: 执行超时","time":"2024-06-20T17:02:27+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:02:28+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:02:28+08:00"}
+{"level":"error","msg":"启动3节点数据库失败\n","time":"2024-06-20T17:02:28+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:02:28+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:02:28+08:00"}
+{"level":"error","msg":"启动2节点数据库失败\n","time":"2024-06-20T17:02:28+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:02:28+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:02:28+08:00"}
+{"level":"error","msg":"启动1节点数据库失败\n","time":"2024-06-20T17:02:28+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:11:33+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:11:33+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:11:33+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:11:33+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:11:33+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:11:33+08:00"}
+{"level":"error","msg":"查找虚谷BIN文件出错 Error:\n%!(EXTRA *ssh.ExitError=Process exited with status 1)","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"2节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/ -service  \n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"error","msg":"查找虚谷BIN文件出错 Error:\n%!(EXTRA *ssh.ExitError=Process exited with status 1)","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"3节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/ -service  \n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"error","msg":"查找虚谷BIN文件出错 Error:\n%!(EXTRA *ssh.ExitError=Process exited with status 1)","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"1节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/ -service  \n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 127","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"Stderr: stdbuf: 无法运行命令 “/DATA2/GT/xugu/start3/BIN/”: 没有那个文件或目录\n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"error","msg":"启动3节点数据库失败\n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 127","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"Stderr: stdbuf: 无法运行命令 “/DATA2/GT/xugu/start3/BIN/”: 没有那个文件或目录\n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"error","msg":"启动2节点数据库失败\n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 127","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"Stderr: stdbuf: 无法运行命令 “/DATA2/GT/xugu/start3/BIN/”: 没有那个文件或目录\n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"error","msg":"启动1节点数据库失败\n","time":"2024-06-20T17:11:34+08:00"}
+{"level":"fatal","msg":"Download Failed to open remote file: file does not exist","time":"2024-06-20T17:11:34+08:00"}
+{"level":"info","msg":"----------------开始部署----------------------------","time":"2024-06-20T17:11:42+08:00"}
+{"level":"info","msg":"-----节点3 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T17:11:44+08:00"}
+{"level":"info","msg":"----- 3节点上传文件成功\n","time":"2024-06-20T17:11:45+08:00"}
+{"level":"info","msg":"-----节点1 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T17:11:48+08:00"}
+{"level":"info","msg":"----- 1节点上传文件成功\n","time":"2024-06-20T17:11:48+08:00"}
+{"level":"info","msg":"-----节点2 上传文件夹file\\xugu\\XuguDB-aarch64 到 目标端 /DATA2/GT/xugu/start3 ","time":"2024-06-20T17:11:51+08:00"}
+{"level":"info","msg":"----- 2节点上传文件成功\n","time":"2024-06-20T17:11:52+08:00"}
+{"level":"info","msg":"--------------------3节点--------------------------------------:\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"--------------------1节点--------------------------------------:\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"--------------------2节点--------------------------------------:\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Stack size :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Open files :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Wmem Default :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Rmem Default :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"系统环境Wmem Max :已配置\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 GCC :gcc已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Libaio :libaio已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Snmpd :snmpd已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"基础包 Ntpd :ntpd已安装\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"--------------------------------------------------------------:\n","time":"2024-06-20T17:11:53+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"2节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"3节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"1节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T17:11:55+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"2节点执行命令返回: 执行超时","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"3节点执行命令返回: 执行超时","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"1节点执行命令返回: 执行超时","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T17:12:01+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"Stdout: COMMAND      PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME\nxugu_clus 626919 root   26u  IPv6 26651754      0t0  TCP *:5181 (LISTEN)\n","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"启动3节点数据库成功\n","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"Stdout: COMMAND      PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME\nxugu_clus 758745 root   27u  IPv6 26634477      0t0  TCP *:5181 (LISTEN)\n","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"启动2节点数据库成功\n","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"Stdout: COMMAND       PID USER   FD   TYPE    DEVICE SIZE/OFF NODE NAME\nxugu_clus 2467814 root   28u  IPv6 178810960      0t0  TCP *:5181 (LISTEN)\n","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"启动1节点数据库成功\n","time":"2024-06-20T17:12:07+08:00"}
+{"level":"info","msg":"----------------开始kill----------------------------","time":"2024-06-20T17:42:48+08:00"}
+{"level":"info","msg":"查询节点2 kill进程成功:","time":"2024-06-20T17:42:48+08:00"}
+{"level":"info","msg":"查询节点3 kill进程成功:","time":"2024-06-20T17:42:49+08:00"}
+{"level":"info","msg":"查询节点1 kill进程成功:","time":"2024-06-20T17:42:49+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T17:59:42+08:00"}
+{"level":"info","msg":"节点2 发送命令成功:/root\n","time":"2024-06-20T17:59:42+08:00"}
+{"level":"info","msg":"节点3 发送命令成功:/root\n","time":"2024-06-20T17:59:42+08:00"}
+{"level":"info","msg":"节点1 发送命令成功:/root\n","time":"2024-06-20T17:59:43+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:02:16+08:00"}
+{"level":"info","msg":"节点3 发送命令成功:/root\n","time":"2024-06-20T18:02:17+08:00"}
+{"level":"info","msg":"节点1 发送命令成功:/root\n","time":"2024-06-20T18:02:17+08:00"}
+{"level":"info","msg":"节点2 发送命令成功:/root\n","time":"2024-06-20T18:02:17+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:02:21+08:00"}
+{"level":"error","msg":"节点1 发送命令失败:Process exited with status 127 \n","time":"2024-06-20T18:02:21+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:02:55+08:00"}
+{"level":"info","msg":"节点2 发送命令成功:/root\n","time":"2024-06-20T18:02:55+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:03:31+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:04:03+08:00"}
+{"level":"info","msg":"节点1 发送命令成功:/root\n","time":"2024-06-20T18:04:03+08:00"}
+{"level":"info","msg":"节点2 发送命令成功:/root\n","time":"2024-06-20T18:04:03+08:00"}
+{"level":"info","msg":"节点3 发送命令成功:/root\n","time":"2024-06-20T18:04:04+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:04:10+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:04:17+08:00"}
+{"level":"info","msg":"节点1 发送命令成功:","time":"2024-06-20T18:04:17+08:00"}
+{"level":"info","msg":"节点3 发送命令成功:","time":"2024-06-20T18:04:17+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:04:25+08:00"}
+{"level":"info","msg":"节点1 发送命令成功:公共\n模板\n视频\n图片\n文档\n下载\n音乐\n桌面\nanaconda-ks.cfg\nblob\nCentOS-Base.repo\nchecks.txt\ncheck.txt\nchrome.tz\nedit.txt\nGT\nhostlist.txt\ninitial-setup-ks.cfg\niso\njava-11-openjdk-11.0.8.10-1.el7.x86_64.rpm\njava-11-openjdk-devel-11.0.13.9-6.ky10.x86_64.rpm\njava-11-openjdk-devel-11.0.8.10-1.el7.x86_64.rpm\njava-1.8.0-openjdk-devel-1.8.0.262.b10-1.el7.x86_64.rpm\njava_error_in_goland_.hprof\njm02.log\njm.log\nlkm\nlogs\nmigrator20240326-2.txt\nperf.data\nperf.data.old\nshowversion.txt\nshutdown.txt\nssh.sh\nsystem_topology.png\ntest\ntest.log\ntest.sh\nXuguCM-2.12.0.20240318-Release-linux-aarch64.tar.gz\nxugu_install\nxugu_install_qilin.tar.gz\nXuGuServer\nXuGuServer-12_20231017-enterprise-linux-aarch64.tar.gz\nXuGuServer-12_20231017-trial-linux-aarch64.tar.gz\nxuguv11\n","time":"2024-06-20T18:04:25+08:00"}
+{"level":"info","msg":"节点3 发送命令成功:公共\n模板\n视频\n图片\n文档\n下载\n虚谷数据库控制台工具使用手册.pdf\n音乐\n桌面\nanaconda-ks.cfg\ndasd.txt\nedit.txt\nhs_err_pid630195.log\ninitial-setup-ks.cfg\nloaderr.log\nload.log\nperf.data\nperf.data.old\nshowversion.txt\ntabldr_load_err.log\ntabldr_load.log\ntest.txt\nxugu_check_env_arm\nxugu.ini~\nxugu_install\nxugu_install_qilin.tar.gz\n","time":"2024-06-20T18:04:26+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:04:31+08:00"}
+{"level":"error","msg":"节点1 发送命令失败:Process exited with status 1 \n","time":"2024-06-20T18:04:31+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:08:06+08:00"}
+{"level":"info","msg":"节点1 发送命令成功:/root\n","time":"2024-06-20T18:08:06+08:00"}
+{"level":"info","msg":"节点2 发送命令成功:/root\n","time":"2024-06-20T18:08:06+08:00"}
+{"level":"info","msg":"节点3 发送命令成功:/root\n","time":"2024-06-20T18:08:06+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:08:46+08:00"}
+{"level":"info","msg":"----------------开始发送命令----------------------------","time":"2024-06-20T18:08:51+08:00"}
+{"level":"info","msg":"节点1 发送命令成功:/root\n","time":"2024-06-20T18:08:51+08:00"}
+{"level":"info","msg":"节点2 发送命令成功:/root\n","time":"2024-06-20T18:08:51+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"3节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/stdout.txt -service  \n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"2节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/stdout.txt -service  \n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"1节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/stdout.txt -service  \n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 2","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"Stderr: /DATA2/GT/xugu/start3/BIN/stdout.txt:行1: 未预期的符号“(”附近有语法错误\n/DATA2/GT/xugu/start3/BIN/stdout.txt:行1: `XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r'\n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"error","msg":"启动3节点数据库失败\n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 2","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"Stderr: /DATA2/GT/xugu/start3/BIN/stdout.txt:行1: 未预期的符号“(”附近有语法错误\n/DATA2/GT/xugu/start3/BIN/stdout.txt:行1: `XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r'\n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"error","msg":"启动2节点数据库失败\n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 2","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"Stderr: /DATA2/GT/xugu/start3/BIN/stdout.txt:行1: 未预期的符号“(”附近有语法错误\n/DATA2/GT/xugu/start3/BIN/stdout.txt:行1: `XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r'\n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"error","msg":"启动1节点数据库失败\n","time":"2024-06-20T18:09:20+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T18:09:21+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T18:09:21+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T18:09:21+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T18:09:21+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T18:09:21+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T18:09:21+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T18:09:27+08:00"}
+{"level":"error","msg":"启动3节点数据库失败\n","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T18:09:27+08:00"}
+{"level":"error","msg":"启动2节点数据库失败\n","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"Failed to run: Process exited with status 1","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"Stderr: ","time":"2024-06-20T18:09:27+08:00"}
+{"level":"error","msg":"启动1节点数据库失败\n","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"查询3节点数据库stdout.txt : XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r\nStart at: 2024-06-20 17:11:58\r\nLoading license ... failed!\r\ndatabase server PID=626919\r\nCPU info:\r\n\tNode 0: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31\r\n\tNode 1: 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63\r\nResource limit:\r\n\tFile number:     hard limit=10240,soft limit=10240\r\n\tFile size(M):    hard limit=-1,soft limit=-1\r\n\tData memory(M):  hard limit=-1,soft limit=-1\r\n\tResident(M):     hard limit=-1,soft limit=-1\r\n\tProc's total memory(M): hard limit=-1,soft limit=-1\r\nThis machine cluster id is 3.\r\ninit data buffer...ok.\r\nPerform control file checksum...ok.\r\nTrial Edition,remain 360 days\r\nHandshaking...\r\n\rHandshake ok\r\nPoll cluster configs.... ok\r\n0 transaction will be rollbacked.\r\nok.\r\nOpen all system tables...ok\r\nOpen all system views...ok\r\nLoad all jobs...ok\r\nAll service started.\r\nListening at port 5181 \r\n\n","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"查询2节点数据库stdout.txt : XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r\nStart at: 2024-06-20 17:11:51\r\nLoading license ... failed!\r\ndatabase server PID=758745\r\nCPU info:\r\n\tNode 0: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31\r\n\tNode 1: 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63\r\nResource limit:\r\n\tFile number:     hard limit=10240,soft limit=10240\r\n\tFile size(M):    hard limit=-1,soft limit=-1\r\n\tData memory(M):  hard limit=-1,soft limit=-1\r\n\tResident(M):     hard limit=-1,soft limit=-1\r\n\tProc's total memory(M): hard limit=-1,soft limit=-1\r\nThis machine cluster id is 2.\r\ninit data buffer...ok.\r\nPerform control file checksum...ok.\r\nTrial Edition,remain 360 days\r\nHandshaking...\r\n\rHandshake ok\r\nPoll cluster configs.... ok\r\n0 transaction will be rollbacked.\r\nok.\r\nOpen all system tables...ok\r\nOpen all system views...ok\r\nLoad all jobs...ok\r\nAll service started.\r\nListening at port 5181 \r\n\n","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"查询1节点数据库stdout.txt : XuguDB 12.0.0 (Built:2024-04-16 12:00:00 GA)\r\nStart at: 2024-06-20 17:11:50\r\nLoading license ... failed!\r\ndatabase server PID=2467814\r\nCPU info:\r\n\tNode 0: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31\r\n\tNode 1: 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63\r\nResource limit:\r\n\tFile number:     hard limit=10240,soft limit=10240\r\n\tFile size(M):    hard limit=-1,soft limit=-1\r\n\tData memory(M):  hard limit=-1,soft limit=-1\r\n\tResident(M):     hard limit=-1,soft limit=-1\r\n\tProc's total memory(M): hard limit=-1,soft limit=-1\r\nThis machine cluster id is 1.\r\ninit data buffer...ok.\r\nPerform control file checksum...ok.\r\nTrial Edition,remain 360 days\r\nHandshaking...\r\n\rHandshaking...1 nodes detected,press 'x' to break \r\n\rHandshaking...1 nodes detected,press 'x' to break \r\n\rHandshake ok,3 nodes detected                       \r\n0 transaction will be rollbacked.\r\nok.\r\nMount all gstore...ok.\r\nOpen all system tables...ok\r\nCreate system database...ok.\r\nOpen all system views...ok\r\nLoad all jobs...ok\r\nAll service started.\r\nListening at port 5181 \r\n\n","time":"2024-06-20T18:09:27+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T18:12:22+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T18:12:22+08:00"}
+{"level":"info","msg":"----------------开始启动服务器----------------------------","time":"2024-06-20T18:12:22+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T18:12:22+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T18:12:22+08:00"}
+{"level":"info","msg":"执行命令: cd /DATA2/GT/xugu/start3/BIN/ \u0026\u0026 ls","time":"2024-06-20T18:12:22+08:00"}
+{"level":"info","msg":"2节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T18:12:23+08:00"}
+{"level":"info","msg":"3节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T18:12:23+08:00"}
+{"level":"info","msg":"1节点执行命令stdbuf -o0  /DATA2/GT/xugu/start3/BIN/xugu_cluster_linux_aarch64_20240416 -service  \n","time":"2024-06-20T18:12:23+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"3节点执行命令返回: 执行超时","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"2节点执行命令返回: 执行超时","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"Command timed out","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"1节点执行命令返回: 执行超时","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"Stdout: COMMAND      PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME\nxugu_clus 634078 root   26u  IPv6 26871119      0t0  TCP *:5181 (LISTEN)\n","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"启动3节点数据库成功\n","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"Stdout: COMMAND      PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME\nxugu_clus 764662 root   27u  IPv6 26828545      0t0  TCP *:5181 (LISTEN)\n","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"启动2节点数据库成功\n","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"Command executed successfully","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"Stdout: COMMAND       PID USER   FD   TYPE    DEVICE SIZE/OFF NODE NAME\nxugu_clus 2490681 root   27u  IPv6 180128525      0t0  TCP *:5181 (LISTEN)\n","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"执行命令返回 ret: 执行完毕","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"启动1节点数据库成功\n","time":"2024-06-20T18:12:28+08:00"}
+{"level":"info","msg":"----------------开始kill----------------------------","time":"2024-06-20T18:13:00+08:00"}
+{"level":"info","msg":"查询节点2 kill进程成功:","time":"2024-06-20T18:13:00+08:00"}
+{"level":"info","msg":"查询节点3 kill进程成功:","time":"2024-06-20T18:13:01+08:00"}
+{"level":"info","msg":"查询节点1 kill进程成功:","time":"2024-06-20T18:13:01+08:00"}

BIN
xgAD使用说明.docx


BIN
~$AD使用说明.docx