仮想化ツールについて最近学び始めたばかりの場合は、コンテナに関する技術的な議論が仮想マシン (VM) に関する議論とどう違うのか疑問に思うかもしれません。コンテナはクラウドネイティブ開発において主要な力となっているため、コンテナとは何か、また何ではないのかを理解することが重要です。コンテナと VM はそれぞれ異なる独自の特性を持っていますが、どちらも IT 効率を高め、アプリケーションの移植性を提供し、DevOps とソフトウェア開発ライフサイクルを強化するという点で似ています。 仮想化の仕組み仮想化とは、ソフトウェアを使用してコンピューター ハードウェア上に抽象化レイヤーを作成し、単一のコンピューターのハードウェア要素を複数の仮想コンピューターに分割するプロセスです。 使用されるソフトウェアはハイパーバイザーと呼ばれ、複数のオペレーティング システムを並行して実行し、同じ物理的なコンピューティング リソースを共有できるようにする小さなレイヤーです。ハイパーバイザーをデータセンター内の物理コンピューターまたはサーバー (ベアメタル サーバーとも呼ばれます) で使用すると、物理コンピューターはオペレーティング システムとアプリケーションをハードウェアから分離できるようになります。その後、複数の独立した「仮想マシン」に分割することができます。 仮想マシンとは何ですか?仮想マシン (VM) は、仮想化されたコンピューティング環境を構築するために使用されるテクノロジーです。これらは長い間存在しており、クラウド コンピューティングの第一世代の基盤と考えられています。 つまり、仮想マシンは物理コンピュータのエミュレーションです。 VM を使用すると、チームは 1 台のコンピューター上で複数のオペレーティング システムを搭載した複数のマシンを実行できます。 VM は、ハイパーバイザーと呼ばれる軽量ソフトウェア レイヤーを使用して物理コンピューターと対話します。ハイパーバイザーは VM を相互に分離し、VM 間でプロセッサ、メモリ、ストレージを割り当てます。 VM は、仮想サーバー、仮想サーバー インスタンス、仮想プライベート サーバーとも呼ばれます。 コンテナとは何ですか?コンテナは、仮想化を処理するための軽量で俊敏な方法です。ハイパーバイザーを使用しないため、リソースのプロビジョニングが高速化し、新しいアプリケーションをより早く利用できるようになります。 コンテナ化では、仮想マシン全体を起動する代わりに、単一のアプリケーションまたはマイクロサービスを実行するために必要なすべてのもの (および実行に必要なランタイム ライブラリ) をパッケージ化します。コンテナには、すべてのコード、その依存関係、さらにはオペレーティング システム自体も含まれます。これにより、デスクトップ コンピューター、従来の IT インフラストラクチャ、クラウドなど、事実上どこでもアプリケーションを実行できるようになります。 コンテナは、オペレーティング システム (OS) 仮想化の形式を使用します。つまり、ホスト オペレーティング システムの機能を利用してプロセスを分離し、CPU、メモリ、デスクトップ領域へのアクセスを制御します。 コンテナは数十年前から存在していますが、一般的な見解としては、コンテナ化されたアプリケーションを構築、展開、管理するためのオープンソース プラットフォームである Docker の導入により、2013 年に現代のコンテナ時代が始まったと考えられています。 Docker、Docker コンテナ、Dockerfiles (コンテナ イメージのビルド ファイル) について詳しく学び、コンテナ テクノロジーの進化に伴い過去 10 年間にエコシステムがどのように進化してきたかを学びます。 コンテナと VM: 違いは何ですか?従来の仮想化では、ハイパーバイザーが物理ハードウェアを仮想化します。その結果、各仮想マシンにはゲスト オペレーティング システム、オペレーティング システムの実行に必要なハードウェアの仮想コピー、アプリケーションとその関連ライブラリおよび依存関係が含まれることになります。異なるオペレーティング システムを搭載した仮想マシンを同じ物理サーバー上で実行できます。たとえば、VMware VM は Linux VM の隣で実行でき、Linux VM は Microsoft VM の隣で実行できます。 コンテナーは、基盤となるハードウェアを仮想化するのではなく、オペレーティング システム (通常は Linux または Windows) を仮想化します。これにより、個々のコンテナーには、アプリケーションとそのライブラリおよび依存関係のみが含まれます。コンテナは、仮想マシンとは異なり、すべてのインスタンスにゲスト オペレーティング システムを含める必要がなく、ホスト オペレーティング システムの機能とリソースを活用できるため、小型で高速、かつポータブルです。 仮想マシンと同様に、コンテナを使用すると、開発者は物理マシンの CPU とメモリの使用率を向上させることができます。ただし、コンテナはさらに一歩進んで、アプリケーション コンポーネントをより細かいレベルでデプロイおよび拡張できるマイクロサービス アーキテクチャも実現します。これは、個々のコンポーネントが負荷に対処するのに苦労しているために、モノリシック アプリケーション全体をスケーリングしなければならない場合の魅力的な代替手段です。 なぜコンテナなのか?VM を使用する理由はまだたくさんありますが、コンテナはマルチクラウドの世界に適したレベルの柔軟性と移植性を提供します。開発者が新しいアプリケーションを作成する場合、そのアプリケーションを展開する必要がある場所をすべて把握していない場合があります。現在、組織はプライベート クラウドでアプリケーションを実行しているかもしれませんが、明日は別のプロバイダーのパブリック クラウドにアプリケーションを展開する必要があるかもしれません。コンテナ化されたアプリケーションは、現代の IT のさまざまなソフトウェア環境を処理するために必要な柔軟性をチームに提供します。 コンテナは、継続的インテグレーションと継続的デプロイメント (CI/CD) の実装を含む自動化と DevOps パイプラインにも最適です。 マルチクラウドコンテナの管理コンテナには多くの利点があり、数え切れないほど多くのユースケースに最適な選択肢ですが、いくつかの課題も伴います。大規模なエンタープライズ アプリケーションは多数のコンテナーで構成される場合があり、コンテナー管理はチームにとって深刻な問題を引き起こします。何がどこで実行されているかを知るにはどうすればよいですか?セキュリティやコンプライアンスなどの主要な問題にどのように対処すればよいでしょうか?アプリケーションを一貫して管理するにはどうすればよいですか? |
>>: Kubernetes セキュリティ戦略: データ ウェアハウスを保護し、ハッカーを阻止する
私はいくつかの Taobao アフィリエイト ウェブサイトを所有しており、それらを慎重に運用および最...
ウェブサイトのポジショニングとは、大学入試の願書に記入するように、ウェブサイトの将来の発展方向をポジ...
ビジネスデイリーの研修記者、孫瓊英重慶ビジネスデイリーは、最近、Tuan800が「2012年上半期の...
[[373936]]この記事はWeChatの公開アカウント「Linux Bathhouse」から転載...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスウェブサイトの SEO ...
9月19日、中国情報通信科学院が主催し、データセンターアライアンスが主催し、中国決済協会金融技術専門...
制御と可視性を回復することが、企業にクラウド コンピューティング テクノロジーを正常に実装するための...
モノのインターネット (IoT) とセンサー技術の進歩により、データが収集された場所またはその近くで...
今年の国慶節に向けて、Piayunは香港クラウドサーバーと米国クラウドサーバーの限定版をリリースしま...
今日、鄭州のあるインターネット企業とグループチャットをしていたところ、最適化の難易度が増し、コスト投...
最近、多くの友人から、キーワードで検索エンジンの 1 ページ目には表示されたが、なかなか上に上がらず...
現在、「3B戦争」が本格化しています。Qihoo 360社が率先してこの戦争を引き起こし、その目的は...
紙の文書からデジタルプロセスへの移行は、資源や人件費の削減など、COVID-19パンデミックのような...
検索エンジンの動作原理を学ぶ際には、Web ページ構造化の概念を理解した後、Web ページが構造化さ...
今年は非常に騒々しい年であり、多くの企業による技術買収がほとんど注目されずに終わりました。しかし、S...