Traditional IT
서점으로 시작한 아마존이 성공한 이유는 미국의 교과서를 판매하면서부터였다.(Garage Sell)
마찬가지로 과거에는 개인이 직접 서버를 두고 관리했으며, 회사는 Datacenter와 계약을 체결했다.
Traditional IT 방식의 문제점
- 막대한 Datacenter 렌트 비용 부담(monthly, yearly basis contract)
- Power supply, cooling, maintenance 비용 부담
- 회사 서비스 규모 확장에 따른 새로운 하드웨어(서버) 추가 혹은 교체 시 시간이 많이 소요됨
- 서비스 확장 방식 2가지
- scale up: 서버의 사양을 업그레이드
- scale out: 서버의 규모를 늘림
- 확장하는데 제한사항 많음
- 현재 유지되는 인프라를 24/7 모니터링할 인원 고용 필요
- 천재지변에 대응하기 어려움(지진, 화재, power shutdown 등)
Cloud Computing
"구름에 서버를 띄운다"
인터넷만 있으면 장소와 시간에 구애받지 않고 서버를 관리할 수 있다.
- IT 리소스를 인터넷을 통해 on-demand로 제공해주는 서비스
- Cloud 서비스를 사용한만큼만 지불하면 되는 pay-as-you-go pricing이 적용됨(minute, hour basis)
3. 정확하게 필요한 타입과 크기의 리소스를 지정하여 사용할 수 있음
4. 기존보다 간편하게 서버, 스토리지, 데이터베이스 등에 접근가능한 솔루션을 제공
클라우드가 해결해주는 문제들
- Flexibility: 유동적으로 원하는 리소스의 타입과 사이즈를 변경 가능
- Cost-Effectiveness: pay-as-you-go
- Scalability: 쉽게 새로운 리소스를 추가할 수 있으므로 확장성이 용이
- High-Availability and Fault-Tolerance: 글로벌하게 확장되어있는 인프라
- High-Availability(고가용성): 항상 이용가능함(ex: 페이스북, 유튜브, 구글 등)
- SLA AWS: 4 nines, 5 nines 등의 가용성을 보장하고 이것이 충족되지 않을 시 보상안까지 마련
- Agility: 빠르게 개발하고 테스트하여 사용할 수 있는 소프트웨어 어플리케이션
클라우드 서비스의 예
Gmail, Netflix(video on demand), Dropbox(cloud storage service)
Amazon Web Services(AWS)
Why AWS?
- Cloud Computing의 장점을 그대로 혹은 그 이상
- 간단한 가입 프로세스
- Amazon의 Brand Value
- Stability - 엄청난 규모에도 불구하고 굉장히 안정적
- 다양한 서비스들
- Enterprise IT, Backup & Storage, Big Data Analytics
AWS - Key Services
- EC2(Elastic Compute Cloud) - 몇 분만에 구동 가능한 가상 서버
- VPC(Virtual Private Cloud) - AWS 네트워크망 안의 사용자 전용 사설 네트워크망
- S3(Simple Storage Service) - 파일 업로드 및 공유(이미지 저장에 사용)
- CloudFront - CDN(Content Delivery Network) 실제 서버는 미국에 있으나 캐싱을 이용해 latency를 획기적으로 줄임
- Route53 - DNS(Domain Naming Service) 네이버는 "naver.com" 이라는 도메인을 구매하여 사용함으로써 리퀘스트에매번 ip주소를 붙여야하는 번거로움을 줄임
- RDS(Relational Database Service) - 클라우드에서 데이터베이스 관리
- ELB(Elastic Load Balancing) - 서버로 들어오는 트래픽을 골고루 여러 개의 머신으로 전달
** 추가학습내용 :
- 로드 밸런싱 알고리즘
- 주소창에 google.com 을 입력하고 엔터를 치면 일어나는 일련의 과정들 설명해보기