반응형
1. 개념
- 컨테이너는 생성된 후 life time 동안 변경이 발생해서는 안됨
- 이를 제어하지 않으면 쉘에 접속해 설정을 변경하는 등 의도치않은 행위가 가능해지기 때문이고, 결론적으로 관리자가 컨테이너의 상태를 파악하지 못할 가능성이 발생
- Immutability of Containers의 목적은 궁극적으로 관리자가 모든 컨테이너의 상태를 파악하고 핸들링하기 위함
- 따라서 컨테이너에 변경이 필요한 경우 반드시 기존의 컨테이너를 삭제하고 새로운 컨테이너를 생성해야 함
2. Immutability 적용 방법
- bash / shell 제거
- command 또는 startupProbe 활용
startupProbe:
exec:
command:
- rm
- /bin/bash
- root 파일시스템 read only
- SecurityContexts의 readOnlyRootFilesystem 설정 활용
- init container 활용(임시로 writable하고자 하는 경우)
- non root user 실행
-
- SecurityContexts의 runAsNonRoot 설정 활용
-
3. 참고
반응형
'Kubernetes' 카테고리의 다른 글
Kubernetes Security - AppArmor (1) | 2024.03.16 |
---|---|
Kubernetes Audit Logs 설정 (0) | 2024.03.15 |
Kubernetes Falco 개념 및 설치 (0) | 2024.03.14 |
Kubernetes private docker registry 접근 (0) | 2024.03.09 |
Kubernetes 안전한 Dockerfiles 작성 (0) | 2024.03.09 |