KubeCon EUのRISC-Vのキーノートから見えるKubernetes的なオープンハードウェアとは

2021年10月6日(水)
松下 康之 - Yasuyuki Matsushita
KubeCon EUで行われたRISC-Vの概要を解説するキーノートを紹介する。

RISC-V(リスクファイブ)はオープンソース化されたISA(Instruction Set Architecture、命令セット)としてx86、ARMに次ぐISAとして注目されている。プロセッサーは、コンピューターメーカーが自ら作成するメインフレーム/ミニコンピュータの時代、Intelに代表されるジェネリックなマイクロプロセッサーがサーバーやデスクトップ/ノートPCに使われる時代を経て、現在は処理速度、フォームファクター、消費電力の高いバランスが必要となるスマートフォン、スマートデバイスそしてエッジまで対応できる業務ドメインに適したプロセッサーが求められる時代となっている。

現在はPC時代の覇権製品であったIntelアーキテクチャ以外に、省電力性能に長けたARM、機械学習ではもはや主流となっているNVIDIAのGPU、さらにソフトウェアで回路を変更できるFPGAのリーダーであるXilinxのプロセッサーまで、選択肢が拡がっていると言える。その中で命令セットをオープンソースとして公開し、独自にプロセッサーを開発実装できるRISC-Vは、ライセンス料が不要なプロセッサーとしてニッチなポジションからメインストリームに躍り出ようとしている。今回は2021年5月7日にKubeCon EUのキーノートセッションとして行われたRISC-Vに関するセッションを紹介する。

動画:RISC-V: The Lowest Layer of the Cloud-Native Landscape - Daniel Mangum & Carlos Eduardo de Paula

セッションを担当したのはUpboundのシニアエンジニアであるDaniel Mangum氏とRed HatのクラウドアーキテクトであるCarlos Eduardo de Paula氏だ。

「タイトルはRISC-V: Lowest Layer of the Cloud-Native Landscape」

「タイトルはRISC-V: Lowest Layer of the Cloud-Native Landscape」

タイトルが示すようにこのセッションでは単にISA、プロセッサーとしてのRISC-Vではなく、クラウドネイティブなシステムの最下層に位置するレイヤーとしてのRISC-Vを紹介する内容となった。

CNCFのCloud Native Landscapeを紹介

CNCFのCloud Native Landscapeを紹介

まずMangum氏が触れたのはCNCFのCloud Native Landscapeだ。これはCNCFがクラウドネイティブなシステムのエコシステムを解説する際に使うインタラクティブなWebサイトだ。コンテナランタイムからCI/CD、セキュリティ、サーバーレスなど多くのオープンソースソフトウェア&プロジェクトが紹介されているだけではなく、商用のサービスやプロダクトなども掲載されているのが特徴的と言えるだろう。ただし、この中で欠けているものがあるというのがMangum氏のポイントだ。

ここで欠けているものは最下層のプロセッサーであるという指摘

ここで欠けているものは最下層のプロセッサーであるという指摘

これらクラウドネイティブなコンポーネントを実行させる際に必要となるハードウェアは、これまでIntel x86やARMというISAからそれに特化したハードウェアが密接に統合されていることを指摘した。このチャートでは最上位に位置するアプリケーション、その下にミドルウェア、さらにプラットフォーム、そしてオペレーティングシステム、そしてハードウェアというレイヤー構成になっている。注目したいのはプラットフォームとしてKubernetesを例にオンプレミスからSaaSモデルのマネージドKubernetesまでさまざまな形態で提供されるプラットフォームとしてのKubernetesによって、上位のアプリケーションは互換性を保持でき、相互運用性を高められることを指摘した点だろう。

続けて、命令セットとハードウェアが密接に統合されていることは必ずしも悪いことではないとした上で、なぜそれを変えないといけないのか? について、この後に紹介することになった。

ムーアの法則などを紹介した上で多様なユースケースに対応できるプロセッサーが必要と訴求

ムーアの法則などを紹介した上で多様なユースケースに対応できるプロセッサーが必要と訴求

ここではムーアの法則がすでに限界を迎えていることと、より省電力、小さなフォームファクターのプロセッサーに対するニーズが増えていることを解説し、現行のISAとハードウェアが密結合されたマイクロプロセッサーではなく、命令セットとハードウェアを分割し、モジュラー型で取捨選択できるアーキテクチャと実装が必要となったことと主張する。そしてそれを実現したのがRISC-Vであることを紹介した。

RISC-Vとは?を解説

RISC-Vとは?を解説

特にIoTデバイスやエッジなどの用途がハッキリしているコンピュータシステムには、ジェネリックなプロセッサーではなくRISC-Vを使うことでカスタマイズが可能になり、ライセンス料が不要であることも大きな魅力だろう。実際日本でも、ルネサスが車載用のシステムとしてARMではなくRISC-Vを採用するというニュースを2021年4月21日に発表している。

参考:ルネサスとSiFive、車載用次世代ハイエンドRISC-Vソリューションの共同開発で提携

そしてここからはRed HatのEduardo氏にバトンタッチして実際にRISC-Vの上でソフトウェアが実行されていることを見せるフェーズとなった。

SiFiveのボードを使ってRISC-Vの上でKubernetesが動いていることを実演

SiFiveのボードを使ってRISC-Vの上でKubernetesが動いていることを実演

Eduardo氏のデモはSiFiveのボードを組み込んだPCを使ってUbuntu上でKubernetesを実行し、その上でサーバーレスのオープンソースプロジェクトOpenFaaSのプロセスを実行するというものだ。デモ自体はターミナル上にASCII絵文字を表示するという単純なものだが、すでにマザーボードとして商用の製品があること、さらに多くのオープンソースプロジェクトがRISC-Vへの対応を始めていることを印象付けるものとしては成功と言えるだろう。

GoやContainerd、DockerなどがRISC-Vへのサポートを実装している

GoやContainerd、DockerなどがRISC-Vへのサポートを実装している

このスライドではRISC-Vの対応としてGoogleが開発したプログラミング言語のGo、さらにコンテナブームの嚆矢とも言えるDocker、コンテナランタイムであるrunc、ContainerdなどがRISC-Vのサポートを実装していることを紹介した。

OpenFaaS、Prometheus、KubernetesなどのプロジェクトがRISC-V用のイメージを用意

OpenFaaS、Prometheus、KubernetesなどのプロジェクトがRISC-V用のイメージを用意

このスライドでは単にサポートしているだけではなく、RISC-Vで実行するためのイメージを用意しているプロジェクトを紹介している。このリストはEduardo氏が個人的に収集しているRISC-Vに関するプロジェクトをGitHubの中で紹介しているものの一部であり、常に更新されていると考えるべきだろう。興味のある方は以下を参照されたい。

Carlos Eduardo de Paula氏のGitHub:RISC-V bring-up tracker

またオープンなプロジェクトとしてのRISC-Vにおいて、特にソフトウェアという面では多くのやるべきことがあるとして紹介したのが次のスライドだ。

ソフトウェア対応という意味ではTODOリストがまだ多く残っていることを紹介

ソフトウェア対応という意味ではTODOリストがまだ多く残っていることを紹介

最後にもう一度、デモとしてKubernetesの上でOpenFaaSのプロセスを起動してそれを確認するということを行って、Mangum氏と交代した。

OpenFaaSが実行されていることをデモ

OpenFaaSが実行されていることをデモ

2人のスピーカーのコンタクト先を紹介してプレゼンテーションを終えた。

Mangum氏、De Paula氏のコンタクト先を紹介

Mangum氏、De Paula氏のコンタクト先を紹介

RISC-Vの盛り上がりとソフトウェアのエコシステムに関する資料として、2020年12月に行われたRISC-VのカンファレンスでSiFiveのCEOが行ったプレゼンテーションのスライドを紹介しよう。動画は以下のURLから参照できる。

参考:SiFive CEO Patrick Little speaks at the RISC-V Summit 2020 on how RISC-V is good & can be great!

ちなみにSiFiveはRISC-Vに特化したベンチャーで、2018年にポートランドで開催されたEmbedded Linux Conferenceにて、CTOがプレゼンテーションを行っている。

参考:RISC-Vを手がけるSiFiveのCTOがIoT時代のプロセッサーを語る!

SiFiveのCEO、Patrick Little氏のプレゼンテーション

SiFiveのCEO、Patrick Little氏のプレゼンテーション

次のスライドでは2019年から急激にRISC-V Foundationのメンバーが増えていることが見てとれる。実際のマイクロチップとしての実装は84ということで、この数値が多いのか少ないのかは判断が難しいと言える。判断のポイントは「実際にどのような製品に組み込まれているのか?」となるだろう。

2019年辺りからメンバーが増えていることがわかる

2019年辺りからメンバーが増えていることがわかる

このスライドでは、RISC-Vに関わるソフトウェアエコシステムを紹介している。

ここではLinuxのディストリビューションとしてUbuntu、Debian、Fedora、SUSEなどの他にブートローダーであるcoreboot、U-bootなどの名前も確認できる。

また2019年には元IBMのシニアマネージャーがRISC-V FoundationのCEOとして就任した際のインタビューを公開しているのでそちらも参考にされたい。

参考:RISC-V FoundationのCEOに訊いたRISC-Vのこれから

KubeConのキーノートとして、ハードウェアに近いRISC-Vを持ってくるのは少し畑違いな感覚かもしれないが、オープンな命令セットのRISC-Vと、オンプレミスからSaaSまで多様な実装を可能にしたオープンなプロジェクトとしてのKubernetesに通じるものがあるというのがCNCFの狙いなのかもしれない。エッジにおけるKubernetesの実装が現実的になる状況では、x86、ARM以外の選択肢があることを認知させると言う意味で、価値があるプレゼンテーションだったと思われる。

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

ネットワークイベント
第6回

KubeCon EU、欠点から逆算するKubernetesのネットワークに関するセッションを紹介

2021/10/13
eBPFを使ったネットワークスタックであるCiliumの開発元のCTOがKubernetesのネットワークの弱点を紹介。
クラウドイベント
第5回

KubeCon EU、Linkerdでマルチクラスターを実装するセッションを紹介

2021/10/12
サービスメッシュのLinkerdを使ってマルチクラスター実装を解説するセッションを紹介する。
クラウドイベント
第4回

KubeCon EUレポート Alibabaが本番環境で使うKubeVelaとDaprのセッションを紹介

2021/10/8
KubeCon EUからAlibabaのエンジニアが行ったKubeVelaとDaprに関するセッションを紹介する。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています