fbpx

DockerとKubernetesにおける先進的なWindowsコンテナサポート #docker #kubernetes

この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。

3月25日、Cloud Native Computing Foundation (CNCF)はWindowsノードのサポートを有するKubernetes 1.14を発表しました。KubernetesのWindowsサポートは、業界にとって歴史的な前進であると共に、Docker社がこれまで5年間にわたってMicrosoft社と協力し、Windowsコンテナを開発してきた成果を裏付けるものです。これはコンテナがLinuxのためだけのものではないことの証明です。Windowsと.NETアプリケーションの重要で大きなフットプリントは、DockerプラットフォームとKubernetes両者から恩恵を受けることができるのです。

Docker社とMicrosoft社の協力は、5年前に始まりました。今ではWindows Server 2016以降のすべてのバージョンは、エンタープライズ版Docker Engineを搭載しています。さらにWindowsコンテナのすばらしいユーザ体験を促進するために、Microsoft社は129以上におよぶ、人気の高いソフトウェアのWindowsコンテナイメージをDocker Hubで公開しています。Dockerの企業ユーザの多くは、すでにWindowsとLinuxの両方のコンテナをSwarmで実行しています。さらに、Docker
EEではWindowsコンテナの選択肢としてKubernetesも利用することができます。今やDocker EEとDocker Desktopのユーザは、もっとも簡単なKubernetesの管理方法がDockerであることを知っています。また彼らは、今回のリリースによってWindowsコンテナにおいても同等の恩恵を受けられる運びとなりました。

KubernetesにおけるActive Directory認証アプリケーションのgMSAサポート

Windows Serverが初めてリリースされて以来、コンテナ化したWindowsアプリケーションを企業の本番環境向けにする方法について、ユーザと密接に協力しながら開発を進めてきました。この5年間の経験から、企業が自社の環境においてWindowsコンテナ向けにKubernetesを選択肢として持つために必要な唯一のコンポーネントは、Windowsベースのコンテナをサポートするランタイムです。

さらに必要とされるものは、コンテナ化したワークロードをActive Directory内でドメイン資格情報とIdentityとともに設定するサポートです。当初、私たちはWindowsのDocker Engineで実行している個別のコンテナ向けに、gMSA認証サポートを整備する目的でマイクロソフト社と協力しました。次にgMSA認証を広くサポートするオーケストレータをSwarmに実装しました。これまでの経験をもとに、私たちはKubernetesにおけるWindowsワークロード向けgMSAサポートの設計と実装を主導し、Kubernetes 1.14においてアルファレベルのgMSAサポートの提供を実現しました。多くのWindowsベースのアプリケーションはドメインに参加したホスト上で実行されており、ドメイン内の他のリソースにアクセスするためにActive Directoryが管理するサービスアカウントを使用します。しかしながらWindowsコンテナは本格的にドメインに参加したオブジェクトではありません。代わりに、Windows Server 2012で導入されたgroup Managed Service Accounts(gMSA)と呼ばれる特殊なサービスアカウントでWindowsコンテナを実行できます。Windowsは、(個々のコンピュータアカウントの代わりに)gMSAに関連付けられた認証情報を使用します。これによりActive Directoryドメインにおいて、コンテナ化したWindowsアプリケーションが他のサービスへアクセスすることを可能としています。

Docker社はMicrosoft社およびKubernetesコミュニティと協力しKubernetesのgMSAサポートに取り組んでいます:

  1. クラスタ全体におけるgMSA用の認証情報のspecを設定するためのカスタムリソース
  2. PodのspecからgMSA認証情報のspecにわたる認証と参照の解決
  3. 完全なgMSA認証情報のspec JSONを(Docker Engineのような)コンテナランタイムへの受け渡し

この機能はKubernetes 1.14のアルファ版に含まれており、その設計と実装に関する詳細情報はこちらでご確認いただけます。ぜひこれをお試しのうえ、コンテナで実行できるアプリケーションの多様化に貢献してください。また私たちは、これらの機能が正規版でも利用可能となるよう、コミュニティとの協力も続けてまいります。

KubernetesとWindows: 今後の抱負

Windows管理者とユーザは、エンタープライズ向けにオーバーレイネットワークと動的にプロビジョニングされたストレージも必要です。この分野においてはKubernetesコミュニティとも協力しており、また、サンフランシスコでのDockerCon 2019において、ディスカッションやデモを行います。今後もブログ記事で進捗状況をお伝えします。またDockerConでお目にかかれることも楽しみにしています。


原文: Advancing Windows Containers with Docker and Kubernetes

新規CTA