AWS(Amazon Web Service)

강민성·2022년 1월 6일
0

AWS

목록 보기
1/1

클라우드 컴퓨팅

Traditional IT 방식: 서버를 물리적으로 집에 두고 직접 관리했음

  • 단점
    Datacenter 렌트 비용을 지불해야 함(보통 monthly/yearly contract)
    Power supply, cooling, maintenance 비용을 지불해야 함
    새로운 하드웨어(서버)를 추가하거나 교체할 때 물리적인 하드웨어를 직접 가져와서 연결하고 기존 서버와 같은 소프트웨어를 갖게끔 환경설정해야 하기 때문에, 시간이 많이 소모됨(서버의 성능(CPU, RAM, 메모리 등)을 고사양으로 높이는 scale up, 같은 서버를 여러 개로 늘리는 scale out)
    확장하는 데 제한사항이 많음
    현재 유지되고 있는 인프라를 언제나 모니터링할 수 있게 인력을 고용해야 함
    천재지변에 대응하기 어려움

--> 단점을 개선하기 위해 클라우드 컴퓨팅 탄생

클라우드 컴퓨팅


인터넷만 있으면, 집에 서버를 두지 않아도 언제나 어디서든 서버에 관리하고 접근 가능(머리 위에 언제나 떠있는 구름처럼)
IT 리소스를 인터넷을 통해 on-demand(필요할 때 바로 사용할 수 있게)로 제공해 주는 서비스
사용한 만큼만 지불하면 되는 pay-as-you-go pricing 적용
정확하게 필요한 타입과 크기의 리소스(CPU, RAM, 메모리 등)를 지정하여 사용 가능
기존보다 간편하게 서버,스토리지,데이터베이스 등에 접근가능한 솔루션을 제공(서버,스토리지,데이터베이스 등을 더 쉽게 관리할 수 있는 소프트웨어를 내장시킴)

  • 장점(개선점)
    Flexibilitry: 유동적으로 원하는 리소스의 타입과 사이즈를 쉽게 변경 가능
    Cost-Effectiveness: pay-as-you-go(사용한 만큼만 비용 지불)
    Scalability: 쉽게 새로운 리소스를 추가할 수 있으므로 확장하는 데 용이함
    High-availability(언제 어디서 들어가든 사용 가능) and fault-tolerance(문제가 생겼을 때 잘 대응할 수 있는 정도): 글로벌하게 확장되어있는 인프라
    Agility: 빠르게 개발하고, 테스트하여 사용할 수 있는 소프트웨어 어플리케이션

클라우드 서비스의 예시: Gmail, Netflix, Dropbox

AWS(Amazon Web Services)

AWS의 장점

클라우드 컴퓨팅의 장점 + a
간단한 가입 프로세스
아마존의 brand value

AWS의 key services

  • EC2(Elastic Compute Cloud)
    몇 분 안에 구동 가능한 가상 서버
    AWS 상에서 사용하는 Server. EC2 서버에 API를 배포
    다양한 사양 옵션을 제공. t2.nano (CPU 1, 0.5 GB memory) 부터 x1.32xlarge (CPI 128, 1952 GB) 까지 다양하게 제공하므로 필요한 사양의 EC2 인스턴스(instnace)를 선택해서 사용하면 됨(사양이 높을수록 비쌈)
  • VPC(Virtual Private Cloud)
    AWS 네트워크 망 안의 사용자 전용의 사설 네트워크 망(엄청나게 큰 AWS 클라우드의 일부를 사용자에게 떼어주는 것)
  • S3(Simple Storage Service)
    파일을 쉽게 저장할 수 있는 공간을 제공하는 서비스
    파일,코드 등 업로드 및 공유(DB에 넣을 자료들)
    파일을 저장 할 수 있을 뿐만이 아니라 파일마다 고유 주소를 부여해주기 때문에 S3에 저장한 파일을 웹상에서 쉽게 읽어들일 수 있음
    주로 사이트상의 이미지들을 저장하고 사이트에서 읽어들여 렌더링 해주는데 사용
  • CloudFront-CDN(Content Deliveery Network)
  • Route 53-DNS(Domain Name System)
    AWS의 DNS 서비스
    API 시스템을 실제 도메인과 연결 시키주는 기능을 제공
  • RDS (Relational Database Service)
    클라우드에서 데이터베이스 관리
    AWS의 database 서비스
    사용자가 직접 서버를 생성해서 데이터 베이스를 설치하고 설정하고 관리 하지 않아도 됨
    비용도 더 저렴. 사용자가 직접 데이터 베이스를 설치하고 운영하는 것보다 RDS를 사용하는것이 더 저렴함.
  • Load Balancer
    HTTP 요청들을 여러 서버에 분산할때 사용
    서버로 들어오는 트래픽을 골고루 여러 개의 머신으로 전달(부하를 분산)
    HTTP 요청이 많을때는 서버 하나만으로 모두 처리하기 힘들기 때문에 서버 수를 늘리는것이 일반적임. 그러므로 여러 서버를 실행하고 로드발런서가 HTTP 요청들을 서버들에 분산 해주는 형태로 시스템을 구성함
profile
Back-end Junior Developer

0개의 댓글