Upgrade to Pro — share decks privately, control downloads, hide ads and more …

実プロジェクトの経験から学ぶAzureサービス適用パターン

 実プロジェクトの経験から学ぶAzureサービス適用パターン

2015/09/11に『Azure サポート エンジニアがお話しする、初学者向け Azure 仮想マシン、これだけは知っておこう』でお話しさせていただいたスライドです。

Kuniteru Asami

September 12, 2015
Tweet

More Decks by Kuniteru Asami

Other Decks in Technology

Transcript

  1. ©2015 pnop, Inc. © 2011 Microsoft Corporation All Rights Reserved.

    About me kuniteru.asami Find me Database Azure 2012~ Microsoft Azure
  2. ©2015 pnop, Inc. http://www.cloudlive.jp/ http://www.pnop.co.jp/ Microsoft Azure Microsoft Azure の特徴を活かした

    設計、開発、構築により 最適な環境を実現 Windows / Linux 対応 コンサルティング サービス
  3. ©2015 pnop, Inc. 弊社が携わった Azure プロジェクト例 ゲーム ERP クレジット EC

    POS ヘルスケア 交通 地域 広告 書籍 天気 写真 CMS 占い 駐車場 イベント サイネージ IoT HPC パッケージ OSS
  4. ©2015 pnop, Inc. Web Apps Web アプリケーションの場合はまずは Web Apps を検討すべき

    言語は以下に含まれること .NET, PHP, Java, Python, node.js あるいは 静的ファイル 言語の細かいバージョンにこだわらないこと インストールが必要なミドルウェアやエージェントなどがないこと WAF を必要としないこと Barracuda WAF が Web Apps にも対応していますが、Web Apps だけでは実現できません VPN や Azure 内部のネットワークからアクセスする必要がないこと Active Directory に所属する必要がないこと OS、Web サーバー、言語ランタイムのアップデートの管理が不要 アプリケーションの展開が簡単 素早いオートスケールが可能
  5. ©2015 pnop, Inc. クラウドサービス OS、Web サーバー、.NET Framework のアップデートの管理が不要 .NET 以外の言語を利用する場合は、そのアップデートの管理が必要

    多くのミドルウェアやアプリケーションを利用可能 オートスケールが容易 インスタンス内に保存したデータや設定は永続化されない 初期設定は可能ですが、後で変更するとメンテナンスや障害などによる再起 動時に初期化されます データは Azure Storage や SQL Database などの外部データストアに保存します アプリケーションの展開方法にややクセがある Azure を利用し始めていきなりクラウドサービスは 難易度がやや高い
  6. ©2015 pnop, Inc. 仮想マシン 普通の Windows Server、Linux Server として利用することができる OS

    に対応しているアプリケーションであれば何でもインストールすることが できる クラウド向けのライセンスを確認すること ローカルディスクに保存したデータが永続化される Docker、Chef、Puppet などを利用可能 OS やインストールしたミドルウェアなどのアップデートの管理が必要 ロードバランスされている Web サーバーで Windows Update が同時に動いていいのか? OS やアプリケーションのアップデートを凍結しても、 ホスト OS のアップデートの影響を受ける
  7. ©2015 pnop, Inc. Azure で利用できる主なデータストア RDBMS NoSQL BLOB Data on

    IaaS SQL Database Table Storage DocumentDB BLOB Storage 仮想マシン ClearDB Redis Cache
  8. ©2015 pnop, Inc. SQL Database Microsoft SQL Server 互換の DBaaS

    3 重化されており、Master の障害時には瞬時に Slave が自動で昇格 非同期ではあるがRead only replica の作成が可能 (同一DC / 異なるDC) 自動でバックアップが取得されており、PITR が可能 .NET ではライブラリにより Sharding が可能 データサイズの制限 (MAX 500GB) TimeZone が UTC 固定 一部の関数やストアドプロシージャ、 SQL Server Agent / Job などサポートされない機能がある スロットリングがある
  9. ©2015 pnop, Inc. ClearDB サードパーティから提供されている MySQL 互換 の DBaaS Azure

    上で稼働している 3 サーバーでの マルチマスタレプリケーション構成 自動で日時バックアップを取得
  10. ©2015 pnop, Inc. DB on 仮想マシン 仮想マシン上にユーザー自身で任意の RDBMS を構築する Microsoft

    SQL Server、Oracle Database、IBM DB2 が公式に対応を表明 SQL Server は、Azure に対応した機能を持つ MySQL、PostgreSQL なども利用可能 Premium Storage を利用するのが定石 全ての Disk をPremium Storage にしなくてもよい Azure のメンテナンスや障害による 仮想マシン再起動への対策として可用性の高い 構成が必要 インスタンスサイズによるがデータベースの 最大サイズは 64TB ※ トランザクションログ、バックアップ領域なども含む (SQL Server は除く)
  11. ©2015 pnop, Inc. 可用性セット SQL Server AlwaysOn 可用性グループ Worker ロール

    (クラウドサービス) Web ロール (クラウドサービス) 仮想マシン ILB SQL Server on 仮想マシン SQL Server on 仮想マシン 同期コミット WSFC ノード AD DC AD DC 可用性セット
  12. ©2015 pnop, Inc. Oracle Database の高可用性構成 Oracle GoldenGate 双方向/マルチマスタ レプリケーション

    Oracle Data Guard REDO ログ転送によるミラーリング Oracle RAC は構成できない
  13. ©2015 pnop, Inc. Oracle GoldenGate Active - Active 双方向 /

    マルチマスタ レプリケーション 必要なデータのみをレプリケーション Oracle Database Standard Edition でも利用可能
  14. ©2015 pnop, Inc. Oracle GoldenGate GoldenGate GoldenGate 双方向同期 Oracle DB

    on 仮想マシン ILB Worker ロール Oracle DB on 仮想マシン Web ロール 仮想マシン (クラウド サービス) Web ロール 仮想マシン Worker ロール CTF/TAF* CTF/TAF* CTF/TAF* (クラウド サービス) * CTF = Connection Time Failover, TAF = Transparent Application Failover 可用性セット
  15. ©2015 pnop, Inc. Oracle Data Guard Active - Standby ディザスタ

    リカバリを目的とした REDO ログ転送 によるミラーリング ファスト・スタート・フェイルオーバーによる切 替
  16. ©2015 pnop, Inc. 可用性セット 可用性セット Oracle Active Data Guard Data

    Guard Data Guard REDOログ同期転送 Oracle DB EE on 仮想マシン Oracle DB EE on 仮想マシン Web ロール (クラウドサービス) 仮想マシン CTF/TAF* CTF/TAF* Worker ロール (クラウドサービス) CTF/TAF* オブザーバー オブザーバー * CTF = Connection Time Failover, TAF = Transparent Application Failover
  17. ©2015 pnop, Inc. MySQL の高可用性構成 MySQL Cluster MySQL 標準のクラスタ Galera

    cluster for MySQL マルチマスタ レプリケーション
  18. ©2015 pnop, Inc. MySQL Cluster MySQL 標準のクラスタ機能 NDB ストレージエンジン 通常の

    MySQL Server に加えて、クラスタをサポー トするバイナリ、NDB ストレージ エンジン、NDB ストレージ マネジメント サーバーが必要
  19. ©2015 pnop, Inc. 可用性セット 可用性セット 可用性セット MySQL Cluster ILB Worker

    ロール SQL ノード on 仮想マシン Web ロール 仮想マシン Data ノード on 仮想マシン Data ノード on 仮想マシン SQL ノード on 仮想マシン 管理ノード on 仮想マシン 管理ノード on 仮想マシン 管理クライアント on 仮想マシン
  20. ©2015 pnop, Inc. MySQL Galera Cluster マルチマスタ レプリケーション InnoDB ストレージエンジン

    Galera Cluster 対応の MySQL / MariaDB / PERCONA Server と wsrep APIを利用 http://galeracluster.com/
  21. ©2015 pnop, Inc. 可用性セット MySQL Galera Cluster wsrep API wsrep

    API MySQL on 仮想マシン Worker ロール MySQL on 仮想マシン Web ロール 仮想マシン wsrep API MySQL on 仮想マシン ILB
  22. ©2015 pnop, Inc. クラスタソフトの利用 市販されている / OSS のクラスタソフトを利用す ることも可能 NEC

    CLUSTERPRO SIOS LifeKeeper Pacemaker + Corosync etc… Worker ロール (クラウドサービス) Web ロール (クラウドサービス) 仮想マシン ILB 仮想マシン 仮想マシン レプリケーション 可用性セット
  23. ©2015 pnop, Inc. とあるゲームの初期計画構成イメージ Apple Push Notification Service Google Cloud

    Messaging 仮想マシン 管理サーバー PHP ロードバランサー ロードバランサー ロードバランサー DocumentDB ログ出力先 クラウドサービス ゲームサーバー node.js Storage Queue クラウドサービス ミニゲームサーバー node.js Redis Cache 仮想マシン 通知サーバー PHP クラウドサービス ロジックサーバー C#.net 運用管理者 ユーザー MySQL on 仮想マシン ゲームDB (Sharding & Read only replica)
  24. ©2015 pnop, Inc. とあるゲームの運用構成イメージ Apple Push Notification Service Google Cloud

    Messaging Web App 管理サーバー PHP ロードバランサー ロードバランサー ロードバランサー Storage Table ログ出力先 クラウドサービス ゲームサーバー node.js Service Bus Queue Web App ミニゲームサーバー node.js Redis Cache Nortification Hubs 通知サーバー クラウドサービス ロジックサーバー C#.net 運用管理者 ユーザー SQL Database ゲームDB (Sharding and Active geo-replication)
  25. JAZUGのご紹介 ◼ Japan Azure User Group 略称:JAZUG(じゃずゆーじー) ◼ http://r.jazug.jp ◼

    コミュニティ活動概要: 「Microsoft Azureを通じて、技術、交流、実ビジネスを楽しむ。」 “ちょっと興味がある=ゆるふわな方” から “実ビジネスで使うんだよね” な方まで 大歓迎!ゆるふわコミュニティです。 ◼ JAZUGへの参加はFacebookで。 Japan Windows Azure User Group(Facebookページ) https://www.facebook.com/jazug.jp Japan Windows Azure User Group(Facebookグループ) https://www.facebook.com/groups/jazug/ ◼ JAZUG女子部、札幌(きたあず)、青森、仙台、福島、静岡、名古屋(なごあず)、 信州(Azureしなの)、関西(関西Azure研究会)、福岡(ふくあず)、沖縄 ◼ Twitter: #jazug ◼ 一緒に運営してくれるメンバーを募集中です。