※ S3 실습 - 정적 웹사이트 호스팅

  : 정적 웹 사이트는 백엔드 처리 없이 고정 콘텐츠를 갖는다

  : 원하는 콘텐츠를 업로드하고 공개적인 액세스를 허용해 쉽게 웹 사이트 호스팅 가능

 

 

1. Amazon S3에 버킷 생성

 

1. S3 검색 후 클릭

 

2. 버킷 만들기 클릭

 

3. 기본 설정 후 버킷 만들기 클릭

  : 버킷 이름 설정

  : 기본적으로 모든 퍼블릭 액세스는 차단으로 되어 있다 → 체크 해제할 것

  : 웹사이트에 접근을 위해 퍼블릭 액세스를 허용한다

  : "현재 설정으로 인해 ~" 체크

  : 위의 설정 후 버킷 만들기 클릭

 

 

 

2. 버킷에  콘텐츠 업로드

 

1. 정적 웹사이트 호스팅 설정 활성화

  : 생성된 버킷 이름 클릭

  : 속성 → 정적 웹사이트 호스팅 설정 확인

  : 정적 웹사이트 호스팅 설정 활성화

 

2. 웹사이트 문서 설정

  : 인덱스 문서 = index.html (유동적으로 변경 가능)

  : 오류 문서 = error.html (유동적으로 변경 가능)

  : 변경 사항 저장

 

3. index.html / error.html 파일 업로드

 

 

3. 객체에 대한 액세스 활성화

1. 퍼블릭 액세스 활성화 (Public)

{
    "Version": "2012-10-17",
    "Id": "Policy1692518688678",
    "Statement": [
        {
            "Sid": "Stmt1692518687083",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::hshs3website/*"
        }
    ]
}

 

2. 정적 웹사이트에 접근

  : 속성에서 버킷 웹 사이트 엔드포인트 확인 가능

 

   : 엔드포인트 접속 확인

※ S3 사용 사례

 

1. 정적 웹 콘텐츠와 미디어 저장 및 배포

  : S3에 업로드된 파일은 각 객체가 고유한 HTTP URL에 연결된다

  : S3는 CDN (EX) CloudFront)의 오리진으로 사용 가능

  : S3는 뛰어난 탄력성이 요구되는 빠르게 성장하는 웹 사이트에 효과적이다

 

 

2. 전체 정적 웹 사이트 호스팅

  : 정적 HTML 파일, 이미지, 동영상, 클라이언트 측 스크립트를 위한 스토리지 제공

 

 

3. 연산 및 대규모 분석용 데이터 스토어

  : 금융 거래 분석, 클릭스트림 분석, 미디어 트랜스코딩에 사용 가능

  : 수평 확장성 덕분에 손쉽게 다수의 동시 트랜잭션이 가능

 

 

4. 백업 도구

  : 뛰어난 내구성 및 확장성으로 인해 백업 및 아카이브 도구로도 유용

  : 수명 주기 정책을 사용해 장기 데이터를 Amazon Glacier로 이전 가능

  : 더 높은 수준의 내구성이 필요할 경우, 교차 리전 복제를 사용해 다른 리전에 있는 S3 버킷에 자동으로 복사 가능

 

 

→ 모법 사용 사례

  : 한 번 쓰고 여러 번 읽어야하는 경우

  : 데이터 액세스가 일시적으로 급증하는 경우

  : 사용자가 매우 많고 콘텐츠가 다양한 경우

  : 데이터 용량이 계속 증가하는 경우

 

→ 이상적 사용 사례가 아닌 경우

  : 블록 스토리지 요구 사항

  : 자주 바뀌는 데이터

  : 장기 아카이브 스토리지

※ S3 (Simple Storage Service)

  : 객체 스토리지 서비스

  : 웹 기반 AWS Management Console, API 및 SDK 프로그래밍 방식 또는 타사 솔루션 (API/SDK 사용)로 액세스 가능

 

1. 특징

객체 스토리지 서비스

  : 파일을 하나의 객체 단위로 관리

  : 개별 객체는 5TB 초과 불가능, 하지만 객체 수 제한 없이 저장 가능

  : 파일 수정 시 수정한 파일 전체를 다시 업로드 해야함

 

내구성 99.9999999%

  : 파일 업로드 시 최소 3개의 가용영역에 복제본을 만든다 (내구성이 높은 이유)

  : 높은 내구성, 가용성, 신뢰성

 

이벤트 트리거

  : 특정 버킷(S3)으로 객체의 이벤트가 발생할 경우 자동알림 기능을 설정 가능

  : 알림은 사용자에게 전송되거나 Lambda 스크립트와 같은 다른 프로세스를 트리거하는 데 사용할 수 있다

 

스토리지 클래스 분석

  :  스토리지 액세스 패턴을 분석해 데이터를 올바른 스토리지 클래스로 이전 가능

 

S3 데이터 전송 방식

  : 콘솔, AWS CLI 또는 API를 사용해 전송

  : S3 버킷에 업로드

  : AWS DataSync를 이용해 전송

  : AWS Transfer for SFTP 이용해 전송

 

→ AWS DataSync = 온프레미스 스토리지와 S3 또는 EFS 간 데이터 이동을 쉽게 자동화할 수 있는 데이터 전송 서비스

 

멀티파트 업로드

  : 멀티파트 업로드 사용 시 대용량 객체를 관리 가능한 파트로 분할하여 업로드

  : [ 멀티파트 업로드 프로세스 ]

    : 업로드 시작 → 객체 파트 업로드 → 멀티파트 업로드 완료

  : 멀티파트 업로드 요청이 완료되면 S3가 개별 조각으로부터 전체 객체를 다시 생성

  : [ 멀티파트 업로드의 이점 ]

    : 개선된 처리량

    : 네트워크 문제로부터 빠른 복구

    : 객체 업로드 일시 중지 및 재개

    : 최종 객체 크기를 알기 전에 업로드를 시작

    : 대용량 객체를 업로드

 

Transfer Acceleration

  : 전 세계에 분산된 AWS CloudFront의 엣지 로케이션을 통해 S3 버킷의 빠르고 간편한 데이터 전송을 지원

  : 최적화된 네트워크 경로를 통해 S3로 라우팅된다

  : [ Transfer Acceleration 사용사례 ]

    : 전 세계 각지에서 중앙의 버킷으로 업로드하는 고객이 있는 경우

    : 전 세계에서 정기적으로 기가바이트 또는 테라바이트 규모의 데이터를 전송하는 경우

    : 인터넷을 통해 S3로 업로드할 때 사용 가능한 대역폭을 충분히 활용하지 못하는 경우

 

S3 버전 관리

  : 버전 관리 기능 사용 시 실수로 삭제하거나 덮어쓴 객체를 복구할 수 있다

  : 영구적 제거가 아닌 삭제하는 경우 S3는 삭제 마커를 삽입해 현재 버전으로 표시

  : 객체를 덮어쓴 경우 버킷에 새 객체 버전 생성

  : 이전 버전으로 복원 가능

 

 

2. 스토리지 클래스 (Storage Class)

  : 스토리지 액세스 패턴에 따라 운영 비용을 최적화할 수 있는 선택지

  : S3 Standard → S3 Glacier Deep Archive로 갈수록 저장비용 ↓, 요청비용 ↑

 

S3 Standard

  : 자주 액세스하는 데이터

  : 짧은 지연 시간과 높은 처리량 제공

 

S3 Standard - IA

  : 자주 액세스하지 않지만 필요할 경우 빠르게 액세스가 필요한 데이터

  : IA = Infrequent Access

  : S3 Standard와 동일한 짧은 지연 시간과 높은 처리량 제공

  : 백업 및 재해 복구 파일용 데이터 스토어에 이상적이다

 

▶ S3 One Zone - IA

  : 자주 액세스하지 않지만 필요할 경우 빠르게 액세스가 필요한 데이터

  : 단일 AZ에 데이터를 저장

  : 단일 AZ로 인해 S3 Standard - IA 에 비해 20% 비용 감소

  : S3 Standard와 동일한 짧은 지연 시간과 높은 처리량 제공

 

▶ S3 Glacier

  : 데이터 액세스 빈도가 매우 낮고 저렴한 스토리지 비용이 필요한 데이터

  : 검색 지연 시간이 시간단위도 허용이 되는 데이터를 저장

  : S3 Glacier는 S3 와 별개로 관리 콘솔 제공

  : S3 Glacier 작업에서는 CLI 사용 또는 코드를 작성해야함

  : 데이터 업로드 시 AWS CLI 사용 혹은 REST API, AWS SDK 사용해 요청 코드를 작성해야함

  : [ 검색 옵션 3가지 ] 

    : 신속 = 보통 1 ~ 5분 이내 완료

    : 표준 = 보통 3 ~ 5시간 이내 완료

    : 대량 = 보통 5 ~ 12시간 이내 완료

  : [ S3 Glacier 아카이브 및 저장소 ]

    : 아카이브 = 사진, 동영상, 문서 등 저장소에 저장한 모든 객체, S3 Glacier 내 스토리지의 기본 단위

    : 각 아카이브는 고유 ID가 있으며 아카이브를 업로드 시 S3 Glacier가 아카이브 ID가 포함된 응답을 반환

    : 아카이브 ID는 아카이브가 저장된 리전에서 고유함

    : 저장소 = 아카이브를 저장할 수 있는 컨테이너

    : 저장소를 생성할 때 저장소 이름과 리전을 지정해야 함

    : 저장소 잠금 기능 정책을 통해 규정 준수를 강화

 

▶ S3 Glacier Deep Archive

  : 7-10년 동안 유지되는 데이터의 장기 보관을 위해 설계된 최저 비용 스토리지 클래스

  : 12시간 이내 검색 가능

 

S3 Intelligent-Tiering

  : 변화하는 액세스 패턴으로 데이터의 스토리지 비용 자동 최적화

  : 변경된 스토리지 클래스로 요금이 측정된다

  : Frequent Access 및 Infrequent Access 티어는 S3 Standard와 동일한 짧은 대기 시간과 높은 처리 성능 제공

  : Frequent Access 및 Infrequent Access에 최적화된 2개의 액세스 티어에 객체 저장

  : Archive Access 및 Deep Archive Access 티어는 Glacier 및 Glacier Deep Archive와 동일한 성능 제공

  : 드물게 액세스되는 객체에 대해서는 선택적인 자동 비동기 아카이브 기능 활성화

  : 객체가 S3 Intelligent-Tiering 내의 액세스 티어 간에 이동할 경우 운영 오버헤드, 검색 요금 및 추가 요금 없음

 

 

3. S3 액세스 제어

액세스 제어 - 일반

  : 기본적으로 모든 AWS S3 리소스 (버킷, 객체 및 관련 하위 리소스)는 비공개

  : 리소스를 생성한 AWS 계정인 리소스 소유자 및 루트 사용자만 해당 리소스에 액세스 가능

  : 소유자는 액세스 정책을 작성해 다른 사람에게 액세스 권한 부여 가능

  : 그리고 "퍼블릭 액세스" 기능을 통해 S3에 대한 액세스 설정 가능

 

액세스 제어 - 버킷 정책

  : S3 버킷에서 정책을 추가해 다른 AWS 계정 또는 사용자에게 저장된 객체에 액세스하도록 허용 가능

  : 버킷 정책은 ACL 액세스 정책을 보완 또는 이를 대체 가능

  : 버킷 정책은 20KB로 제한

 

▶ 액세스 제어 - CORS (Cross Origin resource Sharing)

  : 한 도메인에서 로드되어 있는 클라이언트 웹 애플리케이션이 다른 도메인의 리소스와 상호 작용하는 방법 정의

  : 자바 스크립트코드나 CSS 코드들을 참조 가능하게 허용해주는 방법

 

 

액세스 포인트

  : 공유 버킷에 대한 액세스를 관리하기 위해 수백 개의 애플리케이션에 대한 액세스를 제어하는 단일 버킷 정책이 필요

  : 하나의 S3에 여러 개의 액세스 포인트를 만들고 각각에 정책문서를 다르게 적용시키는 것

  : 고객이 각 액세스 포인트의 고유한 액세스 제어 정책을 생성해 공유 데이터 집합의 액세스를 손쉽게 제어 가능

  : 모든 액세스 포인트는 고객의 프라이빗 네트워크 내 S3 데이터 액세스에 대한 방화벽 구축을 위해 VPC로 제한 가능

  : AWS 서비스 제어 정책을 사용하여 모든 액세스 포인트를 VPC로 제한 가능

  : S3 액세스 포인트는 모든 리전에서 추가 비용 없이 사용 가능

 

 

4. 수명 주기 정책

  : 운영자가 버킷 액세스 패턴을 분석하여 클래스를 지정할 때 클래스가 자동으로 변경가능하게 설정하는 기능

  : 객체마다 또는 버킷마다 수명 주기 규칙을 설정가능

  : 보관 기간이 끝날 경우 삭제해주는 기능도 있다

 

5. 비용

비용 종류

  : 저장 비용 = 월별 GBytes

  : 전송 비용 = 다른 리전 또는 인터넷으로 전송

  : 요청 비용 = PUT, COPY, POST, LIST 및 GET 요청

 

비용 지불할 필요 없는 경우

  : S3로 수신

  : 동일한 리전 내 EC2 또는 CloudFront로 전송

 

  : https://aws.amazon.com/ko/s3/pricing/

 

Amazon S3 Simple Storage Service 요금 - Amazon Web Services

S3 버킷에 객체를 저장하는 비용을 지불합니다. 부과되는 요금은 객체의 크기, 해당 월에 객체를 저장한 기간, 스토리지 클래스에 따라 다르며, 스토리지 클래스에는 S3 Standard, S3 Intelligent-Tiering,

aws.amazon.com

※ 계정 보안 설정

  : 계정에 ID / 비밀번호과 다른 보안적 요소가 필요

  : 처음 만들고 로그인한 루트 계정은 AWS와 관련된 모든 권한을 보유, 아무 장소에서 로그인하는 것은 위험

 

1. MFA (Multi Factor Authentication)

1. 계정에서 "내 보안 자격 증명"

2. "MFA 활성화" 선택

  : "멀티 팩터 인증 (MFA)" 선택 후 "MFA 활성화" 선택

3. "가상 MFA 디바이스" 선택

 

  : Android = Google Authenticator, Authy 2-Facotr Authentication

  : iPhone = Google Authenticator

  : Windows Phone = Authenticator

  : Blackberry = Google Authenticator

 

 

 

 

 

 

4. 가상 MFA 디바이스 설정

  : 어플 실행 시 QR 코드 스캔 선택해 QR 코드 스캔 후 결과

  : MFA 코드 2번 입력 후 MFA 할당 선택

 

5. MFA 이용한 루트 계정 로그인

 

 

 

2. IAM 계정 생성

  : 루트 계정으로 로그인하는 것은 매우 위험하다

  : 그러므로 다른 계정을 통해 AWS 서비스를 관리

 

1. IAM 서비스

  : IAM 검색하여 IAM 서비스 대쉬보드로 이동

 

2. 대쉬보드 → 사용자

  : 대쉬보드 → 액세스 관리 → 사용자 → 사용자 추가

 

3. 사용자 추가 (1)

  : 지금 사용 중인 Web페이지가 AWS 관리 콘솔(AWS Management Console)이다 

  : 액세스 키 방식은 다른 방식 (AWS API, CLI, SDK 등) 으로 AWS 서비스를 사용 가능한데 그 때 사용하는 자격 증명 유형

  : 액세스 키 방식은 미 설정 시 나중에 만들 수 있다, 하지만 같은 접근 키를 다시 내려받을 수는 없으니 주의

  : 콘솔 비밀번호 = 콘솔 로그인 시 입력할 비밀번호 설정

  : 비밀번호 재설정 필요 → 로그인할 때마다 비밀번호 재설정, 원하는 경우 체크

 

4. 사용자 추가 (2)

  : 보통 그룹을 만들어 그룹 정책에 사용자를 넣지만 루트 계정을 대체할 "관리자 계정 생성"이라 따로 그룹은 필요 없다

  : 여러 기본적으로 제공하는 정책 중 AdministratorAccess 정책을 선택

  : 정책을 클릭하면 서비스에 대한 권한 확인 가능

 

5. 사용자 추가 (3)

  : 이 사용자를 나타낼 수 있는 태그 설정

 

6. 사용자 추가 (4)

  : 설정한 값들 확인

 

7. 사용자 추가 (5)

  : 위의 URL을 통해 생성한 사용자로 로그인 가능

 

7. IAM 사용자로 로그인

  : 새로 만든 사용자의 이름과 암호 입력

 

8. IAM 서비스 접속 시도

  : 이 관리자 계정은 IAM 서비스에 대한 권한은 없다

  : 루트 계정만 IAM 서비스에 대한 권한이 있다

  : 이 관리자 계정에도 MFA 설정 가능 (루트 계정으로 로그인 후 MFA 설정 가능)

 

 

 

 

3. IAM 계정 MFA 설정

1. 루트 계정으로 로그인

  : 루트 계정으로 로그인 → IAM → 액세스 관리 → 사용자 → 사용자 이름 클릭

 

2. 보안 자격 증명 확인

  : 요약 → 보안 자격 증명 → 할당된 MFA 디바이스 관리

  : 나머지 설정은 위에서 설정한 것과 같다

※ 계정 생성

 

1. AWS 접속

https://aws.amazon.com/ko/

 

  : 무료로 시작하기 또는 AWS 계정 생성 클릭

 

 

2. AWS 계정 정보 입력 (1)

  : 비밀번호 정책에 맞게 입력

  : AWS 계정 이름 → 닉네임과 비슷하다 (변경 가능)

 

3. AWS 계정 정보 입력 (2)

  : "개인 - 자체 프로젝트의 경우" 체크

  : 전화 번호 = +82 010-XXXX-XXXX

  : 국가 = 대한민국

  : 주소 → NAVER에 영문주소 검색 후 입력 (국가는 위에 표시했기 때문에 Republic of Korea 는 삭제)

  : 시 = Seoul, Busan 등등

  : 시, 도, 또는 리전 = Seoul, Busan 등등

  : 우편 번호 = 위에 주소 검색 시 확인 가능 또는 우편번호 검색 후 입력

 

4. AWS 계정 정보 입력 (3)

  : 결제 정보 입력

 

5. 자격 증명

  : 문자 메세지를 통해 자격 증명 확인

 

6. Support 플랜 선택

  : "기본 지원 - 무료" 선택

 

7. AWS 계정 생성 완료

 

 

8. AWS 계정 로그인 (1)

  : 루트 사용자 이메일 주소 입력

 

9. AWS 계정 로그인 (2)

  : 비밀번호 입력

 

 

10. AWS 계정 로그인 (3)

  : 나의 계정은 미리 만든 계정이기 때문에 보안 설정이 되어 있다

  : 계정 보안 설정은 다음 글에 포스팅 할 예정

※ 글로벌 인프라

  : 전 세계 주요 지역에 데이터센터를 위치시켜 다양한 서비스를 제공

  : 전 세계 25개의 지리적 리전 내에 81개의 가용 영역을 운영 (2021-10-24 기준)

  : 리전과 가용 영역을 계속 추가중 

출처 : https://aws.amazon.com/ko/about-aws/global-infrastructure/

 

1. 리전 (Region)

  : AWS가 서비스를 제공하는 거점 (국가 및 지역)

  : 리전이 여러 곳에 있는 이유는 네트워크 속도, 재해에 대비해 백업되어 있는 데이터는 복구가 가능하기 때문이다

  : 리전 안에 여러 개의 가용 영역 (Availability Zone) 이 있다

  : 웹 브라우저 (AWS 매니지먼트 콘솔), 프로그래밍 언어 (SDK 활용), OS 명령 라인 도구 (CLI)를 통해 조작 가능

  : 멀티 리전 구성 = 여러 개의 리전을 사용한 시스템 구성

  : 리전간 통신은 백본 네트워크 인프라를 사용 , 백본 네트워크 인프라에 문제 발생 시 인터넷을 사용하기도 한다

 

 

2. 가용 영역 (Availability Zone)

  : 데이터 센터와 같은 의미

  : 하나의 리전 내에 2개 이상의 AZ 가 존재

  : AZ 끼리 물리적으로 떨어져 있다 그 이유는 하나의 AZ에 문제 발생시 다른 가용 영역에서 서비스를 재개 가능

  : 멀티 AZ 구성 = 여러 개의 AZ를 사용한 시스템 구성  : 가용성과 내결함성을 위해 멀티 AZ 구조로 시스템을 구축할 것을 추천

 

 

3. 엣지 로케이션 (Edge Location)

  : AWS의 CDN 서비스인 CloudFront, DNS 서비스인 Route53의 캐시 서버

  : 캐싱을 이용해 다른 리전간 CloudFront의 정적 콘텐츠 빠른 전송, Route53의 DNS 쿼리 처리를 도와준다

  : WAF, Shield, DDoS 공격 솔루션 관련 설정도 할 수 있다

 

→ CDN (Contents Delivery Network)

  : 정적 콘텐츠 (HTML, 이미지, 영상, 기타 파일)을 사용자들이 빠르게 받을 수 있도록 엣지 로케이션에 복제하는 서비스

 

 

4. 리전 선택

데이터 주권 및 규정 준수

  : 데이터는 데이터가 저장되는 국가 및 지역 법의 적용을 받는다

  : 관련된 지역 데이터 프라이버시 법률이 있는가?

  : 고객 데이터를 해외에 저장할 수 있는가?

  : 거버넌스 의무를 준수할 수 있는가?

 

사용자와 데이터 간 근접성

  : 사용자들과의 물리적 거리의 근접성을 고려해야 한다

  : 사용자에게 가장 가까운 리전을 선택할 것

 

서비스 및 기능 가용성

  : 리전마다 제공되는 서비스가 다르다

  : 일부 서비스는 교차 리전으로 사용 가능하지만 지연 시간이 증가

  : 정기적으로 서비스를 새 리전으로 확장 중

 

비용 효율성

  : 비용은 리전별로 다르다

  : S3와 같은 일부 서비스는 데이터를 외부로 전송할 떄 비용이 발생

  : 전체 환경을 다른 리전으로 복제하는 비용 효율성을 고려해야 한다

 

 

 

※ Well Architected Framework Tool

  : 최신 AWS 모법 사례에 대한 온디맨드 액세스를 제공하는 셀프 서비스 도구

  : AWS를 이용해 인프라를 디자인하고 운영하고 있는데 수정사항 없는지 확인할 수 있는 서비스 도구

  : 워크로드의 상태를 검토하고 최신 AWS 아키텍처 모범 사례와 비교 가능

 

 

1. 5가지 핵심 요소

보안

  : 정보 보호와 가능한 손해의 완화를 다룬다

  : 자격 증명 기반 / 추적 가능성 활성화 / 모든 계층에서의 보안 / 위험 평가 및 완화 전략

 

안정성

  : 컴퓨팅 리소스를 동적으로 확보하여 수요를 충족

  : 인프라 또는 서비스 장애로부터 신속하게 복구

  : 구성 오류 , 일시적인 네트워크 문제를 완화

 

비용 최적화

  : 아키텍처의 목표 기준으로 불필요한 비용을 제거

  : 효율성 측정

  : 불필요한 비용 제거

  : 관리형 서비스 사용을 고려

 

운영 우수성

  : 설계 또는 아키텍처 생성할 때 배포, 업데이트 및 운영될 방식을 고려

  : 시스템을 실행 및 모니터링하는 기능

  : 지원 프로세스 및 절차를 지속적으로 개선하기 위한 배포 / 업데이트 / 운영

 

성능 효율성

  : 고객은 컴퓨팅 리소스를 효율적으로 사용하고 수요가 변동해도 이 효율을 유지하여 성능을 최대화하길 원할 것

  : 효율적인 리소스를 선태갛고 수요 변화에 맞춰 효율성 유지

  : 고급 기술 대중화

  : Mechanical sympathy = 달성하려는 목표에 가장 적합한 기술 접근 방식을 사용하는 것

 

 

 

※ AWS (Amazon Web Services)

  : 아마존 (Amazon)에서 제공하는 클라우드 컴퓨팅 (Cloud Computing) 서비스

 

1. 특징

프로그래밍 가능한 리소스

  : 웹브라우저를 통해 명령어로 리소스들을 만들 수 있다

  : 명령어를 통해 AWS의 물리적 리소스에 요청을 할 수 있다

  : 프로그래밍을 통해 자동화가 가능하다

 

동적 기능

  : 필요할 때마다 리소스를 제공, 확장, 축소할 수 있다

 

종량 과금제

  : 사용량에 따라 비용을 지불한다

  : 리소스에 대해 특별한 약정 없이 테스트하고 활용할 수 있다

 

초기 투자 비용을 가변 비용으로 대체

  : 어떻게 사용될지 모르는 데이터 센터나 서버에 투자하는 대신 사용한 만큼의 자원에 대해서 비용을 지불

 

규모 경제로 얻게 되는 이점

  : AWS의 대규모 인프라 설계로 인해 가변 비용이 감소

  : AWS 사용 고객 증가 인프라에 투자 → 인프라 구매 비용 감소 → AWS 서비스의 비용 감소 → AWS 사용 고객 증가

  : 위의 순환을 반복으로 인한 가격 절감

 

용량 추정 불필요

  : 필요한 서버 용량을 미리 예측 불필요

  : 탄력적인(Elastic) 용량 제공

 

속도 및 민첩성 개선

  : 인프라 구축에 필요한 시간 대폭 감소

 

중요한 문제에 집중

  : 인프라 관리업무를 AWS에서 담당하여 중요 업무에만 집중 가능

 

몇 분 만에 전 세계에 배포

  : 언제든 전 세계의 모든 AWS 데이터 센터에 애플리케이션 운영 가능

 

광범위하고 안정적인 글로벌 클라우드 인프라

  : 전 세계 많은 데이터 센터와 리전영역 보유

※ 클라우드 컴퓨팅 (Cloud Computing)

  : 가상화 기술을 이용해 IT 리소스 (서버, 네트워크, 스토리지 등)를 인터넷을 통해 제공하는 서비스

 

1. 클라우드 컴퓨팅 모델

 퍼블릭 클라우드 (Public Cloud)

  : 인터넷 접속 가능한 모든 사용자들을 위한 서비스 운용 형태

  :  온디맨드(On-demand) 방식이며 공급자가 소유, 유지, 관리하는 모델

  : AWS (Amazon Web Services), Microsoft Azure 등이 있다

 

→ 온디맨드(On-demand) = 요구사항에 따라 즉시 제공 / 공급하는 방식

 

 프라이빗 클라우드 (Private Cloud)

  : 특정 기업 또는 특정 사용자만을 위한 서비스 운용 형태

  : 기업 및  기관 내부에 클라우스 서비스 환경 구성하여 제한적 서비스 제공

  : VMware, OpenStack 등이 있다

 

하이브리드 클라우드 (Hybrid Cloud)

  : Hybrid = Public + Private

  : 온-프레미스 데이터 센터 (Private Cloud) 를 Public Cloud와 결합해 데이터, 애플리케이션을 공유하는 환경

 

→ 온 프레미스 (On-premise) = 기업의 서버를 자체 시설에서 보유하여 직접 유지, 관리하는 방식

 

→ 오프 프레미스 (Off-Premise) =  온 프레미스의 반대 의미로 클라우드 같은 원격 환경에서 운영하는 방식

 

 

2. 서비스 유형

IaaS (Infrastructure as a Service)

  : 스토리지, 서버 등의 인프라가 가상화된 환경

  : 필요에 따라 자원을 사용할 수 있게 해주는 서비스

  : 물리적 자원을 가상화하여 제공

 

PaaS (Platform as a Service)

  : 인프라 위에 사용자가 원하는 서비스를 개발할 수 있는 환경

  : 개발자가 제공되는 인프라를 이용하여 애플리케이션 개발, 제공이 가능

  : 소프트웨어 개발을 돕는 플랫폼 가상화하여 제공

 

SaaS (Software as a Service)

  : 응용프로그램을 서비스 형태로 제공하여 서비스 사용하는 환경

  : 어플리케이션을 사용하고 소비할 수 있는 서비스 형태

  : 사용자가 사용하는 소프트웨어 제공

 

Packaged Software IaaS PaaS SaaS
Application Application Application Application
Data Data Data Data
Runtime Runtime Runtime Runtime
Middleware Middleware Middleware Middleware
O/S O/S O/S O/S
Virtualization Virtualization Virtualization Virtualization
Servers Servers Servers Servers
Storage Storage Storage Storage
Networking Networking Networking Networking

기업관리 영역 : 흰색

서비스로 제공 : 노란색

 

Runtime : 애플리케이션을 실행하는 데 사용되는 리소스 라이브러리

Middleware : 컴퓨터 제작시 사용자의 요구대로 만들어 제공하는 프로그램, OS와 Application의 중간에서 조정과 중개의 역할하는 소프트웨어

 

+ Recent posts