[Learning Path] Discuss Azure fundamental concepts

Learning Path details

Learning objectives

Prerequisites

This module is part of these learning paths

What are public, private, and hybrid clouds?

클라우드 컴퓨팅의 세 가지 배포 모델은 ‘public cloud’, ‘private cloud’, ‘hybrid cloud’입니다. 클라우드에 마이그레이션할 때는 각 배포 모델의 다른 측면을 고려해야 합니다.

Deployment model Description
Public cloud 서비스는 공용 인터넷을 통해 제공되고 서비스를 구매하려는 누구에게나 제공됩니다. 서버, 스토리지와 같은 클라우드 리소스는 타사 클라우드 서비스 공급자가 소유하고 운영하며 인터넷을 통해 제공됩니다.
Private cloud 프라이빗 클라우드는 하나의 기업 또는 조직의 선택된 사용자만 독점적으로 사용하는 컴퓨팅 리소스로 구성됩니다. 프라이빗 클라우드는 실제로 조직의 온사이트(온-프레미스) 데이터 센터에 있을 수 있거나, 타사 서비스 공급자가 호스트할 수 있습니다.
Hybrid cloud 하이브리드 클라우드는 퍼블릭 클라우드와 프라이빗 클라우드 간에 데이터 및 애플리케이션을 공유할 수 있도록하여 두 클라우드를 결합하는 컴퓨팅 환경입니다.

Cloud model comparison

Public cloud

Private cloud

Hybrid cloud

What are some cloud computing advantages?

Capital expenses vs. operating expenses

다음 두 가지 유형의 비용을 고려해야 합니다.

자본 비용의 경우, 인프라를 소유하고 있는 경우 구매하는 장비는 대차대조표에 자산으로 기재됩니다. 자본 투자가 이루어졌기 때문에 회계사는 이 트랜잭션을 CapEx로 분류합니다. 시간이 지나면서 자산의 제한된 유효 수명에 따라 자산이 감가 상각 또는 상각 처리됩니다.

반면에 클라우드 서비스는 소비 모델이기 때문에 OpEx로 분류됩니다. 상각할 자산은 없으며 클라우드 서비스 공급자(Azure)가 물리적 장비의 구매 및 수명과 관련된 비용을 관리합니다. 결과적으로 OpEx는 순이익, 과세 소득 및 대차대조표의 관련 비용에 직접적인 영향을 미칩니다.

Cloud computing is a consumption-based model

클라우드 서비스 공급자는 사용량 기반 모델 로 운영됩니다. 즉, 최종 사용자는 사용하는 리소스의 비용만 지불합니다. 무엇을 사용하든 사용한 만큼만 지불합니다.

사용량 기반 모델은 다음과 같은 여러 이점이 있습니다.

What are cloud service models?

클라우드 컴퓨팅을 한동안 사용했다면 다양한 클라우드 서비스 모델을 의미하는 머리글자어인 PaaS, IaaS, SaaS 를 보았을 것입니다. 이러한 모델은 클라우드 공급자와 클라우드 테넌트가 담당하는 서로 다른 수준의 공유 책임을 정의합니다.

Model Definition Description
IaaS Infrastructure-as-a-Service 이 클라우드 서비스 모델은 물리적 서버 관리에 가장 가깝습니다. 즉, 클라우드 공급자가 하드웨어를 최신 상태로 유지하지만 운영 체제 유지 관리 및 네트워크 구성은 클라우드 테넌트가 담당합니다. 예를 들어 Azure Virtual Machines는 Microsoft 데이터 센터에서 실행되는 완전히 작동하는 가상 컴퓨팅 디바이스입니다. 이 클라우드 서비스 모델의 장점은 새 컴퓨팅 장치를 신속하게 배포한다는 것입니다. 새 가상 머신을 설정하는 것은 물리적 서버를 구매, 설치 및 구성하는 것보다 훨씬 빠릅니다.
PaaS Platform-as-a-Service 이 클라우드 서비스 모델은 관리형 호스팅 환경입니다. 클라우드 공급자가 가상 머신 및 네트워킹 리소스를 관리하고 클라우드 테넌트가 애플리케이션을 관리형 호스팅 환경에 배포합니다. 예를 들어 Azure App Services는 개발자가 실제 하드웨어 및 소프트웨어 요구 사항을 신경 쓸 필요 없이 웹 애플리케이션을 업로드할 수 있는 관리형 호스팅 환경을 제공합니다.
SaaS Software-as-a-Service 이 클라우드 서비스 모델에서 클라우드 공급자는 가상 머신, 네트워킹 리소스, 데이터 스토리지, 애플리케이션 등 애플리케이션 환경의 모든 측면을 관리합니다. 클라우드 테넌트는 클라우드 공급자가 관리하는 애플리케이션에 데이터만 제공하면 됩니다. 예를 들어 Microsoft Office 365는 클라우드에서 완전히 작동하는 버전의 Microsoft Office를 제공합니다. 사용자는 콘텐츠만 만들면 되고, Office 365가 다른 모든 것을 처리합니다.

다음 그림에서는 각 클라우드 서비스 모델에서 실행될 수 있는 서비스를 보여 줍니다.

iaas-paas-saas-models

IaaS

IaaS는 가장 유연한 범주의 클라우드 서비스입니다. 애플리케이션을 실행하는 하드웨어를 완벽하게 제어할 수 있도록 하는 것이 목표입니다. 하드웨어를 구입하는 대신 IaaS를 통해 임대합니다.

Advantages (IaaS)

PaaS

PaaS는 IaaS와 이점 및 고려 사항이 동일하지만 몇 가지 추가 이점을 알고 있어야 합니다.

Advantages (PaaS)

Disadvantage (PaaS)

플랫폼 제한 사항. 몇몇 클라우드 플랫폼 제한 사항이 애플리케이션 실행 방식에 영향을 줄 수 있습니다. 어느 PaaS 플랫폼이 워크로드에 가장 적합한지 평가하는 경우 이 영역의 제한 사항을 모두 고려해야 합니다.

SaaS

SaaS는 사용자와 최종 사용자 또는 고객을 위해 중앙에서 호스트 및 관리되는 소프트웨어입니다. 일반적으로 모든 고객이 한 가지 애플리케이션 버전을 사용하고 월간 또는 연간 구독을 통해 라이선스가 부여되는 아키텍처를 기반으로 합니다.

SaaS는 IaaS와 이점이 동일하지만 몇 가지 추가 이점도 알고 있어야 합니다.

Advantage (SaaS)

Disadvantage (SaaS)

소프트웨어 제한 사항. 소프트웨어 애플리케이션의 몇 가지 제한 사항이 사용자의 작업 방식에 영향을 줄 수 있습니다. 소프트웨어를 있는 그대로 사용하므로 기능을 직접 제어할 수 없습니다. 어느 SaaS 플랫폼이 워크로드에 가장 적합한지 평가하는 경우 비즈니스 요구 사항과 소프트웨어 제한 사항을 고려해야 합니다.

Cloud service model comparison

IaaS PaaS SaaS
가장 유연한 클라우드 서비스입니다. 애플리케이션 개발에 집중할 수 있습니다. 종량제 가격 책정 모델
사용자가 애플리케이션을 위한 하드웨어를 구성 및 관리합니다. 클라우드 공급자가 플랫폼 관리를 담당합니다. 사용자는 구독 모델로 사용하는 소프트웨어에 대해 비용을 지불합니다.

다음 차트에서는 클라우드 공급자와 클라우드 테넌트 간의 다양한 책임 수준을 보여 줍니다.

cloud-model-shared-responsibility

What is serverless computing?

PaaS와 마찬가지로 서버리스 컴퓨팅을 사용하면 개발자가 인프라를 관리할 필요 없이 빠르게 애플리케이션을 빌드할 수 있습니다. 서버리스 애플리케이션에서는 클라우드 서비스 공급자가 코드 실행에 필요한 인프라를 자동으로 프로비저닝, 스케일링 및 관리합니다. 서버리스 아키텍처는 스케일링 성능이 뛰어나고 이벤트 기반이므로 특정 기능 또는 트리거가 발생할 때만 리소스를 사용합니다.

하지만 코드는 여전히 서버에서 실행된다는 것을 알고 있어야 합니다. “서버리스” 라는 이름은 인프라 프로비저닝 및 관리와 관련된 작업이 개발자에게 표시되지 않는다는 점에서 유래합니다. 이 방식을 통해 개발자는 비즈니스 논리에 더욱 집중하고 비즈니스 핵심에 더 많은 가치를 제공할 수 있습니다. 서버리스 컴퓨팅을 통해 팀은 생산성을 향상하고 제품 출시를 단축할 수 있으며 조직은 리소스를 최적화하고 계속해서 혁신에 집중할 수 있습니다.

Top benefits of serverless computing

No infrastructure management No infrastructure management

개발자는 완전 관리형 서비스를 사용하여 관리 작업을 없애고 핵심 비즈니스 논리에 집중할 수 있습니다. 서버리스 플랫폼에서는 코드를 배포하기만 하면 고가용성으로 실행됩니다.

Dynamic scalability Dynamic scalability

서버리스 컴퓨팅을 통해 모든 워크로드의 수요에 맞게 몇 초 이내에 인프라가 동적으로 규모 확장/축소됩니다.

Faster time to market Faster time to market

서버리스 애플리케이션은 각 개발 주기에서 작업 종속성을 줄여 개발 팀의 민첩성을 향상함으로써 더 적은 시간에 더 많은 기능을 제공할 수 있게 해줍니다.

More efficient use of resources More efficient use of resources

서버리스 기술로 전환하면 조직에서 TCO를 줄이고 리소스를 재할당하여 혁신 속도를 높일 수 있습니다.

Serverless application patterns

Serverless functions

서버리스 함수는 추가 서비스를 원활하게 통합하기 위한 바인딩 및 이벤트에 응답하기 위해 코드를 자동으로 실행하는 트리거가 포함된 이벤트 구동 모델을 사용하여 개발을 가속화합니다. 실행하는 만큼 지불하는 모델(1초 미만 단위로 청구)에서는 코드를 실행하는 데 소요하는 시간과 리소스에 대한 요금만 청구됩니다.

Serverless Kubernetes

개발자는 변동하는 워크로드에서 갑작스러운 트래픽 변화가 있을 때 자동으로 규모 확장/축소할 수 있는, Kubernetes에서 오케스트레이션된 완전 관리형 클러스터로 자체 컨테이너를 가져옵니다.

Serverless workflows

서버리스 워크플로는 로우 코드/코드 없는 방식을 통해 결합된 작업의 오케스트레이션을 간소화합니다. 개발자는 다양한 서비스(클라우드 또는 온-프레미스) 간 상호 작용을 코딩하거나, 붙이기 코드를 유지 관리하거나, 새로운 API 또는 사양을 배울 필요 없이 해당 서비스를 통합할 수 있습니다.

Serverless application environments

서버리스 애플리케이션 환경에서는 백 엔드와 프런트 엔드 모두 크기 조정, 보안 및 규정 준수 요구 사항을 처리하는 완전 관리형 서비스에서 호스트됩니다.

Serverless API gateway

서버리스 API 게이트웨이는 서버리스 백 엔드 서비스의 중앙 집중식 완전 관리형 진입점입니다. 개발자는 서버리스 API 게이트웨이를 통해 글로벌 규모로 API를 게시, 관리, 보호 및 분석할 수 있습니다.