!204 om gs_check 适配docker容器

Merge pull request !204 from gyt0221/master
This commit is contained in:
opengauss-bot
2020-09-10 15:43:17 +08:00
committed by Gitee
4 changed files with 16 additions and 0 deletions

View File

@ -63,6 +63,8 @@ def runShellCmd(cmd, user=None, mpprcFile=""):
user, cmd) user, cmd)
cmd = cmd.replace("$", "\$") cmd = cmd.replace("$", "\$")
(status, output) = subprocess.getstatusoutput(cmd) (status, output) = subprocess.getstatusoutput(cmd)
if (status != 0 and DefaultValue.checkDockerEnv()):
return output
if (status != 0): if (status != 0):
raise ShellCommandException(cmd, output) raise ShellCommandException(cmd, output)
return output return output
@ -860,6 +862,9 @@ def getNetWorkConfFile(networkCardNum):
cmd = "find %s -iname 'ifcfg-*-%s' -print" % ( cmd = "find %s -iname 'ifcfg-*-%s' -print" % (
SuSENetWorkConfPath, networkCardNum) SuSENetWorkConfPath, networkCardNum)
output = runShellCmd(cmd) output = runShellCmd(cmd)
if (DefaultValue.checkDockerEnv() and
output.find("No such file or directory") >= 0):
return output.strip()
if (output.strip() == "" or len(output.split('\n')) != 1): if (output.strip() == "" or len(output.split('\n')) != 1):
raise Exception(ErrorCode.GAUSS_502["GAUSS_50201"] raise Exception(ErrorCode.GAUSS_502["GAUSS_50201"]
% NetWorkConfFile) % NetWorkConfFile)
@ -875,6 +880,9 @@ def CheckNetWorkBonding(serviceIP):
""" """
networkCardNum = getNICNum(serviceIP) networkCardNum = getNICNum(serviceIP)
NetWorkConfFile = getNetWorkConfFile(networkCardNum) NetWorkConfFile = getNetWorkConfFile(networkCardNum)
if (NetWorkConfFile.find("No such file or directory") >= 0
and DefaultValue.checkDockerEnv()):
return "Shell command faild"
bondingConfFile = "/proc/net/bonding/%s" % networkCardNum bondingConfFile = "/proc/net/bonding/%s" % networkCardNum
networkCardNumList = [networkCardNum] networkCardNumList = [networkCardNum]
cmd = "grep -i 'BONDING_OPTS\|BONDING_MODULE_OPTS' %s" % NetWorkConfFile cmd = "grep -i 'BONDING_OPTS\|BONDING_MODULE_OPTS' %s" % NetWorkConfFile

View File

@ -20,6 +20,7 @@ from gspylib.inspection.common import SharedFuncs
from gspylib.inspection.common.CheckItem import BaseItem from gspylib.inspection.common.CheckItem import BaseItem
from gspylib.inspection.common.CheckResult import ResultStatus from gspylib.inspection.common.CheckResult import ResultStatus
from gspylib.common.ErrorCode import ErrorCode from gspylib.common.ErrorCode import ErrorCode
from gspylib.common.Common import DefaultValue
from gspylib.os.gsnetwork import g_network from gspylib.os.gsnetwork import g_network
from gspylib.os.gsfile import g_file from gspylib.os.gsfile import g_file
from gspylib.os.gsplatform import findCmdInPath from gspylib.os.gsplatform import findCmdInPath
@ -57,6 +58,8 @@ class CheckMultiQueue(BaseItem):
break break
if not networkNum or not BondMode or not confFile: if not networkNum or not BondMode or not confFile:
if DefaultValue.checkDockerEnv():
return
raise Exception(ErrorCode.GAUSS_506["GAUSS_50619"]) raise Exception(ErrorCode.GAUSS_506["GAUSS_50619"])
if BondMode != "BondMode Null": if BondMode != "BondMode Null":
bondFile = '/proc/net/bonding/%s' % networkNum bondFile = '/proc/net/bonding/%s' % networkNum

View File

@ -35,6 +35,8 @@ class CheckNICModel(BaseItem):
else: else:
backIP = SharedFuncs.getIpByHostName(self.host) backIP = SharedFuncs.getIpByHostName(self.host)
networkCardNumList = SharedFuncs.CheckNetWorkBonding(backIP) networkCardNumList = SharedFuncs.CheckNetWorkBonding(backIP)
if networkCardNumList == "Shell command faild":
return
networkCardNums = [] networkCardNums = []
if (len(networkCardNumList) != 1): if (len(networkCardNumList) != 1):
networkCardNums = networkCardNumList[1:] networkCardNums = networkCardNumList[1:]

View File

@ -17,6 +17,7 @@
from gspylib.inspection.common.CheckItem import BaseItem from gspylib.inspection.common.CheckItem import BaseItem
from gspylib.inspection.common.CheckResult import ResultStatus from gspylib.inspection.common.CheckResult import ResultStatus
from gspylib.os.gsfile import g_file from gspylib.os.gsfile import g_file
from gspylib.common.Common import DefaultValue
class CheckHyperThread(BaseItem): class CheckHyperThread(BaseItem):
@ -46,6 +47,8 @@ class CheckHyperThread(BaseItem):
if (cpuCount == 2 * idCount * cores): if (cpuCount == 2 * idCount * cores):
self.result.rst = ResultStatus.OK self.result.rst = ResultStatus.OK
else: else:
if DefaultValue.checkDockerEnv():
return
flag = "down" flag = "down"
self.result.rst = ResultStatus.NG self.result.rst = ResultStatus.NG