Dockerは、同じサーバーで電力を供給できるアプリケーションの数を増やし、アプリのパッケージ化と出荷を簡素化するため、最近IT会話の大きな焦点となっています。
- Dockerに急ぐ理由
- DockerとLXCの関係
- パックアンドシップフレンドリー
- 概要と結論
「Dockerは文字通り素晴らしいです。クライアントのサーバーネットワークをこれほど迅速にセットアップできたことはありません。」 –からのツイート Linux sysadmin Oliver Dunk、2015年7月21日。
DockerのVPであるJamesTurnbullによると、昨年、Dockerは本当に注目を集めたテクノロジーの1つであり、3つの主要な金融機関を含む多くの企業が初めてDockerを使用し始めました。セキュリティが非常に重要であるため、すべての組織の銀行がバージョン1.0のアプリケーションを採用することをいとわなかったと考えるのは驚くべきことです。
オープンソースのDockerは、Redhat、Canonical、さらにはMicrosoftとさえもすぐにいくつかの重要な関係を築いてきたので(もちろん、Microsoftはもちろんプロプライエタリであるため、特に魅力的です)、それは一種の衝撃的であり、そうではありません。
Dockerに急ぐ理由
基本的にすべての人をDockerとコンテナ一般に駆り立てているのは何ですか? Parallels仮想化チーフのJamesBottomleyは、人々がDockerに切り替える理由は、仮想マシンのハイパーバイザーの性質に関係していると述べています。ハイパーバイザーは、「仮想ハードウェアのエミュレートに基づいています。つまり、システム要件の点で太っています」と彼は述べています。
コンテナを使用すると、オペレーティングシステムが共有されるため、リソースをより効率的に使用できます。コンテナは、仮想化のルートを進むのではなく、1つのLinuxインスタンスをベースとして使用します。この戦術により、組織は「無駄な99.9%のVMジャンクを残すことができます」と、Bottomley氏は説明します。「アプリケーションが入った小さくてきれいなカプセルを残します。」
システムを構築するこの異なる方法の影響は深刻です。適切に構成したコンテナー環境がある場合は、サーバーアプリケーションインスタンスの量をKVMまたはXen仮想サーバーよりも300〜500%改善できる可能性があります。
コンテナは革新的なコンセプトのように聞こえるかもしれませんが、実際にはそうではありません。技術的なアプローチは、少なくとも2000年に最初に登場したFreeBSDJails以来存在しています。
実際、 ZDNetのStevenJ.Vaughan-Nichols あなたはそれを知らずにかなり長い間コンテナシステムのユーザーであった可能性が高いと指摘します。 「Googleには独自のオープンソースのコンテナテクノロジーlmctfy(Let Me Contain That For You)があります」と彼は説明します。 「検索、Gmail、Googleドキュメントなど、Googleの一部の機能を使用すると、新しいコンテナが発行されます。」
DockerとLXCの関係
Dockerは、実際にはLinuxコンテナー(LXC)を使用して構築されました。これは、1つの制御ホストを介してさまざまなコンテナーを実行できるOSレベルの仮想化です。 VMをコンテナーから分離する主な要因は、ハイパーバイザーの抽象化のレベルがコンピューター全体であるのに対し、コンテナーシステムの抽象化のレベルはOSカーネルであるということです。
お気づきかもしれませんが、ハイパーバイザーにはここで明確な利点があります。単一のOSやカーネルにとらわれることはありません。一方、Dockerコンテナは、すべて同じOSと同じカーネルを共有しています。
もちろん、必ずしも複数のオペレーティングシステムは必要ありません。最小限の数の物理サーバーで多数のアプリを実行したいだけの場合は、Dockerが適しています。
Dockerを使用すると、クラウドホスティングプロバイダーとデータセンターは、ユーティリティと機器のコストを削減できます。
Dockerは、コンテナ環境のセキュリティとシンプルさを向上させたため、コンテナアプローチを普及させることができました。さらに、相互運用性は、オープンソース要素のlibcontainerでのGoogle、Canonical、RedHatなどの主要企業との連携によって強化されています。
パックアンドシップフレンドリー
Bottomleyは、Dockerはアプリのパッキングと出荷にも役立つと述べています。アプリを必要な場所にすぐに移動できます。
このようにして、Dockerは一般的な企業のニーズを満たす方法を実際に見つけました。企業はアプリを移植可能にし、効果的に配布できることを望んでいますが、そのプロセスはしばしば矛盾の原因になると、451ResearchのアナリストであるJayLyman氏は述べています。 「GitHubがソースコードを共有可能にすることでコラボレーションとイノベーションを刺激したように、Docker Hub、公式リポジトリ、および商用サポートは、アプリケーションのパッケージ化、デプロイ、管理の方法を改善することで、企業がこの課題に答えるのに役立っています。」
最後に、Dockerコンテナをクラウドシナリオにデプロイするのは簡単です。通常のDevOps環境(Ansible、Puppetなど)と簡単に統合したり、スタンドアロンとして使用したりできます。それがとても人気がある主な理由は単純化です、とBenLloydPearsonはopensource.com経由で言います。ライブサーバーと同一のシステム内でローカル開発を行うことができます。それぞれが独自のソフトウェア、OS、および設定を使用するさまざまな開発環境をホストからデプロイします。さまざまなサーバーでテストを簡単に実行できます。同一の構成セットを作成して、共同作業がローカルホストのパラメーターによって妨げられることがないようにします。
概要と結論
要約すると、Vaughan-Nicholsによると、Dockerの成功には3つの基本的な理由があります。まず、「他のテクノロジーよりも多くのアプリケーションを同じハードウェアで実行できるようにすることができます。」 2つ目は、「開発者がすぐに実行できるコンテナアプリケーションをすばやく簡単に作成できるようにすることです。」そして最後に、「アプリケーションの管理と展開がはるかに簡単になります。」
誰もがDockerに興味を持っており、その理由は簡単にわかります。では、どのように始めますか?ワンクリックアプリで、30秒で立ち上がることができます。 Atlantic.Netでは、国際的なデータセンターと1秒あたりの請求額を利用する、SSD VPSホスティングを提供しているため、過大請求されることはありません。