|
Linux、Kubernetes、Ansible、そして近年登場したLinuxコンテナは、企業ではすでに当たり前の技術となっています。特にコンテナ技術は、アプリケーションの導入の容易さと実行効率を大幅に向上させました。今日では、オンデマンドのセルフサービス、リソースプーリング、迅速な柔軟性といったクラウドのコア機能を最初から念頭に置いて構築されるアプリケーションが増えています。
同時に、多くの企業は、ますます動的になる新しいアプリケーションをサポートするために、依然として従来の静的なインフラストラクチャ構成モデルに依存しています。しかし、今日のクラウドベース、データ集約型、イベントドリブンの世界では、従来の解決策は新しい問題には明らかに効果がありません。 従来のサーバーインフラは確かに特定のワークロードには適していますが、効率性と俊敏性の向上という目標とは根本的に相反することがよくあります。従来のサーバーは通常、24時間365日、常時稼働とフル稼働が求められます。一方、これらの高価なデバイスは、時折発生する一時的なキャパシティスパイク(容量の急増)のみに対応すれば十分です。さらに、従来のサーバーでは、開発者がインフラ要件を事前に把握しておく必要があり、これは開発者にとって足かせとなるのです。開発者は、ハードウェアコンポーネントやその他の構成に気を取られることなく、割り当てられたタスクに集中したいと考えています。 サーバーレスコンピューティングは、これらの課題を軽減するのに役立ちます。サーバーレスコンピューティングは新しい概念ではありませんが、まだ十分に活用されておらず、理解も進んでいません。コンテナ化されたアプリケーション開発システムを既に使用している企業は、サーバーレスコンピューティングフレームワークを真剣に検討する必要があることを強調したいと思います。以下では、サーバーレスコンピューティングとは何か、企業がそれをどのように活用してリソース利用を最適化するか(技術的側面と人的側面の両方を含む)、そしてオープンソースのサーバーレステクノロジーが現代のアプリケーション開発に理想的な補完機能を提供できる理由について詳しく説明します。 サーバーレスコンピューティングを定義するサーバーレスコンピューティングは、企業がサーバー、データベース、さらにはアプリケーションロジックの管理をクラウドプラットフォームにアウトソーシングできるクラウドネイティブなコンセプトです。サーバーレスコンピューティング環境では、開発者は基盤となるインフラストラクチャを意識することなく、自由にアプリケーションを構築・実行できます。 興味深いことに、サーバーレスコンピューティングは真の「サーバーレス」ではありません。「ワイヤレス」通信が依然として有線で行われているのと同じです。エンドユーザーはノートパソコンを固定ケーブルでルーターに接続する必要はありませんが、システム全体は依然として数千マイルに及ぶ光ファイバーケーブルを使用してネットワークリクエストを送信しています。サーバーレスコンピューティングも同様に機能します。サーバーは依然として存在しますが、プラットフォームまたはクラウドサービスプロバイダーによって開発者の視点から抽象化されます。開発者は、アプリケーションをコンテナにパッケージ化するだけで、迅速にデプロイできます。 アプリケーションをコンテナ化する機能は、モノリシックシステムやその他のレガシーシステムを扱う際に特に重要であり、アプリケーションコードの書き換えの必要性を実質的に排除します。一方、従来のプロプライエタリソリューションは、アプリケーションをゼロから構築するのに適しています。レガシーアプリケーションをコンテナ化すると、Kubernetesによってオーケストレーションされ、必要に応じてイベントドリブン方式で起動・停止できるため、書き換えの必要はありません。 実際、イベントドリブンモデルはサーバーレスコンピューティングの大きなメリットの一つです。24時間365日フル稼働する従来のアーキテクチャとは異なり、サーバーレスリソースは必要な場合にのみアクティブ化されます。サーバーレスコンピューティングは、様々な人工知能や機械学習のワークロードを含むデータサイエンスプロジェクトに非常に有益です。これらのユースケースでは、生データの取り込み時に変換や整形が必要になる場合があります。サーバーレスコンピューティングでは、これらのワークロードを継続的に実行する必要がなく、データが取り込まれたときにのみオンデマンドで実行されます。 サーバーレスは開発効率を向上DevOpsチームやコンテナベースの開発手法を採用している企業は、既にオープンソース・エコシステムの構築に投資している可能性が高いでしょう。こうした企業にとって、既存の開発手法をオープンソースのサーバーレス・モデルで補完することは非常に重要です。なぜなら、こうしたモデルは既存の作業をより効率的にサポートできるからです。 一方、プロプライエタリなサーバーレスソリューションは、開発者が使い慣れたコード構築・テスト手法を放棄せざるを得なくなることが多く、これは「一つの危険から逃れたと思ったら、また別の危険に陥る」ようなもので、生産性の最大化という目標を達成できません。オープンソースのサーバーレスフレームワークを使用すれば、開発者は既存のワークフローをコンテナにパッケージ化し続けることができ、中断や障害なく作業を進めることができます。 オープンソース技術は、専門的なスキルや追加のトレーニングの必要性を軽減します。多くの独自のサーバーレスコンピューティングプラットフォームは、適切に機能するために追加のツール(サーバーレスデータベースなど)を必要としますが、オープンソースソリューションは、ユーザーチームに追加のワークフローや技術的な課題をもたらすことはありません。 オープンソースのサーバーレスコンピューティングフレームワークは、すべてのユースケースに適しているわけではありませんが、複数のソースから異なるタイミングでデータを抽出するなど、特定のシナリオでは非常に大きな価値を発揮します。適切に適用すれば、サーバーレスコンピューティングは想像を絶するパワーを発揮し、企業が生産性と俊敏性の完璧なバランスを実現するのに役立ちます。 |
オープンソースのサーバーレスは今が絶好のタイミング
関連するおすすめ記事
-
BMW Brilliance、Southern Asset Management、Chint Energy、Morgan Stanleyが2023 Red Hat Asia Pacific Innovation Awardsを受賞しました。
-
オープンソースの AI チャットボット MLC LLM がリリースされました。インターネット接続なしでローカルで実行でき、統合グラフィックを搭載したコンピューターや Apple iPhone で動作します。
-
Zabbix Musings: イベント通知(トリガー)の簡単な分析
-
FreeDOSを使い始める
-
とっても便利です!このオープンソースのターミナルツールは、IP 情報を照会できます...
-