Skip to content

Commit 1ee7bd5

Browse files
committed
Update DB2 checks for kernel parameters and adjust user roles for command execution
1 parent 79ff8b2 commit 1ee7bd5

File tree

1 file changed

+85
-14
lines changed
  • src/roles/configuration_checks/tasks/files

1 file changed

+85
-14
lines changed

src/roles/configuration_checks/tasks/files/db2.yml

Lines changed: 85 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ checks:
129129
collector_type: *command
130130
collector_args:
131131
command: "echo $LANG"
132-
user: *root
132+
user: *db2sid
133133
validator_type: *string
134134
validator_args:
135135
expected_output: "en_US.UTF-8"
@@ -274,8 +274,8 @@ checks:
274274
sap: "2936683"
275275

276276
- id: "DB-Db2-0009"
277-
name: "kernel.sem"
278-
description: "kernel.sem - SAP minimum required values (actual values can be equal or higher)"
277+
name: "kernel.sem (SEMMSL)"
278+
description: "kernel.sem SEMMSL (first value) should be at least 250"
279279
category: *sap_check
280280
severity: *high
281281
workload: *sap
@@ -288,15 +288,86 @@ checks:
288288
database_type: [*db2]
289289
collector_type: *command
290290
collector_args:
291-
command: "/sbin/sysctl kernel.sem -n"
291+
command: "semmsl=$(/sbin/sysctl kernel.sem -n | awk '{print $1}'); [ $semmsl -ge 250 ] && echo OK || echo \"SEMMSL=$semmsl (required: >= 250)\""
292292
user: *root
293-
validator_type: "min_list"
293+
validator_type: *string
294294
validator_args:
295-
min_values: ["32000", "1024000000", "500", "32000"]
296-
separator: " "
295+
expected_output: "OK"
297296
report: *check
298297
references:
299-
sap: "2936683"
298+
other: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
299+
300+
- id: "DB-Db2-0009a"
301+
name: "kernel.sem (SEMMNS)"
302+
description: "kernel.sem SEMMNS (second value) should be at least SEMMNI or 256000, whichever is greater"
303+
category: *sap_check
304+
severity: *high
305+
workload: *sap
306+
applicability:
307+
os_type: [*suse, *redhat]
308+
os_version: *all_versions
309+
hardware_type: *vm
310+
storage_type: *all_storage
311+
role: *all_role
312+
database_type: [*db2]
313+
collector_type: *command
314+
collector_args:
315+
command: "sem_values=$(/sbin/sysctl kernel.sem -n); semmns=$(echo $sem_values | awk '{print $2}'); semmni=$(echo $sem_values | awk '{print $4}'); min_required=$([ $semmni -gt 256000 ] && echo $semmni || echo 256000); [ $semmns -ge $min_required ] && echo OK || echo \"SEMMNS=$semmns (required: >= $min_required [max of SEMMNI=$semmni or 256000])\""
316+
user: *root
317+
validator_type: *string
318+
validator_args:
319+
expected_output: "OK"
320+
report: *check
321+
references:
322+
other: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
323+
324+
- id: "DB-Db2-0009b"
325+
name: "kernel.sem (SEMOPM)"
326+
description: "kernel.sem SEMOPM (third value) should be at least 32"
327+
category: *sap_check
328+
severity: *high
329+
workload: *sap
330+
applicability:
331+
os_type: [*suse, *redhat]
332+
os_version: *all_versions
333+
hardware_type: *vm
334+
storage_type: *all_storage
335+
role: *all_role
336+
database_type: [*db2]
337+
collector_type: *command
338+
collector_args:
339+
command: "semopm=$(/sbin/sysctl kernel.sem -n | awk '{print $3}'); [ $semopm -ge 32 ] && echo OK || echo \"SEMOPM=$semopm (required: >= 32)\""
340+
user: *root
341+
validator_type: *string
342+
validator_args:
343+
expected_output: "OK"
344+
report: *check
345+
references:
346+
other: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
347+
348+
- id: "DB-Db2-0009c"
349+
name: "kernel.sem (SEMMNI)"
350+
description: "kernel.sem SEMMNI (fourth value) should be at least 256 times the total physical memory in GB"
351+
category: *sap_check
352+
severity: *high
353+
workload: *sap
354+
applicability:
355+
os_type: [*suse, *redhat]
356+
os_version: *all_versions
357+
hardware_type: *vm
358+
storage_type: *all_storage
359+
role: *all_role
360+
database_type: [*db2]
361+
collector_type: *command
362+
collector_args:
363+
command: "semmni=$(/sbin/sysctl kernel.sem -n | awk '{print $4}'); mem_gb=$(free -g | grep Mem: | awk '{print $2}'); min_required=$((256 * mem_gb)); [ $semmni -ge $min_required ] && echo OK || echo \"SEMMNI=$semmni (required: >= $min_required [256 * ${mem_gb}GB RAM])\""
364+
user: *root
365+
validator_type: *string
366+
validator_args:
367+
expected_output: "OK"
368+
report: *check
369+
references:
370+
other: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
300371

301372
- id: "DB-Db2-0010"
302373
name: "Kernel out of process"
@@ -320,7 +391,7 @@ checks:
320391
expected_output: "5"
321392
report: *check
322393
references:
323-
microsoft: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
394+
other: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
324395

325396
- id: "DB-Db2-0011"
326397
name: "Max File Handles"
@@ -339,12 +410,12 @@ checks:
339410
collector_args:
340411
command: "/sbin/sysctl fs.file-max -n"
341412
user: *root
342-
validator_type: *string
413+
validator_type: *range
343414
validator_args:
344-
expected_output: "16384"
415+
min: 16384
345416
report: *check
346417
references:
347-
microsoft: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
418+
other: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
348419

349420
- id: "DB-Db2-0012"
350421
name: "Transparent Huge Pages"
@@ -369,7 +440,7 @@ checks:
369440
report: *check
370441
references:
371442
sap: "2391706"
372-
microsoft: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
443+
other: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
373444

374445
- id: "DB-Db2-0013"
375446
name: "HADR TIMEOUT"
@@ -515,7 +586,7 @@ checks:
515586
expected_output: "OK"
516587
report: *check
517588
references:
518-
microsoft: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
589+
other: "https://www.ibm.com/docs/en/db2/11.1?topic=unix-kernel-parameter-requirements-linux"
519590
sap: "2751102"
520591

521592
- id: "DB-Db2-0019"

0 commit comments

Comments
 (0)