클라우드&서버/NCP

클라우드 인프라 기초

JDLee 2022. 6. 2. 09:31

!! 해당 글은 edwith의 NCP 강의를 정리한 글 입니다.

 

 

인프라의 정의

  • IT Infrastructure는 IT 서비스의 기반이 되는 구성요소들의 집합
  • 구성요소로는 서버(컴퓨터), 스위치, 스토리지 와 같은 하드웨어와 운영체제(OS)같은 소프트웨 및 네트워크도 포함

인프라의 역할

  • 기능적 요구사항
    • 시스템이 처리할 일에 대한 내용
  • 비기능적 요구사항
    • 품질 혹은 속성 등에 대한 내용
  • 인프라는 비기능적 요구사항을 만족시키는데 중요한 역할

인프라의 유형

  • 온프레미스
    • 기업이 자체적으로 서버와 네트워크 장비를 구축 및 운영하는 형태
    • Private Cloud도 On-Premise 환경에 속한다.
    • 데이터센터의 관리부터 물리시스템 구축 및 운영까지 관리해야함
  • Public Cloud
    • CSP에서 인프라를 구축하고 운영 및 관리하는 형태
    • 데이터센터를 직접 운영하거나 관리할 필요가 없어 운영하는 서비스에만 집중

Private Cloud와 Public Cloud의 구분 및 차이

  • 인프라가 존재하는 위치와 운영방식, 사용자를 기준으로 나뉘어짐
  • Private Cloud
    • 자체 데이터 센터에서 사내 엔지니어가 인프라를 운용하고 제한된 인원만 사용 가능하도록 만든 클라우드
  • Public Cloud
    • CSP 데이터 센터에서 CSP 엔지니어가 인프라를 운용하고 누구나 사용 가능하도록 만든 클라우드

데이터 센터

  • 데이터센터는 서버, 네트워크 회선 등을 제공하는 건물 혹은 시설
  • 장비들을 정상적으로 가동하기위한 냉각 및 공조 시스템이 존재
  • 장비들은 랙(Rack)에 마운트(mount)되어 운영

Nerocloud

자체 클라우드를 구축하고 싶은 고객들을 위해 제공
  • Rack Type
    • 서버, 스토리지, 네트워크 등 하드웨어 등이 연결된 랙을 고객 데이터 센터에 위치하여 제공
  • Smart Server Farm
    • Rack Type에서 제공되는 하드웨어와 UPS 및 공조 시설까지 네이버 클라우드 데이터 센터에에 위치하여 제공

서버의 구성요소

  • CPU
    • 중앙연산장치로 컴퓨터의 연산을 담당
    • 서버의 성능과 직결되는 중요 요소
    • 클럭 속도와 core 갯수에 따라 사양을 구분
  • Memory
    • CPU에서 처리되는 데이터들을 임시적으로 저장하는 저장소
    • 메모리 공간과 용량을 고려하여 장착 필요
    • 서버 및 CPU에 따라 지원하는 스펙이 상이(DDR 버전)
  • Disk
    • 처리되는 데이터들을 영구정으로 저장하는 저장소
    • HDD와 SSD로 구분
    • RAID를 통해 가용성과 성능 향상이 가능(Raid 0~6)
  • Network Interface Card
    • 네트워크 연결을 위한 인터페이스
    • 네트워크 이중화 혹은 다중화를 통해 가용성 확보
  • IPMI(iLo, iDRAC..)
    • 원격으로 서버를 관리하기 위한 네트워크 인터페이스
    • 서버에 오류가 생겼을 때 직접 데이터 센터를 방문하지 않고 서비스하기 위해 활용
    • IPMI 전용 스위치로 운영됨

베어메탈 서버

  • 인프라 리소스를 보다 안정적으로 사용하고 싶을 때 활용
  • 서버 리소스를 독점적으로 사용할 수 있으며, 다른 클라우드 상품과 연계 가능
  • 주로 게임, 데이터베이스 용도로 활용
  • 서버를 일시중지하더라고 요금이 부과

가상화 서버

  • 인프라 리소스를 효율적으로 사용하고, 운영 비용을 절감하여 사용 가능
  • 일반적으로 일반 VM(HDD, SDD) 등을 제공
  • GPU 서버를 통해 데이터 분석등에 활용 가능
  • 월 요금제, 시간 요금제로 구분되어 제공

네트워크

  • 어원은 그물망(net)을 만드는 일(work)에서 유래되었다.
  • IT에서 네트워크는 장비들을 서로 통신하게 만드는 망을 만드는 것

OSI 7계층

  • 국제표준화기구(ISO)가 발표한 모델
  • 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 구분
  • 신뢰성 있고, 원활한 통신을 수행하기 위한 통신규약
  • 모든 컴퓨터 및 네트워크 장치는 OSI 참조 모델을 참고
  • 최근 TCP/IP 4계층의 간단한 모델을 활용하기도 한다.
  • Application
    • 브라우저, 메신저 등 소통하기 위한 어플리케이션
  • Presentation
    • 인코딩, 압축, 암호화, 복호화 등을 담당
  • Session
    • 다른 서버와 통신을 하기위한 세션을 관리
    • 어플리케이션간 연결, 품질 확인
  • Transport
    • 데이터를 전송하는 것을 조율하는 계층
    • 속도, 용량, 목적지 등을 관리
    • 포트 번호를 관리하여 서비스 별로 로드밸런싱 가능
  • Network
    • 패킷을 라우팅하는 계층
    • IP를 활용해 라우터간 열결하여 패킷이 가야할 길을 안내
  • Data Link
    • Mac 주소를 기반으로 통신
  • Physical
    • 통신을 위한 전기적 신호를 관리
    • 주로 랜선을 통해 연결

Local Area Network(LAN)

  • 특정 공간이나 범위 내에 존재하는 독립된 네트워크
  • 이더넷(Ethernet)을 표준규격으로 활용

Cable

  • 실제 서버와 네트워크장비를 연결하는데 사용하는 cable
  • UTP Cable
    • 일반적으로 활용하는 랜선 일반적으로 근거리의 1Gbps 속도로 활용한다.
    • 케이블 종류에 따라 10Gbps까지 지원
  • Fiber-Optic Cable
    • 광케이블이라고 부르며 원거리에 고속통신을 안정적으로 할 떄 활용
    • 설치시 어두운 곳에서 볼 때 불빛이 보이는 곳이 송신 부분, 보이지 않는 부분이 수신 부분에 설치 되어야 한다.

IP와 MAC주소

  • MAC주소
    • 전 세계에서 유일한 하드웨어 물리적 주소
    • 제조업체에서 장비를 제작 시 할당
    • 변경할 수 없는 주소
  • IP 주소
    • 네트워크 연결을 위해 제공되는 논리적 주소
    • IP를 할당하는 주체에 따라 주소가 가변적으로 변경
    • 실제 기기 통신시에는 IP주소를 MAC주소로 변경하여 통신(ARP)

IP 주소의 구조

  • 이진수 32자리로 구성 된 IP를 8자리씩 10진수로 변환하여 활용
  • 공인 IP
    • 인터넷 상에서 디바이스들이 서로를 인식하고 통신이 가능한 고유의 주소
    • 공인 IP 주소의 갯수는 유한하며, 돈을 주고 구매해야 하는 유료
    • IP 갯수의 제약을 벗어나기 위해서 NAT를 활용하여 사설 IP 활용
  • 사설 IP
    • 일반 가정이나 회사 등에 할당관 가상 IP
    • 외부와 통신하기위해 라우터의 공인 IP와 매핑되어야 함(NAT)

통신 방법의 구분

  • 유니캐스트(Unicast)
    • 1 댸 1 통신 방식으로 특정 목적지로만 프레임을 전달
    • 패킷에 적혀있는 MAC 주소와 목적지의 MAC 주소가 맞아야지만 전달
  • 브로드캐스트(Broadcast)
    • 같은 네트워크 대역의 모든 장비에 보내는 통신
    • 타겟 주소와 수신자 주소가 일치하지 않아도 패킷을 전달
  • 멀티캐스트(Multicast)
    • 특정 드굷에 속한 장비 여럿에 메세지 전달
    • 수신대상자가 아닌 장비의 CPU에 Interrupt를 발생시키고 싶지 않을 때 사용

네트워크의 구분

  • 내트워크가 같은지 다른지 구분하는 기준은 서브넷(Subnet)이 같은지에 따라 구분

서브네팅

  • 하나의 네트워크를 여러 대역으로 분할 하는 것
  • IP 낭비를 줄이고, IP 대역을 효율적으로 사용하기 위해 활용
  • 네트워크를 용도 별로 분리하여 보안을 강화
  • 네트워크 범위를 나누기 위해 서브넷 마스크를 활용하여 서브네팅팅

스위치

    • 여러 장치를 연결하여 하나의 네트워크를 구성
    • 네트워크 계층에 따라 L2 스위치, L3 스위치, L4스위치 라고 부르기도 하며 다양한 역할을 수행

      • 통신을 위한 경로 결정 역할과 스위칭 기능을 제공
      • 스위치가 발전하면서 L3 스위치 에서도 라우팅 기능을 제공하여 라우터와 L3 스위치를 구분하지 않고 호칭

  • 라우터(L3 Switch)

네트워크 가상화

  • 클라우드 환경에서 사용자들에게 동적으로 독립적인 가상 네트워크 공간을 제공하기 위한 기술
  • 네트워크 환경 뿐만 아니라 로드 밸런싱, 라우팅, 방화벽 역할도 함께 제공
  • 하드웨어로만 구축 가능했던 네트워크 기술을 소프트 웨어로 구축하면서 자원을 효율적으로 활용
  • VLAN과 같은 기술을 통해 한 대의 스위치를 통해 분리된 여러 대의 스위치처럼 활용 가능
  • VXLAN의 기술로 확장성과 유연성을 더해 물리적 제약을 넘어서 서비스 제공
  • VXLAN을 통해 SDN,NFV 같은 기술을 실현

네이버 클라우드 플랫폼의 VPC 및 Subnet

  • 클라우드 상에서 논리적이고 격리된 고객 전용 네트워크
  • VPC를 통해 나만의 네트워크 공간을 구축하고, Subnet을 통해 IP 대역을 세분화

네이버 클라우드 플랫폼 Load Balancer

  • 네트워크 트래픽을 다수의 서버로 분산
  • Application, Network Proxy, Network Load Balancer를 제공

VPN

  • 외부에서 Private 네트워크 망에 가상으로 전용선 처럼 접근하도록 하는 기술
  • IPsec VPN은 site-to-site VPN을 구성할 떄 활용
  • SSL VPN은 인가 받은 클라이언트들이 네트워크 망에 접속할 떄 활용

네이버 클라우드 플랫폼 IPsec VPN

  • 외부에 있는 고객의 네트워크와 네이버 클라우드 플랫폼의 있는 네트워크를 암호화된 터널링 통신으로 연결

네이버 클라우드 플랫폼 SSL VPN

  • 인가받은 사용자들이 SSL VPN을 통해 네이버 클라우드 플랫폼 서버에 접근할 수 있도록 설정

스토리지

  • 컴퓨터에 데이터를 비휘발성으로 저장할 수 있는 저장장치
  • 과거 스토리지의 속도, 안전성에 초첨을 맞춰 왔다면 오늘 날엔 데이터 레이크 등 초 대용량 스토리지 기술이 조명 받음

RAID

  • RAID 0
    • 스트라이핑 기술을 이용하여 데이터 세그먼트들을 분산 기록하는 방법
    • 처리 속도를 높이기 위해 활용
  • RAID 1
    • 미러링 기술을 이용하여 데이테 세그먼트를 복수의 디스크에 실시간으로 복제
    • 데이터 손실 방지를 위해 활용
  • RAID 5
    • 패리티라는 데이터 복구 기술을 활용하여 데이터 손실 복구
    • 디스크 개수가 많을 떄엔 Parity 연산 오류로 인해 RAID가 꺠질 수 잇음
  • RAID 6
    • 데이터 별로 패리티를 2개씩 구성하여 데이터 손실 복구 가능성을 높은 RAID
    • RAID 5에 비해 디스크가 1개 더 필요하므로 자원 손실
  • RAID 10
    • RAID 1 과 RAID 0을 중첩하여 사용하는 레이드 방식
    • 하위는 RAID 1로 상위는 RAID 2로 구성
  • Hot Spare
    • 기존에 구성된 RAID에 디스크 1개를 추가로 장착하여 디스크가 망가진 경우 대체하도록 하는 기술
    • Hot Spare를 새로운 디스크로 복구하는 작업을 copyback 이라고 한다.
  • Rebuilding
    • 디스크 교체하는 일련의 과정
  • JBOD
    • 단순히 물리적인 디스크 여러개를 모아서 하나의 큰 하드 디스크처럼 보이도록 하는 기술
    • RAID 기술과는 다르게 데이터를 분산저장하지 않으므로 I/O 분산이 불가능하여 성능적으로는 좋지 않다.
    • 대신 디스크 1개가 망가질 겨우 해당 디스크에 저장된 데이터만 손실된다

전통적인 스토리지

  • DAS
    • 데스크탑에 직접 연결하는 스토리지
    • 접근 속도가 빠른 장점을 가지고 있다.
    • 연결된 서버만 접근할 수 있고, 용량을 늘리는데 한계가 있다.
  • NAS
    • 스토리지가 LAN에의해 연결된 스토리지
    • 다수가 스토리지에 접근 할 때 유용한 스토리지
  • SAN
    • 여러 스토리지를 하나로 묶어 스위치로 연결한 고속 네트워크 기반 스토리지
    • 비용이 높아 도입에 어려움이 있음

데이터 저장 방식

  • 파일 스토리지
    • 중첩된 계층 구조를 갖는 스토리지
    • 가장 흔이 볼 수 있는 형태
    • 데이터는 특정 디렉토리 안에 단일 정보로 저장
    • 이해하기 쉽고 편리한 인터페이스 제공
    • 경로가 길어질수록 비효율적
  • 블록 스토리지
    • 하나의 데이터를 고유의 식별자를 가진 블록 형식으로 쪼개서 저장
    • 파일 스토리지 대비 데이터에 효율적으로 접근 가능
    • 비용 문제와 메타데이터 관리 기능이 어려운 문제가 있음
  • 오브젝트 스토리지
    • 비정형 데이터 저장에 가장 적합한 스토리지
    • 클라우드에서 자주 사용되는 저장 박식으로 데이터를 객체 단위로 관리 및 조작
    • 객체는 실제 대상 데이터와 그 데이터의 메타데이터의 조합(key-value 조합)
  • Software Defined Storage
    • 하드웨어에 대한 소프트웨어 종속성을 제거하여 일반 x86서버에서 동작하도록 하는 기술
  • HCI(Hyper-Converged Infrastructure)
    • 컴퓨팅, 스토리지, 네트워킹 하이파이저를 비롯한 가상화 기술을 하나로 묶은 것
    • 스토리지 컨트롤러와 서버의 균등한 스케일링이 어려워 스토리지 병목구간 발생
    • 이를 해결하기 위해 서버에 내장된 디스크를 이용하여 Storage Pool을 구성하여 손쉽게 스케일링
  • 데이터 중복제거(De-Duplication)
    • 데이터 중복제거, 디둡이라고도 불린다
    • 대용량 데이터를 저장해야 하는 상황에서 활용
    • 스토리지 저장공간 및 백업 시간 단축 가능

네이터 클라우드 플랫폼 스토리지 상품

  • Block Storage
    • 서버에 할당하여 사용하는 스토리지
    • HDD, SSD 타입 중 선택하여 생성 가능
    • 내부적으로 이중화되어 안전한 환경 제공
    • 서버 한대당 최대 16대의 스토리지 부착 가능 <

Object Storage와 Archive Storage

  • 사용량에 따라 데이터 저장위치를 바꿔 비용을 절감

NAS

  • NCP 환경에서 다수의 서버들이 공통의 스토리지를 접근할 때 활용
  • 스냅샷 기능을 이용해 데이터 손실 위험 방지

Backup

  • 운영하는 서비스의 데이터를 가장 안전하게 보관할 수 있는 방법
  • 전문 인력이 고객의 백업 업무를 대행하여 안전하게 데이터를 백업
  • 최대 52주까지 백업 데이터 보관 가능
  • Zone을 달리하는 소산 백업 지원
  • 마켓플레이스 백업 솔루션 활용

NCP의 리전(국가단위)

  • 10개 지역에 글로벌 데이터센터 운영 중
  • 글로벌 리전들 간에는 전용선 연결로 사설 통신 제공
  • NCloud 운영 국내 4개 IDC 중 2개 IDC에서 NCP 서비스 운영 중
  • 민간, 공공, 금융 클라우드 존으로 나누어 서비스 중

NCP의 Avilability-zone

  • 리전 내 물리적으로 분리되어 있는 데이터센터 및 네트워크로 구성되어 있는 지점
  • 각 존들은 전용회선을 통해 사설 통신
  • 사용자는 서비스 가용성 및 연속성을 위해 복수개의 존에 걸쳐 서비스를 설계 및 배포

NCP에서 인프라 구축시 고려사항

  • 가용성
    • 이중화 구성을 통한 시스템 중단없이 계속 서비스가 가능하도록 구성
  • 성능
    • 시스템상의 요구사항을 충족하고 서비스의 수요에 맞춰 인프라를 효율적으로 운영하도록 구성
    • 적절한 용량 선정, 사전 테스트, 지속적인 모니터링을 고려하여 구축
  • 신뢰성
    • 백업 정책에 맞춰 주기, 방법, 소산백업 여부 등을 수립 및 수행
    • NCP가 책임지는 영역과 고객이 책임지는 영역을 구분하여 보안정책을 고려하여 인프라 구축
  • 확장성
    • 오토스케일링 기능을 통해 설정에 따라 서버 수를 자동으로 증가 또는 감소시켜 안정적인 서비스 유지
    • Alarm 방식을 통해 임계점 설정에 따른 오토스케일링 수행
    • On-demand 방식을 통해 필요할 때만 증가 시켜 서버운영 비용을 효율적으로 관리
    • scheduling 방식을 통해 주기적으로 오토 스케일링 가능
  • 관리성
    • 클라우드 서비스에 대한 지속상태를 확인하기 위한 모니터링 체계를 구축
    • 문제나 장애 발생시 예방 혹은 빠른 초치를 통해 서비스 가용성을 유지, 개선
  • 비용
    • 사용한 만큼 과금되는 구조로서 과금 구조를 정확하게 파악하고 장기 할인 플랜 등 요금을 절약할 수 잇는 방안 탐색