1. 클라우드 개념 및 종류
- 클라우드 : IT인프라 자원을 직접 보유해서 사용하는 것(=온프레미스)이 아닌, 다른 기업의 IT인프라 자원을 빌려서 쓰는 것
- 클라우드 비용 : 자원을 빌려 쓴 것 만큼의 사용료를 월 과금 형태로 지불
- 호스팅 vs 서버 호스팅 vs 클라우드
- 호스팅 : 하드웨어로 된 서버의 특정 자원을 빌려씀 → 다른 업체랑 서버 하나를 나눠서 쓰게 될 수도 있음. 서버에 장애가 발생하면 두 업체 모두 서버 못 쓰는 거
- 서버 호스팅 : 하드웨어로 된 서버 하나 자체를 빌려씀
- 특징 : 자워 변경(확장 혹은 축소)시 OS 설치 등 세팅 시간이 필요함, 빠른 대응이 어려움
- 클라우드 : 호스팅 + 서버 호스팅, 두 가지 자유롭게 바꿔서 쓸 수도 있고 혼합도 가능
- 특징 : 자원 변경시 유연하게 원하는 만큼 빠르게 변경 가능 (Elastic)
- 종류
- IaaS : Infra as s Service → 하드웨어 서버만 빌려씀
- PaaS : Platform as a Service → 서버, OS까지 빌려씀
- SaaS : Software as a Service → 서버, OS, Application 까지 빌려씀
- ex) DB를 PaaS로 사용 → DB가 돌아가는 OS환경, DB까지 설치해서 빌려씀
- SaaS의 경우 Application을 입맛대로 수정해서 쓸 수 없음
- IaaS : AWS, Azure(MS), GCP, NCP, KT CLoud, NHN Cloud
- PaaS : AWS Elastic Beanstalk, Azure SQL DB, Google BigQuery 등
- SaaS : Microsoft 365, Google Workspace, Adobe CC, Zoom, Groupware, Naver Works 등
2. 클라우드 형태
- 퍼블릭 클라우드 : 다른 기업의 IT인프라를 빌려다 씀
- 프라이빗 클라우드 : 기업이 보유한 IT인프라를 클라우드 서비스처럼 기업 내에서 활용
- ex) VMware, Nutanix, Red Hat
- 하이브리드 클라우드 : 프라이빗 클라우드 + 퍼블릭 클라우드
- 프라이빗 : 임직원들만 쓰는 클라우드, DB같은 중요한 애플리케이션 운영
- 퍼블릭 : 그룹웨어 등 대외적으로 서비스할때 사용되는 클라우드
- 멀티 클라우드 : 퍼블릭 클라우드 + 퍼블릭 클라우드 (퍼블릭 클라우드끼리 붙여놓은 것)
- 예를 들어 aws와 azure 를 사용중이라고 했을 때, aws에서 장애가 발생해도 나머지 azure로 애플리케이션이 원활하게 돌아가게 하기위해 똑같은 서버를 하나 더 구비해놓는 것
3. 클라우드 기술 및 용어
- 컨테이너: Container, 리눅스 기반 애플리케이션 운영을 위한 프로세스 격리 기술
- 컨테이너 런타임 : Container Runtime, 컨테이너를 다루는 도구
- 도커 : Docker, 컨테이너 기술을 누구나 쉽게 사용할 수 있도록 만든 컨테이너 런타임 중 가장 유명한 오픈소스 프로젝트
- 서버가상화(가상머신) : 가상머신 위에 OS올리고 Application 올림 → OS단위로 격리
- 컨테이너 : 하나의 OS 위에 여러개의 컨테이너 올림 → 컨테이너 단위로 격리
- 가상머신이 메모리를 더 많이 차지함
- 쿠버네티스 : 다수의 컨테이너를 효율적으로 운영, 관리하기 위해 구글에서 만든 도구
- 구글이 오픈소스로 공개, 현재 기업 환경에 맞는 유료 서비스가 다수 존재(EKS, AKS, GKE 등)
- 파드(Pod) : 컨테이너들의 모음
- 노드(Node) : 파드가 운영되는 물리서버 또는 가상머신, 워커 노드라고 부름. (=파드들의 모음)
- 클러스터(Cluster) : 노드들의 모음
- 마스터(Master) : 클러스트들의 모음(하위의 모든 것들을 관리하는 노드)
Kubernetes Architecture
쿠버네티스 계층 구조 시각화
Master
⚙ 전체 클러스터를 관리·제어하는 컨트롤 플레인
Cluster 1
Cluster
📦 노드(Node)들의 모음
Worker Node 1
🖥 물리 서버 / 가상머신
Pod A
컨테이너 모음
nginx
log-agent
Pod B
컨테이너 모음
api-server
Worker Node 2
🖥 물리 서버 / 가상머신
Pod C
컨테이너 모음
db-main
db-backup
Cluster 2
Cluster
📦 노드(Node)들의 모음
Worker Node 3
🖥 물리 서버 / 가상머신
Pod D
컨테이너 모음
frontend
Worker Node 4
🖥 물리 서버 / 가상머신
Pod E
컨테이너 모음
cache
session
Container
실제 앱이 실행되는 최소 단위
Pod (파드)
컨테이너 묶음. IP 공유
Node (노드)
파드가 동작하는 서버
Cluster (클러스터)
노드들의 집합
Master (마스터)
전체를 관리하는 컨트롤 플레인
클로드한테 시각자료 부탁함...
'공부' 카테고리의 다른 글
| [IT 인프라] 서버와 클라이언트, 서버의 역할 및 종류 (0) | 2026.04.20 |
|---|---|
| [컴퓨터구조] 프로세스, 프로세스 제어 블록(PCB, Process Control Block) (0) | 2026.03.18 |
| Node.js 와 Nest.js (1) | 2026.03.17 |
| [PostgreSQL] 아키텍처 및 쿼리 워크플로우 (0) | 2026.03.10 |