
今年で 20 周年を迎える WordPress は、今でも最も人気のあるコンテンツ管理ツールの 1 つです。
WordPressインスタンスを実行するには、Webサーバーとデータベースが必要です。これは、プラットフォームサービスを使用するか、独自のインフラストラクチャを持ち込むかを問わず、クラウド上で稼働する仮想インフラストラクチャへの移行に最適な組み合わせです。Azureに独自のWordPressインストールを持ち込む場合でも、Azureを単なる仮想マシンのホストとして扱うため、基盤となるOSとCMSアプリケーションの管理とパッチ適用は依然として必要です。確かに、これはオンプレミスや従来のホスティングプロバイダーから既存のサービスをリフトアンドシフトする作業を簡素化するアプローチですが、ハイパースケールクラウドプラットフォームを利用することによるメリットを十分に享受することはできません。
ジャンプ先:
- Azure 用の WordPress を見つける
- マイクロソフトは独自のマネージドWordPressを導入
- Azure App Service で WordPress を使用する
- AKS 上の WP Engine を使用したスケーラブルな WordPress
- WordPress でクラウド分離と PaaS アプローチを組み合わせるメリット
Azure 用の WordPress を見つける
Azure Marketplace を見てみると、WordPress を実行するための様々なオプションが見つかります。基本的なインストールから、カスタマイズ版を含む完全なマネージド環境まで、様々な選択肢があります。選択肢が多すぎて、特に似たような機能と価格帯を提供しているものが多いため、どれを選ぶか迷ってしまうかもしれません。
WordPress は本質的にはハイパーテキスト プリプロセッサ (PHP) アプリケーションです。Azure でサポートされている PHP は、Azure App Service for Linux で実行されているもののみであることにご注意ください。Azure で独自またはサードパーティ製の WordPress を実行している場合は、Azure App Service で実行されているか、WordPress ベンダーが PHP サポートを提供しているかを確認してください。
マイクロソフトは独自のマネージドWordPressを導入
一つの選択肢として、Microsoft 独自のサービスである Azure App Service 上の WordPress があります。これはマネージド WordPress で、使い慣れた Azure App Service 上で動作し、コンテンツとデータには Microsoft の MySQL フレキシブルサーバーサービスを使用します。Microsoft は、App Service の Linux ホスティングオプションを基盤として、Azure 向けに WordPress インストールを最適化しました。また、これはオープンソースプロジェクトであり、GitHub でホストされるインスタンスを構成および作成するために必要なツールも含まれています。プロジェクトの GitHub リポジトリには、デフォルト設定と変更可能な項目の詳細を示すドキュメントへのリンクが含まれています。
サービスはマネージドサービスであるため、Microsoft がセキュリティパッチの適用を代行し、コンテンツ管理システム (CMS) を最新の状態に保ち、WordPress の運用に伴うリスクを軽減します。Microsoft が新しいインスタンスを起動し、コンテンツストレージとデータベースに接続した後、古いインスタンスから切り替えるため、メンテナンスのスケジュールを設定する必要はありません。
Azure App Service で WordPress を使用する
Microsoft は、Azure のベストプラクティスを活用するために WordPress ソリューションを構築しました。WordPress アプリケーションは、データベースやバックアップ ストレージとは別の仮想ネットワークで実行され、ローカル Redis キャッシュを使用してコンテンツ配信を高速化します。サービス全体は Azure Front Door セキュリティ アプライアンスの背後に配置され、静的コンテンツは Azure BLOB ストレージから提供されます。Front Door は Azure コンテンツ配信ネットワークと連携するように構成されているため、静的コンテンツはネットワークのエッジ付近にキャッシュされ、エンドポイントは Azure リージョンの数よりも多くの場所に配置されます。
課金はAzure App Serviceの標準料金に基づいており、Microsoftは想定される使用量に応じたホスティングプランのガイドラインを提供しています。標準インスタンス1つで1秒あたり120リクエストを処理できるプランから、本番インスタンス6つで1秒あたり21,000リクエストを処理するプランまで、幅広いプランが用意されています。AzureのマネージドMySQLはコンピューティングとストレージの料金が別々に請求されるため、ストレージのコストも考慮する必要があります。Azureパブリッククラウドでの実行に加えて、米国政府クラウドもサポートされており、公共機関はAzureを使用してWebコンテンツをホストできます。
Microsoftは、一般的な移行プラグインを使用して、既存のサイトからマネージドAzureインスタンスにコンテンツを移行する方法に関するガイドラインを提供しています。All-in-One WP Migrationツールの無料版は、コンテンツが最大256MBの小規模サイトに適しています。それ以上のコンテンツがある場合は、プレミアム版をご利用ください。Azure App Service上のWordPressにはアップロード制限があるため、App Serviceに構成設定を追加して、制限を50MBから256MBに引き上げる必要があります。または、ファイル転送プロトコル(FTP)を使用して元のサイトからAzureにコンテンツを手動でアップロードし、PHPコントロールパネルを使用してSQLデータをインポートすることもできます。大規模なサイトでは、複数のSQLエクスポートを使用する必要がある場合があります。
Azure Kubernetes Service 上の WP Engine を使用したスケーラブルな WordPress
興味深い代替案として、マネージドWordPressプロバイダーのWP Engineが最近発表したAzure向けサービスがあります。WP Engineのプラットフォームは現在、Microsoftのニュースサイト「Stories」の運営に利用されていますが、MicrosoftはWP Engineのプラットフォームを活用して独自のコンテンツプラットフォームを構築しており、COVID-19パンデミックのピーク時にはその重要性がますます高まりました。両社は、AzureのマネージドAzure Kubernetes Service (AKS)プラットフォームとの統合により、プラットフォームのスケーラビリティを向上させるための共同作業を行いました。
このツールは、WP Engineのツールがコンテナ内で実行できるように移植され、複数のAzureリージョンで実行可能になったことで、一般ユーザーにもご利用いただけるようになりました。これにより、WordPressと他のコード間の分離が確保され、セキュリティが向上します。AKSは必要に応じて新しいワーカーノードを自動的に追加し、Azureのネットワークサービスがこれらの新しいコンテナへのWebアプリケーションファイアウォールとグローバルルーティングを提供します。
これは、独自のコードだけでなく、クラウドネイティブなアプローチを採用することのメリットを示す選択肢です。コンテナー化されたWordPressはAzure Arcで管理でき、Azure Stack HCIやその他のエッジテクノロジーを介してローカルAKS上で実行されます。つまり、Azure上での作業に限定されず、Arcで管理されたAzure環境があればどこでもWordPressを管理できるというメリットがあります。
WordPress におけるクラウド分離と Platform as a Service アプローチを組み合わせるメリット
WordPressの管理には時間とリソースがかかり、管理されていないインストールの多くはホストのセキュリティリスクを高めます。分離されたクラウドインスタンスに移行することで、特にWordPressを一般向けサービスに使用している場合は、ネットワークへのリスクを軽減できます。クラウド分離とPlatform as a Service(PaaS)アプローチを組み合わせることで、特にグローバルコンテンツ配信プラットフォームを追加する場合、より迅速かつ安全なコンテンツ配信が可能になります。
次に読む: Microsoft Azure 認定資格準備の完全バンドル (TechRepublic Academy)