7. 42 https://azure.microsoft.com/ja-jp/regions/
100 カ所以上のデータセンター
ネットワーク網が全世界で Top 3 の 1 つ
Central US
Iowa
West US
California
North Europe
Ireland
East US
Virginia
East US 2
Virginia
US GOV
Virginia
North Central US
Illinois
US GOV
Iowa
South Central US
Texas
Brazil South
Sao Paulo
West Europe
Netherlands
China North *
Beijing
China South *
Shanghai
Japan East
Saitama
Japan West
Osaka
India South
Chennai
East Asia
Hong Kong
SE Asia
Singapore
Australia South East
Victoria
Australia East
New South Wales
* Operated by 21Vianet
India Central
Pune
Canada East
Quebec City
Canada Central
Toronto
India West
Mumbai
Germany East
Germany West
UK West
UK East
Operated by Deutsche Telekom
West US2
California
West Central
US
Korea Central
Seoul
Korea South
TBA
US East
DoD
US GOV
Texas
France
Central France
South
US GOV
Arizona
US Central
DOD
regions around the world
33. Azure リージョン
Database Server
サーバーマネジメント
Azure Database
Mgmt Service
Azure Resource
Manager
REST API
Azure
Portal
Custom Mgt.
ApplicationsAzure CLI
server=myserver.<mysql/postgres>.database.azure.com
pg1
PG1
IP1:5432 or 3306
retry
Gateway
• いったん接続が切れても内部ゲートウェイでリトライして
くれるのでアプリケーションは切断の影響を受けにくい
• さらに慎重を期すならば、長時間トランザクションを
避ける実装にすることがおすすめ
(トランザクションは接続オブジェクトに紐づくため)
34. AZURE DATABASE FOR MYSQL AND POSTGRESQL
REGION AVAILABILITY TODAY
West US, North Central US, East US,
East US2, South Central US, West
Europe, North Europe, Japan
West, Japan East, East Asia, SE
Asia, West India, Central India
More coming soon!
13
Azure regions
available today
43. Azure Database for MySQL
https://feedback.azure.com/forums/597982-azure-database-for-mysql
Azure Database for PostgreSQL
https://feedback.azure.com/forums/597976-azure-database-for-postgresql
• 直接研究開発チームに要望を上げることが可能なフォーラム
• すでに上がっている要望に対し投票することも可能
44. Azure App Service on Linux のモビリティの高さを活用し
クラウド経費精算システムのバックエンドを
Heroku と AWS から Azure へ移行
https://www.microsoft.com/ja-jp/casestudies/crowdcast.aspx
それでは、今日の本題。PaaS=Platform as a Services について考えてみましょう。
9/6 GAです。
いいえ。Linux ベースの Web App 及び Web App for Containers で様々なWebアプリケーションに対応可能です
If you need unique runtime requirements and dependencies (ex. imagemagick node packages)
Develop and test locally and then deploy to Web App for Containers
The platform doesn’t provide the desired stack (ex. GO)
Better performance, you can only have what you want for your app, no more bloat
Add SSH to debug your container
Disable platform storage if not needed
Do everything at container build time, this will decrease the startup time
No need to implement SSL, the platform manages that
If your container exposes more than one port, configure which one to send web traffic to
クラウド上に配置されたデータベースをサービス (Software as a Service : SaaS) として提供しており、高可用性を実現するため、複数レプリカによる冗長性を備えています。また、高可用性を維持していくために、Reconfiguration (リコンフィグレーション) が内部的に行われています。
HA(高可用性)モデルは、ノードレベルの中断の場合にデータベースをレプリカにフェイルオーバーする組み込みのメカニズムに基づいています。これは、ハードウェア障害のために発生する可能性がありますが、OSまたはPostgreSQLエンジンへのサービス展開またはパッチへの応答としても発生します。 PostgreSQLに加えられた変更は、トランザクションのコンテキストで常に発生し、トランザクションがコミットされる前に、セカンダリストレージまたは別のデータベースのレプリカに同期して記録されます。ノードレベルの割り込みが発生すると、データベースサーバーは自動的に別のノードで実行されているレプリカに切り替えます。アクティブな接続はすべて破棄され、実行中のトランザクションはコミットされません。 PostgreSQLデータベースアプリケーションは、削除された接続や失敗したトランザクションを検出して再試行することが重要です。アプリケーションが接続を再試行すると、プライマリ・データベースとして引き継ぐレプリカにリダイレクトされます。新しいレプリカへのカットオーバは、平均して30秒以上です。