仮想化ツールについて最近学び始めたばかりの場合は、コンテナに関する技術的な議論が仮想マシン (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 セキュリティ戦略: データ ウェアハウスを保護し、ハッカーを阻止する
さらに読む: Smartisan スマートフォン 2014 発売のレビュー: 多くの詳細により優れた...
電子商取引に携わる人は、装飾の重要性を知っています。私はよくオンラインストアを女性に例えます。店舗の...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています多くのロゴ...
10 年の運営経験を持つカナダの VPS 業者である Servarica は、常に VPS、特に大容...
すでにhostodo.comをよくご存知の方も多いでしょう。HostodoのVPSは、quadran...
ウェブマスターなら誰でも、Baiduが2013年2月20日に「Green Radish」という最新の...
Krypt 傘下のクラウド サーバー (VPS) ブランドである ion は現在、CN2 GT ネッ...
2020 年、IT リーダーがクラウド コンピューティングと急速なデジタル化によって増大した複雑さを...
Dynadot は比較的大規模なドメイン名登録会社です。10 月のドメイン名プロモーションの第 1 ...
[[226315]]ウォール・ストリート・ジャーナル(WSJ)は4月16日の米国株式市場の取引終了後...
ウェブサイトの最適化に関連するトレンドや人気の発展は、インターネットの更新頻度と状況を最もよく反映し...
IDC Review Network (idcps.com) は 5 月 26 日に次のように報告し...
シフキsifuqi.net を紹介しましょう。これは台湾人や香港人によって作られたと思いますか? s...
こんな風に感じたことはありませんか。Baidu で何かや質問を検索したとき、返される結果が満足のいく...
クラウド コンピューティング テクノロジーの急速な発展により、クラウド ネイティブ アーキテクチャは...