[Agent][Bastion] - Bastion mode - 2

This commit is contained in:
zeaslity
2024-04-17 16:42:02 +08:00
parent c0712b7325
commit dacdb6588e
12 changed files with 383 additions and 203 deletions

View File

@@ -214,6 +214,23 @@ func (op *AgentOsOperator) shutdownFirewall() [][]string {
return shutdownFunc
}
func (op *AgentOsOperator) shutdownFirewallBastion() (bool, []string) {
shutdownFunc := [][]string{
{"systemctl", "stop", "firewalld"},
{"systemctl", "disable", "firewalld"},
{"systemctl", "stop", "ufw"},
{"systemctl", "disable", "ufw"},
{"iptables", "-F"},
}
// 忽略错误
_, resultLog := AllCompleteExecutor(shutdownFunc)
// centos
return true, resultLog
}
func (op *AgentOsOperator) shutdownFirewallExec() (bool, []string) {
shutdownFunc := [][]string{
@@ -838,7 +855,7 @@ func (op *AgentOsOperator) installDockerOfflineExec(args []string) (bool, []stri
dockerOfflineFileName = "docker-arm64-20.10.15.tgz"
}
ok, resultLog := BasicDownloadFileByCurl(op.OssOfflinePrefix+dockerOfflineFileName, "/root/wdd/"+dockerOfflineFileName)
ok, resultLog := BasicDownloadFile(op.OssOfflinePrefix+dockerOfflineFileName, "", "", "", "/root/wdd/"+dockerOfflineFileName)
if !ok {
return false, resultLog
}
@@ -932,10 +949,48 @@ func (op *AgentOsOperator) installDockerOfflineExec(args []string) (bool, []stri
"[installDockerOfflineExec] - docker offline installation success!",
}
}
func (op *AgentOsOperator) InstallDockerFromLocalExec(args []string) (bool, []string) {
func (op *AgentOsOperator) InstallDockerBastion() (bool, []string) {
// check offline file exits
log.InfoF("[InstallDockerBastion] - install docker 20.10.15 by local file method !")
BasicCreateFolder("/root/wdd")
// install docker
var dockerOfflineFileName string
if strings.HasPrefix(op.AgentArch, "amd") {
dockerOfflineFileName = "docker-amd64-20.10.15.tgz"
} else if strings.HasPrefix(op.AgentArch, "arm64") {
dockerOfflineFileName = "docker-arm64-20.10.15.tgz"
}
BasicRemoveFolderComplete("/root/wdd/docker")
dockerLocalFile := "/root/wdd/" + dockerOfflineFileName
if !BasicFileExistAndNotNull(dockerLocalFile) {
sprintf := fmt.Sprintf("docker offline file not exists ! => %s", dockerLocalFile)
log.Error(sprintf)
return false, []string{sprintf}
}
PureResultSingleExecute([]string{
"tar",
"-vxf",
dockerLocalFile,
"-C",
"/root/wdd",
})
HardCodeCommandExecutor("chmod 777 -R /root/wdd/docker/*")
resultOk, l := HardCodeCommandExecutor("mv /root/wdd/docker/* /usr/bin")
if !resultOk {
return false, append(l, "[InstallDockerBastion] - cp docker executable file error!")
}
// daemon docker
return true, []string{
"[installDockerFromLocalExec] - docker offline installation from local success!",
"[InstallDockerBastion] - docker offline installation from local success!",
}
}
@@ -1025,7 +1080,7 @@ func (op *AgentOsOperator) installDockerComposeExec() (bool, []string) {
return true, []string{"docker-compose安装成功"}
}
func (op *AgentOsOperator) InstallDockerComposeFromLocalExec() (bool, []string) {
func (op *AgentOsOperator) InstallDockerComposeBastion() (bool, []string) {
return true, []string{
"[installDockerComposeFromLocalExec] - docker-compose offline installation from local success!",
}
@@ -2126,6 +2181,11 @@ func (op *AgentOsOperator) chronyToMasterExec(args []string) (bool, []string) {
}
}
func (op *AgentOsOperator) InstallMinioBastion() (bool, []string) {
return true, nil
}
func (op *AgentOsOperator) chronyToMasterByDocker(args []string) (bool, []string) {
return true, nil