テクノロジー企業やスタートアップ企業が Google Cloud でコンテナを使って製品化までの時間を短縮する方法
Google Cloud Japan Team
※この投稿は米国時間 2022 年 2 月 10 日に、Google Cloud blog に投稿されたものの抄訳です。
あらゆるテクノロジー企業や成長中のスタートアップ企業が技術系の人材を効率的に活用することを迫られています。そのためには、こうした人材を IT のオーバーヘッドから解放し、製品開発などに集中させるためにクラウドが役立つのかどうか、またそれはどのように可能なのかを検討することになります。こうした課題が新しいホワイトペーパー『The future of infrastructure will be containerized(インフラストラクチャの未来はコンテナ化)』の出発点になっています。このペーパーは、Google Cloud を選んでいただいたテクノロジー企業やスタートアップ企業との取り組みをもとに執筆されています。対象企業の業種は幅広く、医療や製造からソフトウェア、フィンテック、e コマースにまで及びます。
たとえば、テクノロジー企業やスタートアップ企業がクラウドを利用していても、カスタムツールやメンテナンスに多くのリソースを投入している場合、おそらくはクラウドの可能性を十分に引き出せていません。また、ニーズの変化に応じて容易に適応、変更することができないアーキテクチャに縛られている可能性もあります。
このホワイトペーパーでは、こうした成長への課題について探り、テクノロジー企業やスタートアップ企業がクラウドでマネージド型コンテナ プラットフォームを使用することで、どのようにデベロッパーの効率性を最大限に高め、製品化までの時間を短縮し、ビジネスの差別化に貢献しない IT 管理をなくせるかについて説明しています。このブログ投稿では、この中の 1 つの要素であるインフラストラクチャ管理について取り上げます。詳細については、ホワイトペーパー全文をご覧ください。
コンテナと Kubernetes のメリット
従来の仮想化技術と比べ、コンテナは軽量かつ高速で、移植可能性に優れ、管理しやすくなっています。そして Kubernetes のようなマネージド型コンテナ プラットフォームは、こうしたメリットをさらに強化することが可能です。コンテナと Kubernetes への移行が急速に進んでいるのはこのためです。
テクノロジー企業やスタートアップ企業はインフラストラクチャや技術面の負担に足を引っ張られることがあります。従来型の仮想マシン(VM)は管理が簡単ではなく、ワークロードを最大化することもありません。クラウドを最大限に活用することは、単に安価なリソースをレンタルすることではなく、新しく効率的な運用の方法を取り入れ、顧客へのサービスにかける時間を増やすことです。
VM はハードウェア レベルで仮想化されるため、管理の負担が大きく、移植可能性が低く、スケーリングの整合性や効率性が低くなります。対照的に、コンテナは、仮想化がスタック内でさらに上位の OS レベルで行われます。このため、アプリやサービスの実行に必要なライブラリや依存関係が含まれますが、大幅に軽量で、管理しやすく、最新の運用モデルに対応できます。VM は、最近のテクノロジー企業やスタートアップ企業が求めるスピードに対応できる仕様になっていません。しかし、Kubernetes のような強力なコンテナ オーケストレーションなら、信頼性とセキュリティに優れたインフラストラクチャを大規模に運用できることが実証されたパターンの活用が可能です。
Kubernetes はオープンソースでプラットフォームに依存せず、一般的なツールがすぐに使用可能であるため、ビルドとデプロイのライフサイクルにおける各ステージでセキュリティとスピードを確保できます。また、すべてが自動化され、複雑さが抽象化されています。プラットフォームが Infrastructure-as-data に移行するにつれて、Infrastructure-as-code の大部分はなくなります。ユーザーは、何を行うかを指定するコードを記述せずに、何を求めているかを Kubernetes に伝えられます。現時点での時間の削減と、将来のための柔軟性の両面で、Kubernetes は独自仕様の技術スタックや、クラウドで実行する管理負担が大きい VM の実装よりも大幅に効果的である可能性があります。
Kubernetes により、テクノロジー企業とスタートアップ企業はワークロードごとにさまざまな手法を使って、自社のニーズに応じて管理上のオーバーヘッドを低減することもできます。
Kubernetes を利用すると、アプリを VM から分離してコンテナに配置可能になり、従来のワークロードで最新のプラットフォームのメリットを活用できます。
マネージド コンピューティング プラットフォームによりクラウドサービスを Platform as a Service に変えて、テクノロジー企業とスタートアップ企業にコンテナの機能と柔軟性、さらにサーバーレスの利便性を提供します。サーバーもクラスタ構成も保守も不要のため、制御の面で妥協することなく、オーバーヘッド業務を大幅に削減できます。
クラスタ構成にそれほど制御を必要としないワークロードの場合、Google Kubernetes Engine(GKE)の Autopilot モードを使用してクラスタのプロビジョニングを行えます。料金はクラスタではなく、ワークロードにのみ発生します。このような方法で、セキュリティを最適化し、高額になりうる費用を削減しつつ、クラスタ管理を不要にします。
多くのクラウドネイティブ アプリケーションの場合、Cloud Run などのサーバーレス オプションでは、基盤となるインフラストラクチャ管理が不要で、アプリケーションやデータに加えて分析も提供するエンドツーエンドのホストとして機能します。サーバーレス プラットフォームにより、フルマネージド環境で、複雑性を最小限に抑えてコンテナの実行を開始でき、セキュリティ、パフォーマンス、スケーラビリティ、ベスト プラクティスも提供されます。
将来に向けて自由度を維持しながら、製品化までの時間を短縮
テクノロジー企業とスタートアップ企業のリーダーは、Kubernetes コミュニティと周辺エコシステムの価値についても考慮する必要があるでしょう。そこから生まれる安定したイノベーションが、現在の業界基準とベスト プラクティスを定義しています。Kubernetes は、コンテナに関するスピード、複雑性、労力の点で技術的メリットがあるのは明らかです。一方、多数のコントリビューターが積極的に参加するオープンソース プラットフォームとして、Kubernetes は今後のアーキテクチャのイノベーションにつながる取り組みを加速させています。開発者に向けた最新技術である Kubernetes は、現在業務に携わっている開発者を支援するだけでなく、優秀な技術人材を獲得する上でも効果があります。また、Kubernetes はオープンソースなので、専用ソリューションに透明性を提供し、ロックインのリスクを低減するということは重視すべきです。Kubernetes は全面的に、テクノロジー企業とスタートアップ企業が顧客にイノベーションを迅速にもたらすためのフレームワークを提供します。詳細については、ホワイトペーパー全文、またはスタートアップ企業とテクノロジー企業のための Google Cloud のページをご覧ください。
- プリンシパル エンジニア Kelsey Hightower