Post on 28-May-2015
基盤を支えるテクノロジーLearn Windows Azure Platform
株式会社 pnop Kazumi Hirose
クラウドっていくつかありますが
他のクラウドご存知ですか?
Azure と Amazon や国内クラウドベンダーとの違い
ネットワーク
仮想マシン
OS
OS の基本設定
DB/ アプリ /Web
DB/ アプリ /Web の基本設定
AWSWindows Azure
Platform
サービスの稼働設定
Windows Azure の構成Hosted serviceロードバランサー
分散ストレージ
パーティション分割可能なデータ
分散キャッシュ
CDN 配信サービス
ロードバランサー
リバースプロキシ、キャッ
シュ
管理サーバー
バックエンド処理
Web サーバー
分散キャッシュ
キュー アクセス権管理
大容量ファイル格納
リレーショナルデータベー
ス
キーバリューストア
ファイルシステム サービスバス
レポーティング、 BI
データ同期
VPN
Elastic(増減自在)
CDN
Load Balancer
IISWeb Server
VM Role
Worker Role
Web Role
Caching
Queue Access Control
Blob
Relational Database
Table
Drive Service Bus
Reporting & Analysis
Data Synchronizatio
n
Connect
コンピュートサービス• 仮想マシンを提供するサービス
– AWS では EC2 に相当• スペックは5段階 (XS/S/M/L/XL)• 3 種類のロール ( 役割・目的 )
– Web IIS/.NET など Web 向けセットアップ済みの VM で、Web アプリ向け
– Worker バッチ処理やキュー処理向けの VM で各アプリのバックグラウンド処理や Win32 アプリ向け
– VM 自前の Hyper-V 仮想マシンイメージで起動可能• リモートデスクトップでアクセス可能
– アクセスすると普通の Windows Server 2008 / 2008 R2
コンピュートサービス• Web / Worker ロールは OS やミドルウェアのアップ
デートが自動• 仕組みに乗っかる事で、仕様は縛られるが、スケー
ルアウトの設計が不要– アプリケーションの開発のみに注力できる– 設定ファイル一つで負荷に対応、増減可能
• PHP ・ Java ・ Ruby などの OSS 連携も強化• VM ロールで IaaS としても対応可能
– 既存のオンプレミスシステムを移植する事も可能
機材調達、設計、運用コストから開放される
ストレージサービス• データ保管場所を提供するサービス
– 高い耐障害性、高い可用性を容量単位で提供• 4 種類のサービス
– ドライブ• ドライブとして読み書き可能な NTFS ファイルシステム• AWS では EBS に相当
– ブロブ• 画像、音声、動画などのメディア格納向け ( 最大 1T バイト )• AWS では S3 に相当
– テーブル• 分散 Key Value ストア• AWS では SimpleDB に相当
– キュー• メッセージキュー 各ロール間の通信など• AWS では SQS に相当
SQL Azure
• RDBMS サービス– AWS での RDS に相当– 管理が用意な SQL Server 2008 R2 と同等の RDBMS サービス– SQL 構文なども、ほぼそのまま使える– 3重レプリケーションよる耐障害性– フェデレーションによる柔軟な拡張
• オンプレミスの DB を容易に移植• SQL Azure Data Sync
– オンプレミスと同期• SQL Azure Reporting Services
– SQL Azure から帳票生成など
Windows Azure Connect
• クラウドと自社をつなぐ VPN– AWS では VPC に相当– コンピュートサービスとオンプレミスネット
ワークの間を接続する VPN– 専用ソフトウェアを用いて IPSec の対向接続– クラウドアプリと自社アプリの連携が可能に
Hadoop on Azure (CTP)
• Bigdata 処理用 Map Reduce クラスタ– AWS では Elastic MapReduce に相当– 巨大データの分析、ソート、統計計算ジョブ
を投入し、高速に分散処理可能に• 参考値 10GB のソートサンプルが 1 分未満( L サ
イズ 16 台分散処理)
• Windows Azure Traffic Manager– グローバルロードバランシングを行い、大陸
間のサーバ同士で負荷分散、最寄りのセンターからレスポンスを返却して、レスポンスを向上させる
• Azure Management API– Azure の仮想マシンやストレージ管理、その
ものが API でコントロールでき、自動化が可能
この他にも
Windows Azure の自動管理管理ポータル
windows.azure.com
ノード割り当て
構成された OS の配置
アプリケーション配置
アプリケーション構成
ロードバランサー設定
監視
OS の自動更新
アプリケーション更新
API
これだけ機能が豊富だとどう使えば良いのでしょう?
まずは必要な機能だけどこからでも使えます
例えば「ストレージ」だけ• 手軽な大容量ストレージとして
– 画像・映像・開発資産などの長期保存先• 拠点間の共有領域として
– 自社のファイルサーバの代わりとして• ディザスタリカバリ
– オンプレミス環境のバックアップ– 事業継続に不可欠なデータの格納など
• SDK を使って自社製品に活用– .NET / PHP / Java / Ruby / Python / Objective-C(iPhone)
/ Android アプリから直接ストレージを使えます。特別なサーバなどを準備せずとも、データの共有が行えます
例えば SQL Azure だけ• 既存 SQL Server アプリのデータで、 Web
アプリを追加開発– SQL Azure Data Sync でオンプレミスのデー
タを SQL Azureへ同期– Web ロールを使って Web アプリケーション
を開発、公開• ディザスタリカバリとして
– Data Sync があれば、同期したデータで災害時にも業務継続可能に
例えば「コンピューティング」だけ
• バッチ解析– 長時間を要するバッチ解析を分散、並列で
• Web サーバとして– 1 台からスモールスタート– アクセス規模に応じて容易にスケールアウト
できます。
スケールするとこうなります
まずはアカウントをつくりましょう
90日間無料評価版もお試しください
使った分だけ明朗会計計算ツールで予め費用を見積もりましょう
管理は管理ポータルから
課金も使った分だけ
Web PI で始めましょう
インストールするもの
• Visual Web Developer Express– Visual Studioが無くても、 Azureのパッケージングができます。
– .NET以外は日頃から使い慣れたエディタでOKVWDはパッケージツールとして使いましょう
• Azure SDK for .NET / Azure Tools– .NET以外であれば、各言語向け SDKを追加でインストールしましょう
ローカルでの実行とデバッグ• F5 でデバッグ開始
– 開発環境用の Compute Emulator と Storage Emulator が起動します
Windows Azureへ発行• デプロイ
– プログラムを Windows Azureへアップロードして駆動させます。