Quiz: A Container Seen From /proc
한국어 원문으로 표시합니다.
/proc/PID/ns/net 심볼릭 링크의 대괄호 안 숫자가 뜻하는 것은?
- 컨테이너의 짧은 ID 값
- 프로세스의 스케줄링 우선순위
- 네임스페이스 아이노드 번호 — 같으면 같은 네임스페이스
- 할당된 네트워크 인터페이스 번호
호스트에서 낯선 프로세스가 어느 컨테이너의 것인지 가장 빠르게 알아내려면?
/proc/PID/cmdline을 본다/proc/PID/cgroup경로에 포함된 컨테이너 ID 를 본다/proc/PID/environ을 본다docker ps를 전부 훑는다
/proc/PID/mountinfo 의 overlay 항목에서 lowerdir 목록이 뜻하는 것은?
- 이미지의 읽기 전용 레이어들
- 볼륨 마운트 목록
- 컨테이너의 쓰기 레이어
- 임시 파일시스템
/proc/PID/status 의 CapEff 가 0000000000000000 이면?
- root 로 실행 중이다
- seccomp 가 꺼져 있다
- 실효 capability 가 하나도 없다
- 네임스페이스가 없다
docker stats 는 여유가 있어 보이는데 OOMKilled 가 났다. 무엇을 확인하는 게 정확한가?
- 이미지의 전체 크기와 레이어 개수, 그리고 베이스 이미지 종류
- 컨테이너에 걸려 있는 재시작 정책과 종료 이력
- cgroup 의
memory.max와memory.peak/memory.current - 컨테이너가 쓰는 네트워크 대역폭
NoNewPrivs: 1 이 걸린 프로세스에서 일어나는 일은?
- 파일시스템에 아무것도 쓸 수 없다
- 네트워크로 나가는 통신을 할 수 없다
- fork 나 clone 으로 자식 프로세스를 만들 수 없다
- 이후 execve 에서 setuid 비트나 파일 capability 로 특권을 얻을 수 없다