728x90
01. 컨테이너화란 무엇인가
- 애플리케이션의 코드를 모든 인프라에서 실행하는 데 필요한 모든 파일 및 라이브러리와 함께 번들로 제공하는 소프트웨어 배포 프로세스
- 컨테이너화를 사용하면 모든 유형의 디바이스 및 운영 체제에서 실행되는 단일 소프트웨어 패키지 또는 컨테이너를 만들 수 있다.
02. 컨테이너화의 이점은 무엇인가
02-01. 이동성
- 소프트웨어 개발자는 컨테이너화를 사용하여 프로그램 코드를 다시 작성하지 않고도 여러 환경에 애플이케이션을 배포한다.
02-02. 확장성
- 컨테이너는 효율적으로 실행되는 경량 소프트웨어 구성 요소이다.
- 소프트웨어 개발자는 단일 시스템에서 서로 다른 애플리케이션에 대한 여러 컨테이너를 쉽게 추가할 수 있다.
- 컨테이너 클러스터는 동일한 공유 운영 체제의 컴퓨팅 리소스를 사용하지만 한 컨테이너는 다른 컨테이너의 작업을 방해하지 않는다.
02-03. 내결함성
- 여러 컨테이너를 사용하여 클라우드에서 마이크로서비스를 실행한다.
- 컨테이너식 마이크로서비스는 격리된 사용자 공가넹서 작동하기 때문에 결함이 있는 단일 컨테이너가 다른 컨테이너에 영향을 주지 않는다.
- 애플리케이션의 복원력과 가용성이 향상된다.
02-04. 민첩성
- 컨테이너식 애플리케이션은 격리된 컴퓨팅 환경에서 실행된다.
- 소프트웨어 개발자는 운영체제, 하드웨어 또는 기타 애플리케이션 서비스를 방해하지 않고 애플리케이션 코드를 변경하고 문제를 해결할 수 있다.
- 소프트웨어 릴리스 주기를 단축하고 컨테이너 모델을 사용하여 신속하게 업데이트 작업을 수행할 수 있다.
03. 컨테이너 오케스트레이션이란 무엇인가
- 컨테이너 오케스트레이션은 컨테이너를 자동으로 관리할 수 있는 소프트웨어 기술이다.
- 애플리케이션이 각각의 컨테이너에 수천 개의 마이크로서비스를 포함할 수 있기 때문에 자동으로 관리할 필요가 있다.
04. 컨테이너 기술 유형으로 무엇이 있나
04-01. Docker
- Docker 또는 Docker Engine은 소프트웨어 개발자가 다양한 플랫폼에서 컨테이너식 애플리케이션을 빌드, 배포 및 테스트할 수 있는 인기 있는 오픈 소스 컨테이너 런타임이다.
04-02. Linux
- Linux는 컨테이너 기술이 내장된 오픈 소스 운영 체제이다.
- Linux 컨테이너는 단일 호스트 시스템에서 여러 LInux 기반 애플리케이션을 실행할 수 있는 자체 포함 환경이다.
04-03. Kubernetes
- Kubernetes는 소프트웨어 개발자가 방대한 수의 마이크로서비스를 배포, 조정 및 관리하는 데 사용하는 인기 오픈 소스 컨테이너 오케스트레이터이다.
05. 클라우드 네이티브란 무엇인가
- 클라우드에서 애플리케이션을 빌드, 테스트 및 배포하는 소프트웨어 개발 방법이다.
- 애플리케이션이 클라우드 컴퓨팅 환경에서 생성되고 상주함을 의미한다.
- 확장성이 뛰어나고 탄력적이며 유연하기 때문에 클라우드 네이티브 애플리케이션을 빌드한다.
06. 컨테이너화와 클라우드 네이티브 비교
- 클라우드 네이티브 애플리케이션 개발에는 기존의 모놀리식 애플리케이션과는 다른 기술과 접근 방식이 필요하다.
- 컨테이너화는 개발자가 클라우드 네이티브 애플리케이션을 빌드할 수 있게 하는 기술 중 하나이다.
- 서비스 메시, API 등의 다른 클라우드 네이티브 기술과 함께 작동하여 마이크로서비스가 클라우드 네이티브 애플리케이션에서 일관되게 작동할 수 있게 한다.
aws의 <컨테이너화란 무엇인가요?> 를 읽고 평소 궁금했던 내용을 정리한 글 입니다.
아래는 링크입니다 :)
https://aws.amazon.com/ko/what-is/containerization/
'Cloud > Docker' 카테고리의 다른 글
[Docker] NGINX Webserver 구축 (4) | 2023.12.03 |
---|