본문 바로가기
클라우드

[클라우드] 기초 지식

by 클레어몬트 2025. 2. 9.

https://claremont.tistory.com/entry/%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B5%AC%EC%A1%B0-%EC%B6%94%EA%B0%80%EC%A7%80%EC%8B%9D2-SMP-%ED%81%B4%EB%9F%AC%EC%8A%A4%ED%84%B0-NUMA-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EC%BB%B4%ED%93%A8%ED%8C%85

 

[컴퓨터 구조] 추가지식2) SMP, 클러스터, NUMA, 클라우드 컴퓨팅

[병렬 프로세서 시스템의 유형]- 단일 명령어 + 단일 데이터 스트림: SISD(Single Instruction Single Data) - 단일 프로세서- 단일 명령어 + 다중 데이터 스트림: SIMD(Single Instruction Multiple Data) - 벡터, 배열 프

claremont.tistory.com

 

 

 

 

ㅁ클라우드(Cloud): 어디서나 접속 가능하고, 편리하며, 온디맨드 방식으로 신속하고 간편하게 검증 및 배포된 공유 컴퓨팅 자원에 접근할 수 있는 컴퓨팅

쉽게 말해서, 클라우드란 구름처럼 어딘가에 있는 IT 서비스를 요청만 하면 "어디서든 접속해서 사용할 수 있는 서비스"를 의미한다

모든 서비스는 클라우드를 통해 서비스되고 있다. 특히, AI 시대에는 더욱 더 가속화되고 있다.

 

클라우드 핵심 특성: "장애를 기능으로 전환"

IT 인프라 장애 발생 시에도 서비스 중단 없이 운영할 수 있도록 설계한 장애 복구 기능이다.

+ 서비스의 가용성은 SLA(Service Level Agreement)를 통해 수치화할 수 있다.


예를 들어, SLA 99.9%를 목표로 한다면 이는 전체 시간의 99.9% 동안 서비스가 정상 동작한다는 의미이다.

- 연간: 8시간 45분 57초

- 일일: 1분 26초

 

 

 

ㅇ인스턴스(Instance): 개별 실행 단위를 표현하는 개념적 표현

e.g. Process, VM, Container, Gateway…

 

ㅇ서비스(Service): 특정 기능을 수행하는 것을 의미하는 개념적 표현 (한 개의 Instance일 수도 있고 여러 개의 Instance일 수 있음)

e.g. 로그인 서비스, 결제 서비스, 알림 서비스

 

ㅇ애플리케이션(Application): 사용자의 특정 목적을 수행하는 소프트웨어 프로그램 (다수의 인스턴스와 서비스 포함)

e.g. 쇼핑몰 애플리케이션, 유튜브 애플리케이션, 엑셀 애플리케이션

 

개념은 이렇지만 실제 사용 시에는 실행 단위를 표현할 때는 인스턴스, 나머지 프로그램을 표현할 때는 서비스와 애플리케이션을 혼용해서 사용한다!

 

"Instance <= Service <= Application"

 

 

 

ㅇ노드(Node): 명시적으로 분리되어 있는 하나의 단위 표현

예시)

- 네크워크 노드: 물리 장비 한대

- AWS Node 그룹: 컴퓨터 여러 대

- 데이터 구조 노드: 명시적으로 분리된 데이터

 

ㅇ클러스터(Cluster): 여러 개의 컴퓨터(또는 노드)를 하나의 시스템처럼 운영하는 구성 방식 - 42서울 클러스터를 생각하자!

클러스터를 사용하면 성능, 확장성, 고가용성(HA, High Availability) 및 부하 분산(Load Balancing)을 효율적으로 관리

 

예시) 클러스터는 다양한 형태로 존재

- 데이터베이스 클러스터(DB Cluster)

- 쿠버네티스 클러스터(EKS Cluster)

- 웹 애플리케이션 서버 클러스터(WAS Cluster)

 

 

 

ㅇ게이트웨이(Gateway): 관문 - 프로토스 게이트웨이를 생각하자!

진입점, 진출점, 프로토콜의 변환, 연결점

 

ㅇ라우터(Router): 연결

네트워크를 연결/확장, 길을 만드는 기능

 

ㅇ로드 밸런서(Load Balancer): 분배

요청 트래픽을 여러 노드에 분배/분산

 

※ Gateway와 Load Balancer는 처음에 다른 의미였지만, Load Balancer가 Smart해 지면서 Gateway와 비슷해지고 있다

"Router < Load Balancer <= Gateway"

 

 

 

ㅁMonolithic Architecture (덩어리)

애플리케이션의 모든 기능이 하나의 통합된 코드베이스와 배포 단위로 구성되는 방식

장점) fast

단점) 시스템 확장성 bad, 유지보수 bad

 

ㅁMSA, Micro Service Architecture (알갱이)

시스템을 여러 개의 독립적인 서비스(알갱이)로 분할하여 각각이 고유의 비즈니스 기능을 담당하는 방식

장점) 시스템 확장성 good, 유지보수 good

단점) slow

 

 

현대의 아키텍처는 대부분 서비스가 커질수록 "MSA 방식"을 채택한다

 

※ OS 커널 아키텍처 관점으로 보자면, Windows 의 방식이 MSA이고 옛날 UNIX / LINUX의 방식이 Monolithic Architecture 이다.

(정확히는 Windows 방식이 하이브리드 커널이다)

현재는 규모가 커지면서, 모두 MSA 방식으로 전환됐다.

https://claremont.tistory.com/entry/%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C-ep1-%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C%EC%9D%98-%ED%81%B0-%EA%B7%B8%EB%A6%BC

 

[운영체제] ep1) 운영체제의 큰 그림

운영체제(Operating System): 실행할 프로그램에 자원을 할당하고, 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램(컴퓨터에서 가장 중요한 프로그램이다)여기서 자원이란 시스템 자원으로

claremont.tistory.com