AmazonWebService

freshness·2024년 7월 31일
post-thumbnail

시스템 기반

어플리케이션을 사용자가 24/365일 이용할 수 있는 환경을 제공하는 기술 요소

  • 주요 구성요소
    • 서버
    • 네트워크
    • UPS
    • 항온항습장치
    • 물리적 보안
    • 재해대책

데이터센터

시스템 기반 환경을 제공하기 위해 구성요소를 제공하는 시설

  • 분류
    • IDC(Internet Data Center)
    • CDC(Cloud Data Center)
  • 유형
    • 장비 임대
    • 클라우드 호스팅

클라우드 컴퓨팅

원격 컴퓨터의 자원을 활용, 사용한 만큼 비용 지불

  • 장점
    • 초기 투자 비용이 없고, 사용한 만큼만 비용 지불
    • 인프라 용량의 정확한 추정이 필요 없음
    • 서비스 구축의 속도 및 민첩성 향상
  • 클라우드 서비스 선택 주의사항
    • 데이터 저장 위치
    • 온프레미스 vs 클라우드 비용 비교
      • 초기 비용 = 클라우드 ↓
      • 유지 비용 = 온프레미스 ↓
    • 범용성이 없는 디바이스 및 특수 플랫폼은 클라우드 이용 불가
  • 서비스 유형
    • IaaS(Infra as a Service)
      • 서버, OS, 네트워크, 저장소 등 인프라 환경 제공
    • PaaS(Platform as a Service)
      • 인프라에 대한 관리는 줄이고 개발에 집중 할 수 있는 소프트웨어 개발 운영 환경 제공
    • SaaS(Software as a Service)
      • 클라우드 벤더가 제공하는 시스템 및 소프트웨어를 직접 사용
      • 인프라, 소프트웨어 구축 시간을 매우 단축

AWS 주요 서비스

컴퓨팅 서비스

  • AWS EC2(Elastic Compute Cloud) - IaaS
    • 다양한 사양의 가상머신(=인스턴스)를 생성해 사용하게 해주는 서비스
    • 특징
      • 1~수천 개까지 확장 가능
      • 모든 리전 사용 가능
      • 사용량에 따른 시간 단위 비용 과금
        • 비용을 절감할 수 있는 비용 모델이 존재(온디맨드, 스팟, 예약)
      • Linux / Window OS 제공 및 직접 소프트웨어 설치 가능
    • 유형별 특징
      • 범용 - 균형 있는 컴퓨팅, 메모리 및 네트워킹 리소스 제공
      • 컴퓨팅 최적화
      • 스토리지 최적화
      • GPU
      • 메모리 최적화
    • EC2 인스턴스 구매 옵션
      • 온 디맨드 - 필요 시 바로 생성 후 사용 하는 방식으로 초 단위 비용 지불
      • 예약 인스턴스 - 1년 ~ 3년 기간에 대해 약정을하고 온디맨드 보다 최대 75% 저렴한 비용 지불
      • 스팟 인스턴스- 경매 방식의 인스턴스로 스펙을 정해 비용을 입찰하고 입찰된 사용자에게 인스턴스 할당
      • 전용 인스턴스 - 고객 전용 하드웨어에서 인스턴스 서비스 제공
    • 보안그룹
      • 인스턴스에 대한 인바운드, 아웃바운드의 네트워크 트래픽 제어 역할을 하는 가상의 방화벽
      • 하나의 EC2 인스턴스 당 최대 5개의 보안그룹 할당
      • 하나의 VPC당 생성할 수 있는 보안그룹의 기본 한도는 500개
      • 하나의 보안그룹 당 추가 할 수 있는 룰은 최대 50개
      • 네트워크 트래픽에 대한 허용 만 가능하며 차단 은 설정 불가
      • 차단 기능을 적용하기 위해서는 VPC의 네트워크 ACL을 통해 서브넷 수준에서 제어 가능
      • default 보안 그룹은 default 보안 그룹 사이의 모든 프로토콜 및 포트에 오픈되어있다.(Private 사용 시)
    • 인스턴스 생성 실습
      • IAM을 통한 계정 생성
        • MFA 등록
      • EC2 인스턴스 생성
        • 키페어, 보안그룹 지정
          • 보안 그룹 룰 추가
        • 인스턴스 시작
        • 인스턴스 중지
        • 인스턴스 종료(Destroy)
    • 로드 밸런싱 실습(Apache HTTP server)
      • 사용 VPC 선정
        • 실습 시 등록하는 모든 요소들의 VPC는 동일한 VPC로 고정
      • 로드 밸런싱할 EC2 서버 생성
        • Public으로 생성
      • EC2 탭에서 대상 그룹을 생성해 로드 밸런싱 대상들을 하나로 묶음
      • 로드밸런서에 대상 그룹을 추가하고 생성
      • 로드밸런서 생성이 완료 되었다면 로드밸런서의 DNS를 통해 웹서버 반응 테스트
        • 로드 밸런서에 등록이 완료된 대상 그룹은 상태 값이 사용 중으로 변경된다.
      • 예외적으로 EC2 서버를 Private로 생성 하고 로드밸런서를 Public으로 구성할 경우
        • 먼저 Public 주소를 가진 EC2 서버를 통해 서버 세팅 후 이미지로 만들어 Private EC2 서버를 구성한다.(Private 주소에서는 외부 망 연결이 되지 않아 패키지 설치 불가)
  • AWS Auto Scaling
    • 서버의 특정 조건에 따라 Auto Scaling
      • 실행 중인 EC2 인스턴스의 수량을 일정하게 유지
      • 기능은 무료이나 인스턴스 수량 증가로 인한 비용 발생
    • Scale up - 단일 시스템에 대한 하드웨어 사양 변경
    • Scale out - 시스템 수량을 변경(분산 시스템)
  • AWS Lightsail
    • VPS(가상사설서버)
    • 간단한 웹 서버 운영 시 사용
  • AWS Workspace
    • 데스크톱 가상화 서비스
    • 문서 및 데이터를 서버에 보관

네트워킹 서비스

  • Amazon Route 53
    • 클라우드 기반 DNS 서비스
      • 사람이 읽을 수 있는 도메인 이름을 실제 접속에 필요한 IP로 변환
    • 로드 밸런서, 라우팅, 도메인 구매 지원
  • Amazon VPC
    • 가상 사설 네트워크 인프라를 클라우드 내 구성
    • 네트워크를 이용한 접근 제어
    • DHCP, VPN, 인터넷 게이트웨이 사용 가능
  • Amazon Direct Connect
    • 기존 온프레미스 인프라와 AWS 를 낮은 지연으로 연결시켜 데이터 및 정보 공유
  • Amazon ELB(Elastic Load Balancer) 단일 가용 영역 또는 여러 가용영역에서 네트워크 트래픽 분산
    • 로드밸런싱
      • 네트워크 트래픽을 하나 이상의 서버나 장비로 분산하기 위한 기술
    • 로드 밸런싱 방식
      • 라운드 로빈(Round Robin) - 현재 연결 세션과 무관하게 순차 연결 전달
      • 해쉬
        • 해시 알고리즘을 사용한 로드 밸런싱 방식 클라이언트(세션 유지)
      • 최소 연결 우선
        • 현재 연결된 세션 수에 따라 부하 분산(세션 보장 X)
      • 응답 시간 우선
        • 빠른 응답이 가능한 서버로 세션 연결(세션 보장 X)
    • L4 Load Balancer 역할 수행
    • 부하분산 대상
      • EC2 인스턴스
      • 컨테이너
      • IP 주소
    • 3가지 방식의 로드밸런서 제공
      • Application Load Balancer - 7계층(App) LB으로 웹서버에 주로 사용
      • Network Load Balancer - 4계층(Transport) LB
      • Classic Load Balancer
    • 별도의 서비스가 존재하지 않고 EC2 등 서비스에서 설정 가능

스토리지

  • DAS(Direct Attached Storage) - 케이블 직접 연결 방식
  • NAS(Network Attached Storage) - 네트워크 연결 방식
    • 파일 수준 데이터 저장
    • OS 연결 시 파일 서버로 표현
    • 네트워크로 파일시스템까지 만들어서 디렉토리 공간을 공유(NFS)
  • SAN(Storage Area Network) - 저장 공간 네트워크
    • 확장 용이
    • 대규모 엔터프라이즈 환경에 적합한 고속 전용 네트워크로 구성되어 빠른 속도
    • 네트워크로 스토리지 자체를 제공, 블록 수준 데이터 저장(=iSCSI)
    • OS 연결 시 디스크로 표현

클라우드 스토리지

  • 블록 스토리지 - 인스턴스에 직접 연결해 사용(EBS)
  • 오브젝트 스토리지 - 인스턴스와 관계 없이 사용하는 저장 장치(S3)
  • 파일시스템 기반 스토리지 - 인스턴스 사이의 데이터 공유 시 사용(EFS)

스토리지 서비스

  • Amazon S3
    • 범용 스토리지
    • 데이터 보관 및 정적 웹 사이트 호스팅 제공
    • 버킷 이름 작성 시 모든 AWS 범위에서 겹치지 않는 고유의 이름으로 지어야 한다.
    • 버킷 비우기 - 버킷 내 모든 자료 삭제
    • 사용 용도에 맞는 클래스를 이용해 스토리지 최적화 가능
  • Amazon S3 Glacier
    • 사용 빈도가 낮은 데이터 보관용
    • 비용이 저렴, 무제한 데이터 보관
  • Amazon EBS(Elastic Block Store)
    • EC2 등 서버에 스토리지로 추가해 데이터 보관
    • SSD를 사용해 입출력 속도가 빠름
    • 마그네틱의 경우 발생하는 I/O 횟수에 따라 비용 과금
    • EC2 인스턴스와 독립적으로 사용 가능하며 다른 EC2 인스턴스에 교체 가능
    • 데이터는 영구적으로 저장되며, 원하는 가용 영역에 생성 가능
    • 백업된 스냅샷에서 EBS 볼륨을 생성/복원 가능
    • 볼륨 유형
      • 범용 SSD - 다양한 트랜잭션 워크로드 처리
      • 프로비저닝된 IOPS - 지연 시간에 민감한 고성능 처리
      • 처리량 최적화 HDD - 처리량 집약적 HDD
      • 콜드 HDD - 액세스 빈도가 낮은 저비용 HDD
      • 마그네틱 - 빈도가 낮으며 성능 낮은 HDD
  • Amazon Storage gateway
    • 온프레미스 데이터를 클라우드로 저장 및 보관하기 위한 Gateway
  • Amazon Snowball
    • 대량 데이터 전송을 위한 가상의 장치를 제공

데이터베이스

여러 사람에 의해 공유되어 사용될 목적으로 통합 관리되는 데이터 집합

  • DB 트랜잭션 원칙(ACID)
    • Atomic(원자성)
    • Consistency(일관성)
    • Isolation(격리성)
    • Durability(내구성)
  • AWS DB 서비스
    • Amazon RDS
      • 관계형 데이터베이스 서비스 제공
      • 서비스를 직접 관리하지 않고 아마존이 관리하는 DB
        • 하드웨어 프로비저닝
        • DB 설정
        • 패치 / 백업
        • 장애대응/재해복구
      • 제공 DBMS
        • Amazon Aurora - MySQL, PostgreSQL 호환
        • MySQL
        • PostgreSQL
        • MariaDB
        • Oracle DB
        • SQL Server
    • Amazon DynamoDB
      • NoSQL 서비스
      • 대량 데이터의 저장 및 분석을 위한 서비스
      • 무중단 확장 제공
    • Amazon ElasticCache
      • In-Memory 기반 Cache 서비스
    • Amazon RedShift
      • 대용량 병렬 PB 급 D/W 서비스

AWS 기본 용어

  • Region
    • 물리적으로 구축된 AWS 서비스 지역 분류
    • 리전 별로 지원 기능이 다를 수 있음
  • 가용 영역
    • = 데이터 센터
    • 하나의 영역 아래 여러개의 가용 영역이 존재
    • 리전 내 각각의 가용 영역은 물리적으로 떨어져 있음
  • 엣지 로케이션
    • CDN 을 위한 캐시 서버
    • AWS CloudFront를 위해 사용

VPN(Virtual Private Network)

큰 규모 조직의 네트워크가 분산되어 있을 경우 각 네트워크를 연결

암호화 기술을 적용시켜 보안 강화

클라우드와 온프레미스 간 연결을 통해 보안을 강화한 하이브리드 클라우드 구축

VPC(Virtual Private Cloud)

직접 정의 가능한 가상 네트워크에서 AWS리소스를 구동할 수 있는 논리적으로 격리된 네트워크

  • 주요 설정
    • IP 주소 범위
      • 퍼블릭 IP
        • 인터넷을 통해 연결할 수 있는 IP 주소
        • EC2 생성 시 옵션으로 Public IP 사용 여부를 선택
        • 재부팅 시 새 IP 주소 할당
      • 프라이빗 IP
        • VPC에서 시작된 인스턴스 서브넷 범위에서 자동 할당
          • 동일 네트워크의 인스턴스 간 통신 가능
      • Elastic IP
        • 동적 컴퓨팅을 위해 사용되는 고정 퍼블릭 IP 주소
        • 실행, 중지된 인스턴스, 분리된 인터페이스 연결 시 요금이 부과되며 최대 5개 사용 가능
    • 서브넷
      • VPC 내에서 동일한 대역으로 구분되는 네트워크 영역
      • 퍼블릭 서브넷
        • 네트워크 트래픽이 게이트웨이로 라우팅되는 서브넷
        • 퍼블릭 IP + 퍼블릭 서브넷 = 외부 망 사용 가능
      • 프라이빗 서브넷
        • 네트워크 트래픽이 게이트웨이로 라우팅되지 않는 서브넷
        • NAT 게이트웨이 설정이 된다면 Private 망에서도 외부 망 사용이 가능
    • 라우팅 테이블
      • 아웃바운드 트래픽에 대한 경로 지정
      • 서브넷 및 VPC 간 통신을 위해 구성
    • 보안 그룹 / 네트워크 ACL
      • IP와 포트를 기준으로 통신을 허용 및 차단
      • ACL과 보안그룹이 같이 설정된 경우 = ACL > 보안그룹
      • 보안 그룹
        • 인스턴스 레벨 접근 규칙 설정
        • 허용만 설정
        • 반환 트래픽 허용
      • 네트워크 ACL
        • 서브넷 레벨 접근 규칙 설정(연결된 서브넷의 모든 인스턴스에 자동 적용)
        • 허용 및 거부 규칙 설정 가능
    • VPC 피어링
      • 서로 다른 VPC 사이의 트래픽을 라우팅할 수 있게 VPC 간의 네트워크 연결 제공
      • 리전 사이의 VPC 피어링을 지원
      • VPC 피어링 후 실제 연결까지 하려면 라우팅 테이블에서 피어링 된 VPC의 IP를 추가해 등록해주는 작업이 필요
    • NAT 게이트웨이
      • 내부 IP 주소를 외부 IP주소로 변환해주는 서비스
      • 프라이빗 망에서 보안상 중요한 서비스의 패치나 보안 업데이트가 인터넷으로 제공되는 경우 설정해 받을 수 있도록 만들어준다.
      • NAT 인스턴스로 대체 가능(퍼블릭 서브넷에서 직접 관리하는 인스턴스)
    • VPC Endpoint
  • 특징
    • AWS에 사설 네트워크 구축
    • 회사와 AWS간 VPN을 연결하거나 가상 네트워킹 구현
    • 모든 리전에서 이용가능
    • AWS를 회사 인프라의 일부처럼 사용 가능
    • VPC 자체 비용은 발생하지 않으나 네트워크 송수신에 따른 비용 발생
    • VPC 피어링을 통해 VPC 끼리

0개의 댓글