ホームページ  >  記事  >  運用・保守  >  Docker を使用するとパフォーマンスに影響が出ますか?

Docker を使用するとパフォーマンスに影響が出ますか?

Guanhui
Guanhuiオリジナル
2020-06-11 10:52:5812778ブラウズ

Docker を使用するとパフォーマンスに影響が出ますか?

Docker にパフォーマンス上のペナルティはありますか?

Docker にはパフォーマンスの低下がありますが、それは非常に小さいです。Docker の優れた機能と比較すると、このパフォーマンスの低下は無視できます。Docker は、開発者がパッケージ化できるオープンソースのアプリケーション コンテナ エンジンです。コンテナに保存し、一般的な Linux マシン上で実行できるように公開します。

Docker

Docker は、開発者がアプリケーションと依存関係をポータブル コンテナにパッケージ化できるオープン ソース アプリケーション コンテナ エンジンです。コンテナーは完全にサンドボックス メカニズムを使用しており、相互にインターフェイスを持ちません。

完全な Docker は次の部分で構成されます:

  • DockerClient クライアント

  • Docker Daemon デーモン プロセス

  • Docker イメージ

  • DockerContainer コンテナ

##Docker の原則

コアDocker が解決する問題は、LXC を使用して VM のような機能を実装することにより、より経済的なハードウェア リソースを使用して、より多くのコンピューティング リソースをユーザーに提供することです。 VM 方式とは異なり、LXC は一連のハードウェア仮想化方式ではなく、完全仮想化、部分仮想化、準仮想化のいずれにも分類できず、オペレーティング システム レベルの仮想化方式であるため、理解しにくい場合があります。 VMとして。そこで、Docker が仮想化から解決する必要がある問題から始めて、Docker がユーザーの仮想化ニーズをどのように満たしているかを確認します。

ユーザーは、仮想化方法、特にハードウェア仮想化方法を検討する必要があります。主に次の 4 つの問題を解決する必要があります。

  • 分離 - 各ユーザー インスタンスは互いに分離されます。お互いに影響を与えません。ハードウェア仮想化方式で与えられる方式は VM、LXC で与えられる方式はコンテナ、より詳細な方式はカーネル名前空間です。

  • クォータ/測定可能 - 各ユーザー インスタンスはオンにできます。デマンド コンピューティング リソースを提供すると、使用されたリソースを測定できます。ハードウェア仮想化手法は、CPU とメモリを仮想化するため簡単に実装できます。LXC は主に cgroup を使用してリソースを制御します。

  • モビリティ - ユーザー インスタンスは簡単にコピー、移動、再構築できます。ハードウェア仮想化方法は実装用のスナップショットとイメージを提供し、docker は (主に) AUFS を使用して

  • セキュリティを実現します。このトピックは比較的大きなものであり、ここで重点を置くのは、ホストの観点から見たコンテナ。ハードウェア仮想化方式では、仮想化レベルが比較的高いため、ユーザープロセスはKVMなどの仮想マシンコンテナ上で変換されて実行されますが、LXCの場合、ユーザープロセスはlxc-startプロセスの子プロセスとなり、仮想マシン上でのみ実行されます。カーネルの名前空間。分離されているため、ユーザーの動作環境がホストから悪意を持って侵入されないようにするには、いくつかのカーネル パッチが必要です。Dotcloud は (主に) カーネル grsec パッチを使用して問題を解決します。


推奨チュートリアル: 「

Docker

以上がDocker を使用するとパフォーマンスに影響が出ますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。