내 Cent os 6.7(2.6.32-573.el6.x86_64) 가상 머신 Linux 중 하나가 애플리케이션뿐만 아니라 cron, auditd, httpd 및 mysql을 포함한 모든 프로세스를 종료했습니다. 상태를 쿼리하면 pid 파일이 존재하지만 서비스가 중지되었다고 표시됩니다. 서버는 mysql 클러스터의 sql 노드입니다. 이 문제는 서버를 다시 시작한 후에 자주 발생하며 제대로 작동하기까지 두세 번 정도 걸립니다. 감사 로그를 활성화했으며 아래는 메시지 로그입니다.
kernel: audit: *NO* daemon at audit_pid=17901
kernel: audit: audit_lost=89 audit_rate_limit=0 audit_backlog_limit=320
kernel: audit: auditd dissapeared
kernel: type=1318 audit(1488753001.130:770): opid=19004 oauid=0 ouid=0 oses=51 ocomm="callapi.sh"
kernel: type=1300 audit(1488753001.130:771): arch=c000003e syscall=62 success=yes exit=0 a0=4a52 a1=9 a2=9 a3=4a52 items=0 ppid=19009 pid=19032 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=49 comm="kill" exe="/bin/kill" key="teste_kill"
kernel: type=1318 audit(1488753001.130:771): opid=19026 oauid=0 ouid=0 oses=51 ocomm="callapi.sh"
kernel: type=1300 audit(1488753001.130:772): arch=c000003e syscall=62 success=yes exit=0 a0=46be a1=9 a2=9 a3=46be items=0 ppid=19009 pid=19032 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=49 comm="kill" exe="/bin/kill" key="teste_kill"
kernel: type=1318 audit(1488753001.130:772): opid=18110 oauid=0 ouid=0 oses=44 ocomm="crond" type=1300 audit(1488753001.130:773): arch=c000003e syscall=62 success=yes exit=0 a0=4a34 a1=9 a2=9 a3=4a34 items=0 ppid=19009 pid=19032 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=49 comm="kill" exe="/bin/kill" key="teste_kill"
kernel: type=1318 audit(1488753001.130:773): opid=18996 oauid=0 ouid=0 oses=50 ocomm="crond"
init: tty (/dev/tty1) main process (14691) killed by KILL signal
init: tty (/dev/tty1) main process ended, respawning
init: tty (/dev/tty3) main process (14693) killed by KILL signal
init: tty (/dev/tty3) main process ended, respawning
init: tty (/dev/tty4) main process (14694) killed by KILL signal
init: tty (/dev/tty4) main process ended, respawning
init: tty (/dev/tty5) main process (14695) killed by KILL signal
init: tty (/dev/tty5) main process ended, respawning
init: tty (/dev/tty6) main process (14696) killed by KILL signal
init: tty (/dev/tty6) main process ended, respawning
kernel: imklog 5.8.10, log source = /proc/kmsg started.
kernel: type=1318 audit(1488753001.130:773): opid=18996 oauid=0 ouid=0 oses=50 ocomm="crond"
kernel: type=1300 audit(1488753001.130:774): arch=c000003e syscall=62 success=yes exit=0 a0=4a3b a1=9 a2=9 a3=4a3b items=0 ppid=19009 pid=19032 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=49 comm="kill" exe="/bin/kill" key="teste_kill"
kernel: type=1300 audit(1488754808.281:1069): arch=c000003e syscall=62 success=no exit=-3 a0=4673 a1=0 a2=0 a3=4673 items=0 ppid=1 pid=20268 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts0 ses=54 comm="java" exe="/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.111.x86_64/jre/bin/java" key="teste_kill"
다음은 메모리의 sar 보고서입니다.
01:20:01 AM10535308 5798748 35.50 449520 2901344 3523388 17.16 01:30:01 AM10529272 5804784 35.54 449520 2902444 3521484 17.1 01:40:01 AM 10524924 5809132 35.56 449520 2903496 3521852 17.16 평균 : 10531009 5803047 35.53 449520 2897895 3518261 17.14
오전 01:58:39 Linux 다시 시작
오전 07:30:01 kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit 02:10:01 오전 16057300 276756 1.69 30220 58348 187056 0.91 02:20:01 오전 16057316 276740 1. 69 30332 58364 187056 0.91 02:30:01 오전 16057192 276864 1.70 30452 58372 187288 0.91
답변1
커널이 무작위로 보이는 프로세스를 종료하기 시작하면 일반적으로 시스템 메모리(RAM 및 스왑)가 부족하기 때문에 발생합니다.
VM의 메모리 상태를 확인 free -h
하고 필요에 따라 조정하는 데 사용됩니다.