38

Server-lessdownload.microsoft.com/download/1/5/D/15DC2FA2-8B98-4F20...•Azure Container Service Azure 컨테이너서비스는Mesos(DC/OS), Swarm 및Kubernetes 클러스 터세가지오픈소스오케스트레이션중하나의배포형태를제공

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Server-less 기반으로대규모컴퓨팅파워환경구축하기

이정훈, Senior PM, Azure CAT

• Compute 관점에서 IaaS vs. PaaS

• Azure App Services (Web Apps and Functions)

• Azure Container Services

• Azure Service Fabric

•최종선택, 무엇이베스트인가?

Agenda

IaaS vs. PaaS (Server-less) 마이그레이션옵션 신규개발옵션

클라우드(PaaS:Compute)에서의 관리 업무 변화

On-premises 상의 업무 Public Cloud (Azure) 상의 업무

OS 설치/구성 N/A

어플리케이션 설치/구성 N/A

서버 고가용성 구성 및 모니터링 N/A

서버 장애 모니터링 N/A

서버 성능 모니터링 선택 사항(Auto-scaling)

어플리케이션 고가용성/장애/성능 모니터링 동일 업무 유지 (추가 서비스 지원)

서버 서비스 장애 대응 Azure 지원 요청

OS 업데이트/보안 관리 N/A

PaaS의장점

Microsoft Azure PaaS 혜택

Based on five-year, risk-adjusted figures for a composite organization constructed from aggregated interviews with eight Microsoft Azure IaaS customers.Source: “The Total Economic Impact Of Microsoft Azure PaaS,” a commissioned study conducted by Forrester Consulting, June 2016

466%Return on

Investment

$5.91M

순현재가치(NPV)

80%

IT Time 절약

50%

더빠른시장접근

Forrester Total Economic Impact results

• Gartner Magic Quadrant

for Enterprise Application Platform as a Service, Worldwide

• AWS는 aPaaS 시장에서평가받고있지않음 (AWS Lambda는기업요구사항을만족하기에부족하다고판정)

PaaS Players

Microsoft Compute

https://docs.microsoft.com/en-us/azure/

Microsoft Compute

https://docs.microsoft.com/en-us/azure/

IaaS Compute

PaaS Compute

• Compute 관점에서 IaaS vs. PaaS

• Azure App Services (Web Apps and Functions)

• Azure Container Services

• Azure Service Fabric

•최종선택, 무엇이베스트인가?

Agenda

Azure Application Platform

• IaaS vs. PaaS

• Azure App Services (Web Apps and Functions)

• Azure Container Services

• Azure Service Fabric

•최종선택, 무엇이베스트인가?

Azure Application Platform

• IaaS vs. PaaS

• Azure App Services (Web Apps and Functions)

• Azure Container Services

• Azure Service Fabric

•최종선택, 무엇이베스트인가?

Azure App Services - 통합오퍼링

Web App

비즈니스와 함께 규모가조정되는 웹 앱

Mobile App

모든 디바이스에대한 모바일 앱빌드

Logic App

SaaS와 온-프레미스를가로지르는 비즈니스프로세스 자동화

API App

클라우드 내에서API를 쉽게빌드하고 소비

Function

개발을 가속화하는serverless 이벤트 기반경험

• Scale-up

• Scale-out

Scale up & out

Azure App Services - 기능

Azure Functions

• Web App 배포

• Web App 확장

• Web App 성능 테스트

•배포 슬롯

•프로덕션에서 테스트

• Azure Function 생성

App Service Demo

• Compute 관점에서 IaaS vs. PaaS

• Azure App Services (Web Apps and Functions)

• Azure Container Services

• Azure Service Fabric

•최종 선택, 무엇이 베스트인가?

Agenda

• Virtual Machines각 VM은 독립된 형태로 Full OS형태

Full isolation

분리된 어플리케이션 프레임웍

Live migration 지원

• ContainersHost OS의 공유

즉각적인 start-up

컨테이너내의 프로세스는 isolate 되어있음

앱서비스와 라이브러리는 컨테이너에 종속

동일한 버전의 Guest OS는 모든 컨테이너가공유하여 사용

VM vs Container

• Azure Container ServiceAzure 컨테이너 서비스는 Mesos(DC/OS), Swarm 및 Kubernetes 클러스터 세가지 오픈소스 오케스트레이션 중 하나의 배포형태를 제공

• Custom Deployments: ACS-EngineAzure 컨테이너 서비스에서 공식적으로 지원하는 이상의customization을 사용자가 지정하는 경우는 ACS-Engine을 사용하는것을 권장

사용자지정에는 기존 가상네트워크에 배포, 여러 에이전트 풀 활용등이포함

Azure Container Service

ACS : Mesos

ACS : Swarm

ACS : Kubernetes

ACS : Demo

• Compute 관점에서 IaaS vs. PaaS

• Azure App Services (Web Apps and Functions)

• Azure Container Services

• Azure Service Fabric

•최종 선택, 무엇이 베스트인가?

Agenda

Thumbnail

Service

Thumbnail

ServicePhoto Share

Service

Photo Share

Service

Photo Share

Service

마이크로서비스아키텍처

Photo Share

ServiceThumbnail

Service

Photo Share Service

Thumbnail

SharedLib-v7

Photo Share

Service

SharedLib-v1

Photo Share

Service

node.js

Thumbnail

Service

.NET

Photo Share

Service

V1

Thumbnail

Service

V1

Thumbnail

Service

SharedLib-v7

Thumbnail

Service

V2

SharedLib-v1

•Resiliency

•Scalability

•Latency

•Lifecycle Management

•Portability

•Data Integrity

개발자에게요구되는비기능요건

항상동일한 문제해결을위해시간을쏟을것인가? 아니면비즈니스가요구하는기능구현에시간을쏟을것인가?

Azure Other Clouds

Azure Service Fabric – scales to 1000+ machines

Dev Box On Premise

Data centers

Queues Storage

기존의전형적인서비스패턴

Front End(StatelessWeb)

StatelessMiddle-tierCompute

Cache

• Scale: 스토리지 파티션

• Reliability: 큐 사용

• Latency: 캐시 사용

• 상태 일관성: 트랜잭션 관리

Load Balancer

다양한외부요소들을사용해야함

StatefulMiddle-tierCompute

추가선택사항: Stateful services

Front End(StatelessWeb)

data stores used for analytics and disaster recovery

• Latency: 상태 정보가 VM 내부에존재

• Scale: 파티션의 자동 지원

• Reliability: SF 자체 지원

• State consistency: 자체 트랜잭션기능 지원

Load Balancer

디자인간소화, 복잡성및오류감소

Service Fabric Case: BMW

https://blogs.msdn.microsoft.com/azureservicefabric/2016/08/24/service-fabric-customer-profile-bmw-technology-corporation/

“우리 시스템에서사용자를모델링하는자연스러운방법이액터임을알게됐습니다. 서비스패브릭액터는 지속성, 확장성, 복원성을기본 제공하여우리가핵심 기능에만집중하도록 해 줍니다.”

– Dr. Gregory Athas, Principal Software Architect, BMW

• BMW Connected 모바일앱−수백만의 사용자에게 개인화된 출퇴근 정보제공

−사용자의 현재 위치와 도로 상태에 따라언제 출퇴근을 해야 하는지 모바일앱과자동차에 통보

−Microservices

➢The Context API stateless service

▪ 사용자의모바일앱으로부터사용자의정보업데이트

➢The Driver actor stateful service

▪ 사용자개별 정보는개별 Actor 상태에저장, Reminder를통해언제출발해야할지사용자에게통보(출발일정시간 이전에만Reminder 작동)

➢The Location Consumer stateless service

▪ 수백만사용자의대용량위치 서비스가전송되는 Event Hub로부터위치정보를 Actor에반영

➢The User Delete stateless service

▪ 사용자가탈퇴할경우, Actor 삭제로사용자정보 삭제

➢The ETA Queue stateful service

▪ 도착 예정시간을계산해 주는 Commute Server와의비동기연결을위한 서비스

• 서비스 패브릭 배포

• Reliable Dictionary 고가용성 테스트

Service Fabric Demo

• Compute 관점에서 IaaS vs. PaaS

• Azure App Services (Web Apps and Functions)

• Azure Container Services

• Azure Service Fabric

•최종선택, 무엇이베스트인가?

Agenda

Compute PaaS의비교

비교 항목 Azure IaaS Azure App Service Azure Service Fabric

베스트 시나리오기존 시스템을 Azure 상으로최소의 변경으로 이전할 때

Web 위주의 비교적복잡하지 않은 구성의

어플리케이션

Microservice 기반으로대규모 확장성 기반의

서비스 개발

Lock-in 여부 NoNo (Windows IIS, Linux

Container)No (Windows, Linux)

비용 VM 위주의 비용 VM 위주의 비용 + Alpha VM 위주의 비용

관리부담 높음 낮음 중간

고가용성 서비스 직접 구현 직접 구현 기본 플랫폼 제공

마이크로서비스 지원 없음 없음 기본 플랫폼 제공

인프라 확장성 제공 제공 제공

어플리케이션 확장성 직접 구현 직접 구현 기본 플랫폼 제공

Thank you