Az-900 : CloudComputing
Az-900 : CloudComputing
클라우드 컴퓨팅
-
클라우드 컴퓨팅은 스토리지 공간이나 CPU 주기와 같은 리소스를 다른 회사의 컴퓨터에 대여하는 서비스이며 사용한 만큼의 요금만을 지불합니다.
-
클라우드 공급 기업은 작업을 싱행하는 데 필요한 실제 하드웨어와 이 하드웨어를 최신 상태로 유지할 책임이 존재하며, 제공되는 컴퓨팅 서비스는 클라우드 공급자에 따라 달라지며, 일반적으로는 하단의 항목이 기본적으로 포함됩니다.
-
Compute power : 리눅스 서버나 웹 프로그램
-
Storage : 저장 및 데이터베이스 역할
-
Networking : 클라우드 제공사와 우리 회사의 사이의 안전한 연결
-
Analytics : 이치 혹은 성능 데이터를 시각화
클라우드 컴퓨팅 서비스
- 클라우드 컴퓨팅의 목적은 소규모 신생 기업이든 대기업이든 상관없이 비즈니스를 보다 쉽고 효율적으로 운영할 수 있도록 만드는 것으로, 이러한 요구를 충족시키기 위해 클라우드 컴퓨팅 공급자는 광범위한 서비스를 제공합니다.
컴퓨팅 기능
-
이메일을 보내거나, 인터넷에서 예약을 하거나, 온라인으로 지불을 하거나, 심지어 Microsoft 학습 모듈을 사용할 때도 각 요청을 처리하고 응답을 반환하는 클아우드 기반 서버와 상호작용하게 되며, 기본적으로 인터넷을 구성하는 다양한 클라우드 공급 기업이 제공하는 컴퓨팅 서비스를 사용합니다.
-
클라우드 컴퓨팅을 사용하여 솔루션을 빌드하는 경우 리소스 및 요구 사항에 따라 작업을 수행하는 방법을 선택할 수 있습니다.
-
여기에서 컴퓨팅 기능의 종류에는 기본적으로 VM, 컨테이너, 서버리스 컴퓨팅으로 분리할 수 있습니다.
-
VM
- VM은 클라우드 기업의 물리적 서버에서 가상 머신을 생성하여 해당 서버를 직접 사용하여 생성하는 서비스입니다.
-
컨테이너
-
컨테이너는 애플리케이션에 일관적이고 격리된 실행 환경을 제공하며, 게스트 운영체제가 필요하지 않은 점에서는 VM과 흡사하지만, 대신 애플리케이션과 몯느 해당 종속성이 컨테이너에 패키지된 다음, 표준 런타임 환경이 앱을 실행하는 데 사용됩니다.
-
기본적으로 VM과의 가장 큰 차이는 운영체제의 유무에 대한 차이입니다.
-
-
서버리스 컴퓨팅
-
서버리스 컴퓨팅은 서버를 생성, 구성, 유지관리하지 않고 애플리케이션 코드를 실행하는 것이 가능합니다.
-
서버리스 컴퓨팅의 핵심개념은 애플리케이션이 일부 작업에 의해 트리거될 때 실행되는 별도의 기능으로 분리된다는 점이며, 이는 자동화 작업에 이상적입니다.
-
서버리스 모델은 기본적으로 사용하는 처리 시간에 대해서만 페이를 지불한다는 점에서 VM과 컨테이너와 성격이 다릅니다.
-
-
- 컴퓨팅 서비스 비교 다이어그램
스토리지
-
대부분의 디바이스 및 애플리케이션은 데이터를 읽고 사용합니다. 이러한 모든 경우의 데이터는 데이터를 읽거나, 쓰여지며 이에 딸느 데이터이 유형 및 저장방식은 경우의 마다 다를 수 있습니다.
-
일반적으로 클라우드 공급자는 이러한 모든 유형의 데이터를 처리할 수 있는 서비스를 제공하며, 클라우드 기반 데이터 스토리지는 사용자의 요구 사항에 맞게 확장할 수 있다는 장점이 있습니다.
-
예를 들면 자동적으로 저장공간을 확장 및 줄일 수 있으며 백업 파일을 저장할 수도 있습니다.
왜 클라우드 서비스인가? (클라우드 컴퓨팅의 혜택)
- 기본적으로 클라우드 서비스를 사용하는 것은 기존 비즈니스의 인프라 및 관리 비용을 점가하기 위해 사용하지만, 이는 순전히 선택사항입니다.
- 하단은 클라우드 서비스를 사용하는 이점을 나타냅니다.
-
비용효과적
-
클라우드 컴퓨팅은 종량제 또는 사용량 기반 가격 책정 모델을 제공합니다.
-
즉, 선불 인프라 비용이 없으며, 사용하지 않는 경우 비용이 청구되지 않아 비용을 절약할 수 있습니다.
-
-
확장가능
-
주말과 같은 특정 시간의 수요 또는 워크로드에 따라 사용되는 리소스와 서비스를 늘리거나 줄일 수 있습니다.
-
클라우드 서비스는 수직적, 수평적 크기 조정을 둘다 지원하며 수직적 크기 조정은 Scale UP, 수평적 크기 조정은 Scale OUT이라 합니다.
-
Scale UP은 한 서버에 리소스 추가시키는 것을 의미하며, Scale OUT은 서버를 여러 대 생성하여 트래픽을 분산시키는 것을 의미합니다.
-
이와 같은 기능들을 자동적으로 수행됩니다.
-
-
탄력적
- 수요 급증 또는 급감으로 인해 워크로드가 변경되면 클라우드 컴퓨팅 시스템은 자동으로 리소스를 추가하거나 제거하여 보정이 가능합니다.
-
최신상태
- 클라우드를 사용하면 애플리케이션을 빌드하고 배포하는 중요한 작업에 집중할 수 있습니다. 클라우드를 사용하면 소프트웨어 패치, 하드웨어 설치, 업그레이드 및 기타 IT 관리 작업을 유지 관리해야하는 부담을 줄일 수 있습니다.
-
안정적
- 클라우드는 컴퓨팅 공급자가 안정적으로 데이터를 유지할 수 있도록 백업, 재해 복구 및 데이터 복제 서비스를 제공하며, 장애가 발생하면 백업 구성 요소가 댓니 사용되며, 이를 내결함성이라 합니다.
-
전 세계 어디서든 사용가능
- 클라우드 공급 기업은 전 세계의 다양한 지역에 완벽하게 증복된 데이터 센터를 갖추고 있으며, 이로 가능한 최적의 응답 시간을 제공할 수 있습니다.
-
안전함
- 클라우드 공급자는 대부분의 조직에서 달성할 수 있는 것보다 더 낭느 보안을 제공할 수 있는 광범위한 정책, 기술, 제어 및 전문 기술을 제공합니다.
-
이를 온-프레미스의 환경과 비교해보면 하단의 장점들을 가지고 있습니다.
-
온-프레미스 환경은 고정비용이지만 퍼블릭 환경은 유동적으로 비용우위를 가질 수 있다.
-
온-프레미스 환경에서는 테스트 서버의 세팅에 많은 시간이 걸리지만, 퍼블릭 환경에서는 빠른 시간 내에 세팅이 가능한 생산성의 우위를 가질 수 있다.
-
이미 퍼블릭환경에서는 패키지로 플랫폼을 제공하기 때문에 직접 설치할 필요가 없어 진입장벽이 온-프레미스 환경에 비해서 낮다.
-
-
이와 같이 Azure는 여러 규정 준수 조건 및 요구 사항을 각 나라의 맞춰 설계되어있습니다.
클라우드 컴퓨팅의 주요 개념 및 용어
-
위와 같이 클라우드 컴퓨팅의 가장 큰 특징은 탄력적이라는 면에 있으며, 과거 보안적인 문제도 점차 해결되어 가고 있습니다.
-
하단의 개념들은 현재 클라우드 컴퓨팅의 핵심이 되는 개념들을 나열한 것입니다.
- 내결함성 (Fault tolerance) : 특정 문제가 발생시에 에러를 복구하는 정도
- 고 가용성 (High availability) : 문제가 발생시에도 적은 다운타임으로 서비스를 제공할 수 있는 개념
- 재해 복구 (Disaster recovery) : 물리적으로 자연재해의 영향을 미치지 않는 장소에 서비스에 영향을 주지 않도록 구성하는 개념
- 확장성 (Scalability) : 서비스의 추가 자원이 필요할 시 보다 쉽게 자원을 추가하여 서비스를 제공할 수 있는 개념
- 민첩성 (Agility) : 특정 서비스의 필요 자원에 따라 자원을 추가& 감소를 빠른 속도로 이루는 개념
- 탄력성 (Elasticity) : 확장성과 비슷하다 할 수 있지만, 확장성과의 차이는 여유분의 자원이 남는 서비스의 자원을 수축하여 자원을 효율적으로 관리할 수 있는 개념
- 글로벌 지원(Global reach) : 해외의 데이터 센터들을 활용하여 해외의 서비스를 제공할 수 있다는 개념
- 응답 속도(Customer latency) : 해외의 여러 엔드 유저들에게도 적절한 리소스를 배치시켜 빠른 속도로 서비스를 제공해 줄 수 있는 개념
- 예측 비용(Predictive cost): 클라우드는 기본적으로 사용한 만큼의 과금할 수 있는 구조로 이루어져있어, 적절하게 비용의 에측이 가능하다는 개념
- 보안 (Security) : 각 나라의 지역적인 규제나 정책, 준수사항 등을 만족하도록 구현한다는 개념
규모의 경제
-
규모 경제의 개념은 작은 규모로 운영하는 것에 비해 큰 규모로 운용할 때 효율적으로 작업을 수행할 수 있는 능력을 제공하는 개념입니다.
-
클라우드는 큰 규모로 진행하기에, 낮은 비용 대비 고효율의 제공이 가능하는 것이 가능합니다.
CapEx vs OpEx
-
자본 지출 : Capital Expenditure (CapEx)
-
물리적 인프라에 대한 지출을 선불로 지불
-
시간이 지남에 따라 세금 계산서에서 비용을 공제
-
높은 초기 비용, 투자 가치는 시간이 지남에 따라 감소
-
기본적으로 일반적으로 CapEx 온-프레미스 데이터 센터에는 다음과 같은 비용이 포합됩니다.
-
서버 비용
-
스토리지 비용
-
네트워크 비용
-
백업 및 보관 비용
-
조직 연속성 및 재해 복구 비용
-
데이터 센터 인프라 비용
-
기술 인력
-
OpEx 클라우드 컴퓨팅 비용
-
임대 소프트에어 및 사용자 지정된 기능
-
고정 하드웨어나 용량 대신 사용/ 수요에 따라 요금을 조정
-
사용자 또는 조직 수준의 청구
-
-
이와 같이 CapEx는 시작 단계에서 비용을 계획하기 때문에, 제한된 예산으로 인해 프로젝트를 시작하기 전에 비용을 예측해야 하는 경우에 유용합니다.
-
-
운영 비용: Operational Expenditure (OpEx)
-
수요의 따른 시간, 비용 그래프
-
CapEx와 달리 초기 비용이 아닌, 필요에 따라 서비스 또는 제품에 지출되고 즉시 청구
-
같은 해에 세금 계산서에서 비용을 제공
-
선 결제 비용이 없고, 종량제 사용
-
클라우드의 소비 기반 모델
-
소비 기반 모델 : Consumption-based model
-
선 결제 비용이 존재하지 않음
-
비용이 많은 드는 인프라를 구매하고 관리할 필요가 없음음
-
필요할 시에만 사용하며, 필요하지 않으면 서비스를 중지할 수 있음
-
클라우드 서비스의 종류
퍼블릭 클라우드
-
클라우드 서비스 또는 호스팅 공급자가 소유
-
여러 조직과 사용자에게 리소스와 서비스를 제공
-
보안 네트워크 연결을 통해 접근 (일반적으로 인터넷으르 통해 접근)
-
중요한 데이터 등의 대한 관리문제가 존재할 수 있음
-
특징
-
CapEx 없음
-
응용 프로그램에 빠르게 엑세스가 가능한 민첩성을 가질 수 있음
-
클라우드 공급자가 일정 부분의 책임을 짐
-
소비 기반 모델
-
제한적인 요소로 인해클라이언트의 요구사항을 충족할 수 없는 경우가 발생할 수 있음
-
완전 자유롭게 관리하는 것이 사실상 불가능
-
프라이빗 클라우드
-
클라우드 리소스를 사용하는 조직이 소유 및 운영을 관리
-
조직은 자신들만의 데이터 센터에 클라우드 환경을 구축
-
조직에게 본인들이 제공하는 서비스를 운영할 책이 존재
-
특징
-
제어력
-
보안
-
초기의 CapEx 비용이 존재하며, 유지 관리를 위해 하드웨어를 추가구매할 경우가 발생
-
추가구매로 인한 민첩성이 제한을 받음
-
프라이빗 클라우드는 기본적으로 전문적인 IT 기술 및 전문 지식이 필요
-
하이브리드 클라우드
-
공용 및 사설 클라우드를 결합하여 응용 프로그램이 가장 적합한 위치에서 실행되도록 하는 클라우드 서비스
-
비용적인 측면에서는 높을 수 있음
-
특징
-
유동성
-
준수성
-
설정 및 관리가 복잡해질 수 있으며 전문적인 인재가 필요
-
클라우드 서비스의 유형
- 공동 관리 책임 (Shared responsibility model)
공동 관리 책임의 범위
On Premises
-
온-프레미스는 모든 책임을 사용자가 가짐
-
이아스는 네트워킹, 스토리지, 컴퓨팅 외에는 모든 책임을 사용자가 가짐
-
PaaS
-
사스는 대부분 클라우드 벤더에서 책임을 지며 데이터와 접근권한만을 책임을 가짐
Infrastructure as a Server (IaaS)
-
가장 기본적인 클라우드 컴퓨텅 서비스의 범주 (흔히 우리가 아는 Vm)
-
클라우드 공급자로부터 가상머신, 스토리지, 네트워크 및 운영 체제를 대여
-
네트워크를 통해 프로비저닝 받는 서비스
Platform as a Server (PaaS)
-
소프트웨어 응용 프로그램을 개발, 테스트 미 배포하기 위한 환경을 제공하는 서비스
-
기본적으로 개발환경과 비슷하며 인프라 관리에 신경쓰지 않고, 응용 프로그램을 신속하게 만들 수 있도록 제공하는 서비스
Software as a Server (SaaS)
-
최종 사용자를 위해 중앙에서 호스팅 되고 관리되는 소프트웨어
-
인터넷을 통해 클라우드 기반 앱에 연결하여 사용
각 클라우드 유형의 특징
-
IaaS(유동성)
-
IaaS는 가장 유연한 클라우드 서비스
-
애플리케이션을 실행하는 운영체제를 구성하고 관리할 수 있는 제어력을 가지고 있음
-
-
PaaS(생산성)
-
사용자는 응용 프로글매 개발에만 집중할 수 있음
-
플랫폼 관리는 클라우드 공급자가 처리
-
-
SaaS(종량제)
- 사용자는 자신의 서비스에서 사용하는 소프트웨어에 대한 비용만 지불