GCP Cloud Engineer - 16
2024-04-14
- Cloud
- GCP
Introduction to containers
-
ㅇ Containers vs. Virtual Machines (VMs): Containers
provide an isolated environment
forcode and its dependencies
, utilizinglimited access
tofile system and hardware resources
,unlike VMs
which virtualize hardware for each instance. -
ㅇ Flexibility and Speed: Containers are
lightweight
, requiring onlya few system calls to create
andstart as quickly
as a process. Thisoffers flexibility similar to
Infrastructure as a Service(IaaS)
butwith the scalability
of Platform as a Service(PaaS)
. -
ㅇ System Requirements:
Each host needs an OS kernel
that supportscontainers
and acontainer runtime
to deploy
containers. -
ㅇ OS Virtualization: In containers, the
OS is virtualized
, making theapplication highly portable
acrossdifferent environments
without needing changes or rebuilds
. -
ㅇ Scalability: Containers can
scale up quickly
, allowing forrapid deployment of multiple instances on a single host
based on application demand. -
ㅇ Microservices Architecture: Containers are
ideal for building
applications asmicroservices
, which aremodular, easily deployable, and scalable
acrossmultiple hosts
. -
ㅇ Dynamic Resource Management: Hosts can
dynamically scale up or down and manage container lifecycles
based on application demand or host availability.
Container 소개
-
ㅇ 컨테이너 대 가상 머신 (VM): 컨테이너는 코드와 그 종속성을 위한 격리된 환경을 제공하며, 각 인스턴스마다 하드웨어를 가상화하는 VM과 달리 파일 시스템 및 하드웨어 자원에 대한 접근을 제한합니다.
-
ㅇ 유연성 및 속도: 컨테이너는 가벼우며 생성 및 시작이 프로세스처럼 빠르게 이루어집니다. 이는 인프라로서의 서비스(IaaS)와 같은 유연성을 제공하지만 플랫폼으로서의 서비스(PaaS)의 확장성을 갖추고 있습니다.
-
ㅇ 시스템 요구 사항: 각 호스트는 컨테이너를 배포하기 위해 컨테이너를 지원하는 OS 커널과 컨테이너 런타임이 필요합니다.
-
ㅇ OS 가상화: 컨테이너에서는 OS가 가상화되어, 다양한 환경에서 변경이나 재구축 없이 애플리케이션을 쉽게 이동할 수 있습니다.
-
ㅇ 확장성: 컨테이너는 빠르게 확장할 수 있어, 애플리케이션 수요에 따라 단일 호스트에서 여러 인스턴스를 신속하게 배포할 수 있습니다.
-
ㅇ 마이크로서비스 아키텍처: 컨테이너는 마이크로서비스로 애플리케이션을 구축하기에 이상적이며, 이는 모듈식이며 배포가 쉽고 여러 호스트에 걸쳐 독립적으로 확장 가능합니다.
-
ㅇ 동적 자원 관리: 호스트는 애플리케이션 수요 또는 호스트 가용성에 따라 동적으로 확장하거나 축소하고 컨테이너 수명 주기를 관리할 수 있습니다.
모르는 단어
OS kernel
운영 체제의 핵심 부분인 OS 커널은 시스템의 모든 다른 부분과 하드웨어 간의 통신을 관리합니다.
커널은 하드웨어와 소프트웨어 간의 인터페이스 역할을 하며, 시스템 리소스를 관리하고, 프로세스와 메모리 관리를 담당하며, 하드웨어 장치를 제어합니다.
커널은 일반적으로 프로세스 스케줄링, 메모리 관리, 파일 시스템 관리, 네트워크 관리, 디바이스 드라이버 관리 등의 기능을 수행합니다. 이러한 기능을 통해 커널은 사용자와 응용 프로그램이 하드웨어 리소스를 안전하고 효율적으로 사용할 수 있도록 합니다.
GCP Cloud ...
GCP Cloud ...