์ด๋ฒ ํฌ์คํ ์์๋ ์ปจํ ์ด๋์ CPU, Memory๋ฅผ ํ ๋นํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
1. ์ปจํ ์ด๋ ๋ฉ๋ชจ๋ฆฌ ํ ๋น
1-1 ) ์ปจํ ์ด๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋นํ๊ธฐ
์ปจํ
์ด๋๋ฅผ ์์ํ ๋ ์ปจํ
์ด๋์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฆฌ์์ค ํฌ๊ธฐ๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค :)
๋จผ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ 100m ์ง์ ํ์ฌ ์ปจํ
์ด๋๋ฅผ ์คํํด๋ด
์๋ค.
[root@docker /]# docker run --name nginx -d -p 8080:80 --memory="100m" nginx
9fc9ccbf2a551a2bd4911d096a545b105c63762f9affb900390431a3df0402a0
docker inspect ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํด์ ์ปจํ
์ด๋์ ๋ํ ์์ธํ ์ ๋ณด๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
์ปจํ
์ด๋์ ์ ๋ง ๋ฉ๋ชจ๋ฆฌ ํ ๋น๋์ด ์ค์ ๋์๋์ง ํ์ธํด๋ด
๋๋ค.
[root@docker /]# docker container inspect nginx | grep Memory
"Memory": 104857600,
"KernelMemory": 0,
"KernelMemoryTCP": 0,
"MemoryReservation": 0,
"MemorySwap": 209715200,
"MemorySwappiness": null,
1-2) ๋ฉ๋ชจ๋ฆฌ ์ ๋ฐ์ดํธ ํ๊ธฐ
๋ฉ๋ชจ๋ฆฌ๋ฅผ 100m์์ 200m๋ก ์ ๋ฐ์ดํธ ํฉ๋๋ค.
[root@docker /]# docker container update --memory='200m' nginx
nginx
๋ฉ๋ชจ๋ฆฌ ์ค์ ํฌ๊ธฐ๋ 500m๋ก ๋ณ๊ฒฝํฉ๋๋ค.
[root@docker /]# docker container update --memory-swap='500m' nginx
nginx
๋ณ๊ฒฝ ๋ด์ฉ์ด ์ ๋ฐ์ ๋์๋์ง inspect ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ํ์ธํด๋ด ๋๋ค.
[root@docker /]# docker container inspect nginx | grep Memory
"Memory": 209715200,
"KernelMemory": 0,
"KernelMemoryTCP": 0,
"MemoryReservation": 0,
"MemorySwap": 524288000,
"MemorySwappiness": null,
* ๋ฉ๋ชจ๋ฆฌ ๋ฟ๋ง ์๋๋ผ, ์ฌ๋ฌ๊ฐ์ง ์ต์
์ ์
๋ฐ์ดํธํ ์ ์์ต๋๋ค.
docs.docker.com/engine/reference/commandline/container_update/
2. ์ปจํ ์ด๋ CPU ํ ๋น
2-1) CPU ๊ณ ์ ํ ๋น ํ๊ธฐ
ํน์ ์ปจํ
์ด๋์ ๊ณ ์ ๋ CPU์์์ ํ ๋นํ ์ ์์ต๋๋ค.
์ปจํ
์ด๋์ ๋ฌผ๋ฆฌ CPU๋ฅผ ๊ณ ์ ํด์ ํ ๋นํด์ฃผ๋ ๋ช
๋ น์ด ์
๋๋ค. --cpuset-cpus=1 ๋ป์ 2๋ฒ CPU๋ง ์จ๋ผ(๊ณ ์ ํ ๋น) ๋ผ๋ ์๋ฏธ ์
๋๋ค.
[root@docker /]# docker container run --name nginx -d -p 8080:80 --cpuset-cpus=1 nginx
37f6b2d8ff927c8357f3bc54aa2cea612b3baed5ca8c6bd493a77f6c20bfa48c
ํ ๋น์ด ์ ๋์๋์ง ํ์ธํด๋ณผ๊น์?
1๋ฒ CPU๊ฐ ํ ๋น ๋์์ต๋๋ค.
[root@docker /]# docker container inspect nginx | grep Cpuset
"CpusetCpus": "1",
"CpusetMems": "",
2-2) CPU ๊ฐ์ ์ ํ
ํน์ CPU๋ฅผ ๊ณ ์ ํด์ ์ฌ์ฉํ๋๋ก ํ ๋นํ๋๊ฒ ์ธ CPU๋ฅผ ์ต๋ ๋ช๊ฐ๊น์ง ์ฌ์ฉํ ์ ์๋๋ก ํ ์ง๋ ์ค์ ์ด ๊ฐ๋ฅํฉ๋๋ค.
ํ ๋นํด๋ด
์๋ค.
[root@docker /]# docker run --name nginx -d -p 8080:80 --cpus=2 nginx
6b8152cdb30970d639d6ce81aaec6f6d6a16a6159f3e68c4e28578215ca29a9e
์ปจํ ์ด๋์ ํ ๋น๋ CPU๋ฅผ ํ์ธํด๋ด ๋๋ค.
[root@docker /]# docker container inspect nginx | grep NanoCpu
"NanoCpus": 2000000000,