アプリ開発のトレンドは「コンテナありき」――現実は?:コンテナ採用に高い壁
今や誰もがコンテナを前提に話をする。確かにコンテナには多くのメリットがある。ではアプリケーションのモダナイズに際して、皆コンテナ化に取り組んでいるのだろうか。
コロナ禍によって、モダンなアプリケーションへの関心がさらに高まっている。それは迅速なデプロイと高いスケーラビリティを実現する軽量なモジュール型プログラミングモデルで設計され、回復性、一貫性、安全性を備えている必要がある。
適材適所
コンテナと「Kubernetes」は、モダンかつ軽量なアプリケーションを実現する。重要なのは、コンテナが一貫性と回復性を提供し、クラウドネイティブのデリバリー、マルチクラウド、広範なハイブリッドIT運用のための技術を形成することだ。
モダンなアプリケーションについての話題は全て、コンテナ技術ありきの文脈の中で組み立てられる傾向がある。コンテナが最適な機能を提供するのは間違いない。だが、それはアプリケーションが適切であればの話だ。
Red Hatの委託を受けたCCS Insightは、コンテナが最適な役割を果たす領域についての洞察を得るために調査を実施(2021年1〜2月)した。調査の目標は、コンテナアプリケーションやコンテナサービスの開発、デプロイ、使用の状況を把握することだ。その結果、コンテナの主な用途の一つは社内システムの統合と一貫性の確保をシンプルにすることだった。
主な使用シナリオの多くは予想通り、既存のソリューションに自動スケーリングサービスを提供することや、組織全体でリソースを共有および再利用できるようにすることなどだった。また、コンテナは多くのEコマースサービスに使われていた。Eコマースサービスのスケーリングニーズを考えれば十分予想できる。
関連記事
- Kubernetesエコシステムのゴールとは何か?
- Kubernetesの進化の方向と改善点
- 「Kubernetes as a Service」とは何か
- Kubernetes向けオープンソース管理ツールスイートSaaS登場
- Kubernetesプラットフォームを巡り過熱するRed HatとVMwareの競争
まだ道半ば
コンテナとKubernetesは多くのメリットを提供する。そうしたメリットがアプリケーション開発戦略の中心に位置することは間違いない。技術スタックを問わず、一貫性があり、変更不可のスケーリングモデルを実現する能力は、提供される生産性のメリットやある程度のポータビリティーを実現する範囲を浮き彫りにする。だが、アプリケーション開発者が常にコンテナを選んでいるわけではない。
2020年半ばに実施されたCCS Insightの別の調査では、ITリーダーを対象に投資計画について質問している。その調査では736人の回答者の42%がクラウドネイティブまたはクラウドファーストのアプローチを選んだと答えている。だが、コンテナファーストのモデルを最優先とした回答者はわずか10%にすぎなかった。
実際、コンテナ、特にKubernetesは操作、実装、管理の難しさが証明されている。コンテナとその管理には対処しなければならない側面が多数存在する。
Red Hatに委託されたCCS Insightの調査では、スキルやトレーニングの不足、最適な実装先が不明など、新技術を実装する際に必ず直面する多くの課題を反映している。
最先端領域からの教訓
CCS Insightの調査は他の同様の公開調査とは異なり、回答者が熟達した技術スキルを備えているという特徴がある。DevOpsとクラウドの開発およびデプロイの成熟度が特に高く、デプロイメントプラットフォームを組み合わせた経験についても同様に成熟度が高かった。
コンテナ戦略に着手する場合、こうした成熟度や先駆者が教育やトレーニングにどのように投資してきたかに注目する必要がある。それによって幅広いスキルや技術の利用が可能になる。
コンテナベースのサービスは、新たな更新が利用可能になったらサービスを削除してデプロイをやり直すことができる。こうした不変性が柔軟性やスケーリングを際立たせる。だが、コンテナ自体は現れては消えるかもしれないが、適切な制御を適用して常にアクセス可能にしておかなければならない重要なデータも存在する。
開発者は、コンテナを含むストレージ資産のプロビジョニングに関与する必要がある。データ駆動型の組織は、最新データストレージと物理ストレージ層に精通することが不可欠になる。
Copyright © ITmedia, Inc. All Rights Reserved.