コンテナプラットフォームのエンタープライズ活用における良いところ ~ Docker EE編 ~
TIS株式会社の斎藤辰徳です。本主題のコラムも3回目となりました。
今回はDocker EE(Docker Enterprise Edition)について、ご紹介をさせていただきます。
Docker EEとはどんな製品か?
Docker EEを一言で言い表すと「Docker社が提供する、エンタープライズユースに特化させたDocker」です。コンテナオーケストレーションはもちろんのこと、Docker社が認定するインフラ、コンテナ、プラグインの存在、GUIを有するユーザフレンドリなコンテナレジストリの提供、セキュリティー確保や商用サポートに至るまで、エンタープライズでDockerを利用する際の不安を払拭する機能を有しています。
Docker EEには以下の3つのエディションがあります。
・Docker Enterprise Edition Basic
・Docker Enterprise Edition Standard
・Docker Enterprise Edition Advanced
Basicではコンテナエンジンとエンジンに組み込まれたオーケストレーション機能および認定インフラ/コンテナ/プラグインの使用が可能です。Standardではこれに加えUCP(Universal Control Plane)と呼ばれるコンテナアプリケーション統合管理インタフェースや認証認可、秘匿情報管理、中間者攻撃からイメージを保護するためのイメージ署名の機能が追加されます。さらにAdvancedではノードベースでのワークロードの分離、コンテナレジストリ間の自動同期、コンテナイメージの脆弱性スキャンが追加されます。
以降、Docker EEのエンタープライズ活用における良いところをこれら機能を掘り下げる形で解説いたします。
Docker EEの良いところ
用途によって使い分けられるコンテナオーケストレータ
コンテナ技術界隈の動きとしては、Kubernetesがコンテナオーケストレータのデファクトスタンダードという地位を確立していますが、Kubernetesには独自の概念が多く、また仕組みが非常に複雑であるため、エンタープライズでの利用敷居は高いと感じられる企業が多いようです。Docker EEではKubernetesよりも仕組みがシンプルなオーケストレータであるSwarmを採用しているため、ビギナーでもコンテナアプリケーションを活用したシステムを構築しやすいのではないかと思います。
またDocker EEはSwarmだけでなくKubernetesもサポートしており、同一クラスタ内でSwarmとKubernetesを同時に実行できるようになっています。「現在はまだコンテナの作法に不慣れなためSwarmを使いたいが、将来的にはデファクトスタンダードであるKubernetesにもチャレンジしていきたい」と考えられている企業や「シンプルな機能、シンプルな設計でシステムを完結させたい場合にはSwarm、そうでない場合にはKubernetesと使い分けたい」と考えられている企業にとってもこれは嬉しい機能なのではないかと思います。
Docker社で認定されたインフラ・コンテナ・プラグイン
Docker EEにはDocker社で認定されたインフラ・コンテナ・プラグインというものがあります。
認定インフラとはDocker EEを稼働させるインフラの内、Docker EEが簡単にセットアップ可能で、スムーズに動作するよう最適化され、テストが成されたものを指します。エンタープライズLinuxディストリビューション、Windows Server 2016、およびAmazon Web ServicesやMicrosoft Azureなどの主要なクラウドプロバイダーが認定インフラとなっています。
認定コンテナとは独立系ソフトウエアベンダー(以降、ISV)がパッケージ化し、配布している、Docker EEが動作するために必要なコンテナ群のことです。これらのコンテナはコンテナ作成におけるベストプラクティスを考慮されており、テスト、スキャン、レビューされた上で作成されています。
認定プラグインとはDockerのネットワークやボリュームのプラグインの内、Docker社のパートナーがDocker EEのコンテナとしてパッケージ化したものです。プラグインも認定コンテナと同様にベストプラクティスを考慮されており、一連のAPI準拠テストに合格し、スキャンされ、レビューされた上で作成されています。
Docker社とそのパートナーが密接に協力しあって出来上がっている認定インフラ、コンテナ、プラグインをDocker EEでは利用しているので、企業は強い安心感を持ってDocker EEを使い始めることができるのではないでしょうか。
脆弱性や攻撃からコンテナを守るセキュリティー機能
仮想マシンと異なり、コンテナは1コンテナにつき1プロセスのみ動かすのがベストプラクティスとされています。仮想マシンのようにセキュリティー対策エージェントの導入が難しい状況でどのようにコンテナのセキュリティーを担保するのか、しばしば話題にされます。
Docker EEではDTR(Docker Trusted Registry)と呼ばれるコンテナレジストリにコンテナイメージを格納していきますが、Advanced Editionにおいては格納したイメージのセキュリティースキャンを行うことが可能です。またStandard Edition以上ではコンテナイメージに署名を行うことができ、コンテナイメージのダウンロード中に中間者攻撃を受けた場合でもそれを検知することが可能になります。
いざトラブル時にも安心・万全なサポート
コンテナ界隈の技術は、成長が激しいものです。頻繁に製品のアップデートが行われます。Docker EEでは1回のリリースにつき1年間のサポートで、定期的なリリースリズムを維持しているため、計画的なデプロイとアップデートを行うことができます。
また万が一のシステムトラブル時にも24時間365日のサポートプランである
「ビジネスクリティカル」を選択していればいつでも安心です。
もしそこまでのサポートレベルが必要ないのであれば、9時~18時の営業日を
対象とするサポートプラン「営業日」を選択することもできます。
まとめ
Kubernetesが業界のデファクトスタンダードとなった今も、SwarmというDocker社製のシンプルなコンテナオーケストレータをDocker EEがサポートし続けていることは、Kubernetesはオーバースペックだと考えている全ての企業にとって喜ばしいことかと思います。また、純粋なKubernetesを商用サポートする製品としてもDocker EEを選択する価値はあると筆者は考えております。セキュリティーについての考慮があることや数多のOSS製品で混沌としたコンテナ界隈で各機能の組み合わせのフィジビリティを担保している点からも、Docker EEは、エンタープライズで利用する際の不安を払拭するDockerとして作られているといえるでしょう。
資料のダウンロードはこちら
フォームに必要事項をご記入いただくことで、
Dockerの資料をダウンロードできます。
この記事の著者:斎藤辰徳
IT基盤エンジニアリング第1部
技術施策チームに所属し、先端・トレンドであるITインフラ技術のキャッチアップ、社内展開、案件適用推進といった業務に勤しむ。
現在はDocker、Kubernetes、OpenShift、Rancherといったコンテナエコシステムの技術推進に注力している。
DevOps Hubのアカウントをフォローして
更新情報を受け取る
-
Like on Facebook
-
Like on Feedly