728x90
✨ 이 글은 [ 코드프레소 Java 웹 개발 체험단 활동 ] 내용입니다 ✨
💜 코드프레소 이러닝 강의 수강 중 - 처음 시작하는 SQL 프로그래밍 💜
😎 아래의 링크를 통해 프리미엄 IT 교육 서비스, 코드프레소를 확인해보세요 😎
<클라우드 컴퓨팅 개요>
비효율적인 전통적 자원관리
- 비즈니스에서 IT 기술 및 자원은 중요
- 전통적인 IT 자원 관리는 비효율적
전통적 IT 자원 관리
- 클라우드를 도입하게 되면 위의 전 과정을 대신 해주기 때문에 편리하다!
- 넷플릭스 또한 글로벌 진출의 배경이 클라우드 도입이었다!
Summary
- Cloud Computing은 현재 가장 Hot한 기술이다
- Cloud의 도입은 기업으로 하여금 사업의 본질에 집중할 수 있게 한다
- 기업은 경영의 효율성을 극대화하기 위해 Cloud를 도입한다
<클라우드 컴퓨팅 개념과 장점>
Cloud Computing 이란?
- 인터넷을 통해 가상화 된 컴퓨터의 IT 리소스를 제공하는 것
- 인터넷 기반 컴퓨팅의 일종으로 정보를 자신의 컴퓨터가 아닌 인터넷에 연결된 다른 컴퓨터로 처리하는 기술을 의미한다
IT 자원/리소스?
- CPU, 메모리, 스토리지, 네트워크 등을 말한다
Cloud Computing 개념
- 다양한 디바이스를 통해서 목표로 하는 작업을 처리할 때, 로컬 컴퓨터의 자원을 사용하는 것이 아닌 인터넷에 연결된 다른 컴퓨터의 자원(CPU, 메모리, 스토리지, 네트워크) 등을 사용하는 것이다
Cloud 용어의 기원
- 존재는 하지만, 복잡하면서 굳이 알지 않아도 되는 것을 구름으로 추상화한 것에서 유래하였다
- 예를 들어 우리는 인터넷을 알긴 하지만, 어떻게 동작하는지는 몰라도 사용할 수 있는 것과 유사하다
Cloud의 가장 큰 특징
- 컴퓨팅 자원을 원할 때, 원하는 만큼만 사용하고, 사용한 만큼만 요금을 지불한다
- ex) 따릉이, 쏘카 등...
X As A Service
- X를 서비스 형태로 제공받고 사용료를 지불하는 형태
- 클라우드도 이 중 하나에 속한다
- Computing Resource As A Service
- IT Resource As A Service
- 컴퓨터 자원을 서비스로 제공받는다
Computing Resource
- 주요 Computing Resource는 무엇인가?
- Computing Resource를 왜 Service 형태로 제공받아야 하는 걸까?
Computing Resource와 Server
- 인터넷은 Server와 Client로 이루어져 있다
- Client : 요청을 하고 요청에 대한 결과를 받는다
- Server : 요청을 받아서 적절하게 처리 후 결과를 응답한다
- Computing 세상에서 Server도 마찬가지로 요청을 받아 처리를 한 후 결과를 준다
- Internet 세계에서 Server가 핵심 Computing Resource이다
Cloud를 도입하면!
- Cloud를 도입하면 Computing Resource에 대한 탄력적 대응이 가능하다
Summary
- Cloud Computing은 인터넷으로 연결된 다른 Computing 자원을 사용하여 작업을 처리하는 것이다
- Cloud Computing은 Computing Resource As A Service의 개념이다
- Cloud Computing 사용으로 자원을 수요에 탄력적으로 사용 가능하다
<클라우드 컴퓨팅의 주요 특징>
Cloud Computing의 4가지 특징
- On Demand
- 대규모 확장성
- 종량제 과금
- 관리 편의성
특징 1 - On Demand
- 예시
- Water On Demand : 수도꼭지만 틀면 물이 나옴
- Video On Demand : 비디오 대여점과 달리 사용자가 원할 때 바로바로 비디오 시청이 가능(넷플릭스)
- 클라우드의 경우
- Computing Resource On Demand
- Computing 자원도 내가 원할 때 언제든지 쓰자!
특징 2 - 대규모 확장성
- 수요에 따른 서버 대규모 증설이 가능하다
- 클라우드 사업자가 대규모의 Computing 자원을 미리 구축해놓는다
- AWS는 전세계 주요 도시에 컴퓨팅 자원을 구축해놓았다
- 따라서 클라우드 사용자는 원하는 대로 바로 서버 증설이 가능하게 된다!
특징 3 - 종량제 과금
- 인터넷 비즈니스를 시작하려면 서버 구매, 운영, 네트워크 등 다양한 초기 비용이 발생하게 된다
- 하지만 Cloud 서비스는 사용한 만큼만 지불하면 된다
- 초기 비용이 낮아 Risk를 줄일 수 있다
특징 4 - 관리의 편리성
- 서버를 직접 구매, 관리하려면 시간과 자금이 필요하다
- 전통적 IT 자원 관리 방법을 위해서는 해당 전문가가 필수다!
- 서버, 네트워크, 보안 등을 직접 설정하고 관리해야 한다 -> 이 또한 초기 자금에 포함되어 부담된다!
- Cloud 도입 초반에는 보다 효율적인 관리가 가능하다
- Cloud 사업자들이 IT 자원 관리에 필요한 기능을 제공한다
- 물론, 전문적인 운영을 위해서는 Cloud 전문가가 필요하지만, 사업 초반에는 훨씬 유용하다
Summary
- Cloud Computing은 On Demand, 대규모 확장성, 종량제 과금, 관리의 편의성의 4가지 주요 특징이 존재한다
- On Demand, 대규모 확장성 : 원하는 시점에 대규모로 IT 자원의 확장이 가능한 특징이다
- 종량제 과금 : 사용한 만큼만 지불하는 특징이다
- 관리의 편의성 : Cloud 사업자들이 IT 자원 관리 기능을 제공하여 초기 관리가 용이하다는 특징이다
<클라우드 컴퓨팅의 종류>
Cloud Computing 분류 기준
- Service Model
- InfraStructure as a Service
- Platform as a Service
- Software as a Service
- On Premise (분류 기준은 아니지만 관련 개념)
- Deployment Model
- Public Cloud
- Private Cloud
- Hybrid Cloud
- Community Cloud
짜장면을 통한 클라우드 예시
Cloud Service Model
- 오른쪽으로 갈수록 사용자가 관리해야 할 것이 적어진다
- IaaS - 컴퓨터를 제공하는 형태
- PaaS - code만 개발해서 배포하면 서비스되는 환경을 제공하는 형태
- SaaS - 돈만 내면 모든 것을 제공하는 형태
- 그 외에도 다양한 모델이 존재한다
- Backend as a Service
- Funtion as a Service
- Serverless
IaaS - Infrastructure as a Service
- IT 기본 자원만 제공
- Server, Storage, Network
- 새로 컴퓨터 하나 구매하는 개념 - OS가 설치되지 않은 컴퓨터
SaaS - Software as a Service
- 모든 기능이 동작하는 SW를 제공한다
- 네이버 클라우드
- 구글 드라이브
- 구글 캘린더
- 네이버 메일
- Office 365
- Dropbox
- ERP, CRM ...
PaaS - Platform as a Service
- IaaS에 OS, Middleware, Runtime을 추가한 모델
- Middleware : RDBMS 등
- Runtime : JDK, Python 등 프로그램이 작동하는 환경
- 개념의 범위가 가장 넓어서 특정 지어 정의내리기가 어렵다
- 일반적으로 개발자를 대상으로 한다
- 개발자가 코드 개발을 해서 올리면 다른 것들은 신경쓰지 않고 고객에게 서비스할 수 있는 형태
- AWS Elastic Beanstalk, Google App Engine
Deployment Model
- Cloud를 실제 어떠한 형태를 구축하는지에 대한 View
- 종류
- Public Cloud
- Private Cloud
- Hybrid Cloud
- Community Cloud
Public Cloud
- Cloud 서비스를 필요로 하는 사용자는 누구든지 사용이 가능하다
- 누구나 사용한 만큼의 비용만 지불하면 된다
- Cloud 사업자가 IT 자원을 서비스로 제공한다 (AWS, Google 등)
Private Cloud
- 기업 및 기관 내부에서만 사용 가능한 Cloud Computing 환경을 구축한다
- 내부 인원만 사용이 가능하며, 해당 기업/기관에 속하지 않은 사람은 사용 불가
- 이는 기업 자체에서 구축해야 하며 구축 난이도는 높지만, 보안/법적 규제 등의 이유로 사용한다
- 정부 기관, 관공서 등에서는 반드시 Private Cloud만 사용해야 한다
Hybrid Cloud
- Public/Private Cloud를 조합해서 사용하는 형태이다
- 보안이 중요한 시스템은 Private Cloud에, 그 외 시스템은 Public Cloud를 사용 가능하다
- Private Cloud를 주로 사용하되 예상치 못한 수준의 트래픽이 몰리는 경우 Public Cloud로 확장한다
- 다양한 시나리오가 존재하며, 최근 기업들이 가장 관심갖는 형태이다
Summary
- Cloud Computing의 분류 기준은 Service Model과 Deployment Model이 존재한다
- Service Model은 IaaS, PaaS, SaaS로 분류한다
- Deployment Model은 Public, Private, Hybrid Cloud로 분류한다
<클라우드 컴퓨팅의 주요 용어>
Cloud 주요 용어
- Data Center (데이터 센터)
- Region (지역)
- Availability Zone (가용 영역)
- Virtualization (가상화)
Data Center
- 수많은 서버들을 한 데 모아 네트워크로 연결해 놓은 시설
- IDC - Internet Data Center
- CDC - Cloud Data Center
- Server Hotel 이라고도 불린다
- Data Center는 Cloud의 토대가 된다
- Cloud 산업이 커질수록 더 많은 Data Center가 구축되는 중이다
- Rack(랙) - 서버 또는 네트워크 장비들이 들어가는 프레임
- 랙 마운트형 서버 - 랙 안의 층들이 하나의 서버가 된다
- 랙 마운트형 서버를 사용하면 공간을 더욱 효율적으로 사용할 수 있다
- Data Center에서 중요한 관리 포인트는 발열 관리이다
- Facebook은 추운 날씨의 스웨덴에 Data Center를 건립하였다
- Naver는 NAMU라는 벽에 찬물을 흐르게 하고 바람을 통하게 하여 기화 작용으로 온도를 낮추는 기술을 사용한다
Region
- Region은 Data Center가 위치한 지역을 의미한다
- 일반적으로는 도시를 지칭한다
- IT 리소스를 생성할 Region은 선택이 가능하다
- 한국에서도 전세계 데이터 센터의 자원을 생성할 수 있다
- Region 선택은 서비스 성능에 큰 영향을 미친다
- 대상 고객의 지역과 자원을 생성할 Region이 최대한 가까워야 한다
- 가까울수록 서비스의 성능이 좋아지게 된다
- 한국 고객 대상 - 서울 Region에 자원 생성
- 미국 고객 대상 - 미국 서부/동부 Region에 자원 생성
- Cloud 사업자 선택 시 서비스 대상 국가에 Region 선택 가능 여부 확인이 필요하다
- 자원 사용 비용이 Region 마다 상이하다
- 지대, 세금 등이 국가마다 차이가 있다
Availability Zone
- 하나의 Region은 두 개 이상의 Availability Zone으로 구성된다
- Availability Zone은 가용 영역이라고도 불리며 줄여서 AZ라고 표시한다
- 하나의 AZ는 하나의 Data Center가 된다
- Availability (가용성) : 시스템이 정상적으로 가동되는 상태
- 서비스를 단일 Data Center(AZ)에서만 운영하면?
- 지진, 번개, 정전 등으로 Data Center(AZ) 장애가 발생할 수 있다
- 그럼 서비스는 해당 Data Center(AZ)가 복구될 때까지 접속 불가
- => Availablity 낮음
-
- 특정 Data Center에 문제가 생겨도 다른 Data Center에 접속이 가능하다
- => Availablity 높음
- AZ는 장애에 대해 Availability를 높이기 위한 장치이다
- 하나의 Region 내에서 다수의 AZ에 서비스를 분산하여 높은 Availabilty를 만족시킨다
Virtualization(가상화)
- 가상화는 소프트웨어로 가상의 하드웨어를 생성하는 기술이다
- 가상의 하드웨어는 VM - Virtual Machine 이라고도 표현한다
- Cloud 서비스에서 서버를 사용할 때, 일반적으로 물리적인 하나의 서버가 아닌 가상화 된 서버를 제공받는다
- 즉, 하나의 하드웨어를 여러 개의 가상 머신으로 쪼개서 사용하는 것이다
Virtualization(가상화)의 장점
- 예시
- 58평 아파트에 사람이 혼자 살면 비효율적이다
- 방 3개를 다른 사람한테 임대 -> 같이 사는 게 불편하다
- 58평 아파트를 가벽을 세워 4개의 집처럼 만들어 4명이 같이 거주한다
- 효율성이 증가하고, 서로 간섭받지 않는다
- 컴퓨팅 자원 관점에서 보면, 하드웨어를 보다 효율적으로 사용할 수 있게 된다!
Summary
- Data Center는 서버와 네트워크 자원 등을 제공하는 시설이다
- Region은 Data Center가 구축된 국가/도시이다
- Availablity Zone은 고가용성을 위해 Region 내에 분산된 Data Center이다
- Virtualization은 SW 기술로 가상의 Machine을 생성하는 기술이다
<클라우드 컴퓨팅 서비스 사업자>
국내외 주요 클라우드 사업자
- Amazon Web Service
- Azure
- Google Cloud Platform
- IBM Bluemix
- Naver Cloud Platform
- NHN Entertainment Toast Cloud
- SK Cloud Z
- KT Cloud
- Alibaba Cloud
- Tencent Cloud
Global 시장 점유율
국내 시장 점유율
Service Model 별 시장 규모
AWS
- 클라우드 시장의 최고 강자
- 2006년에 첫 서비스 오픈
- 22개의 Region과 69개의 AZ 보유
- 서울 Region에 3개의 AZ 보유
- 총 212개의 서비스 제공
Azure
- Microsoft에서 출시한 클라우드 서비스
- 글로벌 점유율 2위
- 국내에는 수도권과 부산, 2군데의 데이터 센터를 보유하고 있다
- 모든 분야에 대한 서비스를 보유하고 있지만, PaaS 서비스 및 DevOps 서비스에 집중하고 있다
Google Cloud Platform
- Google의 클라우드 서비스
- Google의 운영 노하우가 많이 담겨 있다
- 빅데이터와 인공지능과 관련된 서비스가 강점이다
- 빅데이터 분석
- 머신러닝, 딥러닝 서비스
- 2020년 2월에 서울 Region 출시
Naver Cloud Platform
- 네이버에서 출시한 클라우드 서비스
- 네이버/라인의 글로벌 운영 노하우
- 해외 Region 보유
- 국내 서비스 중에서는 가장 많은 기능을 제공한다
- 인공지능 관련 서비스 다수
- https://www.ncloud.com/
Toast Cloud
- NHN Entertainment에서 출시
- NHN의 게임 운영 노하우가 반영되었다
- 게임과 관련된 서비스가 많다
- Dooray라는 협업 서비스를 제공한다
- https://www.toast.com/
Alibaba/Tencent Cloud
- 중국 기업인 Alibaba와 Tencent가 출시한 Cloud 서비스
- 중국은 작은 서비스도 트래픽의 규모가 다르다
- Tencent Cloud는 국내 데이터 센터가 존재한다
- 중국 진출하는 게임 업체들은 Tencent Cloud를 사용한다
Summary
- 국내외 다수의 클라우드 서비스들이 존재한다
- Global로는 AWS와 Azure가 양강 체제
- 국내 IaaS 시장은 AWS가 압도적인 시장 점유율 확보
- 국내 클라우드 서비스들도 지속적인 투자 및 서비스를 개선 중에 있다
728x90
'코드프레소 체험단 > 클라우드 컴퓨팅' 카테고리의 다른 글
[클라우드 컴퓨팅 첫 걸음] AWS 활용한 클라우드 컴퓨팅 실습 (0) | 2022.03.02 |
---|
댓글