23.04.03

이동욱·2023년 8월 6일
0

NaverCloudCamp

목록 보기
34/42

가상화, 클라우드

  • 가상화는 직접 단일한 물리하드웨어에 VM(Virtual Machine)을 적재하여 원하는 os와 application을 설치할 수 있게 하는것이 가상화이다.
  • 클라우드는 위 과정에서 그치는것이 아닌 가상화된 리소스를 네트워크에서 생성, 관리, 유지 할 수 있는 네트워크 환경을 제공한다.

실습

웹사이트에서 서버 생성

  1. VPC(Virtual Private Cloud) 생성
    • server를 생성하기 위해 개인 network를 먼저 생성해야한다.
    • ACG와 NACL을 통해 외부에서 접속가능한 범위와 보내는 범위인 inbound와 outbound를 설정 가능하다.
  2. subnet 생성(할당가능한 ip 범위 지정)
    • subnet 생성을 통해 해당 VPC내에서 ip 주소 범위를 설정 할 수 있다.
  3. init script 생성
    • 서버를 생성 할 시 1회 실행 할 init script를 생성 할 수 있다.
  4. server 생성
    • 서버 생성하기를 통해 cloud server를 생성한다.
    • 생성한 서버는 유사 서버 생성하기, 서버 이미지 생성하기로 추후 별다른 설정 없이 동일한 설정의 서버를 생성 할 수 있다.

생성한 서버에 storage 추가

  1. GUI에서 storage 생성

    • storage종류는 HDD, SSD가 있다.
    • HDD와 달리 SSD는 용량에 따라 입출력 속도인 IOPS(Input/Output Operations Per Second)가 변경된다.
  2. GUI에서 생성된 server에 storage 추가

  3. CLI로 server에 접속하여 추가한 storage를 마운트 한다.

    마운트 과정
    [root@web001 ~]# fdisk /dev/xvdb  
    Welcome to fdisk (util-linux 2.23.2).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
    Device does not contain a recognized partition table
    Building a new DOS disklabel with disk identifier 0xfa5223d0.
    Command (m for help): n
    Partition type:
     p primary (0 primary, 0 extended, 4 free)
     e extended
    Select (default p): p
    Partition number (1-4, default 1): 1
    First sector (2048-20971519, default 2048):
    Using default value 2048
    Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):
    Using default value 20971519
    Partition 1 of type Linux and of size 10 GiB is set
    Command (m for help): w
    The partition table has been altered!
    Calling ioctl() to re-read partition table.
    Syncing disks.
    [root@web001 ~]#

LoadBalance

  1. LoadBalance란
    • client와 server사이에 LoadBalanecer를 추가하여 request를 알맞은 서버로 보내주는 역할
  2. LoadBalancer 방식
    • Application, Network Proxy 방식: client가 LoadBalancer로 request를 전송 -> LoadBalancer에서 알맞은 server로 request를 전송 -> server가 처리 결과를 LoadBalancer로 전송 -> LoadBalancer가 client로 처리결과 전송
    • Network 방식: client가 LoadBalancer로 request를 전송 -> LoadBalancer에서 알맞은 server로 request를 전송 -> server가 처리 결과를 client로 전송
  3. LoadBalancing 알고리즘
    • Round Robin: 요청이 오면 서버에 한개씩 분배하는 방식
    • Source IP Hash: ip table에 정해진 서버로 보내는 방식

Question

Q1. Redis(Remote Dictionary Server)

  • 다른 DataBase와는 달리 메모리에 저장되는 NoSQL DBMS(DataBase Management System)이다.

    DB Server에서 가져오는것이 아닌 메모리에서 데이터를 가져오기에 읽는 속도가 빠르다는 장점이 존재한다.

    메모리에 데이터를 저장하는 것 뿐 아니라 영속성을 보장하기 위해 파일 시스템으로도 저장하는 방법을 제공한다.

Q2. Iaas, PaaS, Saas, AiaaS 차이점 알기

  • IaaS(Infrastructure as a Service): DB, Server, Network등 웹 서비스 구축에 필요한 인프라를 제공하는 cloud service
  • PaaS(Platform as a Service): IaaS에서 발전하여 VM, OS를 제공하는 cloud service
  • Saas(Software as a Service): 완성된 소프트웨어를 cloud service로 제공
  • AIaaS(AI as a Service): 사용자가 직접 AI model을 만들고 학습시키는것이 아닌 cloud를 통해 AI service를 제공하는 cloud service

VM, Container

  • VM: HostOS위에 HiperVisor를 설치 한 뒤 그 위에 VM들을 설치하여 application을 작동시킨다.

  • Container: HostOS 위에 Docker와 같은 Support Files Runtime이 설치되고 Docker 위에 Container를 생성하고 관리한다.

    Container는 이미지로 배포 할 수 있으며 이미지에는 컨테이너에 필요한 모든 라이브러리들이 포함되어있다.

Kubernates

  • ?

GPU, CPU

  • CPU는 명령어가 순차적으로 처리되며 GPU는 명령어가 병렬로 처리된다 따라서 CPU는 정수, 고정소수점 데이터를 처리하는 웹서핑, 문서작업에 적합하여 GPU는 미디어, 그래픽, 3D작업에 적합하다.

IP대역, SubnetMask

  • IPv4 기준으로 IP를 A,B,C,D,E class로 나눈뒤 해당 class의 일정 부분을 사설 IP로 할당하며 사설 IP를 제외한 나머지를 공인IP로 지정한다.

  • subnetmask를 통해 ip를 할당 할 수 있는 호스트수를 구한다

용어정리

BTB(Business To Business)

BTC(Business To Client)

MSA(Micro Services Archtecture)

IDC(Internet Data Center)

DHCP(Dynamic Host Configuration Protocol): ip주소를 연결된 장치에 자동으로 할당해주는 protocol

ocastration: 서비스에 대한 자동화된 설정 관리 체계

NAT(Network Address Translation): 하나의 공인IP주소에 여러개의 사설 IP를 항당하는 방식

HyperVisor: 하나의 기기에서 여러개의 VM(Virtual Machine)을 생성하고 동작하게 해주는 소프트웨어

profile
Backend Developer

0개의 댓글