IoT/クラウドロボティクス時代のシステム開発を加速化する仮想環境の活用について解説する本連載。第3回は、IT分野で浸透してきている「クラウドネイティブ」という考え方とその狙い、支える技術などについて紹介した上で、組み込み分野におけるクラウドネイティブの可能性について説明する。
これまでの連載では、主に組み込みソフトウェアのエンジニアの視点から、IoT(Internet of Things、モノのインターネット)システム開発/サービス構築の方策について、シミュレーション環境「箱庭」を軸に見てきました。しかし、連載の第1回、第2回とも、記事の冒頭で掲げている通り、IoTは情報技術(IT)の総合格闘技ですので、さまざまな視点からの知見が必要となります。そこで今回からは、主にIT分野のエンジニアの視点から、仮想環境を用いたROSロボットの開発、IoTシステム開発/サービス構築のアプローチを紹介していきます。
⇒連載「仮想環境を使ったクラウド時代の組み込み開発のススメ」バックナンバー
今回は、最初にIT分野で浸透してきている「クラウドネイティブ」という考え方とその狙い、支える技術などについて解説します。その上で、組み込み分野におけるクラウドネイティブの可能性について説明したいと思います。
前回の記事では、筆者らが研究開発に取り組んでいるシミュレーション環境「箱庭」について紹介しました。シミュレーション環境を活用するモチベーションは、以下を一例とするような、現実の作業環境やプロダクト設計への「フィードバック」を得ることにあると推察されます。
これらのフィードバックを、なるべく「早く、確実に」実行することはとても重要です。それによって「何度も無理なく繰り返す」ことが可能になります。これは、理想的な「フィードバックサイクル」を構成できることを示しています。
筆者らの研究開発では、クラウドネイティブの考え方/技術を活用して、この理想的なフィードバックサイクルの構成を実現しています。ただし、シミュレーション環境「箱庭」と、現実の作業環境の間には、従来技術では埋めることが難しい“ギャップ”が存在します。そこで、筆者らは以下の2点に着目してギャップの解決に当たりました。
クラウドネイティブでは、ギャップを埋めることを阻む複雑怪奇な問題を、細かい事象に分解し、シンプルに扱うことで克服します。「徹底した抽象化」をシステマチックに適用可能にする枠組みと言ってもいいかもしれません。これを現実的コストで実現する手段として、クラウドネイティブという考え方や、支える技術が大いに役立ちます。
上記のギャップ要因の詳細や、クラウドネイティブな具体的な解決方法については次回以降、順次解説していきます。まず今回は、クラウドネイティブについて、組み込みソフトウェアとの関連を織り交ぜながら順に見ていきましょう。
ここからは、クラウドネイティブの一般的な解説をしていこうと思います。クラウドネイティブの推進や、エコシステムの構築は「CNCF(Cloud Native Computing Foundation)」という財団を中心に行われています。2020年の年次報告書によると、メンバーシップ企業が600社を超え、最高位のプラチナメンバーにはパブリッククラウドベンダーからエンドユーザーまでが名を連ねます。「Kubernetes」「Prometheus」「Envoy」など80以上のプロジェクトを主催しています。
クラウドネイティブの定義は日本語を含む各言語で公開されています。
クラウドネイティブ技術は、パブリッククラウド、プライベートクラウド、ハイブリッドクラウドなどの近代的でダイナミックな環境において、スケーラブルなアプリケーションを構築および実行するための能力を組織にもたらします。このアプローチの代表例に、コンテナ、サービスメッシュ、マイクロサービス、イミュータブルインフラストラクチャおよび宣言型APIがあります。
これらの手法により、回復性、管理力および可観測性のある疎結合システムが実現します。これらを堅牢な自動化と組み合わせることで、エンジニアはインパクトのある変更を最小限の労力で頻繁かつ予測通りに行うことができます。
Cloud Native Computing Foundationは、オープンソースでベンダー中立プロジェクトのエコシステムを育成・維持して、このパラダイムの採用を促進したいと考えています。 私たちは最先端のパターンを民主化し、これらのイノベーションを誰もが利用できるようにします。
CNCF公式の定義「CNCF Cloud Native Definition v1.0」から引用
最初の段落で、実効性の高いアプローチの代表例が5つ挙げられています。これら1つ1つが多くの議論を呼ぶ複雑な概念です。ここでは、概要に触れる程度に留めておきます。
Copyright © ITmedia, Inc. All Rights Reserved.