From 4bf91eb0f8445c20f0bc1b5e646a9481d1f777a3 Mon Sep 17 00:00:00 2001 From: gyt0221 <846772234@qq.com> Date: Wed, 9 Sep 2020 15:18:17 +0800 Subject: [PATCH] =?UTF-8?q?om=20=E9=80=82=E9=85=8Ddocker=20centos=E5=AE=B9?= =?UTF-8?q?=E5=99=A8=20gs=5Fcheck=E9=80=82=E9=85=8Ddocker=E4=B8=AD?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E7=B1=BB=E5=9E=8B=20gaussdb=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E6=88=90=E5=8A=9F=E5=90=8E=E7=9A=84=E6=8F=90=E7=A4=BA?= =?UTF-8?q?=E8=AF=AD=E5=8F=A5=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../process/postmaster/postmaster.cpp | 2 +- src/manager/om/script/gspylib/common/Common.py | 2 ++ .../om/script/gspylib/common/ErrorCode.py | 3 ++- .../items/other/CheckDataDiskUsage.py | 2 +- src/manager/om/script/local/LocalCheck.py | 17 ++++++++++++----- src/manager/om/script/local/LocalCheckOS.py | 10 ++++++++++ 6 files changed, 28 insertions(+), 8 deletions(-) diff --git a/src/gausskernel/process/postmaster/postmaster.cpp b/src/gausskernel/process/postmaster/postmaster.cpp index 45ca2b356..49a21f07d 100755 --- a/src/gausskernel/process/postmaster/postmaster.cpp +++ b/src/gausskernel/process/postmaster/postmaster.cpp @@ -2167,7 +2167,7 @@ int PostmasterMain(int argc, char* argv[]) /* init Opfusion function id */ InitOpfusionFunctionId(); - ereport(LOG, (errmsg("Success to start openGauss Database, please press any key to exit..."))); + ereport(LOG, (errmsg("Success to start openGauss Database. If you specify \"&\", please press any key to exit..."))); /* * If enabled, start up syslogger collection subprocess diff --git a/src/manager/om/script/gspylib/common/Common.py b/src/manager/om/script/gspylib/common/Common.py index 98ca272a6..5647e542d 100644 --- a/src/manager/om/script/gspylib/common/Common.py +++ b/src/manager/om/script/gspylib/common/Common.py @@ -754,6 +754,8 @@ class DefaultValue(): cmd = "find %s -iname 'ifcfg-*-%s' -print" % ( SuSENetWorkConfPath, networkCardNum) (status, output) = subprocess.getstatusoutput(cmd) + if (status != 0 and DefaultValue.checkDockerEnv()): + return output.strip() if (status != 0): raise Exception(ErrorCode.GAUSS_514["GAUSS_51400"] % cmd) if (len(output.split('\n')) != 1): diff --git a/src/manager/om/script/gspylib/common/ErrorCode.py b/src/manager/om/script/gspylib/common/ErrorCode.py index fcf19ba94..8d0eb24ae 100644 --- a/src/manager/om/script/gspylib/common/ErrorCode.py +++ b/src/manager/om/script/gspylib/common/ErrorCode.py @@ -275,7 +275,8 @@ class ErrorCode(): GAUSS_506 = { 'GAUSS_50600': "[GAUSS-50600] : The IP address cannot be pinged, " "which is caused by network faults.", - 'GAUSS_50601': "[GAUSS-50601] : The port [%s] is occupied.", + 'GAUSS_50601': "[GAUSS-50601] : The port [%s] is occupied or the ip " + "address is incorrectly configured.", 'GAUSS_50602': "[GAUSS-50602] : Failed to bind network adapters.", 'GAUSS_50603': "[GAUSS-50603] : The IP address is invalid.", 'GAUSS_50604': "[GAUSS-50604] : Failed to obtain network interface " diff --git a/src/manager/om/script/gspylib/inspection/items/other/CheckDataDiskUsage.py b/src/manager/om/script/gspylib/inspection/items/other/CheckDataDiskUsage.py index dbe56963e..b0779eb54 100644 --- a/src/manager/om/script/gspylib/inspection/items/other/CheckDataDiskUsage.py +++ b/src/manager/om/script/gspylib/inspection/items/other/CheckDataDiskUsage.py @@ -59,7 +59,7 @@ class CheckDataDiskUsage(BaseItem): # Check inode usage diskName = g_disk.getMountPathByDataDir(path) diskType = g_disk.getDiskMountType(diskName) - if (not diskType in ["xfs", "ext3", "ext4"]): + if (not diskType in ["xfs", "ext3", "ext4", "overlay"]): resultStr += \ "Path(%s) inodes usage(%s) Warning reason: " \ "The file system type [%s] is unrecognized " \ diff --git a/src/manager/om/script/local/LocalCheck.py b/src/manager/om/script/local/LocalCheck.py index bce6c74b9..a037986fc 100644 --- a/src/manager/om/script/local/LocalCheck.py +++ b/src/manager/om/script/local/LocalCheck.py @@ -47,10 +47,17 @@ actioItemMap = { } docker_no_need_check = ["net.core.wmem_max", "net.core.rmem_max", - "net.core.wmem_default", - "net.core.rmem_default", "net.sctp.sctp_mem", - "net.sctp.sctp_rmem", "net.sctp.sctp_wmem", - "net.core.netdev_max_backlog"] + "net.core.wmem_default", "net.core.rmem_default", + "net.sctp.sctp_mem", "net.sctp.sctp_rmem", + "net.sctp.sctp_wmem", "net.core.netdev_max_backlog", + "net.ipv4.tcp_max_tw_buckets", "net.ipv4.tcp_tw_reuse", + "net.ipv4.tcp_tw_recycle", "net.ipv4.tcp_retries2", + "net.ipv4.ip_local_reserved_ports", "net.ipv4.tcp_rmem", + "net.ipv4.tcp_wmem", "net.ipv4.tcp_max_syn_backlog", + "net.ipv4.tcp_syncookies", "net.ipv4.tcp_fin_timeout", + "net.ipv4.tcp_sack", "net.ipv4.tcp_timestamps", + "net.ipv4.tcp_retries1", "net.ipv4.tcp_syn_retries", + "net.ipv4.tcp_synack_retries"] paraList = {} @@ -227,7 +234,7 @@ def checkSysctlParameter(kernelParameter, isSet): if (patchlevel == "1" and key == "vm.extfrag_threshold"): continue # Skip check net.ipv4.tcp_tw_recycle with ARM - if (platform.machine() == "aarch64" + if ((platform.machine() == "aarch64" or platform.release().endswith("oe1.x86_64")) and key == "net.ipv4.tcp_tw_recycle"): continue if (DefaultValue.checkDockerEnv() and key in docker_no_need_check): diff --git a/src/manager/om/script/local/LocalCheckOS.py b/src/manager/om/script/local/LocalCheckOS.py index 08d2e78dd..d1880bf24 100644 --- a/src/manager/om/script/local/LocalCheckOS.py +++ b/src/manager/om/script/local/LocalCheckOS.py @@ -915,6 +915,9 @@ def CheckNetWorkBonding(serviceIP, bondMode=False): """ networkCardNum = DefaultValue.getNICNum(serviceIP) NetWorkConfFile = DefaultValue.getNetWorkConfFile(networkCardNum) + if (NetWorkConfFile.find("No such file or directory") >= 0 + and DefaultValue.checkDockerEnv()): + return networkCardNumList = [] networkCardNumList.append(networkCardNum) bondingConfFile = "/proc/net/bonding/%s" % networkCardNum @@ -994,6 +997,13 @@ def getNetWorkTXRXValue(networkCardNum, valueType): cmd = "/sbin/ethtool -g %s | grep '%s:' | tail -n 2" % (networkCardNum, valueType) (status, output) = subprocess.getstatusoutput(cmd) + if (output.find("Operation not supported") >= 0 + and DefaultValue.checkDockerEnv()): + g_logger.log(" Warning reason: Failed to obtain the" + " network card TXRX value in docker container. Commands " + "for obtain the network card TXRX: %s. Error: \n%s" + % (cmd, output)) + return (0, 0) if (status != 0 or len(output.splitlines()) != 2): g_logger.debug("Failed to obtain network card %s value. Commands" " for getting information: %s." % (valueType, cmd))