728x90
- 도커(Docker)
- 컨테이너 기술을 지원하는 다양한 프로젝트 중에 하나
- 컨테이너 기술은 이전에도 있었으나 도커로 인해 알려짐
- 컨테이너 기술의 사실상 표준
- 2014 가장 인기있는 클라우드 오픈 소스 2위(리눅스 재단 발표)
- 다양한 운영체제에서 사용 가능(리눅스, 윈도우, MacOS)
- 애플리케이션에 국한되지 않고 의존성 및 파일 시스템까지 패키징하여 빌드, 배포, 실행을 단순화
- 리눅스의 네임 스페이스와 cgroups와 같은 커널 기능을 사용하여 가상화
- 마이크로서비스 아키텍처
- 모놀리식 라이프 사이클과 마이크로 서비스 사이클 비교
- 마이크로서비스 장점
- 서비스 단위 고효율 저비용 Scale-Out 구조
- 서비스 단위로 스케일링이 가능하여 불필요한 서비스는 줄이고 더 많은 자원이 필요한 서비스는 확장 가능
- 라이브러리 종속성 고민 끝
- 서비스 단위 고효율 저비용 Scale-Out 구조
- 이미지, 컨테이너, 도커와 쿠버네티스
- 컨테이너가 해결한다!
- 컨테이너는 가상머신을 사용해 각 마이크로 서비스를 격리(isolate)하는 기술
- 컨테이너는 가상머신처럼 하드웨어를 전부 구현하지 않기 때문에 매우 빠른 실행 가능
- 프로세스의 문제가 발생할 경우 컨테이너 전체를 조정해야 하기 때문에 컨테이너에 하나의 프로세스를 실행하도록 하는것이 좋다. (브라우저와 비슷)
- VM과 컨테이너의 실행 시 CPU 사용량 비교
- 컨테이너를 격리하는 기술
- 리눅스 네임 스페이스 : 각 프로세스가 파일 시스템 마운트, 네트워크, 유저(uid), 호스트 네임(uts) 등에 대해 시스템에 독립 뷰를 제공
- 리눅스 컨트롤 그룹: 프로세스로 소비할 수 있는 리소스양(CPU, 메모리, I/O, 네트워크 대역대, device노드등)을 제한
320x100
'모의해킹 > 도커 활용' 카테고리의 다른 글
도커 환경의 로그 및 이미지 관리 (0) | 2021.10.28 |
---|---|
도커 파일 활용하기 (0) | 2021.10.28 |
도커 컨테이너 환경 구축 (0) | 2021.10.20 |
도커 컨테이너 활용법 이론 (0) | 2021.10.20 |