コンテナは本当に万能なのでしょうか?これを読んだらあなたは黙ってしまうでしょう

コンテナは本当に万能なのでしょうか?これを読んだらあなたは黙ってしまうでしょう

マクリーン氏がコンテナを発明したとき、彼はおそらくこの輸送手段が経済のグローバル化を促進するとは考えていなかっただろう。大量の商品を梱包して列車、船、飛行機に積み込む場合、コンテナは積載が遅い、容量が小さいなどの問題を解決するだけでなく、輸送時間を数か月から数日に短縮します。もちろん、商品の多様性とその特定の用途を考慮すると、コンテナは万能薬ではありません。これはコンテナのようなものです。開発者のアプリケーションを Linux プラットフォーム上でパッケージ化して公開することは、あまり利益を生むものではありません。また、導入コスト、運用環境、セキュリティなどの問題も発生します。

画像提供:mediaagility

2013 年 3 月、PaaS サービス プロバイダーの dotCloud (後の Docker) は、アプリケーション コンテナー エンジン Docker をオープンソース化し、コードを Github でホストしました。これに先立ち、コンテナ技術は Linux および UNIX 分野で 10 年以上の変化を経てきました。技術的な観点から見ると、Docker はサンドボックス メカニズムに基づいて、あらゆるアプリケーションを軽量で移植可能な標準化されたコンテナーに統合できます。中心的な課題は、Linux コンテナ テクノロジを使用して仮想マシンと同様の機能を実現することです。しかし、コンテナが称賛される一方で、この技術の弱点にも注意を払う必要があります。

コンテナにはコストがかかる

コンテナは万能のソリューションではないため、ユーザーは対応する専門知識を持ち、インフラストラクチャの整合性を確保する必要があります。しっかりした基礎があって初めて家を建てることができます。コンテナのデプロイメントを継続的デリバリー パイプラインに統合して自動化するには、コードが送信されるたびに、コード リポジトリへの手動チェックイン操作を含む一連の手順を実行する必要があります。簡単に言えば、パイプラインの役割は、コンテナが内部で機能テストを受け、テストに合格できるようにすることです。この期間中に実行が遅れると、継続性が失われ、問題を発見する機会を逃し、後で修正するためにさらに多くの労力が必要になります。覚えておいてください。バグは、コード送信後数分以内に報告された方が、数週間後に発見された場合よりも修正コストがはるかに安くなります。

Docker はコードを書き換えるのではなく、クロスプラットフォームの展開を容易にするだけであることに注意してください。スケーラビリティが必要な場合、それを実現できるかどうかは開発者自身にかかっています。 Docker はすべてのシステムに適用されるわけではありません。結局のところ、システム レベルでのソフトウェアのドッキングは、貨物を積み込むために船を停止するほど単純ではありません。システムをまたぐ場合は、まず Docker 自身のカーネルが最新であり、基礎となるレイヤーがユニバーサルであることを確認する必要があります。たとえエラー率が最小であっても、数万台のサーバーに拡大すると大きなリスクになります。同時に、コンテナの大規模な運用には管理とオーケストレーションのサポートが必要となり、これもまた投資費用となります。

コンテナは仮想マシンではない

コンテナを仮想マシンの観点から見ないでください。これらは自由に編集または削除できるオブジェクトではありません。問題が発生した場合、それらを破棄して新しいものを再構築するしかありません。一部の開発者は、コンテナの実行中にコンテナの内容 (構成ファイル情報など) が変更されたが、変更に問題があるため、コンテナを閉じた後に起動できないという問題に遭遇する場合があります。これを行うには、開発者は新しいイメージを作成するか、ファイルを直接変更することしかできません。

さらに、Docker のリソース分離レベルは仮想マシンほど高くありません。共有できるのは一部のリソースのみであり、他のプロセスはキューに入れる必要があります。コンテナはカーネル レベルでも共有されるため、環境によっては高い効率性が犠牲になりますが、可用性と冗長性も影響を受けます。独立したカーネルを持つ仮想マシンとは異なり、コンテナ カーネルが破損すると、その共有メカニズムによって、関連付けられているすべてのコンテナに影響が及ぶことになります。

生産環境の欠陥

成熟した企業は、登場してからわずか 2 年しか経っていないデータベース テクノロジーを使用するでしょうか?さらに、Docker は単なるツールであり、アーキテクチャソリューションではありません。前述したように、コンテナをデプロイするには、イメージ管理、ログ記録、監視、負荷分散など、プロセス全体のサポートが必要です。さらに、アップグレード後の前方互換性も低いため、大規模なアプリケーションのイメージを作成する場合はもちろん、実稼働環境でのコンテナの弱点にもつながります。独自の本番環境を構築するユーザーの中には、Docker を IaaS 上に配置しますが、その場合、リソース消費がコンテナ インスタンスの要件を超える可能性があります。ネットワーク層では、パブリックネットワークからすべてのコンテナにアクセスできるわけではないため、ネットワークを設定する際にはより注意を払う必要があります。ホストにパッチを適用するのは一般的なことです。

デプロイメント プロセス中、Docker Compose は他のツールよりも本番環境での構成が複雑です。ボリュームのバインド、ポートのドッキング、ネットワーク パラメータはすべて変更する必要があり、多くのスクリプトと外部データベース ツールを呼び出す必要があります。データベース管理を例に挙げてみましょう。開発環境はコンテナ間でホストできますが、運用環境では、高可用性と信頼性の高いバックアップおよびストレージを確保するために、I/O パフォーマンスなどの問題を考慮する必要があります。能力が高ければ高いほど、注意すべきポイントも多くなります。コンテナはパッケージを開発環境から本番環境に直接移動できますが、本番環境ではまだ改善が必要な領域が残っています。

コンテナはセキュリティから切り離せない

コンテナをめぐるセキュリティ論争は止むことはありません。リスクは内側から外側へ発生します。ハッカーはコンテナをクラックすることで基盤となるサーバーにアクセスし、クラウド サービス プロバイダーのデータ センターに影響を与える可能性があります。一方、ミラーソースが異なると、脅威を予測することが難しくなります。データによれば、Docker Hub のコンテナ イメージの 30% 以上に高リスクの脆弱性があり、これらのイメージは頻繁にダウンロードされています。この時点で、コンテナはパンドラの箱のようなもので、中に何が入っているかわかりません。

規制の観点から見ると、コンテナ アプリ ストアは良いアイデアかもしれません。実際、多くのサービス プロバイダーは、脆弱性が発生するまで、コンテナーに問題があることさえ認識していません。一般的に、ユーザーは使い慣れたサービスプロバイダーを選択し、長期間更新されていないコンテナーを避ける必要があります。プロバイダーとしては、コードの品質を管理し、定期的な「身体検査」を実施することしかできません。

結論

今後、コンテナ開発においては、最先端技術、コミュニティエコロジー、企業支援の3つが基盤となるでしょう。クラウドコンテナ化はトレンドとなっているが、実際の適用プロセスでは、コンテナの初期導入時に不安定な要素を回避し、商品価値を最大化するために、自社のビジネス特性に基づいた判断を行う必要がある。

<<:  2015年から2017年までのIaaSパブリッククラウドサービス市場の状況

>>:  インテル、IBMに対抗する量子コンピューティングのテストチップをリリース

推薦する

月額 2.99 ドルの evoxt 香港 VPS はいかがでしょうか?計測したデータは驚きです!

evoxt は、広い帯域幅と低価格の香港 VPS サービスを提供しています。そのため、evoxt の...

WeChatマーケティング運用に関する販売者の実践メモ

1. WeChatマーケティングを正しく理解する1. WeChatとは何ですか? WeChatはコミ...

丹東紡織産業インターネットプラットフォームの構築に協力し、専門的で革新的な繊維企業のデジタル変革を支援します。

同国の「新インフラ」とスマート製造戦略の推進により、伝統的な製造業は産業インターネットにますます熱心...

cloudatcost-1 USD/月/512 MB RAM/10 GB ハードドライブ/500 GB トラフィック

CloudAtCost は、カナダで新たに設立されたクラウド ホスティング プロバイダーです。サーバ...

ウェブサイト分析ツールの徹底解説:訪問元統計(パート3)

関連記事:訪問者統計の「ビジネス背景」と「技術的背景」については、ウェブサイト分析ツールの詳細な説明...

あなたのクラウド ネットワークは生成 AI に対応していますか?

生成型人工知能 (AI) は、企業に数兆ドルの価値をもたらし、私たちの働き方を根本的に変える可能性を...

広告やマーケティングを行うときはあまり合理的になりすぎない

月給5,000~50,000のこれらのプロジェクトはあなたの将来です私たちの日常生活において、一見合...

クラウド ストレージ: 企業はどのようにデータ ストレージの拡張を計画すればよいでしょうか?

企業が発展するにつれて、ビジネスの変化により IT 設備に大きな負担がかかる可能性があり、また、ビジ...

医療ウェブサイトのマーケティングを促進する方法

10月1日以降も私は武漢で仕事を続け、医療ウェブサイトの最適化に携わっていました。検索エンジンの継続...

メイパイと他の自撮りコミュニティの秘密の戦い:2つの自撮りコミュニティは正反対の方向へ

新浪テクノロジー 孟宏これは偶然の物語です。 2月19日、百度美牌はiOSプラットフォームで初の正式...

openvirtuals-$7/4 コア/1g メモリ/2g スワップ/180g ハードディスク/3T トラフィック

Openvirtuals は 2003 年に設立された正式な会社です。同社の VPS は非常に高価で...

UFIDA iuap は PaaS プラットフォームを再定義し、企業のデジタル化のための新しい基盤を構築します

デジタルベースの変革とアップグレードを促進し、ビジネス環境の不確実性を管理する能力を強化するために、...

#raksmart 抽選# 会員登録すると、「1年間の無料独立サーバー」、杜甫割引、VPS 30% オフ、N 赤封筒 30 元/個などの特典が付きます

米国の老舗コンピュータールームRaksmartが、11.11に先駆けて抽選会を開催します。Raksm...

タオバオ「ダブルクラウン」の販売者が偽の化粧品を販売していたとして逮捕される

市薬品管理局は昨日、龍岡支局が関係部門と共同で、インターネットを利用して偽造輸入化粧品を販売していた...

Tencent Cloud TDSQLはFutuのコアシステムをサポートし、ピーク時のクエリ量は1日あたり50億を超える。

香港株と米国株の好調に後押しされ、香港株と米国株のインターネットブローカーである富途証券傘下の富途牛...