19
Azure Service Fabric 紹 kyrt / Takekazu Omi [email protected] 2015/5/23 R.1.0

Azure Service Fabric 紹介

Embed Size (px)

Citation preview

Page 1: Azure Service Fabric 紹介

Azure Service Fabric 紹介

kyrt / Takekazu Omi [email protected]

2015/5/23 R.1.0

Page 2: Azure Service Fabric 紹介

自己紹介

近江 武一JAZUG Azure Storage 担当(自称)Microsoft MVP for Azure

http://www.slideshare.net/takekazuomi

kyrt @takekazuomi 2

kyrt.in

github.com/takekazuomiwhite

paper

監訳

Page 3: Azure Service Fabric 紹介

3

はじめにService Fabric の背景

kyrt

Page 5: Azure Service Fabric 紹介

5

Microsoft Strengths

IaaS と PaaS の統合、 AWS と並ぶ新機能のリリース、オンプレミス環境、開発環境、 Microsoft のSaaS ( Software as a Service )とのシームレスな連携

kyrt

Page 6: Azure Service Fabric 紹介

6

Azure の次世代 PaaS

リソースの管理を宣言的VM Scale SetService Fabricすべてのレイヤーを自由に選択

⇨Cluster Orchestration 、 Compute PaaS の持ち込

kyrt

Page 7: Azure Service Fabric 紹介

VMs and VM Scale Sets

Azure Public CloudAzure-Consistent Private Cloud

VM Extensions

SCALR, RightScale, Mesos, Swarm

Service Fabric (VMs and Containers)

BatchApp Service

MediaWeb Apps

Mobile

Apps

Apprenda, CloudFoundryJelastic, Marathon

Infrastructure

IaaS and IaaS+

General Compute

PaaS

Vertical compute

PaaS

Open Choice at Every Layer

Cluster Orchestratio

n

参照: https://channel9.msdn.com/Events/Build/2015/3-618

Page 8: Azure Service Fabric 紹介

Service Fabric ⇨PaaS V2, Reliable Service, Process base

VM Scale Set⇨Next Gen Worker Role, elastic

autoscale で迅速に同一の VM を作成IaaS+ ( Managed IaaS )

⇨VM Extension, Backup, Monitoring IaaS

⇨Windows, Linux, custom Image

Page 9: Azure Service Fabric 紹介

9

Microservices

kyrt

Page 10: Azure Service Fabric 紹介

マイクロサービスとは 全ての機能を盛り込んだモ

ノリシック(一枚岩の)なアプリケーションではなく、分割された複数のサービスの組み合わせでアプリケーションを作るアーキテクチャ

James Lewis が書いた Martin Fowler 氏の Blog ( 日本語訳) が有名に

Page 11: Azure Service Fabric 紹介

11

Microservices 論点 by James Lewis1. Componentization via Services

別プロセスで動作するサービスによってアプリケーションのコンポーネント化2. Organized around Business Capabilities

ビジネス機能ごとにサービスを構築(コンウェイの法則)3. Products not Projects

プロジェクトではなくプロダクトにフォース4. Smart endpoints and dumb pipes

スマートなエンドポイントとダムバイプ5. Decentralized Governance

分散統治6. Decentralized Data Management

分散データ管理7. Infrastructure Automation

インフラ自動化8. Design for failure

失敗を前提とした設計9. Evolutionary Design

進化する設計

kyrt

Page 12: Azure Service Fabric 紹介

12

超解説 アプリケーションを 小さなService群の組み合わせで構築しよう Serviceは個別にデプロイできるような単位がいい Service間はhttpのような軽量なプロトコルにしてSmart Endpointの実装

にしよう Serviceはビジネス機能の粒度にして、チームを構成しよう Serviceが異なる言語で記述されたり別のデータストレージ技術を使うはあ

り インフラの自動化でMicroservicesの構築、デプロイ、運用の複雑さを減少 Microserviceは、旧来からあるソフトウェアのコンポーネント化、コンポー

ネントの組み合わせによるアプリケーションの構築という話しの現代版です。 興味深い点

kyrt

Page 13: Azure Service Fabric 紹介

13

Fabric Service

kyrt

Page 14: Azure Service Fabric 紹介

Service Fabric Programming Models

Reliable Actors APIReliable Services API

Azure Private Clouds

Applications composed of microservices

High Availability

Hyper-Scale

Hybrid Operations

High Density

Rolling Upgrades Stateful

services

Low LatencyFast startup & shutdown

Container Orchestration & lifecycle management Replication &

Failover

Simple programming models

Load balancing

Self-healingData Partitioning

Automated Rollback

Health Monitoring

Placement Constraints

Service Fabric

参照: https://channel9.msdn.com/Events/Build/2015/3-618

Page 15: Azure Service Fabric 紹介

15

Service Fabric API

API は 2 つ1. RELIABLE ACTORS APIS

だいぶ自律的2. RELIABLE SERVICES APIS

やること多いけど、 ASP.NET などを動かすには便利

kyrt

Page 16: Azure Service Fabric 紹介

16

Framework の選択RELIABLE ACTORS APIS RELIABLE SERVICES APIS

問題領域が数多くの独立な状態とロジックで構成

複数のコンポーネントの間のロジックを自分で制御したい

single-threaded objects として扱いながら、スケーラビリティと一貫性を保ちたい

reliable collections (like .NET Dictionary and Queue) の保存は自分で管理したい

framework が concurrency と、 state の保証をしてほしい

concurrency の制御と保証は自分でやりたい

platform が通信を管理して欲しい 通信や partitioning scheme の管理、通信か自分で行いたい

kyrt

Page 17: Azure Service Fabric 紹介

Demo

kyrt 17

Page 18: Azure Service Fabric 紹介

参考資料

Page 19: Azure Service Fabric 紹介

Service Fabric documentationhttp://azure.microsoft.com/en-us/documentation/services/service-fabric/

BUILD 2015, The Next Generation of Azure Compute Platform with Mark Russinovichhttps://channel9.msdn.com/Events/Build/2015/3-618

Microsoft Azure Service Fabric Architecturehttps://channel9.msdn.com/Events/Build/2015/2-640

Deep Dive into Microsoft Azure Service Fabric Reliable Actorshttps://channel9.msdn.com/Events/Build/2015/2-66