본문 바로가기
Infra

[클라우드] 카테부 - 클라우드 기초

by alphaca202 2024. 7. 3.

클라우드란?

리소스를 제공한다는게 무슨 뜻?

서버를 어떻게 줄 수 있을까?
원하는 서버 스팩 8코어 16기가 -> 이미 있는 8코어 16기가 서버 제공
but 사용자가 원하는 스펙이 다르기 때문에 요구사항에 맞는 서버를 직접 만드는 건 어려움 !

큰 서버에서 사용자가 원하는 만큼의 서버를 또 띄우기
=>가상화

가상화란?

물리적인 자원을 추상화하여 가상 자원을 만들어 관리하는 기술
안드로이드 에뮬레이터 -> 윈도우에서 안드로이드 os 띄우는 것

방법1

가상화 소프트웨어를 띄우는 것   
Virtual Box, VMware 등등  

방법2

하이퍼바이저 가상화(Xen, KVM 등등)  
Para-Virtualization(PV) : OS의 명령어를 하이퍼바이저가 모두 받아들이거나  
Hardware Virtual Machine : 하드웨어...??  

방법3

컨테이너 가상화(Docker)  

AWS는 어떤 가상화?

최근에는 HVM 사용

가상화 종류

  • 서버 가상화
  • 네트워크 가상화
  • 등등

Virtual Machine(VM)

Bare Metal
"통째로 빌려주기"
고성능, 비용이 추가

CPU vs VCPU

vCPU는 가상화 환경에서 물리적 CPU 자원을 추상화한 자원

가상화 기술 기반의 비지니스

클라우드 서비스 (IaaS)

  • 각종 자원들을 가상화하여 서비스 제공
  • 서버 가상화, 네트워크 가상화, 스토리지 가상화 등을 사용플랫폼 기반 서비스 (PaaS)
  • 본인의 애플리케이션을 쉽게 업로드하여 서비스 활용
  • 가상화된 자원을 자동으로 할당받아 애플리케이션이 실행
  • Vercel, Netlify, Cafe24(한국)

솔루션 기반 서비스 (SaaS)

  • 사용자의 니즈가 반영된 애플리케이션이 가상화된 자원을 할당받아 곧바로 서비스가 제공
  • 사용자는 곧바로 서비스를 이용할 수 있음
대부분의 기업은 IaaS를 통해 SaaS를 출시한다.  
\- 대기업 위주  
\- 클라우드 엔지니어는 IaaS를 다루어 SaaS를 개발

클라우드 시장

IaaS를 만든다는 뜻은?  
openStack 등의 솔루션을 통해 각 리소스를 가상화하고 서비스로 만드는 것  
\- 여기에 흥미가 있다면 C/C++/Python 등을 공부하여 openStack을 만져보는 것도 좋음 -> 파일시스템 쪽으로 커리어를 쌓으면 좋음

IaaS 기본 기능

  • Compute
  • Network
  • Storage
  • Container
  • Database
  • Security
  • AI 등등

클라우드 서비스의 기능 어떻게?

자주 사용하는 기능
  • network
  • compute
  • Database
  • Storage

그 외의 기능들

  • Securty를 통해 보안 강화
  • AI를 통해 AI 서비스 붙이기
  • 즉, 이외에는 필요한 것들을 찾아 붙이는 방식

클라우드 아키텍처 그리는게 중요!
- 서비스를 구축할 떄, 클라우드 서비스의 다양한 기능들을 이용하여 인프라 구축 그림을 그리는 것

클라우드 아키텍처를 그리기 위한 필요 배경 지식들
- OS (Operating System)
- 네트워크
- 파일시스템
- VM
- LB (Load Balancer)
-

  1. 기본 클라우드 내 네트워크 세팅
    - Region 먼저 선택
    - VPC(Virtual Private Cloud)를 만들어 네트워크 공간을 만듦
    - Subnet을 통해 가상 네트워크 공간을 한번 더 IP 기준으로 논리적으로 나눔

파일시스템
하드디스크나 SSD
NFS, NBD 스토리지 가상화

VM
- 가상화
- OnDemand 형태
- Spot Instance 70% 할인된 가격으로 사용 가능 : 싼 가격으로 잠깐 쓰고 싶다 할 때 쓰면 좋음

LB
- ???? 무슨???? 뭘알아놓으면 좋다고 했는데 못들었당