반응형
- Immutable Infrastruture?
- Docker Image Layer.
- Union mount?
- CoW?
Immutable Infrastructure란? (불변 인프라)
- 한번 설정하고 변경하지 않는 이미지 기반의 애플리케이션 배포 패러다임을 뜻함.
- 호스트 OS와 서비스 운영 환경(서버 프로그램, 소스코드, 컴파일된 바이너리)들을 분리하여 한번 설정한 서버 환경은 변경하지 않는다.
- 서비스 운영환경을 이미지로 생성한 뒤 서버에 배포하여 실행하며, 서비스가 업데이트 되면 운영환경 자체를 변경하지 않고 이미지를 새로 생성하여 배포한다.
- 서비스 운영환경 이미지를 한번 쓰고 버리는 패러다임이다.
Docker Image
- Immutable image.
- Docker Image는 파일 시스템들의 layer로 구성된다.
- 하나 하나의 파일 시스템은 Image로, Image Layer 위에 Image Layer가 있는 구조로 되어있다. (계층 구조)
- 이미지를 이용해서 Docker 컨테이너를 생성하면, 기존의 모든 이미지 레이어(File System)이 read-only로 mount가 되고, 마지막으로 read-write 파일 시스템을 맨 위에 mount 한다.
여기서 한개의 파일 시스템이 아닌, n개의 파
일 시스템을 마운트 하는데, 이때, Union-Mount 기술이 사용된다.
Union Mount
- 복수의 파일 시스템을 하나의 파일 시스템으로 마운트 하는 기법.
- Docker Image는 Union mount File System으로, 오버레이되는 복수의 레이어로 구현된다.
- Cow(Copy on write)전략에 의해 쓰기 작업은 가장 최상위 레이어로 복사해서 이루어진다.
- 이러한 이유로 하나의 이미지로부터 여러 컨테이너가 생성되어 실행돼도 문제가 없는 것. (쓰기 작업은 가장 최상위 Read-Write Layer에서 이루어지고, 하단의 Image layer는 read-only로 Immutable 함)
반응형
'DevOps & SRE > Docker & kubernetes' 카테고리의 다른 글
[쿠버네티스 공부] Controller는 어떤 역할을 할까? (0) | 2021.02.11 |
---|---|
[쿠버네티스 공부] Volume의 종류 (0) | 2021.02.11 |
[쿠버네티스 공부] Service란 무엇일까? (0) | 2021.02.10 |
[쿠버네티스 공부] Pod란 무엇일까? (0) | 2021.02.10 |
[Docker] VM vs Container (0) | 2020.08.03 |