[AWS] 클라우드 컴퓨팅
1. 클라우드 컴퓨팅이란, 사용이유
정의
IT리소스를 인터넷을 통해 온디맨드로 제공하고 사용한 만큼만 비용을 지불하는 것을 의미한다.
- 온디맨드 : 수요에 반응
서버-클라이언트 아키텍처
서버 없이 통신을 구현한다면 아래와같이 복잡한 통신을 구현해야한다.
문제
- 한개라도 통신이 뻑나면 제대로된 서비스가 구현되지 않음
- 너무 복잡함
그래서 서버-클라이언트 아키텍처가 필요된다.
이러한 연산은 클라이언트에서 저장하면 해킹의 위험이 있으므로 서버에서 처리해야한다.
그래서 원래 대부분의 기업들은 이러한 연산을 하는 서버들을 모아서 데이터센터를 구성한다.
데이터 센터
데이터센터의 구성요소는 다음과 같다.
- 하드웨어
- 네트워크장비
- 전원장치
- 전기
- 백업발전기
- 환경제어장치
- 운영인력
- 기타 인프라(보안, 지문인식장치, 화장실, 공간 등등등)
단점
- 비싸다. 초기비용이 매우매우 비싸다
- 또한 유지보수 비용도 매우 많이 필요로된다.
- 수요에 상관없이 보유해야하므로 악성재고가 될 수 있다.
- 또 구축시간이 너무 느리다. 설치 시간이 너무 오래 걸린다.
그래서 클라우드 컴퓨팅이 생겼다.
인터넷으로 제공된 컴퓨팅파워로 여러가지 서비스를 사용한다.
클라우드의 장점
- 위에 언급한 자본비용을 가변비용으로 대체한다.(탄력적 비용)
- 막대한 초기비용대신 쓴 비용만큼만 지불한다.
- 규모의 경제로 이득을 누릴 수 있다.
- 용량추정이 불필요하다. AWS가 알아서 조절해준다.
AWS가 없다면 위의 파란 영역은 모두 잉여자원이 되어 낭비된다.
aws는 온디맨드로 사용량에따른 최적화를 이룰 수 있다.
- 몇번의 클릭으로 리소스를 확보할 수 있어서 개발비용이 절감된다.
- 인프라관리가 아닌 비즈니스에만 자원을 집중할 수 있다는 장점이 있다.
2. 클라우드 모델
클라우드 컴퓨팅 모델: 클라우드에서 무엇을 제공하는가?
1. IaaS(Infrastructure as a Service)
인프라만 제공한다.
OS를 직접 설치하고 필요한 소프트웨어를 개발해서 사용한다.
가상의 컴퓨터를 하나 임대하는 것과 비슷하다
ex) AWS EC2
2. PaaS(Platform as a Service)
Runtime은 APP을 실행하기 위한 Runtime을 의미한다.
바로 코드만 올려서 돌릴 수 있도록 구성된다.
Firebase, Google App Engine등이 있다.
3. SaaS Software as a Service
서비스 자체를 제공한다.
다른 세팅 없이 서비스만 이용한다.
Gmail, DropBox, Slack, Google Docs등이 있다.
클라우드 컴퓨팅 배포 모델: 클라우드 컴퓨팅을 어떻게 제공하는가?
공개형
모든 부분이 클라우드에서 실행된다.
낮은 비용으로 높은 확장성을 가진다.
대표적인 것이 AWS이다.
폐쇄형
직접 자신이 사용할 클라우드를 구성하는 것이다.
높은 수준의 커스터마이징이 가능하나, 초기비용, 유지보수 비용이 비싸지만
보안은 매우 높다,
혼합형
폐쇄형과 공개형의 혼합으로, 전환하는 과도기에 사용한다.
폐쇄형의 백업으로 사용되기도한다.
댓글남기기