서버 세팅 & tool/docker
docker, kubernetes, container, vm
방푸린
2022. 8. 23. 14:31
반응형
docker vs kubernetes
docker 도커
- 도커는 환경이 다른 곳에도 같은 환경을 유지할 수 있도록 하는 기술(개발환경과 배포 환경을 동일하게 관리할 수 있음)
- 1 docker - n isolated containers; 하나의 같은 서버에서 각기 다른 환경의 컨테이너를 설정 가능
- 원하는 환경을 파일에 저장하면 도커는 어떤 머신에든 해당 환경을 simulate 해줌
- 이런 환경들은 각기 독립적으로 존재, 어떠한 환경이든 모듈식으로 관리 가능
- dockerfile(컨테이너를 어떻게 만들어야 하는지 설명서) -> image 생성(세팅 포함; 스냅샷; 변경 불가 불변) -> 컨테이너로 배포(고립된 환경 안에서 실행)
- 로컬 pc에서 이미지를 PUSH -> container registry에 저장되고 -> 이걸 서버에서 PULL받아서 실행(서버에도 도커와 같이 container engine 설치되어 있어야)
kubernetes 쿠버네티스
- 여러 컨테이너가 있을 때 편하게 관리하게 할 수 있는 도구
- 어떻게 운영할지 자원으로 정의
- 자동 확장/축소/zero time patch/모니터링/로드밸런싱 등 제공
container vs vm
vm 가상서버 | container | |
size | 거대한 이미지 사이즈 재사용성 낮음 |
작은 이미지 사이즈 레이어 개념으로 이미지에 파일을 추가/삭제하여 관리 레이어 사이즈를 최적화하여 이미지 사이즈를 최소화 |
starting time | 느린 부팅시간 hypervisor -os -middleware- 애플리케이션 실행되어야 함 |
빠른 시작 시간 os 부팅이 필요없기 때문에(host os 공유) 부팅 시간 최소화(프로세스 시작) |
env | vm간 환경 불일치 vm생성 후 개별로 변경사항을 관리하기 때문에 vm 간 구성이나 환경이 불일치 |
높은 이동성 애플리케이션에 필요한 라이브러리나 의존파일을 이미지에 포함하기 때문에 환경에 의한 문제가 거의 없음 |
수동확장/수동복구 | 자동확장/자동복구 |
728x90
반응형