仮想化の簡単な歴史、Dockerの理解、仮想マシンの原理

仮想化の簡単な歴史、Dockerの理解、仮想マシンの原理

初期の頃は、物理マシンでは通常 1 つのオペレーティング システムのみが実行され、ほとんどのアプリケーション (データベース、Web サーバー、Web サイトなど) は 1 つのユーザー ニーズのみを解決するために使用されていました。

[[275028]]

つまり、pet.com と food.com という 2 つのアプリケーションを展開する必要がある場合、一般的な方法は 2 台の物理マシンを使用し、各物理マシンに個別のデータベース、Web サーバー、および Web サイトを展開することです。


リクエスト負荷が増加すると、アプリケーションの水平拡張を実現するために新しい物理マシンを追加する必要があります。一般に、ユーザー アプリケーションと物理マシンの間には 1 対 1 の対応があります。

この容量拡張方法を使用すると、新しいアプリケーションを展開する前に、新しいマシンの準備が整うまで数日かかる場合があります。ピーク時の要求の圧力に対処するために、通常、アプリケーションの展開には過剰な数の物理マシンが使用され、全体的なリソース使用率が低下します。つまり、当時はインターネットサービスを提供するのに非常に費用がかかったのです。

アプリケーション仮想化(例:仮想ホスト)

アプリケーションと物理マシンが 1 対 1 しか対応できないという問題を解決するために、Web サーバーやデータベースなどの基本層アプリケーションでは、論理的な分離機能、つまり 1 つの基本層で複数のユーザー アプリケーションを同時にサポートできる機能が提供され始めました。 Web サーバーの世界では、これは仮想ホストと呼ばれ、Web サーバーはドメイン名に基づいて複数の Web サイトを提供できます。データベース分野では、単一のデータベース サービスで、完全に分離された複数の論理データベースを提供できます。

アプリケーション仮想化テクノロジーに基づいて、論理的に分離された複数のユーザー アプリケーションを同じ物理マシン上に展開できます。


おもしろい事実: 1990 年代後半、Apache は仮想ホスティング機能を利用して Netscape の Netscape Enterprise Server を打ち負かし、Web サイト サービス市場を独占しました。

単一アプリケーション単一物理マシン モデルと同様に、要求負荷が増加すると、水平拡張を実現するために複数の物理マシンを追加する必要がありますが、複数のユーザー アプリケーションを 1 台の物理マシンに展開できるようになりました。

同時に、データベースなどの一部のアプリケーションでも、より高度な水平スケーラビリティを実現するためにクラスタリング機能の使用を試み始めています。これらのテクノロジーはリソースの使用率を向上させますが、プログラムのアーキテクチャと展開の複雑さも大幅に増加します。開発者にとって、この時点でアプリケーションのデプロイとスケーリングを行うのは少し複雑すぎます。

つまり、当時のインターネットサービスは複雑かつ脆弱だったのです。

仮想マシン

サーバー分野で Linux がますます普及するにつれて、オペレーティング システムの仮想化が徐々に発展し、単一の物理マシン上で複数のオペレーティング システムを同時に実行できるようになりました。この新しいモデルでは、物理マシン上の各アプリケーションは独自のオペレーティング システムとランタイム環境を持つことができます。


注: 技術的に言えば、仮想マシン技術は 1960 年代に IBM によって開発されました。しかし、Linux (そしてある意味では Windows) がオペレーティング システムの仮想化の概念を普及させたと言っても過言ではありません。

この新しいモデルは、リソースの使用率を最大化するだけでなく、論理的な分離を通じてアプリケーション アーキテクチャを大幅に簡素化します。しかし、仮想マシン時代の最も革新的な成果は、AWS が主導するクラウド コンピューティング ビジネスです。

この新しいサービスにより、開発者は最も得意とするソフトウェアに集中できるようになります。少数のハードウェアおよびネットワークの専門家に、ソフトウェアの実行をサポートするインフラストラクチャの構築と拡張の責任を負わせます。

ソフトウェア インフラストラクチャがますます複雑になるにつれて、アプリケーションは従来の 3 層モノリシック アーキテクチャからマイクロサービス アーキテクチャへと徐々に移行しています。この時点で、スケーラブルなマイクロサービス システムの設計、展開、管理方法は比較的複雑になり、基盤となるクラウド コンピューティング インフラストラクチャに大きく依存するようになります。

容器

その後、人々はかなり古い Linux の機能を使用してプロセスをオペレーティング システムのさまざまなリソース サブセットに「ボックス化」し、仮想化の次の章であるコンテナ化が誕生しました。コンテナ技術の急速な発展は、現在では広く普及している Docker コンテナによって主に牽引されてきました。

コンテナ化テクノロジーを使用することで、物理マシンの時代には数日、仮想マシンの時代には数分かかっていた作業が、わずか数秒で完了し、ハードウェア リソースもほとんど消費しなくなりました。


コンテナ化技術により、サービスの粒度が大幅に向上し、リソースの使用率が向上し、複雑なアプリケーションのソフトウェア アーキテクチャが最適化され、開発環境と本番環境のランタイム統合が実現しました。ただし、多数の新機能の導入により、サービスの展開と管理の複雑さという課題も生じます。サービスの拡張には、基盤となる仮想マシンの容量を拡張するために、クラウド コンピューティング ベンダーが提供する特定の方法に依拠する必要があります。コンテナをいつ作成し、どこにデプロイするかも非常に複雑な問題です。

コンテナ化技術が有用であることは間違いありませんが、その真の価値を実現するには他の技術の支援が必要であると思われます。

クベネフィット

Kubernetes が誕生し、コンテナ化技術が直面する問題を解決しました。 Kubernetes は、完全でスケーラブルな大規模システムを記述、管理、実行するための標準的で環境に依存しない方法を提供するコンテナ ベースのサービスです。


これまで、サービスの開発環境、プレプロダクション環境、本番環境は大きく異なっていました。 Kubernetes は、大規模でスケーラブルな完全なシステムをシンプルで標準化された形式で記述および実行する新しいアプローチを採用しており、マイクロサービス システムの構築と管理にかかるコストを大幅に削減します。

これらの重要な技術的マイルストーンは、継続的な進化と相互の重ね合わせによって達成され、通常は相互に連携して使用されることに留意することが重要です。技術的な観点から見ると、技術革命は破壊的な破壊ではなく、進化の結果です。たとえば、コンテナは通常、仮想マシン上で実行されますが、仮想マシンはオペレーティング システム上で実行される必要があり、オペレーティング システムは物理マシン上で実行されます。

まとめると、仮想化技術がどのように進化してきたかがわかります。


技術的な観点から見ると、Kubernetes は以前のテクノロジーの進化に基づいており、破壊的な新テクノロジーではありませんが、ビジネスの観点からは革命的な価値を生み出しています。

私は通常、さまざまな新しいテクノロジーに対して非常に慎重です。なぜなら、ほとんどの場合、それらは短命に終わるからです。しかし、Kubernetes は、それぞれの分野でかつて Linux、仮想マシン、Git がそうであったように、堅固な基盤テクノロジーになりつつあります。

つまり、Kubernetes はおそらく、クラウド アプリケーション開発組織が現在行うことができる最も安全な投資であり、正しく適用すれば、アプリケーションの開発と配信の速度と品質を大幅に向上させることができます。

<<:  クラウド バックアップとクラウド ストレージとファイルの同期と共有の違いは何ですか?

>>:  クラウドネイティブアプリケーションが未来である理由

推薦する

2013年SEOサービス企業のコンテンツ戦略策定の分析

みなさんこんにちは、Shitouです。現在、SEOの世界では、コンテンツが王様であり、ユーザーエクス...

インターネットプロモーションプラン:企業サイトのランキングを上げるには?

月収10万元の起業の夢を実現するミニプログラム起業支援プラン企業のマーケティング担当者は、日々インタ...

AppleがApple Watchと新型MacBookを発売

3月10日の早朝、米国サンフランシスコのイエルバブエナ・センター・フォー・ジ・アーツでAppleの2...

Kubectl 経由でポッドを再起動する 6 つの方法

51CTOウェブサイトコンテンツ調査に参加するにはクリックしてくださいkubectl には rest...

飛行船でつながった雲奇会議の背後で、アリババクラウドのIoT戦略が加速している

「スタート」の掛け声とともに、会場上空に浮かぶ飛行船のLoRa IoTスイッチが一斉にオンになり、飛...

地域人材ネットワークユーザーグループの分析:多様なユーザーのニーズに応える方法

ローカル人材ネットワークの主なユーザーグループは、採用企業と求職者の2つのカテゴリに分けられます。こ...

AWS IoT Core の紹介

AWS IoT Core は、接続されたデバイスがクラウドアプリケーションや他のデバイスと簡単かつ安...

virpus-3.5 USD/シアトル/Xen/512 MB RAM/15 GB SSD/1.5 TB トラフィック

しばらく virpus.com からのニュースを見ていません。9 月には 30% 割引を実施します。...

K8S マスターノードの IP アドレスを変更するにはどうすればよいですか?それはあなたが思っているほど単純ではありません。

昨日、ネットワーク環境に問題が発生しました。ローカル仮想マシンで構築されたKubernetes環境に...

zgovps 日本大阪 EPYC パフォーマンス VPS シリーズのレビュー

zgovpsは、日本の大阪で高性能でソフトバンク回線を備えた日本のVPSを提供しています。Hostc...

従来の強力なマーケティングは人々に抵抗感を与え、それを排除することは難しい

街を歩いていると、至る所でチラシが目に入ります。ウェブページを開くと、至る所で広告や相談のポップアッ...

高品質のウェブサイトコンテンツがウェブサイトの最適化に与える影響

Baiduが最近発表した「有名サイトのSEO対策」から、ウェブサイトの最適化における高品質コンテンツ...

あなたの独立系外国貿易モールがうまくいっていないのはなぜですか?

対外貿易B2Cモールには、プラットフォーム型モールと自社構築型モールの2種類があります。プラットフォ...

ウェブサイトのポジショニングは非常に重要です。ウェブサイトを構築する前に、自分の開発に適した方向性を見つける必要があります。

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますウェブサイ...

EIG コンソーシアムのホスト ブランドは fatcow/ipage/netfirms などを宣伝しています。

ブラックフライデーはコンソール市場にとって超プロモーションデーであり、他のインターフェースは利用でき...