Study/코드프레소 java 웹개발 체험단

[클라우드 컴퓨팅 첫 걸음]5주차: 클라우드 컴퓨팅의 개념과 AWS이해

공부하기 좋은 날 2022. 3. 18. 21:02

이번 강의에서는 클라우드 컴퓨팅에 대해 배웠다. 기존에 모호하게 알고있던 클라우드의 개념을 이번 강의를 통해 확실히 개념을 정리할 수 있어 유익했다. 그리고 주요 클라우드 서비스인 AWS도 공부하였다. 2학년때 배웠던 웹 프로그래밍에서 AWS를 이용하여 웹페이지 만들기 실습을 한 적이 있는데, 그때는 잘 이해가 가지 않았던 탄력적 IP등에 관한것도 친절한 강좌로 다시한번 상기할 수 있었다. 강의를 들으며 내용을 정리해보았다.

 

1. 클라우드 컴퓨팅 핵심 개념

- 클라우드 컴퓨팅은 기업이 필요로 하는 핫한 기술이며 이러한 기술은 사업의 본질 집중, 경영의 효율성 극대화에 중요함.

 

2. 클라우드 컴퓨팅의 정의와 장점

-  Cloud Computing : 인터넷을 통해 다른 가상 컴퓨터 IT리소스(CPU, RAM, SSD등)를 제공받아 사용하는 것.

- 특징: 컴퓨팅 자원을 원할때, 원하는 만큼 사용하고, 사용한 만큼만 요금을 지불함.

- x As a Service  :  socar = Mobility As A Service / 클라우딩컴퓨팅 = IT리소스 As A Service

 

인터넷 세상은 서버와 클라이언트로 이루어져있다. 클라이언트가 서버에게 요청을 하면 서버는 요청을 받아 적절하게 처리 후 응답한다. 이처럼 인터넷 세상에서 서버는 핵심 컴퓨팅 자원이다. 서버는 고객이 많을수록 아주 많이 필요하다. 

서버 자원의 준비 양과 실제 양이 불일치하다면 사용자가 접근하지 못할 수 있음

이때 cloud를 도입하면 수요에 따라 필요 자원(서버)를 탄력적으로 일치할 수 있다.!!

 

3. 클라우드 컴퓨팅의 주요 특징

1) On Demand

- 우물을 기르는게 아닌 수돗물처럼 원할때 언제든지 사용하고, 필요한만큼만 사용

 

2) 대규모 확장성

- 클라우드를 사용하면 10분안으로 서버 10000대 준비 등이 가능. 수요에 따라 서버 구축이 즉시 가능.

aws는 전 세계 주요 도시에 컴퓨팅 자원을 구축해둠

 

3) 종량제 과금

- 클라우드 서비스는 사용한 만큼만 지불

초기 비용이 낮아 risk를 줄일 수 있음

 

4) 관리의 편의성

- 서버를 직접 구매하고 관리하려면 해당 전문가가 필수적이고 해야할것도 많음

클라우드 없이 직접 서버를 구매했을 때 해야할일

클라우드를 사용하면 cloud 사업자들이 it자원 관리기능을 제공하여 사업 초기 관리가 용이

 

[클라우드 컴퓨팅의 종류]

- 서비스 모델

1) On Premise : 맨 처음부터 다 하는 것

2) IAAS : IT 기본 자원만 제공. 새로 컴퓨터를 구매하는 개념

3) PAAS: 모든 기능이 동작하는 SW를 제공. 개발자를 대상으로 하며 코드 개발만 해서 올릴 수 있는 상태. 예) AWS

4) SAAS : 모든것을 제공 받음  예) 네이버 클라우드, 구글 드라이브 등

 

 

- Deployment Model

1) public cloud : 누구나 사용 가능

2) private cloud : 보안이 중요한 기업 등 대상

3) hybrid cloud: 1과 2가 합쳐진 것

 

 

4. 클라우드 컴퓨팅의 주요 용어

1) 데이터 센터 : 수많은 서버들을 한데 모아 네트워크로 연결해둔 시설. 데이터 센터는 클라우드의 토대임.

rack - 서버 또는 네트워크 장비들이 들어가는 프레임. 

발열관리 : 페이스북 - 추운 스웨덴에 건립/ 네이버 - namu라는 친환경 기술 이용

 

2) Region : 데이터 센터가 위치한 지역

- 한 자리에서 전 세계의 서버 접근가능

- region선택은 서비스 성능에 큰 영향을 미치며, 대상 고객의 지역과 자원 생성할 region이 최대한 가까워야 성능이 빠르게 됨.

- 자원 사용 비용이 region마다 상이하며 세금 차이가 있음

 

3) Availability Zone: 하나의 region은 두개 이상의 AZ(Availability Zone)로 구성됨

가용영역이라고 불리며 가용성이란 시스템이 정상적으로 가동되는 상태.

서비스를 다수의 AZ에 분산하여 사용하면 지진, 번개 등에 대비해 한가지의 AZ에 장애가 생겼을 때 다른 AZ에 접근 가능하여 대비 가능

 

4) Virtualization(가상화) : 소프트웨어로 가상의 하드웨어를 생성하는 기술. cloud에서 서버를 사용할 때 하나의 서버가 아닌 하나의 서버를 여러개로 가상화 한 서버를 제공하여 효율적으로 사용.

 5. 주요 클라우드 사업자

- 국내외로 다수의 클라우드 서비스들이 존재하며 Global로는 AWS와 Azure가 양강 체제이다.

- 국내 IaaS 시장은 AWS가 압도적인 시장 점유율 확보

- 국내 클라우드 서비스들도 지속적인 투자 및 서비스 개선중

 

 

6. AWS웹서비스 소개 및 회원가입

- 압도적 1위 클라우드 시장점유율을 갖고 있음

 

- 다양한 서비스 제공

- 클라우딩에 대한 각종 자격증도 있음

- 회원가입

https://portal.aws.amazon.com/billing/signup#/start/email

 

AWS Console - Signup

 

portal.aws.amazon.com

 

 

7. AWS Management console과 예산설정

- 불필요한 과금 피하기 위해 

서비스 메뉴에서 budget을 검색하고 예산을 설정함

 

8. EC2개념

- EC2(Elastic Cloud Compute) : AWS의 가장 기본적인 자원, 가상 머신 상에 OS가 설치되어있는 형태.

- EC2인스턴스 : CPU, Memory, storage에 따라 다양한 인스턴스 타입이 존재함.

- 서비스의 종류에 따라 요금이 다름

- AMI(Amazon Machine Image) : 가상머신은 image를 활용하여 생성됨.

그 외 개념들

9. 서버 생성

1) 서비스 메뉴에서 ec2를 클릭

2) 인스턴스 시작 메뉴의 주황 시작 버튼 클릭

3) ami(amazon machine image) 선택 - 프리티어 사용 가능을 선택하면 무료로 이용

4) 인스턴스, 스토리지, 태그, 보안그룹 순서에 따라 원하는걸 선택한 후 생성한다.

5) 인스턴스 확인하기

10. 서버 접속

- 우분투

1) puttygen, moba x term 프로그램을 다운로드

2) 인스턴스 연결

 

-윈도우

1) ami 선택, 인스턴스 선택, 스토리지 추가, 태그 추가, 보안그룹 구성, 검토의 과정을 거쳐 인스턴스를 만듬

2) 키페어를 받고 인스턴스의 암호를 생성

3) remote 하여 서버에 접속하여 확인

 

 

이렇게 서버를 만들어 html등을 포스팅할 수 있다.

 

 

- 모든 사진의 출처: 코드프레소

- 코드프레소 Java 웹 개발 체험단 활동 중
- 코드프레소 [클라우드 컴퓨팅 첫 걸음]강의 수강 중
- 코드프레소 URL: https://www.codepresso.kr/