[AWS] AWS

Bzeromo·6일 전
0

MSA

목록 보기
8/10
post-thumbnail

⚡ AWS


📌 아마존 웹 서비스 (Amazon Web Service)

🔷 아마존에서 제공하는 클라우드 기반 IT 인프라 서비스 브랜드

  • 2006년 첫 서비스를 시작했으며, 현재 200개 이상의 완전 관리형 서비스를 제공

  • AWS를 통해 기업, 정부 및 개인은 물리적 서버를 직접 구매하거나 관리하지 않고, 인터넷을 통해 필요에 따라 서버, 저장소, 데이터베이스, 네트워크, 머신러닝, 빅데이터 분석 등 다양한 IT 리소스를 온디맨드, 종량제 방식으로 사용할 수 있음

🔷 특징

  • 확장성: 필요에 따라 신속하게 자원 증설 및 축소 가능

  • 유연한 과금: 사용한 만큼만 비용을 지불하는 종량제(Pay-as-you-go) 방식

  • 글로벌 인프라: 전 세계 30여 개 지역, 100여 개 가용 영역에 데이터센터 보유

  • 높은 신뢰성 및 보안: 다양한 보안 인증 획득, 다중 백업, 강력한 모니터링 제공


📌 제공 서비스

🔷 컴퓨팅

  • Amazon EC2: 가상 서버를 손쉽게 생성, 관리할 수 있는 서비스

  • AWS Lambda: 서버를 직접 관리할 필요 없이 코드를 실행할 수 있는 서버리스 컴퓨팅 서비스

  • Lightsail: 초보자가 웹 사이트 및 웹 애플리케이션을 쉽게 구축하고 관리할 수 있도록 간편한 가상 서버 제공

  • ECS, EKS

🔷 스토리지

  • Amazon S3: 대용량 객체 저장소로, 이미지, 동영상, 백업 데이터 등을 저장·관리할 수 있음

  • Amazon EBS: EC2에 연결되는 블록 스토리지 서비스

  • Amazon Glacier: 저렴한 비용의 장기 보관용 스토리지

🔷 데이터베이스

  • Amazon RDS: 관계형 데이터베이스를 클라우드에서 손쉽게 운영할 수 있게 해주는 서비스

  • Amazon DynamoDB: 빠르고 확장성이 뛰어난 NoSQL 데이터베이스 서비스

  • Amazon Aurora: MySQLPostgreSQL과 호환되는 고성능 관계형 데이터베이스, 기존 데이터베이스보다 최대 5배 빠른 성능 제공

🔷 네트워크

  • Amazon VPC: AWS 클라우드 내에 사용자의 격리된 네트워크 환경을 구축하는 서비스

  • Route 53: 가용성과 확장성이 뛰어난 DNS (Domain Name System) 서비스

  • AWS CloudFront: CDN(콘텐츠 전송 네트워크) 서비스

🔷 보안 및 관리

  • AWS IAM: 사용자 및 접근 권한을 관리하는 서비스

  • AWS CloudTrail: AWS 계정 내 활동을 추적 및 기록하는 서비스

  • AWS CloudWatch: 모니터링 및 로그 관리 서비스

  • CloudFormation: 인프라를 코드로 관리할 수 있는 서비스


📌 아키텍처

🔷 복잡한 시스템이나 구조를 잘 설계해서 요소들이 조화롭게 작동하도록 만드는 청사진

  • 컴퓨터, 소프트웨어, 네트워크, 클라우드 등 다양한 IT 시스템에서 각 구성요소들이 어떻게 배치되고 상호작용하는지, 전체 구조를 설계하는 방식

  • 컴퓨터 아키텍처(프로세서, 메모리 등 하드웨어 요소의 구조),
    소프트웨어 아키텍처(프로그램 모듈 및 데이터 흐름 설계)

🔷 클라우드 아키텍처

  • 클라우드 컴퓨팅 환경에서 IT 리소스(서버, 스토리지, 네트워크, 데이터베이스, 애플리케이션 등)를 효과적으로 설계, 구축, 운영, 관리하기 위한 기술적 구조와 설계 방식을 말함

  • 전통적인 온프레미스 인프라와 달리, 인터넷을 통해 제공되는 유연한 IT 환경을 구현하기 위한 논리적, 물리적 구성 요소와 이들의 상호작용을 정의

🔷 클라우드 아키텍처 구성요소

  • 프론트엔드: 사용자가 직접 보고, 상호작용하는 시스템 외부의 화면과 기능을 담당하는 부분

  • 백엔드: 사용자가 직접 볼 수 없는 시스템의 내부에서 데이터 처리, 저장, 관리, 비즈니스 로직(규칙), 서버 관리 등을 담당하는 부분

  • 클라우드 서비스: IaaS, PaaS, SaaS

  • 오케스트레이션 및 자동화: 인프라와 애플리케이션 배포, 확장, 복구 등을 자동으로 처리

  • 보안 및 관리: 인증/인가 시스템, 로깅 및 모니터링, 네트워크 보안

  • API 및 서비스 통합: API Gateway, 서비스 아키텍처, 마이크로서비스 등의 활용

🔷 클라우드 아키텍처 패턴

  • 멀티티어 아키텍처: 프레젠테이션, 로직, 데이터 계층을 분리하여 확장성과 보안, 유지관리성 강화

  • 마이크로서비스 아키텍처: 기능별로 작은 서비스 단위로 분리하여 배포 및 확장, 변경에 유연하게 대응, 독립적으로 개발/운영 가능

  • 서버리스 아키텍처: 서버 인프라 관리 없이 함수 단위로 코드 실행, 이벤트 기반 처리, 비용 효율성 극대화

  • 컨테이너 기반 아키텍처: 애플리케이션을 컨테이너에 패키징하여 이식성과 확장성


📌 프로비저닝 (Provisioning)

🔷 필요한 IT 자원을 준비하고 할당하여, 사용자가 바로 쓸 수 있도록 만드는 모든 과정

  • 서버, 저장공간, 네트워크, 소프트웨어, 계정 등 필요한 것들을 자동 또는 수작업으로 미리 준비해서 제공해 주는 것

  • 특히 클라우드 시대에는 이것을 자동화하는 것이 매우 중요

🔷 프로비저닝 주요단계

  • 자원 할당: CPU, 메모리, 저장소, 네트워크 등 필요한 자원을 정하고 할당

  • 설정: 운영체제 설치, 네트워크 주소 할당, 보안 설정 등

  • 소프트웨어 설치: 필요한 패키지, 애플리케이션, 백신 등 설치

  • 사용자·권한 세팅: 계정 생성, 접근 권한 설정

  • 자동화 포인트: 클라우드에서는 이 모든 과정을 코드나 도구로 자동화하는 경우가 많음

🔷 프로비저닝 유형

  • 자동 프로비저닝: 소프트웨어 도구를 사용하여 자원 할당 및 관리 자동화

    • 장점: 효율성 증대, 신속한 배포, 오류 감소

    • 예) AWS CloudFormation, Terraform, Ansible

  • 수동 프로비저닝: 관리자가 수동으로 자원을 할당하고 설정

    • 장점: 세부 설정 가능, 특정 요구사항에 대한 맞춤형 구성

    • 단점: 시간 소모, 오류 발생 가능성 증가


📌 AWS 글로벌 인프라

🔷 리전 (Region)

  • AWS 데이터 센터가 위치한 지리적 구역 의미

  • AWS는 전 세계에 여러 리전을 운영

  • 각 리전은 서로 독립적으로 운영되어 높은 가용성과 내결함성 제공

🔷 지리적 분산: 각 리전은 물리적으로 떨어진 위치에 분산되어 있음

🔷 독립성: 리전 간의 데이터 전송은 인터넷을 통해 이루어지며, 리전 간 문제가 발생해도 다른 리전에는 영향을 미치지 않음

🔷 서비스 가용성: 일부 AWS 서비스는 특정 리전에서만 제공될 수 있음

🔷 가용 영역 (Availability Zone, AZ)

  • 리전 내에서 독립적으로 운영되는 하나 이상의 데이터 센터 의미

  • 각 AZ는 물리적으로 분리되어 있으며, 고가용성과 내결함성을 보장하기 위해 설계됨

🔷 물리적 분리: 각 AZ는 물리적으로 떨어져 있어 자연 재해 등의 영향 최소화

🔷 고속 연결: AZ 간에 저지연, 고속 네트워크로 연결되어 있음

🔷 독립된 전원 및 네트워크: 각 AZ는 독립된 전원 공급 및 네트워크 연결로 구성

특성글로벌 서비스 (Global Services)리전 서비스 (Regional Services)
제공 범위전 세계 모든 리전에서 사용 가능특정 리전에 종속
관리 인터페이스단일 콘솔 및 API리전별 독립적인 콘솔 및 API
데이터 접근전 세계적으로 동기화된 데이터 접근리전 내에서만 데이터 접근
지연 시간글로벌 엣지 로케이션 사용으로 지연 최소화리전 선택에 따라 지연 시간 최적화
고가용성글로벌 인프라 기반리전 내 여러 가용 영역 활용
데이터 주권글로벌 정책 적용리전 선택을 통해 데이터 주권 관리 가능

📌 AWS 프리티어

🔷 신규 사용자가 AWS 서비스를 무료로 체험할 수 있도록 다양한 혜택 제공

  • 12개월 무료: 계정 생성 후 12개월 동안 무료로 사용할 수 있는 서비스

  • 항상 무료: 계정 생성 후에도 계속해서 무료로 사용할 수 있는 서비스

  • 단기 평가판: 특정 서비스에 대해 단기간 무료로 제공되는 평가판

AWS 프리티어 주의사항

  • 사용량 제한: Free Tier 혜택은 일정 사용량 내에서만 무료로 제공되므로, 사용량을 초과하면 추가 비용이 발생할 수 있음

  • 기간 제한: 12개월 무료 혜택은 계정 생성 후 12개월 동안만 유효,
    이후에는 표준 요금 부과

  • 서비스 제한: 일부 서비스는 특정 리전에서만 프리티어 혜택을 받을 수 있음


📌 AWS EC2

🔷 AWS에서 제공하는 클라우드 컴퓨팅 서비스

  • 쉽게 말해, 인터넷을 통해 컴퓨터를 빌려 쓰는 서비스

  • 마치, 컴퓨터를 직접 구매하는 대신, 필요할 때만 빌려서 사용

  • EC2는 필요할 때만 서버를 생성하고 제거할 수 있는 유연성 제공

  • 이를 통해 비용 효율적으로 애플리케이션 배포 및 관리

🔷 가상 서버

  • 물리적인 서버 대신, 가상화 기술을 이용하여 여러 개의 가상 서버를 생성하고 사용할 수 있음

  • 탄력적인 확장성

    • 필요에 따라 서버 용량을 늘리거나 줄일 수 있음
  • 다양한 운영체제 및 소프트웨어 지원

    • 윈도우, 리눅스, 우분투 등 다양한 운영체제와 소프트웨어 설치 및 사용

🔷 AWS EC2 주요개념

  • 인스턴스 (Instance)

    • 가상 머신의 일종으로, 사용자가 정의한 환경에서 동작
  • AMI (Amazon Machine Image)

    • 인스턴스 생성 시 사용하는 템플릿으로, 운영 체제, 애플리케이션 서버, 애플리케이션 등을 포함
  • 인스턴스 유형 (Instance Type)

    • 인스턴스의 하드웨어 성능을 결정하는 요소로, CPU, 메모리, 스토리지 옵션이 다양
  • 키 페어 (Key Pair)

    • 인스턴스에 대한 보안을 위해 사용되는 공개 키와 비공개 키 쌍.
      SSH를 통해 안전하게 접속
  • 보안 그룹 (Security Group)

    • 인스턴스의 네트워크 트래픽을 제어하는 가상 방화벽 규칙

📌 IAM

🔷 AWS Identity and Access Management(IAM)

  • AWS 서비스와 리소스에 대한 액세스를 안전하게 관리하기 위한 수단

  • 또한, AWS 사용자 및 그룹을 만들고 관리하며 AWS 리소스에 대한 액세스를 허용 및 거부할 수 있음

🔷 주요 기능

  • AWS 어카운트 관리 및 리소스/사용자/서비스의 권한 제어

    • 임시 권한 부여

    • 서비스 사용을 위한 인증 정보 부여

  • 사용자의 생성, 관리, 계정의 보안

    • Multi-factor Authentication

    • 사용자의 패스워드 정책 관리

  • 다른 계정과의 리소스 공유

  • Identity Federation (Facebook 로그인, 구글 로그인 등)

🔷 Root 사용자

  • 계정을 생성할 때 같이 생성되는 사용자

  • 계정의 모든 권한을 가지고 있으며 계정 권한을 제한할 방법이 없음

    • 탈취당했을 때 복구가 매우 어려움 = MFA 필수
  • 자격증명 부여 가능

🔷 Root 사용자만 가능한 작업

  • AWS 계정 설정 변경 (메인 이메일 주소, 계정 이름, 연락처 정보 등)

  • 요금 관련 설정 (IAM 유저에게 위임 가능)

  • AWS Support Plan (지원 플랜) 구독, 변경, 취소

  • AWS 계정 삭제

🔷 IAM 사용자

  • IAM (Identity and Access Management)을 통해 생성한 사용자

  • 생성 시 권한이 따로 부여되어 있지 않으며, 정책 혹은 그룹을 통해 권한을 부여받아 활동

  • 자격증명 부여 가능 (Optional)

  • 콘솔 로그인 가능 (Optional)

  • 사람뿐만 아니라 어플리케이션 같은 다른 주체도 대표 가능

    • 예: 어플리케이션이 AWS 서비스를 사용하기 위해서 IAM 사용자의 자격증명을 보관 후 사용

🔷 그룹

  • IAM 사용자의 집합

  • 그룹에 정책을 부여하여 그룹에 속한 모든 사용자에게 해당 정책에 따른 권한 부여 가능

🔷 Factor(요소)

  • 보안에서 사용자를 인증하기 위한 정보 혹은 행위, 일반적으로 5가지 종류

  • 지식 기반 Factor: 내가 알고 있는 것으로 인증

    • 예: 비밀번호, 유저 아이디
  • 소유 기반 Factor: 내가 가지고 있는 것으로 인증

    • 예: OTP, 신용카드 등
  • 존재 기반 Factor: 내가 가진 고유 속성으로 인증

    • 예: 지문 인식, 홍채 인식
  • 위치 기반 Factor: 나의 물리적 혹은 가상의 위치로 인증

    • 예: 현금 인출기, 대면 인증, IP Address, Wifi 망
  • 행위 기반 Factor: 나의 행동으로 인증

    • 예: 휴대폰의 암호 패턴 인증, 야구의 싸인 등
profile
Hodie mihi, Cras tibi

0개의 댓글