mirror of
https://github.com/aquasecurity/kube-bench.git
synced 2025-01-03 12:20:54 +00:00
Node type is now verified by looking for running binaries from a set of options
This commit is contained in:
parent
0e9c11ebd5
commit
f5550fd8bd
@ -74,7 +74,6 @@ func runChecks(t check.NodeType) {
|
|||||||
|
|
||||||
// Run kubernetes installation validation checks.
|
// Run kubernetes installation validation checks.
|
||||||
verifyKubeVersion(kubeMajorVersion, kubeMinorVersion)
|
verifyKubeVersion(kubeMajorVersion, kubeMinorVersion)
|
||||||
verifyNodeType(t)
|
|
||||||
|
|
||||||
switch t {
|
switch t {
|
||||||
case check.MASTER:
|
case check.MASTER:
|
||||||
@ -126,41 +125,6 @@ func runChecks(t check.NodeType) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// verifyNodeType checks the executables and config files are as expected
|
|
||||||
// for the specified tests (master, node or federated).
|
|
||||||
func verifyNodeType(t check.NodeType) {
|
|
||||||
var bins []string
|
|
||||||
var confs []string
|
|
||||||
|
|
||||||
switch t {
|
|
||||||
case check.MASTER:
|
|
||||||
bins = []string{apiserverBin, schedulerBin, controllerManagerBin}
|
|
||||||
confs = []string{apiserverConf, schedulerConf, controllerManagerConf}
|
|
||||||
case check.NODE:
|
|
||||||
bins = []string{kubeletBin, proxyBin}
|
|
||||||
confs = []string{kubeletConf, proxyConf}
|
|
||||||
case check.FEDERATED:
|
|
||||||
bins = []string{fedApiserverBin, fedControllerManagerBin}
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, bin := range bins {
|
|
||||||
if !verifyBin(bin) {
|
|
||||||
printlnWarn(fmt.Sprintf("%s is not running", bin))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, conf := range confs {
|
|
||||||
_, err := os.Stat(conf)
|
|
||||||
if err != nil {
|
|
||||||
if os.IsNotExist(err) {
|
|
||||||
printlnWarn(fmt.Sprintf("Missing kubernetes config file: %s", conf))
|
|
||||||
} else {
|
|
||||||
exitWithError(fmt.Errorf("error looking for file %s: %v", conf, err))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// colorPrint outputs the state in a specific colour, along with a message string
|
// colorPrint outputs the state in a specific colour, along with a message string
|
||||||
func colorPrint(state check.State, s string) {
|
func colorPrint(state check.State, s string) {
|
||||||
colors[state].Printf("[%s] ", state)
|
colors[state].Printf("[%s] ", state)
|
||||||
|
Loading…
Reference in New Issue
Block a user