[microsoft tech summit 2017] マイクロサービスだけじゃない! コンテナー...
Post on 21-Jan-2018
463 Views
Preview:
TRANSCRIPT
Microsoft Tech Summit 2017
マイクロサービスだけじゃない! コンテナーオーケストレーターとしての「Azure Service Fabric」
• Azure Service Fabric で、どこでも実行できるミッションクリティカルでスケーラブルなアプリケーションの容易な構築、管理が可能に
• Azure Service Fabric は、Windows、Linux 向けのコンテナーオーケストレーター
• Azure Service Fabric のロードマップ
サムネイルサービス
V1
サムネイルサービス
V2
Thumbnail
Service
Thumbnail
ServicePhoto Share
Service
Photo Share
Service
Photo Share
Service
写真共有サービス
サムネイルサービス
写真共有サービス
Node.js
サムネイルサービス
.NET
写真共有サービス
V1
Azure Service Fabricドキュメント
https://docs.microsoft.com/azure/service-fabric/.NET マイクロサービス: コンテナー化された .NET アプリケーションのアーキテクチャ
https://docs.microsoft.com/dotnet/standard/microservices-architecture/
Azure 他社クラウド開発マシン
コンテナー、マイクロサービス
オンプレミスデータセンター
Azure 他社クラウド開発マシン オンプレミスデータセンター
マネージド サービスマイクロサービスプラットフォーム
生産性の高い開発
組み込み自動スケール
.NET、Java向けの単純なプログラミング
モデル
ステートレス、ステートレスのマイクロサービス
スケーラブル 24 X 7 高可用性フェイルオーバー
Windows/Linuxコンテナーオーケストレーション
DevOpsライフサイクル管理
自動プラットフォームアップグレード
組み込み正常性診断
クラウド開発と同等の
ローカル開発
Visual Studio、VSTS、Eclipse、Jenkins、
Yoeman などのツール
Application Insights/OMS 統合
AzureActive Directory
SQL ServerActive Directory
Azure データ サービス
Azureサービス
共通のID
一貫性のあるデータプラットフォーム
統一された開発とDevOps
オンプレミスインフラストラクチャ
Azureサービス
Azure Stack
統一された開発とDevOps
2018 年に ServiceFabric をサポート予定
ゲスト実行可能ファイル (あらゆるコード)
Reliable Service
Reliable ActorASP.NET Core
コンテナー(あらゆるコード)
.NET
.NET
Azure 他社クラウド開発マシン オンプレミスデータセンター
ゲスト実行可能ファイル
Reliable Service
Reliable ActorASP.NET Core
コンテナー
開発者
Visual StudioVSTS
運用
ApplicationInsights
OMS
Azure 他社クラウド開発マシン オンプレミスデータセンター
Service Fabric クラスター
VM #1
Service Fabric
コードなど
VM #2
Service Fabric
コードなど VM #3
Service Fabric
コードなど
VM #4
Service Fabric
コードなどVM #5
Service Fabric
コードなど
コードなど(ポート 19080)
Web リクエスト(ポート 80)
Service Fabric クラスター
1. 従来型のアプリケーション2. Service Fabric にゲスト実行可能ファイルやコンテナーとしてホスト3. マイクロサービスの新規追加によるモダナイゼーション4. アプリケーションのマイクロサービスへの分解による革新5. マイクロサービスへの変革、新規アプリケーション構築
どの段階まで進むかは自由…
• Azure ポータル、CLI での Linux
クラスターの作成
• Linux、Windows でのコンテナーオーケストレーション
• 数千マシン、数百万コンテナーまでスケール
Runtime v6.0 Java v1.0-preview
.NET SDK v2.8 .NET SDK v3.0-preview
(.NET Core をサポート)
(GA)(プレビュー) (プレビュー)
コンテナー .NET Core Java
コンテナーアプリケーション
ゲスト実行可能ファイル
.NET Core Reliable Service
コンテナーアプリケーション
ゲスト実行可能ファイル
.NET Core Reliable Service
Java Reliable Service
• Eclipse
• VS Code
• Gradle
• Yeoman
• Visual Studio 2017
• VS Code
https://github.com/satonaoki/service-fabric-containers/tree/master/Linux/container-tutorial
https://github.com/Azure-Samples/service-fabric-dotnet-containers.git
https://github.com/satonaoki/service-fabric-containers/blob/master/Linux/container-tutorial/azure-vote/Dockerfile
https://github.com/satonaoki/service-fabric-containers/blob/master/Linux/container-tutorial/redis/Dockerfile
https://github.com/satonaoki/service-fabric-containers/blob/master/Linux/container-tutorial/Voting/Voting/ApplicationManifest.xml
https://github.com/satonaoki/service-fabric-containers/blob/master/Linux/container-tutorial/Voting/Voting/azurevotefrontPkg/ServiceManifest.xml
https://github.com/satonaoki/service-fabric-containers/blob/master/Linux/container-tutorial/Voting/install.sh
1. 従来型のアプリケーション2. Service Fabric にゲスト実行可能ファイルやコンテナーとしてホスト3. マイクロサービスの新規追加によるモダナイゼーション4. アプリケーションのマイクロサービスへの分解による革新5. マイクロサービスへの変革、新規アプリケーション構築
どの段階まで進むかは自由…
コンテナー
Service Fabric クラスター
IIS / ASP.NET
フロントエンド Web サービス
Service Fabric アプリケーションモデルまたは Docker Compose
SQL Server
Azure SQL Database
Database Migration Service
VSTS Git
リポジトリAzure Container
Registry
ABBYY LINGVO LIVE
みんなの言語学習目的
› グローバルの言語学習者向け SNS を、モノリシックアプローチからマイクロサービスに移行
› ダウンタイムのないアップグレード、簡単な管理、モダンな DevOps プラクティス
› 14 言語、130 以上の辞書を高い応答性でサポート
解決策
› 段階的に移行するために、Service Fabric
プログラミングモデル、Windows
コンテナーを活用
結果
› 新規のモジュール型フロントエンドをService Fabricに移行
› モノリシックなバックエンドシステムをスケーラブルなマイクロサービスアーキテクチャに進化させつつある
「Service Fabric はWindows コンテナー、ゲスト実行可能ファイルをサポートしており、これは既存のサービスやコンポーネントの移行の際に非常に便利です。柔軟性が移行戦略にとって重要でした。モダンなプラットフォームに移行したかったのですが、段階的に移行する必要がありました」(AABBY 開発マネージャー Eugene Agafonov)
https://blogs.msdn.microsoft.com/azureservicefabric/2017/09/22/service-fabric-customer-profile-abbyy/
1. 従来型のアプリケーション2. Service Fabric にゲスト実行可能ファイルやコンテナーとしてホスト3. マイクロサービスの新規追加によるモダナイゼーション4. アプリケーションのマイクロサービスへの分解による革新5. マイクロサービスへの変革、新規アプリケーション構築
どの段階まで進むかは自由…
キュー ストレージ
フロントエンドゲートウェイ
ステートレス中間層コンピューティング
キャッシュ
• パーティション分割ストレージを使うステートレスサービスをスケール
• キューで信頼性を向上
• キャッシュで読み取りレイテンシを削減
• ステートの整合性のために、独自でトランザクションを管理
Load Balancerロード バランサー
ステートフル中間層コンピューティング
フロントエンドゲートウェイ
• アプリケーションのステートをコンピューティング層に格納
• 低レイテンシの読み書き
• スケールアウトのためのサービス層のパーティション分割
• 組み込みのトランザクション
• オフライン分析のための外部ストア
コールドデータストア
ロード バランサー
SCHNEIDER ELECTRIC ECOSTRUXURE
IoTベースのオペレーショナルインテリジェンス
目的
› デバイスの管理、運用。クエリ、コマンド実行、デバイスから業務アプリへのコマンド送信。デバイスとの複数プロトコルでのセキュアな通信。1秒以内の処理とレイテンシ。
解決策
› Azure Service Fabric を活用して EcoStruxure プラットフォームを構築
結果
› エネルギーを管理し、安全で信頼性が高く効率的で持続可能な方法で処理するためのコネクテッドテクノロジとソリューションを開発
https://blogs.msdn.microsoft.com/azureservicefabric/2016/08/05/service-fabric-customer-profile-schneider-electric/
D+H SMALL BUSINESS LENDING
DevOps をコア プラクティスに
目的
› 顧客に価値を提供するのに役立つ3つの理念を、戦略的に選択。製品スイート内での再利用、チームの活性化、自動化された繰り返し可能な方法でのソフトウェアのデリバリー。
解決策
› Azure Service Fabric を活用して、Small Business
Lending アプリケーションをアジャイルに構築
結果
› テクノロジや市場の変化により早く対応可能に。ステートレスサービスのオーケストレーションを行う信頼性の高いプラットフォームと、整合性のある永続ストレージテクノロジの上で動作する複数の製品にわたって、投資を再利用。
https://blogs.msdn.microsoft.com/azureservicefabric/2017/05/09/service-fabric-customer-profile-dh/
DIGAMORE ENTERTAINMENT FOOTBALL EMPIRE
ゲームへの新しいアプローチ
目的
› 10万から100万のプレイヤーがいるゲームを、コスト効率良く開発。予測不可能なスケーリングに対応し、回復性、応答性が高い必要がある。
解決策
› Service Fabric のステートフル Reliable Actor
プログラミングモデルを活用し、多人数同時参加型ゲームを開発
結果
› 短期間で、スケーラブルなバックエンドアーキテクチャを構築。Service Fabric によって、開発者は、インフラの心配やフレームワーク学習の時間なしに、ゲーム設計の要件を実装するのが簡単に。
Load Balancer
API Management
IoT Hub
Event Hubs
ステートレスWeb ゲートウェイ Service Fabric
Service Fabric
Service Fabric
Service Fabric
https://github.com/jessebenson/service-fabric-queryable
https://blogs.msdn.microsoft.com/azureservicefabric/2017/10/19/service-fabric-sessions-at-ignite-2017/
https://blogs.msdn.microsoft.com/azureservicefabric/
https://blogs.msdn.microsoft.com/azureservicefabric/tag/customer-profile/
https://docs.microsoft.com/azure/service-fabric/
•
https://azure.microsoft.com/resources/samples/?service=service-fabric
•
https://try.servicefabric.azure.com/
•
https://docs.microsoft.com/azure/service-fabric/service-fabric-support
top related