SlideShare a Scribd company logo
1 of 75
Download to read offline
AWS のクラウドデザインパターンを
 Windows Azure に持ってきてみた


Japan Windows Azure User Group
Microsoft MVP for Windows Azure

                         冨田 順
    http://twitter.com/harutama
自己紹介




   @harutama   2
質問はこちらで


http://social.msdn.microsoft.com
/Forums/ja-jp
/windowsazureja/threads




                                   3
さて!
      4
5
http://aws.clouddesignpattern.org   6
7
本セッションのゴール
• AWSクラウドデザインパターンの実装を
  現状のWindows Azureで考えることにより
  Windows Azureでできる事を理解する。




                              8
http://itpro.nikkeibp.co.jp/article/Watcher/20120621/404401/
                                                               9
Windows Azure に無いもの

                              Direct
CloudWatch   Auto Scaling                 Elastic IP    Route 53
                             Connect




  Simple     Identity and    Elastic       Simple        Simple
 Workflow       Access      Network      Notification     Email
  Service    Management     Interface     Service        Service




              Import/       Mechanical    Security      Availability
               Export         Turk         Group          Zone         10
Windows Azure 版も欲しい




                      11
よくある話…
         12
メールを送る手段




  http://sendgrid.com/azure.html   13
電話したりSMS送ったり




  http://www.twilio.com/azure   14
MySQL使いたいんですが?




  https://www.cleardb.com/store/azure   15
もっと楽に管理したいです




 http://www.rightscale.com/lp/azure.php   16
その他、あるあるに関しては…
Windows Azure デベロッパー サポート チーム ブログ




    http://blogs.msdn.com/b/dsazurejp/   17
Snapshot
             Stamp
           Scale Up
     Ondemand Disk

基本


                      18
新機能!




       にまつわるパターンです。
                      19
Snapshotパターン
         クラウド上で仮想サーバーの
        データ(OS含む)やその他の
        データをインターネットスト
        レージに複製するのは簡単で、
        スナップショットを定期的に実
        施する負担は小さい。

         クラウドでのスナップショッ
        トは管理画面でワンクリックす
        るだけで取得できるほか、API
        を使用して取得することもでき
        る。つまりプログラムを使用し
        て自動化できるということだ。

                      20
スナップショットの作成




      インスタンスが停止していないと
      スナップショットは作成できない




                    21
スナップショットの名前




              22
Stampパターン
        一度OSやミドルウエア、ア
       プリケーションの設定を行って
       しまえば、それらをコピーして
       おき、あたかも「Stamp(ス
       タンプ)」を押すかのように仮
       想サーバーを複製することで、
       環境設定済みの仮想サーバーを
       大量に用意できる。

        クラウドではサーバーやディ
       スクなどのリソースを論理的に
       扱えるため、こういった作業を
       容易に行うことができる。

                     23
スナップショットを作る時




               24
Sysprep の役割
• 複数のディスクイメージが作成された際に、
  矛盾が起こらないようにするコマンド。
 – コンピュータ名
 – 一意なSID(セキュリティID)
 – ドライバキャッシュ
• インスタンスの元になるイメージは、必ず
  Sysprep を実行しないと競合が起こる。
 – http://technet.microsoft.com/ja-jp
   /library/dd744263(v=WS.10).aspx

                                        25
イメージの登録




          26
登録するイメージの指定




              27
Scale Upパターン
         仮想サーバーのスペック
        (CPU、メモリーサイズな
        ど)を必要に応じて切り替える
        ことが可能である。
         稼働後にリソース不足に陥っ
        た場合、従来は物理サーバーを
        交換してOSを再インストール
        することが必要だったが、クラ
        ウドでは必要ない。
         ひとまず仮想サーバーを起動
        してシステムを稼働し、リソー
        ス利用量を確認しながらサー
        バースペックを変更する。
                     28
ポータル上でのサイズ変更




   インスタンスサイズを変更した場合
    インスタンスの再起動が必要     29
Ondemand Diskパターン
         クラウドでは仮想ディスクを
        利用できる。
         仮想ディスクは、いつでも好
        きなタイミングで必要なだけの
        容量を確保可能である。
         仮想ディスクを利用すれば、
        前もって精緻に見積もらなくて
        もよい。システムを稼働させた
        後に利用量を見ながら必要な容
        量のディスクをオンデマンド
        (OnDemand)に確保すれば
        よい。

                       30
ポータル上での操作




            31
新しいディスクのアタッチ




               32
仮想マシンで見た状態




             33
DB Replication
               Read Replica
         Inmemory DB Cache
             Sharding Write

リレーショナルデータベース


                              34
RDBを利用する際の候補




  RDS   SQL Database
データベースサービス比較
             SQL Database         RDS
インスタンス構成   専用の構成            EC2ベースの仮想マシン
パッチの適用     自動               自動 or 手動
レプリケーション   標準で3重化           ユーザーが構成
                            スケジュール指定の自動
バックアップ     手動バックアップ
                            手動バックアップ
           Federation       DBMSの機能や
シャーディング
           により提供            周辺ソフトで対応
           基本的に変更不可能        パラメータグループで
パラメータの変更
           自動チューニング         ある程度変更可能
容量の制限      150GBytes        実質 無制限



                                           36
Replicationパターン

          地理的ロケーションをまたい
         だレプリケーションを行うパ
         ターン。
          このパターンによりデータロ
         ストを防ぎ、データアクセスの
         可用性を担保する。クラウド以
         前からもあったパターンである
         が、クラウドを用いることで安
         価に複数の地理的ロケーション
         を利用できるようになり、現実
         的な選択肢となった。


                      37
Read Replicaパターン
          読み込みを複数の「リードレ
         プリカ(読み込み用のレプリ
         カ)」に分散させることで、全
         体のパフォーマンスを向上して
         いる。
          リードレプリカは、マスター
         に対する書き込みに追随する形
         で、自分自身のデータを反映さ
         せる。
          読み込みは主にリードレプリ
         カを利用することで、マスター
         の負荷も減らすことになる。

                      38
SQL Databaseでの
  レプリケーション
• プライマリと2台のセカンダリによって、
  保持しているデータは複製されている。
 – いずれかのマシンが停止した場合、自動的に
   昇格され、新たなレプリカを作成し、常に3台の
   マシンでデータが
   分散される。
 – ユーザーは何も
   する必要はない。
 – ただしAZの概念は
   無い。
                            39
SQL Data Sync




http://blogs.msdn.com/b/toiwade/archive/2012/06/06/
          sql-azure-data-sync-episode-80.aspx         40
Sharding Writeパターン
          複数のデータベースサーバー
         で書き込みパフォーマンスを上
         げる方法に「シャーディング」
         がある。
          基本的には、同じ構造のデー
         タベースを用意して適切なテー
         ブルのカラムをキーにして分割
         し、書き込み処理を分散する。
          クラウドが提供するRDBMS
         サービスを用いれば、可用性が
         高く、運用効率もよいシャー
         ディングが可能になる。

                       41
SQL Database Federation
• SQL Database の上でシャーディングを
  行うための仕組み
 – SQL Database Federation の仕様
   http://msdn.microsoft.com/ja-jp
   /library/windowsazure/hh700294.aspx
 – SQL Azure Federation入門
   http://www.atmarkit.co.jp/fdotnet/bookp
   review/introwinazure_0404/introwinazure
   _0404_01.html


                                             42
もっと Federation!
• SQL Azureを徹底活用
 – 第7回 スケールアウトとSQL Azure Federation
   http://gihyo.jp/admin/serial/01/sql_azure/0007
 – 第8回 SQL Database Federationを使用する
          ための最初の一歩
   http://gihyo.jp/admin/serial/01/sql_azure/0008
 – 第9回 SQL Database Federationをスケールさせる
   http://gihyo.jp/admin/serial/01/sql_azure/0009




                                                    43
gloops での事例
http://channel9.msdn.com/Events/Windows-Developer-Days/Windows-
Developer-Days-2012/SP-012




                                                                  44
SQL Database の注意点
• 提供されるもの
 – データベースエンジン
 – レポーティング (SQL Reporting)
 – データ同期   (SQL Data Sync)
• 現状で未サポートの機能
 – Server Agent、SQL CLR など
 – バックアップと復元
   • 管理ポータルからインポート・エクスポート可能
 – テーブル パーティション分割
   • Federationで対応
 http://msdn.microsoft.com/ja-jp/library/windowsazure/ff394102
                                                            45
SQL Server 版 RDS の注意点
• 提供されるもの
 – データベースエンジン
 – フルテキスト検索
 – Safe SQL CLR
   • SQL Databaseでは未サポートの機能
• 現状で未サポートの機能
 – Replication、Server Agent、Reporting など
   • Replication は SQL Database 標準機能
   • Windows Azure ではSQL Reportingとして提供

   http://docs.amazonwebservices.com/AmazonRDS/latest
       /UserGuide/Concepts.DBEngine.SQLServer.html      46
RDB を利用する際の候補
データベースサービス




   RDS        SQL Database

仮想マシンサービス




    EC2      Virtual Machines
仮想マシンサービスの比較

           Virtual Machines        EC2
インスタンス構成   仮想マシン              仮想マシン
パッチの適用     手動                 手動
レプリケーション   ユーザーが構成            ユーザーが構成
バックアップ     ユーザーが構成            ユーザーが構成
シャーディング    ユーザーが構成            ユーザーが構成
パラメータの変更   すべて自由              すべて自由




                                         48
RDBを利用する際の候補
    データベースサービス
                                    自
                                    動
                                    運
                                    用

       RDS        SQL Database

    仮想マシンサービス

自
由
度
        EC2      Virtual Machines
Inmemory DB Cacheパターン
          データベースからの読み込み
         パフォーマンスを向上にする方
         法として、頻繁に読み込まれる
         データをメモリーにキャッシュ
         するのがこのパターンである。
          一度利用したデータをキャッ
         シュしておくことで、次に使う
         ときに(ディスクからでなく)
         メモリーからの読み込みで済ま
         せる方法である。
          キャッシュするデータの典型
         的な例としては、データベース
         処理において時間のかかるクエ
         リーの結果や複雑な計算結果な
         どが挙げられる。      50
メモリキャッシュ




 ElastiCache   Cache
新しい Caching
• 旧 AppFabric Caching で提供されていた
  キャッシュの機構とは異なる
 – Cloud Services (Web ロール・Worker ロール)
   のメモリを利用してデータをストア
   • ロールインスタンスのメモリを一部使用
   • キャッシュ専用ロールインスタンス
 – memcached 互換のプロトコルをサポート
 – 現在は Preview Release 中



                                         52
サンプル




http://code.msdn.microsoft.com/Windows-Azure-Caching-c35ec139
                                                                53
NuGet パッケージ




http://nuget.org/packages/WindowsAzure.Caching   54
Web Storage
               Direct Hosting
          Private Distribution
           Cache Distribution
         Rename Distribution

静的コンテンツを処理


                                 55
クラウド上のストレージ




 S3    Blobストレージ




                   56
Web Storageパターン
        大容量のファイルをインター
        ネットストレージへ配置し、そ
        こから直接ファイルを配信する
        ことで、Webサーバーのネット
        ワーク負荷とディスク容量の問
        題を解決する。
         インターネットストレージに
        保存したオブジェクトは、公開
        設定にすることでユーザーに直
        接アクセスさせることができる。
        これを利用してインターネット
        ストレージから配信するように、
        Webサーバーのネットワーク負
        荷を下げることができる。
                     57
大きいファイルの配信
     日経システムズ「クラウド設計のデザインパターン」




http://itpro.nikkeibp.co.jp/article/COLUMN/20110713/362355/
                                                              58
Direct Hostingパターン
          クラウドが提供するインター
         ネットストレージから直接デー
         タを配信する。
          インターネットストレージに
         保存したオブジェクトを公開設
         定にすることで、インターネッ
         トストレージ上のデータに直接
         アクセスさせることができる。
          インターネットストレージは
         元々共有ストレージとして使用
         される前提で設計されているの
         で、キャパシティー面では問題
         ない。負荷対策を行う必要が無
         くなる。
                      59
Blobストレージを簡易
Webサイトとして利用する




     http://blogs.msdn.com/b/naokis/archive
     /2011/03/12/azure-blob-web.aspx


                                              60
Blobストレージを簡易
Webサイトとして利用する




                61
Private Distributionパターン
            インターネットストレージで
           提供される制限付きURL発行機
           能を用いると、コンテンツに対
           して、アクセス元IPアドレス
           やアクセス可能期間を設定でき
           る。
            ユーザーごとにURLを発行し、
           その制限付きURLでのみコンテ
           ンツをダウンロードするように
           すれば、期限が切れたリンクや
           異なるIPアドレスを持つ人がア
           クセスを試みてもダウンロード
           できない。実質的に特定ユー
           ザーにのみコンテンツを提供す
           ることが可能になる。     62
Shared Access Signature
     日経システムズ「クラウド設計のデザインパターン」




http://itpro.nikkeibp.co.jp/article/COLUMN/20110713/362355/
                                                              63
Cache Distributionパターン
           世界各地に配置されたロケー
          ションに、コンテンツ配信元
          (マスター)から配布されるコ
          ンテンツのキャッシュデータを
          配置する。
           こうすることで、地理的によ
          り利用者に近いロケーションか
          らコンテンツを配信することに
          なり、地理的/物理的な制約を
          解決できる。
           このパターンを適用すると、
          ユーザーとコンテンツの距離が
          短くなるので、ユーザーへのレ
          スポンスを向上させることがで
          きる。            64
CDN
• コンテンツデリバリネットワーク = CDN
 – ユーザーが要求するコンテンツを、ネットワーク
   的に近い場所にあるキャッシュサーバーから配信
   することで、速度の向上と、サーバーへの負荷を
   分散させる。




    http://www.geekpage.jp/blog/?id=2009/4/27/1
                                                  65
ストレージとCDN




   S3        Blobストレージ




CloudFront      CDN
                         66
CDNのエッジロケーション




                67
CDNの有効化
• 詳細な手順は以下を参照
   – http://buchizo.wordpress.com/2011/03/10/%E8%AA%B0%E3%
     82%82%E7%9F%A5%E3%82%89%E3%81%AA%E3%81%8B%
     E3%81%A3%E3%81%9Fwindows-azure-cdn/


<asp:Image ID="Image1" runat="server"
ImageUrl="http://harutama.cloudapp.net
                             /iremono/pic1.jpg" />



<asp:Image ID="Image1" runat="server"
ImageUrl="http://az4452.vo.msecnd.net
                             /iremono/pic1.jpg" />
                                                             68
CDNの効果




 http://d.hatena.ne.jp/haru-tama/20100701   69
Rename Distributionパターン

           エッジサーバー上のキャッ
          シュデータは、そこにアクセス
          するURLがキーになる。
           アクセスURL自体を変更する
          ことで、エッジサーバーの
          キャッシュタイムアウトにかか
          わらず新しいコンテンツを配信
          できる。




                          70
Revving Filenames
                                  「/v~/」の部分を変えるだけで
                                   配信ファイルをコントロール

http://example.com/v1/pic.jpg




                                   http://example.com/v1/pic.jpg


                                RewriteEngine on
 配信するファイルの管理は                   RewriteRule ^/v[0-9]*/(.*) /$1 [PT]
 このURLの実体を変更する

                                   http://example.com/pic.jpg


  http://5net.com/blog/2012/03/reducing-operational-task-by-revving-
  filenames-in-cloudfront-with-ec2.html#more
                                                                       71
Rewrite Module for IIS 7




http://www.microsoft.com/ja-jp/download/details.aspx?id=7435
                                                               72
Application Request Routing




   http://blogs.gine.jp/taka/archives/2234
                                             73
質問はこちらで


http://social.msdn.microsoft.com
/Forums/ja-jp
/windowsazureja/threads




                                   74
Let’s dream and then let’s build.
                       - Ray Ozzie




                  冨田 順 (とみた すなお)
                http://twitter.com/harutama/
            http://d.hatena.ne.jp/haru-tama/

                                               75

More Related Content

What's hot

Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)Keisuke Takahashi
 
開発者なのに運用で手がいっぱい? そんなあなたに贈る、 クラウド時代に最適な OSS の RDBMS ! Azure Database for MySQL...
開発者なのに運用で手がいっぱい? そんなあなたに贈る、 クラウド時代に最適な OSS の RDBMS ! Azure Database for MySQL...開発者なのに運用で手がいっぱい? そんなあなたに贈る、 クラウド時代に最適な OSS の RDBMS ! Azure Database for MySQL...
開発者なのに運用で手がいっぱい? そんなあなたに贈る、 クラウド時代に最適な OSS の RDBMS ! Azure Database for MySQL...Suguru Ito
 
20140927 azure pack_slideshare
20140927 azure pack_slideshare20140927 azure pack_slideshare
20140927 azure pack_slideshareOsamu Takazoe
 
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイントG tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイントTrainocate Japan, Ltd.
 
Windows Server 2016 で実現しちゃう HCI (Hyper Converged Infrastructure)
Windows Server 2016 で実現しちゃう HCI (Hyper Converged Infrastructure)Windows Server 2016 で実現しちゃう HCI (Hyper Converged Infrastructure)
Windows Server 2016 で実現しちゃう HCI (Hyper Converged Infrastructure)Miho Yamamoto
 
S01 企業で活用が進む Microsoft Azureの仮想マシン (Windows)
S01 企業で活用が進む Microsoft Azureの仮想マシン (Windows)S01 企業で活用が進む Microsoft Azureの仮想マシン (Windows)
S01 企業で活用が進む Microsoft Azureの仮想マシン (Windows)Microsoft Azure Japan
 
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)Microsoft Azure Japan
 
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)Takamasa Maejima
 
20141110 tf azure_iaas
20141110 tf azure_iaas20141110 tf azure_iaas
20141110 tf azure_iaasOsamu Takazoe
 
G tech2016 Azureを使った災害復旧の基礎
G tech2016 Azureを使った災害復旧の基礎G tech2016 Azureを使った災害復旧の基礎
G tech2016 Azureを使った災害復旧の基礎Trainocate Japan, Ltd.
 
Azure IaaS 解説
Azure IaaS 解説Azure IaaS 解説
Azure IaaS 解説wintechq
 
Azure Database for MySQL PostgreSQLを使って運用の手間を省きませんか?
Azure Database for MySQL PostgreSQLを使って運用の手間を省きませんか?Azure Database for MySQL PostgreSQLを使って運用の手間を省きませんか?
Azure Database for MySQL PostgreSQLを使って運用の手間を省きませんか?Suguru Ito
 
CloudStack Overview(OSC2012Kansai@Kyoto)
CloudStack Overview(OSC2012Kansai@Kyoto)CloudStack Overview(OSC2012Kansai@Kyoto)
CloudStack Overview(OSC2012Kansai@Kyoto)Satoshi Shimazaki
 
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモHyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモwintechq
 
Azure Stack HCI - パフォーマンス履歴 と Azure Monitor
Azure Stack HCI - パフォーマンス履歴 と Azure MonitorAzure Stack HCI - パフォーマンス履歴 と Azure Monitor
Azure Stack HCI - パフォーマンス履歴 と Azure MonitorHiroshi Matsumoto
 
Windows Azureストレージ機能のまとめとWindows Server 2016(vNext)のストレージ新機能
Windows Azureストレージ機能のまとめとWindows Server 2016(vNext)のストレージ新機能Windows Azureストレージ機能のまとめとWindows Server 2016(vNext)のストレージ新機能
Windows Azureストレージ機能のまとめとWindows Server 2016(vNext)のストレージ新機能Takano Masaru
 
オンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたオンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたMasayuki Ozawa
 
Azure SQLデータベース最新動向&TIPS
Azure SQLデータベース最新動向&TIPSAzure SQLデータベース最新動向&TIPS
Azure SQLデータベース最新動向&TIPSnishioka1
 
Db2をAWS上に構築する際のヒント&TIPS 2020年6月版
Db2をAWS上に構築する際のヒント&TIPS 2020年6月版Db2をAWS上に構築する際のヒント&TIPS 2020年6月版
Db2をAWS上に構築する際のヒント&TIPS 2020年6月版Akira Shimosako
 

What's hot (20)

Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
 
開発者なのに運用で手がいっぱい? そんなあなたに贈る、 クラウド時代に最適な OSS の RDBMS ! Azure Database for MySQL...
開発者なのに運用で手がいっぱい? そんなあなたに贈る、 クラウド時代に最適な OSS の RDBMS ! Azure Database for MySQL...開発者なのに運用で手がいっぱい? そんなあなたに贈る、 クラウド時代に最適な OSS の RDBMS ! Azure Database for MySQL...
開発者なのに運用で手がいっぱい? そんなあなたに贈る、 クラウド時代に最適な OSS の RDBMS ! Azure Database for MySQL...
 
20140927 azure pack_slideshare
20140927 azure pack_slideshare20140927 azure pack_slideshare
20140927 azure pack_slideshare
 
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイントG tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
 
Windows Server 2016 で実現しちゃう HCI (Hyper Converged Infrastructure)
Windows Server 2016 で実現しちゃう HCI (Hyper Converged Infrastructure)Windows Server 2016 で実現しちゃう HCI (Hyper Converged Infrastructure)
Windows Server 2016 で実現しちゃう HCI (Hyper Converged Infrastructure)
 
S01 企業で活用が進む Microsoft Azureの仮想マシン (Windows)
S01 企業で活用が進む Microsoft Azureの仮想マシン (Windows)S01 企業で活用が進む Microsoft Azureの仮想マシン (Windows)
S01 企業で活用が進む Microsoft Azureの仮想マシン (Windows)
 
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
 
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
 
20141110 tf azure_iaas
20141110 tf azure_iaas20141110 tf azure_iaas
20141110 tf azure_iaas
 
G tech2016 Azureを使った災害復旧の基礎
G tech2016 Azureを使った災害復旧の基礎G tech2016 Azureを使った災害復旧の基礎
G tech2016 Azureを使った災害復旧の基礎
 
Azure IaaS 解説
Azure IaaS 解説Azure IaaS 解説
Azure IaaS 解説
 
Azure Database for MySQL PostgreSQLを使って運用の手間を省きませんか?
Azure Database for MySQL PostgreSQLを使って運用の手間を省きませんか?Azure Database for MySQL PostgreSQLを使って運用の手間を省きませんか?
Azure Database for MySQL PostgreSQLを使って運用の手間を省きませんか?
 
CloudStack Overview(OSC2012Kansai@Kyoto)
CloudStack Overview(OSC2012Kansai@Kyoto)CloudStack Overview(OSC2012Kansai@Kyoto)
CloudStack Overview(OSC2012Kansai@Kyoto)
 
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモHyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
 
azureから使うlinux
azureから使うlinuxazureから使うlinux
azureから使うlinux
 
Azure Stack HCI - パフォーマンス履歴 と Azure Monitor
Azure Stack HCI - パフォーマンス履歴 と Azure MonitorAzure Stack HCI - パフォーマンス履歴 と Azure Monitor
Azure Stack HCI - パフォーマンス履歴 と Azure Monitor
 
Windows Azureストレージ機能のまとめとWindows Server 2016(vNext)のストレージ新機能
Windows Azureストレージ機能のまとめとWindows Server 2016(vNext)のストレージ新機能Windows Azureストレージ機能のまとめとWindows Server 2016(vNext)のストレージ新機能
Windows Azureストレージ機能のまとめとWindows Server 2016(vNext)のストレージ新機能
 
オンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたオンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみた
 
Azure SQLデータベース最新動向&TIPS
Azure SQLデータベース最新動向&TIPSAzure SQLデータベース最新動向&TIPS
Azure SQLデータベース最新動向&TIPS
 
Db2をAWS上に構築する際のヒント&TIPS 2020年6月版
Db2をAWS上に構築する際のヒント&TIPS 2020年6月版Db2をAWS上に構築する際のヒント&TIPS 2020年6月版
Db2をAWS上に構築する際のヒント&TIPS 2020年6月版
 

Similar to Awsのクラウドデザインパターンをwindows azureに持ってきてみた

2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟貴仁 大和屋
 
Moot2013 moca ver0.3
Moot2013 moca ver0.3Moot2013 moca ver0.3
Moot2013 moca ver0.3科 黄
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理junichi anno
 
PHP on Windows Azure in Open Source Conference
PHP on Windows Azure in Open Source ConferencePHP on Windows Azure in Open Source Conference
PHP on Windows Azure in Open Source ConferenceMicrosoft
 
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)Amazon Web Services Japan
 
機械学習 / Deep Learning 大全 (5) Tool編
機械学習 / Deep Learning 大全 (5) Tool編機械学習 / Deep Learning 大全 (5) Tool編
機械学習 / Deep Learning 大全 (5) Tool編Daiyu Hatakeyama
 
AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -SORACOM, INC
 
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編Amazon Web Services Japan
 
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまでやりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまでDaisuke Masubuchi
 
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティSaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティKuniyasu Suzaki
 
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティス
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティスDBP-008_SQL Server on Azure VM 最新情報とベスト プラクティス
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティスdecode2016
 
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!Yoichi Kawasaki
 
Azure上の データベース 機能の選び方。KVSからDWHまで
Azure上の データベース 機能の選び方。KVSからDWHまでAzure上の データベース 機能の選び方。KVSからDWHまで
Azure上の データベース 機能の選び方。KVSからDWHまでDaisuke Masubuchi
 
Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう! Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう! Yoichi Kawasaki
 
OSC2012 Nagoya - OpenStack - Storage System; Overview
OSC2012 Nagoya - OpenStack - Storage System; OverviewOSC2012 Nagoya - OpenStack - Storage System; Overview
OSC2012 Nagoya - OpenStack - Storage System; Overviewirix_jp
 
PHP on Windows Azure
PHP on Windows AzurePHP on Windows Azure
PHP on Windows AzureMicrosoft
 
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会オラクルエンジニア通信
 

Similar to Awsのクラウドデザインパターンをwindows azureに持ってきてみた (20)

2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟
 
2011/11/26 Dot netlab
2011/11/26 Dot netlab2011/11/26 Dot netlab
2011/11/26 Dot netlab
 
Sql azure入門
Sql azure入門Sql azure入門
Sql azure入門
 
Moot2013 moca ver0.3
Moot2013 moca ver0.3Moot2013 moca ver0.3
Moot2013 moca ver0.3
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理
 
PHP on Windows Azure in Open Source Conference
PHP on Windows Azure in Open Source ConferencePHP on Windows Azure in Open Source Conference
PHP on Windows Azure in Open Source Conference
 
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)
 
機械学習 / Deep Learning 大全 (5) Tool編
機械学習 / Deep Learning 大全 (5) Tool編機械学習 / Deep Learning 大全 (5) Tool編
機械学習 / Deep Learning 大全 (5) Tool編
 
AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -
 
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
 
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまでやりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
 
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティSaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
 
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティス
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティスDBP-008_SQL Server on Azure VM 最新情報とベスト プラクティス
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティス
 
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
 
Azure上の データベース 機能の選び方。KVSからDWHまで
Azure上の データベース 機能の選び方。KVSからDWHまでAzure上の データベース 機能の選び方。KVSからDWHまで
Azure上の データベース 機能の選び方。KVSからDWHまで
 
Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう! Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう!
 
OSC2012 Nagoya - OpenStack - Storage System; Overview
OSC2012 Nagoya - OpenStack - Storage System; OverviewOSC2012 Nagoya - OpenStack - Storage System; Overview
OSC2012 Nagoya - OpenStack - Storage System; Overview
 
PHP on Windows Azure
PHP on Windows AzurePHP on Windows Azure
PHP on Windows Azure
 
PHP on Windows Azure
PHP on Windows AzurePHP on Windows Azure
PHP on Windows Azure
 
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
 

More from Sunao Tomita

AD19_冨田・近江_TechSummit2018
AD19_冨田・近江_TechSummit2018AD19_冨田・近江_TechSummit2018
AD19_冨田・近江_TechSummit2018Sunao Tomita
 
俺の俺による俺のための App Service Environment
俺の俺による俺のための App Service Environment俺の俺による俺のための App Service Environment
俺の俺による俺のための App Service EnvironmentSunao Tomita
 
ハンズオン環境をAzure仮想マシンを作成する.pptx
ハンズオン環境をAzure仮想マシンを作成する.pptxハンズオン環境をAzure仮想マシンを作成する.pptx
ハンズオン環境をAzure仮想マシンを作成する.pptxSunao Tomita
 
OMSのあれこれ
OMSのあれこれOMSのあれこれ
OMSのあれこれSunao Tomita
 
CPU 版 TensorFlow を Azure 仮想マシンに構築する
CPU 版 TensorFlow を Azure 仮想マシンに構築するCPU 版 TensorFlow を Azure 仮想マシンに構築する
CPU 版 TensorFlow を Azure 仮想マシンに構築するSunao Tomita
 
Azure Notebook で TensorFlow をハンズオンする環境を作る話
Azure Notebook で TensorFlow をハンズオンする環境を作る話Azure Notebook で TensorFlow をハンズオンする環境を作る話
Azure Notebook で TensorFlow をハンズオンする環境を作る話Sunao Tomita
 
Azure2017年3月障害DeepDive
Azure2017年3月障害DeepDiveAzure2017年3月障害DeepDive
Azure2017年3月障害DeepDiveSunao Tomita
 
Azure App Service を使った無料のハンズオン
Azure App Service を使った無料のハンズオンAzure App Service を使った無料のハンズオン
Azure App Service を使った無料のハンズオンSunao Tomita
 
Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Sunao Tomita
 
Caching ガイダンスの話
Caching ガイダンスの話Caching ガイダンスの話
Caching ガイダンスの話Sunao Tomita
 
20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要Sunao Tomita
 
Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森Sunao Tomita
 
Build 2014 Azure 的まとめ
Build 2014 Azure 的まとめBuild 2014 Azure 的まとめ
Build 2014 Azure 的まとめSunao Tomita
 
Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版Sunao Tomita
 
Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?Sunao Tomita
 
最近の Windows Azure ってどう?
最近の Windows Azure ってどう?最近の Windows Azure ってどう?
最近の Windows Azure ってどう?Sunao Tomita
 
2013年版の inside windows azure
2013年版の inside windows azure2013年版の inside windows azure
2013年版の inside windows azureSunao Tomita
 
Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版Sunao Tomita
 
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~Sunao Tomita
 
TypeScriptへの入口
TypeScriptへの入口TypeScriptへの入口
TypeScriptへの入口Sunao Tomita
 

More from Sunao Tomita (20)

AD19_冨田・近江_TechSummit2018
AD19_冨田・近江_TechSummit2018AD19_冨田・近江_TechSummit2018
AD19_冨田・近江_TechSummit2018
 
俺の俺による俺のための App Service Environment
俺の俺による俺のための App Service Environment俺の俺による俺のための App Service Environment
俺の俺による俺のための App Service Environment
 
ハンズオン環境をAzure仮想マシンを作成する.pptx
ハンズオン環境をAzure仮想マシンを作成する.pptxハンズオン環境をAzure仮想マシンを作成する.pptx
ハンズオン環境をAzure仮想マシンを作成する.pptx
 
OMSのあれこれ
OMSのあれこれOMSのあれこれ
OMSのあれこれ
 
CPU 版 TensorFlow を Azure 仮想マシンに構築する
CPU 版 TensorFlow を Azure 仮想マシンに構築するCPU 版 TensorFlow を Azure 仮想マシンに構築する
CPU 版 TensorFlow を Azure 仮想マシンに構築する
 
Azure Notebook で TensorFlow をハンズオンする環境を作る話
Azure Notebook で TensorFlow をハンズオンする環境を作る話Azure Notebook で TensorFlow をハンズオンする環境を作る話
Azure Notebook で TensorFlow をハンズオンする環境を作る話
 
Azure2017年3月障害DeepDive
Azure2017年3月障害DeepDiveAzure2017年3月障害DeepDive
Azure2017年3月障害DeepDive
 
Azure App Service を使った無料のハンズオン
Azure App Service を使った無料のハンズオンAzure App Service を使った無料のハンズオン
Azure App Service を使った無料のハンズオン
 
Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Logic Apps と Api Apps の話
Logic Apps と Api Apps の話
 
Caching ガイダンスの話
Caching ガイダンスの話Caching ガイダンスの話
Caching ガイダンスの話
 
20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要
 
Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森
 
Build 2014 Azure 的まとめ
Build 2014 Azure 的まとめBuild 2014 Azure 的まとめ
Build 2014 Azure 的まとめ
 
Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版
 
Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?
 
最近の Windows Azure ってどう?
最近の Windows Azure ってどう?最近の Windows Azure ってどう?
最近の Windows Azure ってどう?
 
2013年版の inside windows azure
2013年版の inside windows azure2013年版の inside windows azure
2013年版の inside windows azure
 
Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版
 
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
 
TypeScriptへの入口
TypeScriptへの入口TypeScriptへの入口
TypeScriptへの入口
 

Awsのクラウドデザインパターンをwindows azureに持ってきてみた

  • 1. AWS のクラウドデザインパターンを Windows Azure に持ってきてみた Japan Windows Azure User Group Microsoft MVP for Windows Azure 冨田 順 http://twitter.com/harutama
  • 2. 自己紹介 @harutama 2
  • 5. 5
  • 7. 7
  • 8. 本セッションのゴール • AWSクラウドデザインパターンの実装を 現状のWindows Azureで考えることにより Windows Azureでできる事を理解する。 8
  • 10. Windows Azure に無いもの Direct CloudWatch Auto Scaling Elastic IP Route 53 Connect Simple Identity and Elastic Simple Simple Workflow Access Network Notification Email Service Management Interface Service Service Import/ Mechanical Security Availability Export Turk Group Zone 10
  • 17. その他、あるあるに関しては… Windows Azure デベロッパー サポート チーム ブログ http://blogs.msdn.com/b/dsazurejp/ 17
  • 18. Snapshot Stamp Scale Up Ondemand Disk 基本 18
  • 19. 新機能! にまつわるパターンです。 19
  • 20. Snapshotパターン クラウド上で仮想サーバーの データ(OS含む)やその他の データをインターネットスト レージに複製するのは簡単で、 スナップショットを定期的に実 施する負担は小さい。 クラウドでのスナップショッ トは管理画面でワンクリックす るだけで取得できるほか、API を使用して取得することもでき る。つまりプログラムを使用し て自動化できるということだ。 20
  • 21. スナップショットの作成 インスタンスが停止していないと スナップショットは作成できない 21
  • 23. Stampパターン 一度OSやミドルウエア、ア プリケーションの設定を行って しまえば、それらをコピーして おき、あたかも「Stamp(ス タンプ)」を押すかのように仮 想サーバーを複製することで、 環境設定済みの仮想サーバーを 大量に用意できる。 クラウドではサーバーやディ スクなどのリソースを論理的に 扱えるため、こういった作業を 容易に行うことができる。 23
  • 25. Sysprep の役割 • 複数のディスクイメージが作成された際に、 矛盾が起こらないようにするコマンド。 – コンピュータ名 – 一意なSID(セキュリティID) – ドライバキャッシュ • インスタンスの元になるイメージは、必ず Sysprep を実行しないと競合が起こる。 – http://technet.microsoft.com/ja-jp /library/dd744263(v=WS.10).aspx 25
  • 28. Scale Upパターン 仮想サーバーのスペック (CPU、メモリーサイズな ど)を必要に応じて切り替える ことが可能である。 稼働後にリソース不足に陥っ た場合、従来は物理サーバーを 交換してOSを再インストール することが必要だったが、クラ ウドでは必要ない。 ひとまず仮想サーバーを起動 してシステムを稼働し、リソー ス利用量を確認しながらサー バースペックを変更する。 28
  • 29. ポータル上でのサイズ変更 インスタンスサイズを変更した場合 インスタンスの再起動が必要 29
  • 30. Ondemand Diskパターン クラウドでは仮想ディスクを 利用できる。 仮想ディスクは、いつでも好 きなタイミングで必要なだけの 容量を確保可能である。 仮想ディスクを利用すれば、 前もって精緻に見積もらなくて もよい。システムを稼働させた 後に利用量を見ながら必要な容 量のディスクをオンデマンド (OnDemand)に確保すれば よい。 30
  • 34. DB Replication Read Replica Inmemory DB Cache Sharding Write リレーショナルデータベース 34
  • 36. データベースサービス比較 SQL Database RDS インスタンス構成 専用の構成 EC2ベースの仮想マシン パッチの適用 自動 自動 or 手動 レプリケーション 標準で3重化 ユーザーが構成 スケジュール指定の自動 バックアップ 手動バックアップ 手動バックアップ Federation DBMSの機能や シャーディング により提供 周辺ソフトで対応 基本的に変更不可能 パラメータグループで パラメータの変更 自動チューニング ある程度変更可能 容量の制限 150GBytes 実質 無制限 36
  • 37. Replicationパターン 地理的ロケーションをまたい だレプリケーションを行うパ ターン。 このパターンによりデータロ ストを防ぎ、データアクセスの 可用性を担保する。クラウド以 前からもあったパターンである が、クラウドを用いることで安 価に複数の地理的ロケーション を利用できるようになり、現実 的な選択肢となった。 37
  • 38. Read Replicaパターン 読み込みを複数の「リードレ プリカ(読み込み用のレプリ カ)」に分散させることで、全 体のパフォーマンスを向上して いる。 リードレプリカは、マスター に対する書き込みに追随する形 で、自分自身のデータを反映さ せる。 読み込みは主にリードレプリ カを利用することで、マスター の負荷も減らすことになる。 38
  • 39. SQL Databaseでの レプリケーション • プライマリと2台のセカンダリによって、 保持しているデータは複製されている。 – いずれかのマシンが停止した場合、自動的に 昇格され、新たなレプリカを作成し、常に3台の マシンでデータが 分散される。 – ユーザーは何も する必要はない。 – ただしAZの概念は 無い。 39
  • 41. Sharding Writeパターン 複数のデータベースサーバー で書き込みパフォーマンスを上 げる方法に「シャーディング」 がある。 基本的には、同じ構造のデー タベースを用意して適切なテー ブルのカラムをキーにして分割 し、書き込み処理を分散する。 クラウドが提供するRDBMS サービスを用いれば、可用性が 高く、運用効率もよいシャー ディングが可能になる。 41
  • 42. SQL Database Federation • SQL Database の上でシャーディングを 行うための仕組み – SQL Database Federation の仕様 http://msdn.microsoft.com/ja-jp /library/windowsazure/hh700294.aspx – SQL Azure Federation入門 http://www.atmarkit.co.jp/fdotnet/bookp review/introwinazure_0404/introwinazure _0404_01.html 42
  • 43. もっと Federation! • SQL Azureを徹底活用 – 第7回 スケールアウトとSQL Azure Federation http://gihyo.jp/admin/serial/01/sql_azure/0007 – 第8回 SQL Database Federationを使用する ための最初の一歩 http://gihyo.jp/admin/serial/01/sql_azure/0008 – 第9回 SQL Database Federationをスケールさせる http://gihyo.jp/admin/serial/01/sql_azure/0009 43
  • 45. SQL Database の注意点 • 提供されるもの – データベースエンジン – レポーティング (SQL Reporting) – データ同期 (SQL Data Sync) • 現状で未サポートの機能 – Server Agent、SQL CLR など – バックアップと復元 • 管理ポータルからインポート・エクスポート可能 – テーブル パーティション分割 • Federationで対応 http://msdn.microsoft.com/ja-jp/library/windowsazure/ff394102 45
  • 46. SQL Server 版 RDS の注意点 • 提供されるもの – データベースエンジン – フルテキスト検索 – Safe SQL CLR • SQL Databaseでは未サポートの機能 • 現状で未サポートの機能 – Replication、Server Agent、Reporting など • Replication は SQL Database 標準機能 • Windows Azure ではSQL Reportingとして提供 http://docs.amazonwebservices.com/AmazonRDS/latest /UserGuide/Concepts.DBEngine.SQLServer.html 46
  • 47. RDB を利用する際の候補 データベースサービス RDS SQL Database 仮想マシンサービス EC2 Virtual Machines
  • 48. 仮想マシンサービスの比較 Virtual Machines EC2 インスタンス構成 仮想マシン 仮想マシン パッチの適用 手動 手動 レプリケーション ユーザーが構成 ユーザーが構成 バックアップ ユーザーが構成 ユーザーが構成 シャーディング ユーザーが構成 ユーザーが構成 パラメータの変更 すべて自由 すべて自由 48
  • 49. RDBを利用する際の候補 データベースサービス 自 動 運 用 RDS SQL Database 仮想マシンサービス 自 由 度 EC2 Virtual Machines
  • 50. Inmemory DB Cacheパターン データベースからの読み込み パフォーマンスを向上にする方 法として、頻繁に読み込まれる データをメモリーにキャッシュ するのがこのパターンである。 一度利用したデータをキャッ シュしておくことで、次に使う ときに(ディスクからでなく) メモリーからの読み込みで済ま せる方法である。 キャッシュするデータの典型 的な例としては、データベース 処理において時間のかかるクエ リーの結果や複雑な計算結果な どが挙げられる。 50
  • 52. 新しい Caching • 旧 AppFabric Caching で提供されていた キャッシュの機構とは異なる – Cloud Services (Web ロール・Worker ロール) のメモリを利用してデータをストア • ロールインスタンスのメモリを一部使用 • キャッシュ専用ロールインスタンス – memcached 互換のプロトコルをサポート – 現在は Preview Release 中 52
  • 55. Web Storage Direct Hosting Private Distribution Cache Distribution Rename Distribution 静的コンテンツを処理 55
  • 56. クラウド上のストレージ S3 Blobストレージ 56
  • 57. Web Storageパターン 大容量のファイルをインター ネットストレージへ配置し、そ こから直接ファイルを配信する ことで、Webサーバーのネット ワーク負荷とディスク容量の問 題を解決する。 インターネットストレージに 保存したオブジェクトは、公開 設定にすることでユーザーに直 接アクセスさせることができる。 これを利用してインターネット ストレージから配信するように、 Webサーバーのネットワーク負 荷を下げることができる。 57
  • 58. 大きいファイルの配信 日経システムズ「クラウド設計のデザインパターン」 http://itpro.nikkeibp.co.jp/article/COLUMN/20110713/362355/ 58
  • 59. Direct Hostingパターン クラウドが提供するインター ネットストレージから直接デー タを配信する。 インターネットストレージに 保存したオブジェクトを公開設 定にすることで、インターネッ トストレージ上のデータに直接 アクセスさせることができる。 インターネットストレージは 元々共有ストレージとして使用 される前提で設計されているの で、キャパシティー面では問題 ない。負荷対策を行う必要が無 くなる。 59
  • 60. Blobストレージを簡易 Webサイトとして利用する http://blogs.msdn.com/b/naokis/archive /2011/03/12/azure-blob-web.aspx 60
  • 62. Private Distributionパターン インターネットストレージで 提供される制限付きURL発行機 能を用いると、コンテンツに対 して、アクセス元IPアドレス やアクセス可能期間を設定でき る。 ユーザーごとにURLを発行し、 その制限付きURLでのみコンテ ンツをダウンロードするように すれば、期限が切れたリンクや 異なるIPアドレスを持つ人がア クセスを試みてもダウンロード できない。実質的に特定ユー ザーにのみコンテンツを提供す ることが可能になる。 62
  • 63. Shared Access Signature 日経システムズ「クラウド設計のデザインパターン」 http://itpro.nikkeibp.co.jp/article/COLUMN/20110713/362355/ 63
  • 64. Cache Distributionパターン 世界各地に配置されたロケー ションに、コンテンツ配信元 (マスター)から配布されるコ ンテンツのキャッシュデータを 配置する。 こうすることで、地理的によ り利用者に近いロケーションか らコンテンツを配信することに なり、地理的/物理的な制約を 解決できる。 このパターンを適用すると、 ユーザーとコンテンツの距離が 短くなるので、ユーザーへのレ スポンスを向上させることがで きる。 64
  • 65. CDN • コンテンツデリバリネットワーク = CDN – ユーザーが要求するコンテンツを、ネットワーク 的に近い場所にあるキャッシュサーバーから配信 することで、速度の向上と、サーバーへの負荷を 分散させる。 http://www.geekpage.jp/blog/?id=2009/4/27/1 65
  • 66. ストレージとCDN S3 Blobストレージ CloudFront CDN 66
  • 68. CDNの有効化 • 詳細な手順は以下を参照 – http://buchizo.wordpress.com/2011/03/10/%E8%AA%B0%E3% 82%82%E7%9F%A5%E3%82%89%E3%81%AA%E3%81%8B% E3%81%A3%E3%81%9Fwindows-azure-cdn/ <asp:Image ID="Image1" runat="server" ImageUrl="http://harutama.cloudapp.net /iremono/pic1.jpg" /> <asp:Image ID="Image1" runat="server" ImageUrl="http://az4452.vo.msecnd.net /iremono/pic1.jpg" /> 68
  • 70. Rename Distributionパターン エッジサーバー上のキャッ シュデータは、そこにアクセス するURLがキーになる。 アクセスURL自体を変更する ことで、エッジサーバーの キャッシュタイムアウトにかか わらず新しいコンテンツを配信 できる。 70
  • 71. Revving Filenames 「/v~/」の部分を変えるだけで 配信ファイルをコントロール http://example.com/v1/pic.jpg http://example.com/v1/pic.jpg RewriteEngine on 配信するファイルの管理は RewriteRule ^/v[0-9]*/(.*) /$1 [PT] このURLの実体を変更する http://example.com/pic.jpg http://5net.com/blog/2012/03/reducing-operational-task-by-revving- filenames-in-cloudfront-with-ec2.html#more 71
  • 72. Rewrite Module for IIS 7 http://www.microsoft.com/ja-jp/download/details.aspx?id=7435 72
  • 73. Application Request Routing http://blogs.gine.jp/taka/archives/2234 73
  • 75. Let’s dream and then let’s build. - Ray Ozzie 冨田 順 (とみた すなお) http://twitter.com/harutama/ http://d.hatena.ne.jp/haru-tama/ 75