連載
» 2018年06月14日 05時00分 公開

Microsoft Azure最新機能フォローアップ(53):「Azure Container Instances」の一般提供開始(日本を除く6リージョンから) (2/2)

[山市良,テクニカルライター]
前のページへ 1|2       

Windowsコンテナーはまだ実用段階とはいえない

 以下の画面4は、Azure CLIを使用してWindowsコンテナーをデプロイしてみたところです。エラーを見ると分かりますが、Azure Container Instancesの既定のOSの種類はLinuxであり、WindowsコンテナーはWindows Server 2016バージョンのベースOSイメージ(microsoft/windowsservercore、microsoft/nanoserver)のみに対応しているようです。

画面4 画面4 Azure CLIを使用して、Azure Container InstancesにWindowsコンテナーをデプロイしているところ

 Docker HubのMicrosoftのパブリックリポジトリで利用可能な幾つかのWindowsコンテナーイメージを試してみましたが、期待通りには動作しないものもありました。コンテナの作成と実行はできているようなのですが、デプロイに失敗(Failed)したり、待ち状態(Waiting)のまま変化しないこともありました。

 ドキュメントのチュートリアルにある「microsoft/iis:nanoserver」(Windows Server 2016ベースのNano Serverイメージ)は、数分で正常にデプロイおよび実行できました(画面5)。

画面5 画面5 Azure Container InstancesにデプロイしたWindowsコンテナー(microsoft/iis:nanoserverを使用)

 ただし、このバージョンのNano Serverは、近いうちにサポートされなくなるはずです(原則はリリース後18カ月ですが、2018年5月の更新イメージは提供されていました)。また、正常にデプロイできたとしても、Windows Server 2016ベースのWindowsコンテナーは初めてのコンテナ対応であり、Server Coreベースのものはイメージサイズが非常に大きく、デプロイにかなりの時間がかかる(microsoft/windowsservercoreはダウンロードサイズ約5GB)ため、まだ運用環境に導入するのは早いという印象です。Windows Server Semi-Annual Channelの、よりコンパクトなベースOSイメージ(microsoft/windowsservercoreやmicrosoft/nanoserverの:1709や:1809タグのイメージ)がAzure Container Instancesで利用可能になることを期待したいところです。

ACS/AKSはコンテナのためのマネージドクラスタを構築』

 Microsoft Azureにはマネージドなコンテナ環境として、以前から「Azure Container Service(ACS)」が一般提供されています。また、2017年10月からは「Azure Kubernetes Service(AKS)」のプレビュー提供も開始されています(画面6)。

画面6 画面6 Windows/Linuxコンテナーのためのマネージドクラスタ環境は、今後、AKS(現在プレビュー)が主流に。ACSの「DC/OS」やSwarmのクラスタは、現在、Azure CLIでのみ作成可能

 ACSは、「Docker Swarm」または「Mesosphere DC/OS」をオーケストレーションエンジンとしたクラスタ環境を提供するもので、Linuxコンテナーのみのデプロイと実行が可能です。AKSは、オーケストレーションエンジンとして「Kubernetes」を採用したもので、Linuxコンテナーに加えて、Windowsコンテナーもサポートしています(Windowsコンテナーのデプロイと実行にはプレビューへの登録申請が必要)。

 AKSは、以前はKubernetesで管理されるACSのように表現されていましたが、現在はAzure Container ServiceのことをAKSと略しているドキュメントがあります。また、以前はAzureポータルでACSのSwarmまたはDC/OSクラスタを作成できましたが、現在はAzure CLIでのみ作成できます。これらの状況から、将来的にはAKSを中心にしたいという、Microsoftの意図を感じます。

 ACSやAKSは、一定範囲のノードサイズ(作成時に固定)やスケール(作成後に伸縮可能)を持つコンテナ用のクラスタ環境であり、クラスタ作成後はサーバのメンテナンスなしでコンテナのデプロイと実行が可能です。

 一方、Azure Container Serviceは、サービスとして用意されたマルチテナントのクラスタ環境を直接的に利用できるというイメージです。AKSでは、突然のトラフィックの急増に対応するために、Azure Container Serviceにスケールアウトするオプションも用意されているようです(図1)。

図1 図1 ACS/AKSとAzure Container Serviceの違い

最新情報

 2018年6月13日(日本時間6月14日)に、AKSの一般提供開始がアナウンスされました。


筆者紹介

山市 良(やまいち りょう)

岩手県花巻市在住。Microsoft MVP:Cloud and Datacenter Management(Oct 2008 - Sep 2016)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。


前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。