ドッキングの範囲と傾向
この記事の出発点は、 Datadog監視サービスの統計です。これは、2015年に最初に登場し、先日2017年4月に最後に更新されました。 Datadogは、従来の分析会社ではなく、クラウド環境に優しいことで知られている監視システムです(エージェントコードはPythonで記述され 、オープンソースとして公開されています) 。
世界中の企業のインフラストラクチャの構造に関する膨大なデータベースを自由に利用できるように、DatadogはDockerの適応に関する統計を収集しました。 収集された統計は、あらゆる目的で使用される1万社と1億8500万コンテナを表します(もちろん、これは必ずしも生産ではなく、監視するのに適したインフラストラクチャの少なくとも一部です) 。 事実は次のとおりです。
1. 2016年3月の初めにDatadogの顧客の約13.6%がDockerを使用した場合、1年後(つまり2017年3月まで)にこの数値は〜38%増加し、 18.8%に達しました。
2. Dockerは、監視対象のすべてのホストの15%で実行されています 。 比較のために:2年前にはそのようなホストはわずか3%でしたが、これははるかに大きな増加です。
3. Dockerの適応におけるリーダーは大企業です。 監視する企業のホストが多いほど、Dockerの可能性が高くなります。 500以上のホストを持つ組織の約60%がDockerユーザーと呼ばれています。 最新の研究アップデートでは、中規模組織(100から500ホスト)のDockerへの関心の高まりも記録されました。その中のDockerユーザーの数は、大企業のそれとほぼ同数でした。
4. Dockerユーザーの約40%がKubernetes、Mesos、Amazon ECS、Google Container Engineなどのコンテナーツールを使用しています。 1年前、半分になりました。
5. Dockerユーザーは、使用開始から10か月目までの期間に、実行中のコンテナーの数を約5倍増やします。
6. ほとんどの場合、次のサービスがDockerで起動されます:nginx、Redis、Elasticsearch、レジストリ(Dockerを使用している企業の18%)、PostgreSQL、MySQL、etcd、Fluentd、MongoDB、RabbitMQ。
7.平均して、1つのホストで7つのDockerコンテナーが起動されます。 9か月前、この数値は低く、それぞれ5コンテナでした。
8. Dockerコンテナーの平均寿命は2.5日です。 比較のために、仮想マシンには23日間があります。 オーケストレーション機器の利用可能性に大きな依存関係が記録されました。オーケストレーション機器のない企業では、コンテナはそれぞれ平均5.5日間生存しています。
シスディグ統計
Dockerの同様の統計は、Sysdig(2017年4月12日公開 )で収集されました。Sysdigは、Dockerの監視に特化したサービスであり、関連技術を適切にサポートしています。 確かに、そこで分析されたものははるかに少なく、コンテナは45,000だけでした。 コンテキストで興味深いデータのうち、Kubernetesは非常に人気があり(すべてのユーザーの43%、OpenShiftやTectonicなどの製品がこのカテゴリに含まれています)、Quay(Dockerレジストリの15%を背景にしたユーザーの22%)です。
(Sysdigによると、Dockerで開始された最も人気のあるサービス)
ロシアの統計
最後に、私たちはokmeter.ioからロシアの同僚に目を向けました 。彼らの監視はプロジェクトで使用しています。 統計によると、このサービスのユーザーは、Dockerの人気が安定して大幅に増加しています。 2016年1月にDockerを使用している企業が9%のみであり、ホストの3%にインストールされていた場合、2017年4月に企業の割合はほぼ2倍になり、 17%に達し、ホストは7倍以上増加して23%になりました 。 したがって、ユーザー数はDatadogからの最大のサンプルに非常に近く、okmeter.ioクライアント上のホストでのDockerの普及率は1.5倍高いことが判明しました。
Docker Incの成功事例
一般から詳細へ。 Docker Incのサイト自体には、もちろん、 顧客とその成功事例に関するセクションがあります 。 本当に有名なブランドを見つけることができます。 私は完全なリストを扱うのではなく、代わりにそれらのいくつかの例を長年の実装/更新とともに示します。
BBCニュース
BBC Newsは、JVMおよびPHPアプリケーションを備えた150台のサーバーで実行されているシステムによってサービスされる英語のみで、80,000のニュース記事を毎日発行しています。 インフラストラクチャには継続的インテグレーションのための10の異なる環境があり、500人以上の開発者が使用する膨大な数のタスクを起動しました。 タスクは、非常に長い時間(スケジュールを設定するのに30分、実行にさらに30分)連続して実行されました。 2015年にコンテナに切り替えたため、計画のために30分を取り除くことができました。 タスクの起動が並列になり、タスクの実行時間が短縮されました。 さらに、新しい環境はよりオープンでスケーラブルで信頼性が高くなり、他のBBCプロジェクトで採用されたベストプラクティスになりました。 (プロジェクトの詳細は2ページのPDFファイルで入手できます 。)
eBay
最大規模のオンラインストアの1つでは、アプリケーション開発プロセスの最適化に使用されていた仮想マシンの制限に直面しています。 継続的な統合のためにDockerに切り替えた後、企業はコンテナー化されたアプリケーションを開発者のラップトップ、テスト環境、および実稼働環境に確実に展開するプロセスを編成しました。 2014年、eBay PaaSチームはMesosで使用されているCIモデルに関する詳細をテクノロジーブログで公開しました。 2015年、eBayの担当者は 、Kubernetes(およびOpenStack)でDockerコンテナーを使用することについて話しました 。
Expedia
〜2012年に旅行会社Expedia(60か国で18,000人以上の従業員)がクラウドインフラストラクチャに切り替えることを決定し、そのエンジニアがマイクロサービスアーキテクチャへの旅を始めました。 このようなアプリケーションを作成して展開するには、適切で信頼性の高いツールが必要でした。 その結果 、2016年には、Docker(AWSでホスト)を使用して、200以上のコンテナー化されたアプリケーションが運用環境で起動されました。 さらに、開発者には独自のデータセンターがあり、そこにも開発者が展開しています。 使用されるツールには、Docker Engine、Docker Trusted Registry(1000以上のリポジトリ)、およびDocker Composeがあります。 Expediaの専門家がYouTubeで利用でき、本番環境でのDockerの使用に関する詳細を確認できます。 ところで、今年のExpedia Londonは、GitHubに開発者向けの8レッスンのDocker 教育コースを掲載しました。
グルーポン
Grouponのeコマースサービスは、Dockerの最も初期のユーザーの1つでした。2014年に、同社のエンジニアは継続的な統合のニーズに合わせてコンテナを導入しました 。 同じ年、DockerConカンファレンスで、彼らはオープンソースプロジェクトDotCiを発表しました。これは 、ジョブ管理を簡素化するJenkinsのプラグインです(組み込みのDockerサポートを使用)。 それでも、Grouponのテクニカルディレクターがマスコミに語ったように、アセンブリおよびリリースプロセスを管理するための重要なツールになりました。
ペイパル
有名な電子決済サービスPayPal(毎秒200以上の支払いを処理)は、プライベートOpenStackクラウドを使用し、10万台以上の仮想マシンを実行しています(すべてのWebアプリケーションとサービスが動作します)。 タスクは、インフラストラクチャを近代化して、応答性、安全性、費用対効果を高めることでした。 ツールとして、パスを選択して、既存のアプリケーション(JavaおよびC ++)をコンテナー化し、クラウドとパブリックの両方に便利にデプロイすることを目的として(JavaおよびC ++で)(独自のインフラストラクチャをサポートするよりも費用対効果が高い場合があります)。 その結果、2014年には、Docker商用サポートエンジン(CSエンジン)、Docker Trusted Registry、Docker Composeなど、実稼働環境でのDockerテクノロジースタックが導入されました。 コンテナは仮想マシンと共存し、VMの総数を大幅に削減し、インフラストラクチャの最適化につながりました。 さらに、コンテナの軽量化により、新しいアプリケーションのロールアウト速度が大幅に低下しました(仮想化と比較して)。 2015年、PayPalのエンジニアはさらに進んで、DockerCon SFカンファレンスで、いくつかのデータセンターのインフラストラクチャ、ジェンキンスとのCI、およびDockerイメージの操作に関するレポート( ビデオ 、 プレゼンテーション )を発表しました 。 そして2016年、LinuxCon NAで、Git、Docker、Mesos、Jenkins、Aurora、およびTravis CI APIを使用したPayPalのCIシステムが10倍の節約になったことが明らかになりました。
(PayPalでのDockerオーケストレーション)
ワシントンポスト
人気のあるニュース出版物The Washington Postは、さまざまな言語(Java、Scala、Node、Python、Go)で書かれたアプリケーションの増加に苦労しました。 AWSインフラストラクチャの継続的な展開システムを構築することを決定したエンジニアは、 Docker EngineとDocker Composeを選択しました 。 現在の環境には、オンラインリーダー向けWebサイト(ニュース、モバイルアプリケーション、モバイルバージョンのサイト)、Arc Publishingパブリッシングプラットフォーム、ニュース分析システムなど、制作全体を完全に提供する2,500を超えるDockerコンテナがあります。
他の例
開発者のウェブサイトにリストされている他の主要なDockerユーザーには、General Electric Appliances、New Relic、New York Times、Spotify、Uber、Yelp、およびYandex( PaaS Cocaine )が含まれます。 ところで、 ロシアについて 。 ロシアの企業/ロシアのエンジニアでDockerを使用することも現実です。 以下に例を示します。
- 本番環境でDockerを使用するという Badooの 見解 。
- Avitoで DockerとKubernetesを使用したサービスの開発と展開に関するレポート 。
- 検索エンジンのDockerへの移行に関するAviasales.ruからのレポート 。
- 変更のために-銀行でDockerを使用する印象 ( アルファバンクの特殊部門であるアルファラボの建築家から)。
ところで、実稼働環境でもDockerを使用している場合は、コメントでそれを教えてください 。 多くの人にとって非常に興味深いものになると確信しています!
(Badooで作成されたbaDockerユーティリティを使用してDockerコンテナを表示します)
ITの採用
ソフトウェア製品、特にインフラストラクチャを構成する製品の人気と普及率は、顧客だけでなく、業界の巨人がソフトウェア製品をサポートする方法によっても決まります。 そして、ここでは怠け者だけがDockerについて宣言しませんでした。 特に(もちろん、もっと多くの例があるので、主なものだけです) :
- Dockerは、Amazon Web Services、Google Cloud Platform、IBM Bluemix、Jelastic、Microsoft Azure、OpenStack、Oracle Container Cloud Service、VMware vSphere Integrated Containersによって統合/サポート/保守されています...
- Ansible、CFEngine、Chef、Puppet、Saltなどの構成管理システムでサポートされています。
- Red HatはDockerを「サポート」するだけでなく、 OpenShiftプラットフォーム(Kubernetesベース)を開発しています。Canonicalは公式に協力しており、特別なサブスクリプションがSUSEに提供されています。
- MicrosoftはAzureに限らず 、最近Deisを購入しました 。
(DockerとのMicrosoft Active Friendship)
特に注目すべきは、GoogleのKubernetes、CoreOSのTectonicとQuay、RancherOS、Apache MesosとDC / OS、CiscoのContivといった業界によって作成されたプロジェクトのエコシステムの成長です...最後に、 Cloud FoundryやOpenコンテナイニシアチブ 、 クラウドネイティブコンピューティング財団 。
まとめ
Dockerは本当に「発射」され、ある種の超新星や超複雑な技術ではないので、DevOpsとCI / CDの世界で適切なタイミングでその位置を占めました。 私たち自身が数年にわたって本番環境で使用していますが、これまでの経験を語っており、今後も継続していきます。 興味があるなら、私たちのハブを購読してください:)