[和訳] Dockerエンタープライズ・エディションによる、Kubernetes管理の簡略化 #docker #k8s #kubernetes
この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。
本稿は Simplifying the Management of Kubernetes with Docker Enterprise Edition (2017/12/6) の和訳です。
去る10月のDockerConヨーロッパにおいて、私たちは Kubernetesを統合したシームレスでシンプルなDockerプラットフォーム を提供することを発表しました。Docker EEのKubernetesインテグレーションによって、開発段階から運用までの一貫したワークフローという、従来のユーザニーズを満たしながら、さらにオーケストレーションにおいては、SwarmまたはKubernetes(あるいはその両者)という選択肢を用意しました。Dockerプラットフォームは、安全性、管理機能、慣れ親しまれた開発ワークフローとツール、広域なエコシステムにおける互換性などを付加価値として有し、 containerd と OCI を含む互換性と業界標準を遵守した広範なエコシステムです。今回の統合によりユーザは、このDockerプラットフォームに最適化されたKubernetesを手に入れることができるのです。
DockerCon ヨーロッパにおけるKubernetes対応の発表以来、寄せられている主要な質問の1つとして「今回のKubernetesインテグレーションは、Docker EEにおいてすでにコンテナのオーケストレーションにKubernetesを使っている運用チームにとってはどのような意味があるのか?」というものですが、答えはきわめて明確で、次の通りです。
- Kube APIおよびすべてのKubernetes構成にフルアクセスできます。
- KubeCTLをネイティブ活用できます。
- Kube YMLを使用している開発者は、シームレスなデプロイが可能になります。
- Composeを用いてのDocker開発が可能です。またKubernetesサービス関連でこれまでに得てきたベストプラクティスを活用できます。
Kubernetes対応Docker EEは今月(2017年12月)ベータ版がリリースされ、来年2月には一般公開となります。今月下旬にKubernetes対応となる初のDocker CE EdgeのMac版がリリースされます。Windows版も、まもなくリリース予定です。
DockerのKubernetes対応についてもっと知りたい方は、次の動画「DockerでKubernetesを使用して得られる安全性および可搬性の利点についての概要」をご覧ください。
Dockerプラットフォームの進化した能力を引き継ぐKubernetes
今回の統合により、さらなる広範囲における一括管理およびエンタープライズ運用における安全性と自動化など、これまでのDocker EEの特長をKubernetesが引き継ぎます。
簡単なインストール
クラスタ管理にSwarm を活用することで、高可用でフォールトトラレントなKubernetes環境を、より簡単に、より安全に作ることができます。
管理者は1行のコマンドでDocker EEをインストールするだけで、Kubernetes対応のクラスタを起動できます。クラスタの起動時にDocker EEの一部としてKubernetesがインストールされます。KubernetesはSwarmからの影響を受けず独立して動きます。これには証明書ローテーション機能を持つクラスタ内の、すべてのノードに対する相互認証TLSを含みます。この ビルトイン・セキュリティ 機能が、認可されたノードのみをクラスタに追加できるよう制御します。
クラスタに追加されたノードは、管理上の懸念点とは明確な一線を引いたうえでKubernetesサービスまたはSwarmサービスを起動させるよう割り当てられることもあります。この高度なノード管理によって、運用チームは各オーケストレータに起こる問題の原因を解明し、解決できるのです。そのうえ、管理者はタスク割り当て設定を各ノード上で一斉に変更でき、それぞれのワークロードごとに必要なキャパシティ順にノードを整列させることも可能です。
安全で一元管理されたサプライチェーン
Docker EEは、開発者のノートPCから本番環境へのデプロイに至るサプライチェーン全体において、エンドツーエンド・セキュリティを提供します。今回の統合により、SwarmとKubernetes両者のデプロイメントにおいて、各チームが同じサプライチェーンの能力を活用できます。その能力とは:
安全なイメージ管理
Docker EEは、 イメージスキャン および Docker Content Trust によって、プライベートホストのイメージレジストリ内で、イメージのデプロイと管理に先立ち、イメージの有効性を確認、検証する方法を提供します。
安全な自動化
ポリシーベースのイメージプロモーション によって、脆弱性をスキャンするなどのセキュリティポリシーを強化しながら、サプライチェーンのボトルネックを排除することができます。
安全なマルチテナント
APIレベルに至るまでの柔軟できめ細かなロールベースのアクセス制御(RBAC)によって、 管理者はAD/LDAPを一括で統合でき、異なるアプリケーションタイプ (マイクロサービス、ISV、伝統的なアプリ)の、異なるアプリケーション (Windows、Linux、メインフレーム)を使用する様々なチームをサポートする、異なるオーケストレータ(Swarm あるいは Kubernetes)をすべて、安全に隔離された1つのDocker EE環境内で活用できます。これにより複数の開発チームがそれぞれのツールやプロセスを、同じ環境で使用することが可能となります。
Docker EEクラスタにアプリケーションをデプロイする複数のユーザが、共通の一連のノードでTrusted Registryが安全を保障する共通のコンテナイメージを使用しながらも、APIにはそれぞれKubernetesあるいはSwarmを選択できるようになります。
Kubernetesにアプリケーションをデプロイする
次にリリースされる新しい機能によって、既存のDocker ComposeファイルをKubernetes対応のDocker EE環境にデプロイできます。Dockerのサービス定義をネイティブのKubernetesリソースタイプにマッピングすることで、同じDocker Composeファイルでそれぞれのオーケストレータに対してデプロイできるのです。
管理の一本化
Docker EEではこれらすべての異なるアプリケーションを、一本化されたロギングおよびモニタリング能力によって、1つの環境で監視と管理を行います。これにより、現在の運用責任と矛盾なく統合された運用モデルのなかで、すべてのアプリケーションを安全に管理できます。
インフラストラクチャの独立
Docker EEは、AWS、AzureやIBM Cloudなどのクラウドプラットフォームはもとより、Linuxディストリビューション (RHEL, SLES, CentOS, Ubuntu, Oracle Linux)や Windowsも含む Docker社が認定するインフラストラクチャプラットフォーム 全体に一貫性をもたらします。つまりユーザは下層のプラットフォームにロックインされることなく、より高次元なクラウドの可搬性を得られるのです。
Kubernetes対応Docker EEに関するすべてのデモンストレーションは、次の動画でご覧ください。
先進的なライフサイクル管理機能を持つKubernetesの簡単な管理とセキュアなデプロイに興味がございましたら、 https://www.docker.com/kubernetes を参照して来たるべきβ版にサインアップしてください。