āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻ‰ā§ŽāĻĒāĻžāĻĻāĻ¨ā§‡ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§‡āĻ° āĻŦāĻ›āĻ°ā§‡āĻ° āĻĒāĻ° āĻŦāĻ›āĻ° āĻ§āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ā§‡āĻ° āĻŦāĻžāĻ—āĻ—ā§āĻ˛āĻŋ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻĒāĻžāĻ¤ā§āĻ° āĻāĻŦāĻ‚ āĻĒāĻĄāĻ—ā§āĻ˛āĻŋāĻ° āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒāĻ•ā§‡ āĻĒā§āĻ°āĻ­āĻžāĻŦāĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻāĻŽāĻ¨ āĻ…āĻĒā§āĻ°ā§€āĻ¤āĻŋāĻ•āĻ° āĻāĻŦāĻ‚/āĻ…āĻĨāĻŦāĻž āĻŦā§‹āĻ§āĻ—āĻŽā§āĻ¯ āĻĒāĻ°āĻŋāĻŖāĻ¤āĻŋāĻ° āĻĻāĻŋāĻ•ā§‡ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻ¤āĻžāĻ° āĻ…āĻ¨ā§‡āĻ• āĻ†āĻ•āĻ°ā§āĻˇāĻŖā§€āĻ¯āĻŧ āĻ—āĻ˛ā§āĻĒ āĻœāĻŽāĻž āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤ āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡ āĻ†āĻŽāĻ°āĻž āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŦāĻž āĻ†āĻ•āĻ°ā§āĻˇāĻŖā§€āĻ¯āĻŧ āĻ•āĻŋāĻ›ā§āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤ āĻāĻŽāĻ¨āĻ•āĻŋ āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻ­āĻžāĻ—ā§āĻ¯āĻŦāĻžāĻ¨ āĻ¨āĻž āĻšāĻ¨ āĻ¤āĻŦā§‡ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ›ā§‹āĻŸ āĻ—ā§‹āĻ¯āĻŧā§‡āĻ¨ā§āĻĻāĻž āĻ—āĻ˛ā§āĻĒāĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻĒāĻĄāĻŧāĻž - āĻŦāĻŋāĻļā§‡āĻˇ āĻ•āĻ°ā§‡ "āĻĢāĻžāĻ°ā§āĻ¸ā§āĻŸ-āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄ" - āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧāĻ‡ āĻ†āĻ•āĻ°ā§āĻˇāĻŖā§€āĻ¯āĻŧ, āĻ¤āĻžāĻ‡ āĻ¨āĻž? ..

āĻ—āĻ˛ā§āĻĒ 1. āĻ¸ā§āĻĒāĻžāĻ°āĻ•ā§āĻ°ā§‹āĻ¨āĻŋāĻ• āĻāĻŦāĻ‚ āĻĄāĻ•āĻžāĻ° āĻā§āĻ˛āĻ¨ā§āĻ¤

āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋāĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻ•ā§āĻ°āĻŽā§‡ āĻāĻ•āĻŸāĻŋ āĻšāĻŋāĻŽāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻĄāĻ•āĻžāĻ° āĻĒā§‡āĻ¯āĻŧā§‡āĻ›āĻŋ, āĻ¯āĻž āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡āĻ° āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒā§‡ āĻšāĻ¸ā§āĻ¤āĻ•ā§āĻˇā§‡āĻĒ āĻ•āĻ°ā§‡āĻ›āĻŋāĻ˛āĨ¤ āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡, āĻĄāĻ•āĻžāĻ° āĻ˛āĻ—āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤āĻ—ā§āĻ˛āĻŋ āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛:

level=error msg="containerd: start init process" error="exit status 2: "runtime/cgo: pthread_create failed: No space left on device
SIGABRT: abort
PC=0x7f31b811a428 m=0

goroutine 0 [idle]:

goroutine 1 [running]:
runtime.systemstack_switch() /usr/local/go/src/runtime/asm_amd64.s:252 fp=0xc420026768 sp=0xc420026760
runtime.main() /usr/local/go/src/runtime/proc.go:127 +0x6c fp=0xc4200267c0 sp=0xc420026768
runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:2086 +0x1 fp=0xc4200267c8 sp=0xc4200267c0

goroutine 17 [syscall, locked to thread]:
runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:2086 +0x1

â€Ļ

āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ†āĻ—ā§āĻ°āĻšā§‡āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻ˛ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻŸāĻŋ: pthread_create failed: No space left on device. āĻĻā§āĻ°ā§āĻ¤ āĻ…āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°ā§‡āĻ›ā§‡āĻ¨ āĻ¯ā§‡ āĻĄāĻ•āĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ•āĻžāĻāĻŸāĻžāĻšāĻžāĻŽāĻš āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž, āĻ¯ā§‡ āĻ•āĻžāĻ°āĻŖā§‡ āĻāĻŸāĻŋ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻ•ā§āĻ°āĻŽā§‡ āĻšāĻŋāĻŽāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤

āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖā§‡, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻšāĻŋāĻ¤ā§āĻ°āĻŸāĻŋ āĻ¯āĻž āĻ˜āĻŸāĻ›ā§‡ āĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻŽāĻŋāĻ˛ā§‡ āĻ¯āĻžāĻ¯āĻŧ:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¨ā§‹āĻĄāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻ˛āĻ•ā§āĻˇāĻŋāĻ¤ āĻšāĻ¯āĻŧ:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻāĻ•āĻ‡ āĻ¨ā§‹āĻĄāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ‡:

root@kube-node-1 ~ # ps auxfww | grep curl -c
19782
root@kube-node-1 ~ # ps auxfww | grep curl | head
root     16688  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root     17398  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root     16852  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root      9473  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root      4664  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root     30571  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root     24113  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root     16475  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root      7176  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>
root      1090  0.0  0.0      0     0 ?        Z    Feb06   0:00      |       _ [curl] <defunct>

āĻĻā§‡āĻ–āĻž āĻ—ā§‡āĻ˛ āĻ¯ā§‡ āĻāĻ‡ āĻ†āĻšāĻ°āĻŖāĻŸāĻŋ āĻĒāĻĄā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¸ā§āĻĒāĻžāĻ°āĻ•ā§āĻ°ā§‹āĻ¨āĻŋāĻ• (āĻāĻ•āĻŸāĻŋ āĻ—ā§‹ āĻ‡āĻ‰āĻŸāĻŋāĻ˛āĻŋāĻŸāĻŋ āĻ¯āĻž āĻ†āĻŽāĻ°āĻž āĻĒāĻĄāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ•ā§āĻ°āĻ¨ āĻ•āĻžāĻœāĻ—ā§āĻ˛āĻŋ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŋ):

 _ docker-containerd-shim 833b60bb9ff4c669bb413b898a5fd142a57a21695e5dc42684235df907825567 /var/run/docker/libcontainerd/833b60bb9ff4c669bb413b898a5fd142a57a21695e5dc42684235df907825567 docker-runc
|   _ /usr/local/bin/supercronic -json /crontabs/cron
|       _ /usr/bin/newrelic-daemon --agent --pidfile /var/run/newrelic-daemon.pid --logfile /dev/stderr --port /run/newrelic.sock --tls --define utilization.detect_aws=true --define utilization.detect_azure=true --define utilization.detect_gcp=true --define utilization.detect_pcf=true --define utilization.detect_docker=true
|       |   _ /usr/bin/newrelic-daemon --agent --pidfile /var/run/newrelic-daemon.pid --logfile /dev/stderr --port /run/newrelic.sock --tls --define utilization.detect_aws=true --define utilization.detect_azure=true --define utilization.detect_gcp=true --define utilization.detect_pcf=true --define utilization.detect_docker=true -no-pidfile
|       _ [newrelic-daemon] <defunct>
|       _ [curl] <defunct>
|       _ [curl] <defunct>
|       _ [curl] <defunct>
â€Ļ

āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻšāĻ˛: āĻ¯āĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻœ āĻ¸ā§āĻĒāĻžāĻ°āĻ•ā§āĻ°ā§‹āĻ¨āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹ āĻšāĻ¯āĻŧ, āĻ¤āĻ–āĻ¨ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋ āĻāĻŸāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ‰āĻĻā§āĻ­ā§‚āĻ¤ āĻšāĻ¯āĻŧ āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻļā§‡āĻˇ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž, āĻŽāĻ§ā§āĻ¯ā§‡ āĻŦāĻžāĻāĻ• āĻœāĻŽā§āĻŦāĻŋ.

āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯: āĻ†āĻ°āĻ“ āĻ¸ā§āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ āĻŦāĻ˛āĻ¤ā§‡ āĻ—ā§‡āĻ˛ā§‡, āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋ āĻ•ā§āĻ°ā§‹āĻ¨ āĻŸāĻžāĻ¸ā§āĻ•āĻ—ā§āĻ˛āĻŋāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻĒāĻžāĻ°āĻ•ā§āĻ°ā§‹āĻ¨āĻŋāĻ• āĻāĻ•āĻŸāĻŋ āĻ‡āĻ¨āĻŋāĻŸ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻŸāĻŋāĻ° āĻŦāĻžāĻšā§āĻšāĻžāĻ°āĻž āĻ¯ā§‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡āĻ›ā§‡ āĻ¤āĻž "āĻĻāĻ¤ā§āĻ¤āĻ•" āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻžā§ˇ āĻ¯āĻ–āĻ¨ SIGHUP āĻŦāĻž SIGTERM āĻ¸āĻ‚āĻ•ā§‡āĻ¤āĻ—ā§āĻ˛āĻŋ āĻ‰āĻ¤ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻ–āĻ¨ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻĒā§āĻ°ā§‡āĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž, āĻ¯āĻžāĻ° āĻĢāĻ˛ā§‡ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧ āĻ¨āĻž āĻāĻŦāĻ‚ āĻœāĻŽā§āĻŦāĻŋ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻĨāĻžāĻ•ā§‡āĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡ āĻ¸āĻŦ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ†āĻ°āĻ“ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¯ā§‡āĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§.

āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

  1. āĻāĻ•āĻŸāĻŋ āĻ…āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§€ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ - āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻāĻ•āĻ• āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻĒāĻŋāĻ†āĻ‡āĻĄāĻŋ-āĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻŦāĻžāĻĄāĻŧāĻžāĻ¨:
           /proc/sys/kernel/pid_max (since Linux 2.5.34)
                  This file specifies the value at which PIDs wrap around (i.e., the value in this file is one greater than the maximum PID).  PIDs greater than this  value  are  not  allo‐
                  cated;  thus, the value in this file also acts as a system-wide limit on the total number of processes and threads.  The default value for this file, 32768, results in the
                  same range of PIDs as on earlier kernels
  2. āĻ…āĻĨāĻŦāĻž āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ¨āĻž, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ•āĻ‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸ā§āĻĒāĻžāĻ°āĻ•ā§āĻ°ā§‹āĻ¨āĻŋāĻ•-āĻ āĻ•āĻžāĻœāĻ—ā§āĻ˛āĻŋ āĻšāĻžāĻ˛ā§ āĻ•āĻ°ā§āĻ¨ āĻŸāĻŋāĻ¨āĻŋ, āĻ¯āĻž āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ āĻāĻŦāĻ‚ āĻœāĻŽā§āĻŦāĻŋāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻŽ āĻĻāĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻžāĨ¤

āĻ—āĻ˛ā§āĻĒ 2. āĻāĻ•āĻŸāĻŋ cgroup āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ "āĻœāĻŽā§āĻŦāĻŋ"

āĻ•ā§āĻŦā§‡āĻ˛ā§‡āĻŸ āĻĒā§āĻ°āĻšā§āĻ° āĻ¸āĻŋāĻĒāĻŋāĻ‡āĻ‰ āĻ—ā§āĻ°āĻšāĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡āĻ›ā§‡:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻ•ā§‡āĻ‰ āĻāĻŸāĻŋ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻ°āĻŦā§‡ āĻ¨āĻž, āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻ°āĻž āĻ¨āĻŋāĻœā§‡āĻĻā§‡āĻ°āĻ•ā§‡ āĻ¸āĻļāĻ¸ā§āĻ¤ā§āĻ° āĻ•āĻ°ā§‡āĻ›āĻŋ āĻĒāĻžāĻ°āĻĢ āĻāĻŦāĻ‚ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻŽā§‹āĻ•āĻžāĻŦā§‡āĻ˛āĻž āĻļā§āĻ°ā§. āĻ¤āĻĻāĻ¨ā§āĻ¤ā§‡āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§‚āĻĒ āĻ›āĻŋāĻ˛:

  • āĻ•ā§āĻŦā§‡āĻ˛ā§‡āĻŸ āĻ¤āĻžāĻ° CPU āĻ¸āĻŽāĻ¯āĻŧā§‡āĻ° āĻāĻ• āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧāĻžāĻ‚āĻļā§‡āĻ°āĻ“ āĻŦā§‡āĻļāĻŋ āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ¯āĻ¯āĻŧ āĻ•āĻ°ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ cgroups āĻĨā§‡āĻ•ā§‡ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĄā§‡āĻŸāĻž āĻŸāĻžāĻ¨āĻ¤ā§‡:

    āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

  • āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĄā§‡āĻ­ā§‡āĻ˛āĻĒāĻžāĻ°āĻĻā§‡āĻ° āĻŽā§‡āĻ‡āĻ˛āĻŋāĻ‚ āĻ˛āĻŋāĻ¸ā§āĻŸā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ†āĻ˛ā§‹āĻšāĻ¨āĻž. āĻ¸āĻ‚āĻ•ā§āĻˇā§‡āĻĒā§‡, āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻāĻ–āĻžāĻ¨ā§‡ āĻ¨ā§‡āĻŽā§‡ āĻ†āĻ¸ā§‡: āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ tmpfs āĻĢāĻžāĻ‡āĻ˛ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĻ°ā§‚āĻĒā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĨā§‡āĻ•ā§‡ āĻ¸āĻ°āĻžāĻ¨ā§‹ āĻšāĻ¯āĻŧ āĻ¨āĻž āĻāĻ•āĻŸāĻŋ cgroup āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¤āĻĨāĻžāĻ•āĻĨāĻŋāĻ¤ memcg āĻŦā§‹āĻ•āĻšāĻ¨ā§āĻĻāĻ°. āĻļā§€āĻ˜ā§āĻ°āĻ‡ āĻŦāĻž āĻĒāĻ°ā§‡ āĻ¤āĻžāĻ°āĻž āĻĒā§ƒāĻˇā§āĻ āĻž āĻ•ā§āĻ¯āĻžāĻļā§‡ āĻĨā§‡āĻ•ā§‡ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻž āĻšāĻŦā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻŽā§‡āĻŽāĻ°āĻŋ āĻ†āĻ›ā§‡ āĻāĻŦāĻ‚ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ¤āĻžāĻĻā§‡āĻ° āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻˇā§āĻŸ āĻ•āĻ°āĻžāĻ° āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ¸ā§‡āĻœāĻ¨ā§āĻ¯ āĻ¤āĻžāĻ°āĻž āĻœāĻŽāĻžāĻŸ āĻŦāĻžāĻāĻ§āĻ¤ā§‡ āĻĨāĻžāĻ•ā§‡āĨ¤ āĻ•ā§‡āĻ¨ āĻāĻŸāĻž āĻāĻŽāĻ¨āĻ•āĻŋ āĻ˜āĻŸāĻ›ā§‡? āĻāĻŸāĻŋ āĻ•ā§āĻ°āĻ¨ āĻœāĻŦ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻ¯āĻž āĻ•ā§āĻ°āĻŽāĻžāĻ—āĻ¤ āĻ¨āĻ¤ā§āĻ¨ āĻ•āĻžāĻœ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¨āĻ¤ā§āĻ¨ āĻĒāĻĄāĨ¤ āĻāĻ‡āĻ­āĻžāĻŦā§‡, āĻ¤āĻžāĻĻā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻ¤ā§āĻ¨ cgroups āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻļā§€āĻ˜ā§āĻ°āĻ‡ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻž āĻšāĻ¯āĻŧāĨ¤
  • āĻ•ā§āĻŦā§‡āĻ˛ā§‡āĻŸā§‡ āĻ¸āĻŋāĻāĻĄāĻ­āĻžāĻ‡āĻœāĻžāĻ° āĻāĻ¤ āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻˇā§āĻŸ āĻ•āĻ°ā§‡ āĻ•ā§‡āĻ¨? āĻāĻŸāĻŋ āĻ¸āĻšāĻœāĻ¤āĻŽ āĻŽā§ƒāĻ¤ā§āĻ¯ā§āĻĻāĻ¨ā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ–āĻž āĻ¸āĻšāĻœ time cat /sys/fs/cgroup/memory/memory.stat. āĻ¯āĻĻāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻ¸ā§āĻĨ āĻŽā§‡āĻļāĻŋāĻ¨ā§‡ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨āĻŸāĻŋ 0,01 āĻ¸ā§‡āĻ•ā§‡āĻ¨ā§āĻĄ āĻ¸āĻŽāĻ¯āĻŧ āĻ¨ā§‡āĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ¯ā§āĻ•ā§āĻ¤ āĻ•ā§āĻ°ā§‹āĻ¨02 āĻ āĻāĻŸāĻŋ 1,2 āĻ¸ā§‡āĻ•ā§‡āĻ¨ā§āĻĄ āĻ¸āĻŽāĻ¯āĻŧ āĻ¨ā§‡āĻ¯āĻŧāĨ¤ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°āĻŸāĻŋ āĻšāĻ˛ āĻ¸āĻŋāĻāĻĄāĻ­āĻžāĻ‡āĻœāĻžāĻ°, āĻ¯āĻž āĻ–ā§āĻŦ āĻ§ā§€āĻ°ā§‡ āĻ§ā§€āĻ°ā§‡ sysfs āĻĨā§‡āĻ•ā§‡ āĻĄā§‡āĻŸāĻž āĻĒāĻĄāĻŧā§‡, zombie cgroups-āĻ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻŽā§‡āĻŽāĻ°āĻŋ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡āĨ¤
  • āĻœā§‹āĻŽā§āĻŦāĻŋāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻœā§‹āĻ°āĻĒā§‚āĻ°ā§āĻŦāĻ• āĻ…āĻĒāĻ¸āĻžāĻ°āĻŖ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻ°āĻž LKML-āĻ āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļāĻ•ā§ƒāĻ¤ āĻ•ā§āĻ¯āĻžāĻļā§‡ āĻ¸āĻžāĻĢ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡āĻ›āĻŋ: sync; echo 3 > /proc/sys/vm/drop_caches, - āĻ¤āĻŦā§‡ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛āĻŸāĻŋ āĻ†āĻ°āĻ“ āĻœāĻŸāĻŋāĻ˛ āĻšāĻ¯āĻŧā§‡ āĻ‰āĻ āĻ˛ āĻāĻŦāĻ‚ āĻ—āĻžāĻĄāĻŧāĻŋāĻŸāĻŋ āĻŦāĻŋāĻ§ā§āĻŦāĻ¸ā§āĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻ•āĻŋ āĻ•āĻ°ā§‹? āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻ āĻŋāĻ• āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡ (āĻ•āĻŽāĻŋāĻŸ, āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĻā§‡āĻ–ā§āĻ¨ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°ā§āĻ¨) 4.16 āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖā§‡ Linux āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡āĨ¤

āĻ‡āĻ¤āĻŋāĻšāĻžāĻ¸ 3. Systemd āĻāĻŦāĻ‚ āĻāĻ° āĻŽāĻžāĻ‰āĻ¨ā§āĻŸ

āĻ†āĻŦāĻžāĻ°, āĻ•ā§āĻŦā§‡āĻ˛ā§‡āĻŸ āĻ•āĻŋāĻ›ā§ āĻ¨ā§‹āĻĄāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻŦā§‡āĻļāĻŋ āĻ¸āĻ‚āĻ¸ā§āĻĨāĻžāĻ¨ āĻ—ā§āĻ°āĻšāĻŖ āĻ•āĻ°āĻ›ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ‡ āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŸāĻŋ āĻ–ā§āĻŦ āĻŦā§‡āĻļāĻŋ āĻŽā§‡āĻŽāĻ°āĻŋ āĻ—ā§āĻ°āĻžāĻ¸ āĻ•āĻ°āĻ›ā§‡:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻāĻŸāĻŋ āĻĒā§āĻ°āĻŽāĻžāĻŖāĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯ā§‡ āĻ‰āĻŦā§āĻ¨ā§āĻŸā§ 16.04 āĻ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽāĻĄāĻŋāĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻŽāĻžāĻ‰āĻ¨ā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ˜āĻŸā§‡ subPath ConfigMap āĻāĻ° āĻŦāĻž āĻ—ā§‹āĻĒāĻ¨ āĻāĻ° āĻĨā§‡āĻ•ā§‡āĨ¤ āĻĒā§‹āĻĻā§‡āĻ° āĻ•āĻžāĻœ āĻļā§‡āĻˇ āĻ•āĻ°āĻžāĻ° āĻĒāĻ° systemd āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻāĻŦāĻ‚ āĻāĻ° āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻŽāĻžāĻ‰āĻ¨ā§āĻŸ āĻĨāĻžāĻ•ā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻ¸āĻŽāĻ¯āĻŧā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻĨā§‡, āĻ¤āĻžāĻĻā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļāĻžāĻ˛ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻœāĻŽāĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ‡ āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻāĻŽāĻ¨āĻ•āĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ†āĻ›ā§‡:

  1. #5916;
  2. āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ #57345.

...āĻ¯āĻžāĻ° āĻļā§‡āĻˇāĻŸāĻŋ systemd-āĻ PR-āĻ•ā§‡ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°ā§‡: #7811 (āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž - #7798).

āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻ‰āĻŦā§āĻ¨ā§āĻŸā§ 18.04-āĻ āĻ†āĻ° āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨ā§‡āĻ‡, āĻ¤āĻŦā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ‰āĻŦā§āĻ¨ā§āĻŸā§ 16.04 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻšāĻžāĻ˛āĻŋāĻ¯āĻŧā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻšāĻžāĻ¨, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡ āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°ā§€ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤

āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻ°āĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻĄā§‡āĻŽāĻ¨āĻ¸ā§‡āĻŸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡āĻ›āĻŋ:

---
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
  labels:
    app: systemd-slices-cleaner
  name: systemd-slices-cleaner
  namespace: kube-system
spec:
  updateStrategy:
    type: RollingUpdate
  selector:
    matchLabels:
      app: systemd-slices-cleaner
  template:
    metadata:
      labels:
        app: systemd-slices-cleaner
    spec:
      containers:
      - command:
        - /usr/local/bin/supercronic
        - -json
        - /app/crontab
        Image: private-registry.org/systemd-slices-cleaner/systemd-slices-cleaner:v0.1.0
        imagePullPolicy: Always
        name: systemd-slices-cleaner
        resources: {}
        securityContext:
          privileged: true
        volumeMounts:
        - name: systemd
          mountPath: /run/systemd/private
        - name: docker
          mountPath: /run/docker.sock
        - name: systemd-etc
          mountPath: /etc/systemd
        - name: systemd-run
          mountPath: /run/systemd/system/
        - name: lsb-release
          mountPath: /etc/lsb-release-host
      imagePullSecrets:
      - name: antiopa-registry
      priorityClassName: cluster-low
      tolerations:
      - operator: Exists
      volumes:
      - name: systemd
        hostPath:
          path: /run/systemd/private
      - name: docker
        hostPath:
          path: /run/docker.sock
      - name: systemd-etc
        hostPath:
          path: /etc/systemd
      - name: systemd-run
        hostPath:
          path: /run/systemd/system/
      - name: lsb-release
        hostPath:
          path: /etc/lsb-release

... āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡:

#!/bin/bash

# we will work only on xenial
hostrelease="/etc/lsb-release-host"
test -f ${hostrelease} && grep xenial ${hostrelease} > /dev/null || exit 0

# sleeping max 30 minutes to dispense load on kube-nodes
sleep $((RANDOM % 1800))

stoppedCount=0
# counting actual subpath units in systemd
countBefore=$(systemctl list-units | grep subpath | grep "run-" | wc -l)
# let's go check each unit
for unit in $(systemctl list-units | grep subpath | grep "run-" | awk '{print $1}'); do
  # finding description file for unit (to find out docker container, who born this unit)
  DropFile=$(systemctl status ${unit} | grep Drop | awk -F': ' '{print $2}')
  # reading uuid for docker container from description file
  DockerContainerId=$(cat ${DropFile}/50-Description.conf | awk '{print $5}' | cut -d/ -f6)
  # checking container status (running or not)
  checkFlag=$(docker ps | grep -c ${DockerContainerId})
  # if container not running, we will stop unit
  if [[ ${checkFlag} -eq 0 ]]; then
    echo "Stopping unit ${unit}"
    # stoping unit in action
    systemctl stop $unit
    # just counter for logs
    ((stoppedCount++))
    # logging current progress
    echo "Stopped ${stoppedCount} systemd units out of ${countBefore}"
  fi
done

... āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻĒā§‚āĻ°ā§āĻŦā§‡ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻŋāĻ¤ āĻ¸ā§āĻĒāĻžāĻ°āĻ•ā§āĻ°ā§‹āĻ¨āĻŋāĻ• āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĒā§āĻ°āĻ¤āĻŋ 5 āĻŽāĻŋāĻ¨āĻŋāĻŸā§‡ āĻšāĻ˛ā§‡āĨ¤ āĻāĻ° āĻĄāĻ•āĻžāĻ°āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻāĻ‡āĻ°āĻ•āĻŽ āĻĻā§‡āĻ–āĻžāĻšā§āĻ›ā§‡:

FROM ubuntu:16.04
COPY rootfs /
WORKDIR /app
RUN apt-get update && 
    apt-get upgrade -y && 
    apt-get install -y gnupg curl apt-transport-https software-properties-common wget
RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable" && 
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && 
    apt-get update && 
    apt-get install -y docker-ce=17.03.0*
RUN wget https://github.com/aptible/supercronic/releases/download/v0.1.6/supercronic-linux-amd64 -O 
    /usr/local/bin/supercronic && chmod +x /usr/local/bin/supercronic
ENTRYPOINT ["/bin/bash", "-c", "/usr/local/bin/supercronic -json /app/crontab"]

āĻ—āĻ˛ā§āĻĒ 4. āĻĒāĻĄ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻ¤āĻŋāĻ¯ā§‹āĻ—āĻŋāĻ¤āĻžāĻŽā§‚āĻ˛āĻ•āĻ¤āĻž

āĻāĻŸāĻŋ āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°āĻž āĻ—ā§‡āĻ›ā§‡ āĻ¯ā§‡: āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¨ā§‹āĻĄā§‡āĻ° āĻ‰āĻĒāĻ° āĻāĻ•āĻŸāĻŋ āĻĒāĻĄ āĻ°āĻžāĻ–āĻž āĻĨāĻžāĻ•ā§‡ āĻāĻŦāĻ‚ āĻāĻ° āĻšāĻŋāĻ¤ā§āĻ°āĻŸāĻŋ āĻ–ā§āĻŦ āĻĻā§€āĻ°ā§āĻ˜ āĻ¸āĻŽāĻ¯āĻŧā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒāĻžāĻŽā§āĻĒ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻĒāĻĄ āĻ¯āĻž āĻāĻ•āĻ‡ āĻ¨ā§‹āĻĄāĻ•ā§‡ "āĻšāĻŋāĻŸ" āĻ•āĻ°āĻŦā§‡ āĻ¨āĻ¤ā§āĻ¨ āĻĒā§‹āĻĻā§‡āĻ° āĻ‡āĻŽā§‡āĻœ āĻŸāĻžāĻ¨āĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡ āĻ¨āĻž. āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡, āĻĒā§‚āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§€ āĻĒāĻĄā§‡āĻ° āĻšāĻŋāĻ¤ā§āĻ°āĻŸāĻŋ āĻŸāĻžāĻ¨āĻž āĻ¨āĻž āĻšāĻ“āĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻŸāĻŋ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡āĨ¤ āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻāĻ•āĻŸāĻŋ āĻĒāĻĄ āĻ¯āĻž āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻ›āĻŋāĻ˛ āĻāĻŦāĻ‚ āĻ¯āĻžāĻ° āĻšāĻŋāĻ¤ā§āĻ°āĻŸāĻŋ āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ• āĻŽāĻŋāĻ¨āĻŋāĻŸā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¤āĻžāĻ° āĻ¸ā§āĻŸā§āĻ¯āĻžāĻŸāĻžāĻ¸ā§‡ āĻļā§‡āĻˇ āĻšāĻŦā§‡ containerCreating.

āĻ‡āĻ­ā§‡āĻ¨ā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻāĻ‡āĻ°āĻ•āĻŽ āĻ•āĻŋāĻ›ā§ āĻĻā§‡āĻ–āĻžāĻŦā§‡:

Normal  Pulling    8m    kubelet, ip-10-241-44-128.ap-northeast-1.compute.internal  pulling image "registry.example.com/infra/openvpn/openvpn:master"

āĻāĻŸāĻž āĻ¯ā§‡ āĻ¸āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ†āĻ‰āĻŸ āĻāĻ•āĻŸāĻŋ āĻ§ā§€āĻ° āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋ āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• āĻšāĻŋāĻ¤ā§āĻ° āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻŦā§āĻ˛āĻ• āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻĒā§āĻ°āĻ¤āĻŋ āĻ¨ā§‹āĻĄ

āĻĻā§āĻ°ā§āĻ­āĻžāĻ—ā§āĻ¯āĻŦāĻļāĻ¤, āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻĨā§‡āĻ•ā§‡ āĻŦā§‡āĻ°āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ¸āĻžāĻ° āĻ…āĻ¨ā§‡āĻ• āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻ¨ā§‡āĻ‡:

  1. āĻ†āĻĒāĻ¨āĻžāĻ° āĻĄāĻ•āĻžāĻ° āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡ āĻŦāĻž āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§āĻ¨ (āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ—āĻŋāĻŸāĻ˛ā§āĻ¯āĻžāĻŦ āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋ, āĻ¨ā§‡āĻ•ā§āĻ¸āĻžāĻ¸, āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋ);
  2. āĻ¯ā§‡āĻŽāĻ¨ āĻ‡āĻ‰āĻŸāĻŋāĻ˛āĻŋāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§āĻ¨ āĻ•ā§āĻ°āĻžāĻ•ā§‡āĻ¨āĻ•ā§‡.

āĻ—āĻ˛ā§āĻĒ 5. āĻ¸ā§āĻŽā§ƒāĻ¤āĻŋāĻ° āĻ…āĻ­āĻžāĻŦā§‡ āĻ¨ā§‹āĻĄ āĻā§āĻ˛ā§‡ āĻ¯āĻžāĻ¯āĻŧ

āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻšāĻ˛āĻžāĻ•āĻžāĻ˛ā§€āĻ¨, āĻ†āĻŽāĻ°āĻž āĻāĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨ā§‹āĻĄ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĻ°ā§‚āĻĒā§‡ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸āĻ¯ā§‹āĻ—ā§āĻ¯ āĻšāĻ“āĻ¯āĻŧāĻž āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°ā§‡ āĻĻā§‡āĻ¯āĻŧ: SSH āĻ¸āĻžāĻĄāĻŧāĻž āĻĻā§‡āĻ¯āĻŧ āĻ¨āĻž, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽāĻ¨āĻŋāĻŸāĻ°āĻŋāĻ‚ āĻĄā§‡āĻŽāĻ¨ āĻĒāĻĄāĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ˛āĻ—āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ…āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻ•āĻŋāĻ›ā§āĻ‡ (āĻŦāĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ•āĻŋāĻ›ā§āĻ‡) āĻ¨ā§‡āĻ‡āĨ¤

āĻ†āĻŽāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨ā§‹āĻĄā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ›āĻŦāĻŋāĻ¤ā§‡ āĻŦāĻ˛āĻŦ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ MongoDB āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĨ¤

āĻāĻ‡ āĻ‰āĻĒāĻ°ā§‡āĻ° āĻŽāĻ¤ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ āĻ•āĻŋ āĻĨā§‡āĻ•ā§‡ āĻĻā§āĻ°ā§āĻ˜āĻŸāĻ¨āĻž:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻāĻŦāĻ‚ āĻāĻ‡ āĻŽāĻ¤ - ĐŋĐžŅĐģĐĩ āĻĻā§āĻ°ā§āĻ˜āĻŸāĻ¨āĻž:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖā§‡, āĻāĻ•āĻŸāĻŋ āĻ¤ā§€āĻ•ā§āĻˇā§āĻŖ āĻ˛āĻžāĻĢāĻ“ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ¨ā§‹āĻĄāĻŸāĻŋ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ āĻšāĻ“āĻ¯āĻŧāĻž āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°ā§‡ āĻĻā§‡āĻ¯āĻŧ:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻ¨āĻļāĻŸ āĻĨā§‡āĻ•ā§‡ āĻāĻŸāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻ¯ā§‡:

  1. āĻŽā§‡āĻļāĻŋāĻ¨ā§‡ RAM āĻļā§‡āĻˇā§‡āĻ° āĻ•āĻžāĻ›āĻžāĻ•āĻžāĻ›āĻŋ;
  2. RAM āĻ–āĻ°āĻšā§‡ āĻāĻ•āĻŸāĻŋ āĻ¤ā§€āĻ•ā§āĻˇā§āĻŖ āĻ˛āĻžāĻĢ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻžāĻ° āĻĒāĻ°ā§‡ āĻĒā§āĻ°ā§‹ āĻŽā§‡āĻļāĻŋāĻ¨ā§‡ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻšāĻ āĻžā§Ž āĻ…āĻ•ā§āĻˇāĻŽ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ;
  3. āĻŽāĻ™ā§āĻ—ā§‹āĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻ•āĻžāĻœ āĻ†āĻ¸ā§‡, āĻ¯āĻž āĻĄāĻŋāĻŦāĻŋāĻāĻŽāĻāĻ¸ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•ā§‡ āĻ†āĻ°āĻ“ āĻŽā§‡āĻŽāĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻāĻŦāĻ‚ āĻĄāĻŋāĻ¸ā§āĻ• āĻĨā§‡āĻ•ā§‡ āĻ¸āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻŦāĻžāĻ§ā§āĻ¯ āĻ•āĻ°ā§‡āĨ¤

āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻšā§āĻ›ā§‡ āĻ¯ā§‡ āĻ¯āĻĻāĻŋ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻĢā§āĻ°āĻŋ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĢā§āĻ°āĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ (āĻŽā§‡āĻŽāĻ°āĻŋāĻ° āĻšāĻžāĻĒ āĻ¸ā§‡āĻŸ āĻšāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ) āĻāĻŦāĻ‚ āĻ•ā§‹āĻ¨ āĻ…āĻĻāĻ˛āĻŦāĻĻāĻ˛ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻĨā§‡āĻ•ā§‡ āĻ¯āĻ–āĻ¨ āĻ“āĻ“āĻāĻŽ āĻšāĻ¤ā§āĻ¯āĻžāĻ•āĻžāĻ°ā§€ āĻ†āĻ¸ā§‡, āĻ¤āĻ–āĻ¨ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ•ā§āĻ¯āĻžāĻļā§‡āĻ¤ā§‡ āĻĢā§‡āĻ˛ā§‡ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻĄāĻŋāĻ¸ā§āĻ•ā§‡ āĻ˛ā§‡āĻ–āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻ­āĻžāĻ°āĻ¸āĻžāĻŽā§āĻ¯āĻŽā§‚āĻ˛āĻ• āĻ•āĻžāĻœ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻŸāĻŋ kswapd āĻĻā§āĻŦāĻžāĻ°āĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻŦāĻŋāĻ¤āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻžāĻšāĻ¸ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§ƒāĻˇā§āĻ āĻž āĻŽā§āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡āĨ¤

āĻĻā§āĻ°ā§āĻ­āĻžāĻ—ā§āĻ¯āĻŦāĻļāĻ¤, āĻāĻ•āĻŸāĻŋ āĻŦā§ƒāĻšā§Ž I/O āĻ˛ā§‹āĻĄ āĻ¸āĻš āĻ…āĻ˛ā§āĻĒ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖ āĻĢā§āĻ°āĻŋ āĻŽā§‡āĻŽāĻ°āĻŋāĻ° āĻ¸āĻžāĻĨā§‡, kswapd āĻĒā§āĻ°ā§‹ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻŦāĻžāĻ§āĻž āĻšāĻ¯āĻŧā§‡ āĻĻāĻžāĻāĻĄāĻŧāĻžāĻ¯āĻŧ, āĻ•āĻžāĻ°āĻŖ āĻ¤āĻžāĻ°āĻž āĻāĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ†āĻŦāĻĻā§āĻ§ āĻ¸āĻŦ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻŦāĻ°āĻžāĻĻā§āĻĻ (āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ)āĨ¤ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĻā§€āĻ°ā§āĻ˜ āĻ¸āĻŽāĻ¯āĻŧā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋ āĻ†āĻ° āĻŽā§‡āĻŽāĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻ¨āĻž āĻšāĻžāĻ¯āĻŧ, āĻ¤āĻŦā§‡ OOM-āĻ•āĻŋāĻ˛āĻžāĻ° āĻ…ā§āĻ¯āĻžāĻŦāĻŋāĻ¸-āĻāĻ° āĻāĻ•ā§‡āĻŦāĻžāĻ°ā§‡ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤ā§‡ āĻ¸ā§āĻĨāĻŋāĻ° āĻĨāĻžāĻ•ā§‡āĨ¤

āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻĒā§āĻ°āĻļā§āĻ¨ āĻšāĻ˛: āĻ•ā§‡āĻ¨ āĻ“āĻ“āĻāĻŽ āĻšāĻ¤ā§āĻ¯āĻžāĻ•āĻžāĻ°ā§€ āĻāĻ¤ āĻĻā§‡āĻ°āĻŋāĻ¤ā§‡ āĻ†āĻ¸ā§‡? āĻāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋāĻ¤ā§‡, OOM āĻšāĻ¤ā§āĻ¯āĻžāĻ•āĻžāĻ°ā§€ āĻ…āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻŦā§‹āĻ•āĻž: āĻāĻŸāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻ–āĻ¨āĻ‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ•ā§‡ āĻŽā§‡āĻ°ā§‡ āĻĢā§‡āĻ˛āĻŦā§‡ āĻ¯āĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§ƒāĻˇā§āĻ āĻž āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻšā§‡āĻˇā§āĻŸāĻž āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ, āĻ¯ā§‡āĻŽāĻ¨ āĻ¯āĻĻāĻŋ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧāĨ¤ āĻāĻŸāĻŋ āĻĻā§€āĻ°ā§āĻ˜ āĻ¸āĻŽāĻ¯āĻŧā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ˜āĻŸā§‡ āĻ¨āĻž, āĻ•āĻžāĻ°āĻŖ kswapd āĻ¸āĻžāĻšāĻ¸ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻŽā§āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡, āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ•ā§āĻ¯āĻžāĻļā§‡ āĻĄāĻžāĻŽā§āĻĒ āĻ•āĻ°ā§‡ (āĻ†āĻ¸āĻ˛ā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĄāĻŋāĻ¸ā§āĻ• I/O) āĻĄāĻŋāĻ¸ā§āĻ•ā§‡ āĻĢāĻŋāĻ°ā§‡ āĻ†āĻ¸ā§‡āĨ¤ āĻ†āĻ°āĻ“ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤āĻ­āĻžāĻŦā§‡, āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ā§‡āĻ° āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ—ā§āĻ˛āĻŋ āĻĻā§‚āĻ° āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒāĻ—ā§āĻ˛āĻŋāĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ āĻ¸āĻš, āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻāĻ–āĻžāĻ¨ā§‡.

āĻāĻ‡ āĻ†āĻšāĻ°āĻŖ āĻ‰āĻ¨ā§āĻ¨āĻ¤āĻŋ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ 4.6+ āĻ¸āĻšāĨ¤

āĻ—āĻ˛ā§āĻĒ 6. āĻļā§āĻāĻŸāĻŋ āĻŽā§āĻ˛āĻ¤ā§āĻŦāĻŋ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻ†āĻŸāĻ•ā§‡ āĻ¯āĻžāĻ¯āĻŧ

āĻ•āĻŋāĻ›ā§ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ‡ āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻļā§āĻāĻŸāĻŋ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°āĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡āĻ›āĻŋ āĻ¯ā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ—āĻ‡ āĻ°āĻžāĻœā§āĻ¯ā§‡ āĻ–ā§āĻŦ āĻĻā§€āĻ°ā§āĻ˜ āĻ¸āĻŽāĻ¯āĻŧā§‡āĻ° āĻœāĻ¨ā§āĻ¯ "āĻā§āĻ˛ā§‡ āĻ†āĻ›ā§‡" Pending, āĻ¯āĻĻāĻŋāĻ“ āĻĄāĻ•āĻžāĻ° āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°āĻ—ā§āĻ˛āĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ¨ā§‹āĻĄāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻšāĻ˛āĻ›ā§‡ āĻāĻŦāĻ‚ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

āĻ¤āĻžāĻ›āĻžāĻĄāĻŧāĻž, āĻ‡āĻ¨ describe āĻāĻ–āĻžāĻ¨ā§‡ āĻ•ā§‹āĻ¨ āĻ­ā§āĻ˛ āĻ¨ā§‡āĻ‡:

  Type    Reason                  Age                From                     Message
  ----    ------                  ----               ----                     -------
  Normal  Scheduled               1m                 default-scheduler        Successfully assigned sphinx-0 to ss-dev-kub07
  Normal  SuccessfulAttachVolume  1m                 attachdetach-controller  AttachVolume.Attach succeeded for volume "pvc-6aaad34f-ad10-11e8-a44c-52540035a73b"
  Normal  SuccessfulMountVolume   1m                 kubelet, ss-dev-kub07    MountVolume.SetUp succeeded for volume "sphinx-config"
  Normal  SuccessfulMountVolume   1m                 kubelet, ss-dev-kub07    MountVolume.SetUp succeeded for volume "default-token-fzcsf"
  Normal  SuccessfulMountVolume   49s (x2 over 51s)  kubelet, ss-dev-kub07    MountVolume.SetUp succeeded for volume "pvc-6aaad34f-ad10-11e8-a44c-52540035a73b"
  Normal  Pulled                  43s                kubelet, ss-dev-kub07    Container image "registry.example.com/infra/sphinx-exporter/sphinx-indexer:v1" already present on machine
  Normal  Created                 43s                kubelet, ss-dev-kub07    Created container
  Normal  Started                 43s                kubelet, ss-dev-kub07    Started container
  Normal  Pulled                  43s                kubelet, ss-dev-kub07    Container image "registry.example.com/infra/sphinx/sphinx:v1" already present on machine
  Normal  Created                 42s                kubelet, ss-dev-kub07    Created container
  Normal  Started                 42s                kubelet, ss-dev-kub07    Started container

āĻ•āĻŋāĻ›ā§ āĻ–āĻ¨āĻ¨ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨ā§āĻŽāĻžāĻ¨ āĻ•āĻ°ā§‡āĻ›āĻŋ āĻ¯ā§‡ āĻ•ā§āĻŦā§‡āĻ˛ā§‡āĻŸā§‡āĻ° āĻ•āĻžāĻ›ā§‡ āĻ•ā§‡āĻŦāĻ˛ āĻĒāĻĄā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻāĻŦāĻ‚ āĻœā§€āĻŦāĻ¨ā§āĻ¤āĻ¤āĻž/āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¤āĻĨā§āĻ¯ API āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻĒāĻžāĻ āĻžāĻ¨ā§‹āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¨ā§‡āĻ‡āĨ¤

āĻāĻŦāĻ‚ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ…āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋāĻ—ā§āĻ˛āĻŋ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¯āĻŧā§‡āĻ›āĻŋ:

--kube-api-qps - QPS to use while talking with kubernetes apiserver (default 5)
--kube-api-burst  - Burst to use while talking with kubernetes apiserver (default 10) 
--event-qps - If > 0, limit event creations per second to this value. If 0, unlimited. (default 5)
--event-burst - Maximum size of a bursty event records, temporarily allows event records to burst to this number, while still not exceeding event-qps. Only used if --event-qps > 0 (default 10) 
--registry-qps - If > 0, limit registry pull QPS to this value.
--registry-burst - Maximum size of bursty pulls, temporarily allows pulls to burst to this number, while still not exceeding registry-qps. Only used if --registry-qps > 0 (default 10)

āĻ¯ā§‡āĻŽāĻ¨ āĻĻā§‡āĻ–āĻž āĻ—ā§‡āĻ˛, āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻŽāĻžāĻ¨ āĻŦā§‡āĻļ āĻ›ā§‹āĻŸ, āĻāĻŦāĻ‚ 90% āĻ āĻ¤āĻžāĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻšāĻžāĻšāĻŋāĻĻāĻž āĻ•āĻ­āĻžāĻ° āĻ•āĻ°ā§‡... āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻŸāĻŋ āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻ›āĻŋāĻ˛ āĻ¨āĻžāĨ¤ āĻ…āĻ¤āĻāĻŦ, āĻ†āĻŽāĻ°āĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻŋ:

--event-qps=30 --event-burst=40 --kube-api-burst=40 --kube-api-qps=30 --registry-qps=30 --registry-burst=40

... āĻāĻŦāĻ‚ āĻ•ā§āĻŦā§‡āĻ˛ā§‡āĻŸāĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻšāĻžāĻ˛ā§ āĻ•āĻ°ā§‡āĻ›āĻŋ, āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ†āĻŽāĻ°āĻž API āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ•āĻ˛ā§‡āĻ° āĻ—ā§āĻ°āĻžāĻĢā§‡ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻšāĻŋāĻ¤ā§āĻ°āĻŸāĻŋ āĻĻā§‡āĻ–ā§‡āĻ›āĻŋ:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡ 6āĻŸāĻŋ āĻŦāĻŋāĻ¨ā§‹āĻĻāĻ¨āĻŽā§‚āĻ˛āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻžāĻ— [āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨]

... āĻāĻŦāĻ‚ āĻšā§āĻ¯āĻžāĻ, āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ‰āĻĄāĻŧāĻ¤ā§‡ āĻļā§āĻ°ā§!

āĻĻā§āĻ°āĻˇā§āĻŸāĻŦā§āĻ¯

āĻŦāĻžāĻ— āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻāĻŦāĻ‚ āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŸāĻŋ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§‹āĻŽā§āĻĒāĻžāĻ¨āĻŋāĻ° āĻ…āĻ¸āĻ‚āĻ–ā§āĻ¯ āĻĒā§āĻ°āĻ•ā§ŒāĻļāĻ˛ā§€ āĻāĻŦāĻ‚ āĻŦāĻŋāĻļā§‡āĻˇ āĻ•āĻ°ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° R&D āĻĻāĻ˛ā§‡āĻ° āĻ†āĻŽāĻžāĻ° āĻ¸āĻšāĻ•āĻ°ā§āĻŽā§€ āĻ†āĻ¨ā§āĻĻā§āĻ°ā§‡ āĻ•ā§āĻ˛āĻŋāĻŽāĻ¨ā§āĻ¤ā§‡āĻ­ā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋ āĻ—āĻ­ā§€āĻ° āĻ•ā§ƒāĻ¤āĻœā§āĻžāĻ¤āĻž āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°āĻ›āĻŋ (āĻœā§āĻœā§āĻœāĻž).

PPS

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŦā§āĻ˛āĻ—ā§‡āĻ“ āĻĒāĻĄāĻŧā§āĻ¨:

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨