コンテナとKubernetesは、クラウドネイティブアプリケーションを構築し、マルチクラウドを実現するための優れたプラットフォームとして台頭している。企業にさまざまなメリットをもたらすコンテナとKubernetesについて知っておくべきことを、前編と後編の2回に分けてお届けする。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
コンテナとKubernetesは、クラウドネイティブアプリケーションを構築し、マルチクラウドを実現するための優れたプラットフォームとして台頭しており、今後5年間で、人気と普及率がさらに大きく上昇するだろう。Gartnerは、2029年までにグローバル企業の95%以上が、コンテナ化されたアプリケーションを本番環境で稼働させるようになると予測している(この割合は、2023年には50%に満たなかった)。
コンテナ技術は10年以上前から存在しているが、最近の急成長の背景としては、ソフトウェアのアーキテクチャと開発パターンの変化(マイクロサービスなど)や、DevOpsの導入拡大に加え、Kubernetesなどコンテナ技術の多くがオープンソースであり、幅広い参加者のエコシステムに支えられていることが挙げられる。
コンテナとKubernetesは、企業にさまざまなメリットをもたらす。その主なものを以下に挙げる。
コンテナは、アプリケーションのパッケージングプロセスの簡素化の他、アプリケーションの迅速なデプロイプロセスを構築するのに役立つ。コンテナでは、アプリケーションの頻繁なビルド、迅速なソフトウェアリリースがやりやすくなるからだ。
コンテナを用いると、開発やテスト、ステージング、本番クラスタにわたってプラットフォームの一貫性を実現しやすくなる。これは、開発者の生産性とサービスのレジリエンス(強靭〈きょうじん〉性、回復力)を向上させるための重要な要因となる。
コンテナは、Infrastructure as Codeの考え方に従って一貫した方法でデプロイされるケースがほとんどだ。また、デプロイ済みのコンテナに変更を入れる代わりに、新しいバージョンで差し替えるやり方がとられることが多い。このようなやり方が構成管理の簡素化に役立つ。
Kubernetesはクラウドプロバイダーや独立系ソフトウェアベンダー(ISV)、独立系ハードウェアベンダー(IHV)の巨大なエコシステムによってサポートされている。こうした業界のサポートが、APIとクロスプラットフォームの一貫性、オープンソースのイノベーションなどにつながっており、業界のサポートは、利用者に大きな柔軟性を提供している。これにより、乗り換えの障壁が下がる可能性がある。
コンテナとKubernetesの注意すべき主な難点や課題を以下に挙げる。
現在、コンテナとKubernetesは多くのワークロードに使用できるが、全てのワークロードに適用するケースは少ない。結果的に、仮想マシンのシステムとコンテナのシステムが混在することになり、プラットフォームに新たな複雑性が追加される。
コンテナ技術を大規模にデプロイするには、新しいセキュリティモデル、成熟したDevSecOpsプロセスに加え、開発者、プラットフォーム運用、サイトリライアビリティエンジニアリング(SRE)、セキュリティの各チーム間での責任分担が必要になる。
コンテナの自動化とガバナンスを実現するためには、技術コンポーネントの広範かつ継続的なキュレーション(収集、選択し、付加価値を付けてまとめること)、一貫した運用、既存のツールとプロセスのアップグレードなどが必要であり、これらは簡単な仕事ではない。
企業は開発、セキュリティ、運用の各チームのスキル不足と、既存文化とのギャップから、コンテナ化されたアプリケーションの構築と運用化において、困難な課題に直面することが多い。
コンテナとKubernetesには、以下のような幾つかのユースケースがある。
コンテナとKubernetesは、マイクロサービスの強力な基盤アーキテクチャになれる。マイクロサービスのオーケストレーションとスケーリングとともに、マイクロサービスの自己修復をサポートできるからだ。
上記で述べたさまざまな特性により、コンテナは、開発者とDevOpsチームがソフトウェア開発ライフサイクルを通じて、コードをより容易に変更、更新できるようにする。
Kubernetesはどこでも利用できるので、コンテナでランタイム環境が均一化され、開発者はハイブリッドやマルチクラウド環境で一貫した方法で実行できるアプリケーションを構築しやすくなる。
レガシーアプリケーションのライフサイクル管理をモダナイズし、合理化することで、コンテナの効率的なデプロイとサービス分離のメリットを享受できる可能性がある。ただし、単純なリフト&シフト型の移行は通常、軽量なワークロードにしか対応できない。
(後編に続く)
出典:What You Need to Know about Containers and Kubernetes:(Gartner)
※この記事は、2024年2月に執筆されたものです。
Copyright © ITmedia, Inc. All Rights Reserved.