Windows Azure

25
基基基基基基基基基基基基 Learn Windows Azure Platform 株株株株 pnop Kazumi Hirose

Transcript of Windows Azure

Page 1: Windows Azure

基盤を支えるテクノロジーLearn Windows Azure Platform

株式会社 pnop Kazumi Hirose

Page 2: Windows Azure

クラウドっていくつかありますが

他のクラウドご存知ですか?

Page 3: Windows Azure

Azure と Amazon や国内クラウドベンダーとの違い

ネットワーク

仮想マシン

OS

OS の基本設定

DB/ アプリ /Web

DB/ アプリ /Web の基本設定

AWSWindows Azure

Platform

サービスの稼働設定

Page 4: Windows Azure

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

Page 5: Windows Azure

コンピュートサービス• 仮想マシンを提供するサービス

– 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

Page 6: Windows Azure

コンピュートサービス• Web / Worker ロールは OS やミドルウェアのアップ

デートが自動• 仕組みに乗っかる事で、仕様は縛られるが、スケー

ルアウトの設計が不要– アプリケーションの開発のみに注力できる– 設定ファイル一つで負荷に対応、増減可能

• PHP ・ Java ・ Ruby などの OSS 連携も強化• VM ロールで IaaS としても対応可能

– 既存のオンプレミスシステムを移植する事も可能

機材調達、設計、運用コストから開放される

Page 7: Windows Azure

ストレージサービス• データ保管場所を提供するサービス

– 高い耐障害性、高い可用性を容量単位で提供• 4 種類のサービス

– ドライブ• ドライブとして読み書き可能な NTFS ファイルシステム• AWS では EBS に相当

– ブロブ• 画像、音声、動画などのメディア格納向け ( 最大 1T バイト )• AWS では S3 に相当

– テーブル• 分散 Key Value ストア• AWS では SimpleDB に相当

– キュー• メッセージキュー 各ロール間の通信など• AWS では SQS に相当

Page 8: Windows Azure

SQL Azure

• RDBMS サービス– AWS での RDS に相当– 管理が用意な SQL Server 2008 R2 と同等の RDBMS サービス– SQL 構文なども、ほぼそのまま使える– 3重レプリケーションよる耐障害性– フェデレーションによる柔軟な拡張

• オンプレミスの DB を容易に移植• SQL Azure Data Sync

– オンプレミスと同期• SQL Azure Reporting Services

– SQL Azure から帳票生成など

Page 9: Windows Azure

Windows Azure Connect

• クラウドと自社をつなぐ VPN– AWS では VPC に相当– コンピュートサービスとオンプレミスネット

ワークの間を接続する VPN– 専用ソフトウェアを用いて IPSec の対向接続– クラウドアプリと自社アプリの連携が可能に

Page 10: Windows Azure

Hadoop on Azure (CTP)

• Bigdata 処理用 Map Reduce クラスタ– AWS では Elastic MapReduce に相当– 巨大データの分析、ソート、統計計算ジョブ

を投入し、高速に分散処理可能に• 参考値 10GB のソートサンプルが 1 分未満( L サ

イズ 16 台分散処理)

Page 11: Windows Azure

• Windows Azure Traffic Manager– グローバルロードバランシングを行い、大陸

間のサーバ同士で負荷分散、最寄りのセンターからレスポンスを返却して、レスポンスを向上させる

• Azure Management API– Azure の仮想マシンやストレージ管理、その

ものが API でコントロールでき、自動化が可能

この他にも

Page 12: Windows Azure

Windows Azure の自動管理管理ポータル

windows.azure.com

ノード割り当て

構成された OS の配置

アプリケーション配置

アプリケーション構成

ロードバランサー設定

監視

OS の自動更新

アプリケーション更新

API

Page 13: Windows Azure

これだけ機能が豊富だとどう使えば良いのでしょう?

まずは必要な機能だけどこからでも使えます

Page 14: Windows Azure

例えば「ストレージ」だけ• 手軽な大容量ストレージとして

– 画像・映像・開発資産などの長期保存先• 拠点間の共有領域として

– 自社のファイルサーバの代わりとして• ディザスタリカバリ

– オンプレミス環境のバックアップ– 事業継続に不可欠なデータの格納など

• SDK を使って自社製品に活用– .NET / PHP / Java / Ruby / Python / Objective-C(iPhone)

/ Android アプリから直接ストレージを使えます。特別なサーバなどを準備せずとも、データの共有が行えます

Page 15: Windows Azure

例えば SQL Azure だけ• 既存 SQL Server アプリのデータで、 Web

アプリを追加開発– SQL Azure Data Sync でオンプレミスのデー

タを SQL Azureへ同期– Web ロールを使って Web アプリケーション

を開発、公開• ディザスタリカバリとして

– Data Sync があれば、同期したデータで災害時にも業務継続可能に

Page 16: Windows Azure

例えば「コンピューティング」だけ

• バッチ解析– 長時間を要するバッチ解析を分散、並列で

• Web サーバとして– 1 台からスモールスタート– アクセス規模に応じて容易にスケールアウト

できます。

Page 17: Windows Azure

スケールするとこうなります

Page 18: Windows Azure

まずはアカウントをつくりましょう

90日間無料評価版もお試しください

Page 19: Windows Azure

使った分だけ明朗会計計算ツールで予め費用を見積もりましょう

Page 20: Windows Azure

管理は管理ポータルから

Page 21: Windows Azure

課金も使った分だけ

Page 22: Windows Azure

Web PI で始めましょう

Page 23: Windows Azure

インストールするもの

• Visual Web Developer Express– Visual Studioが無くても、 Azureのパッケージングができます。

– .NET以外は日頃から使い慣れたエディタでOKVWDはパッケージツールとして使いましょう

• Azure SDK for .NET / Azure Tools– .NET以外であれば、各言語向け SDKを追加でインストールしましょう

Page 24: Windows Azure

ローカルでの実行とデバッグ• F5 でデバッグ開始

– 開発環境用の Compute Emulator と Storage Emulator が起動します

Page 25: Windows Azure

Windows Azureへ発行• デプロイ

– プログラムを Windows Azureへアップロードして駆動させます。