
エッジコンピューティングの実行環境は多拠点に分散配置されるため、管理の複雑性、ネットワーク品質、限られたコンピュートリソース、物理的なセキュリティ等が課題となります。本記事では、Red Hat社が提供するRed Hat Device Edgeがどのような機能を提供し、これらの課題をどのように解決するのかをご紹介します。
- ライター:奈良 昌紀
- 通信事業者のデータセンターにおいてネットワーク・サーバー運用を経験した後、ネットワンシステムズに入社。帯域制御やWAN高速化製品担当を経て、2008年から仮想化関連製品を担当。現在は主にクラウド、仮想インフラの管理、自動化、ネットワーク仮想化を担当。
目次
はじめに
Red Hat Device Edgeはエッジ環境向けに最適化された柔軟なプラットフォームであり、リソースに制約のある小型デバイス上で多様なワークロードの実行を可能にします。Red Hat Device Edgeは以下のコンポーネントで構成されます。
- Red Hat Enterprise Linux (RHEL) for Edge:安全で実績のあるRed Hat Enterprise Linuxオペレーティングシステムをベースに、エッジ向けに最適化されており、さまざまなユースケースとワークロードに対応し、エッジ環境におけるOS管理を容易にします。
- MicroShift:Red Hat OpenShiftをエッジ向けに軽量化したKubernetesコンテナ・オーケストレーション・ソリューションで、リソースに制約のあるデバイス向けに最適化されています。
- Red Hat Ansible Automation Platform:デバイスの初期導入から継続的なプラットフォームおよびワークロード運用までを自動化し、デバイスとアプリケーションのライフサイクル管理を可能にします。
用語解説
- RPM-OSTree:オペレーティングシステムの更新をホストするハイブリッドイメージまたはシステムパッケージ
- Cookpit:オペレーティングシステムを管理するための管理用Webインタフェース
- Image builder:様々な環境に対応したOSイメージを作成するツール
- composer-cli:Image builder を利用するためのコマンドラインインタフェース
RHEL for Edge
RHEL for Edgeは、エッジコンピューティング環境向けに最適化された軽量なLinuxディストリビューションです。Red Hat Enterprise Linux(RHEL)のセキュリティ、安定性、長期的なライフサイクル管理の特長をそのままに、リソースの限られた小型デバイスや分散環境での運用を想定して設計されています。
従来のRHELは、個別のRPMパッケージを使用してシステムを管理しますが、RHEL for EdgeではRPM-OSTreeによるイメージベースの更新を採用しています。これにより、システム全体をバージョン管理されたイメージとして一括管理し、更新時には新しいイメージをダウンロードして再起動時に一括適用する方式をとっています。この方法により、更新プロセスの一貫性が確保され、更新中の不整合や依存関係の問題を防ぐことができます。RHEL Image Builderによりイメージを作成します。Image Builderは、Cookpitやcomposer-cliから利用可能です。

作成したイメージはリモートリポジトリ上で管理・共有可能なため、複数台のホストイメージの一元的な制御が可能となり、分散環境における運用管理の効率化を実現します。さらに、差分更新に対応しており、変更部分のみを配信することで 帯域の使用を抑え、更新時ホストのコンピュートリソースに対する影響を軽減します。
$ rpm-ostree status State: idle Deployments: ● edge:rhel/9/x86_64/edge Version: 9.5 (2025-02-10T07:00:02Z) Commit: 8ab67c6ea6c643694d17782519a97921a4199615b968b512c42eb4a6d5e1a70e edge:rhel/9/x86_64/edge Version: 9.5 (2025-02-08T01:51:52Z) Commit: c4846ee6989f9687f113a1f9276a38f9b03790fb8e0be4f8c38d2e73ff061b60
RHEL for Edgeではリアルタイムカーネル(kernel-rt)を利用することもできるため、リアルタイム性が要求されるタスクを正確・確実に実行することが求められるアプリケーションの実行環境としても利用することが可能です。
MicroShift
MicroShiftはOpenShiftをベースにしており、エッジデバイス上で実行できるようにフットプリントを大幅に軽量化しています。数百MB程度のメモリで実行することができるため、IoT機器や組み込みシステムのような小型のデバイスでも動作可能です。OpenShift APIと互換性を持ち、コンテナ化されたアプリケーションをエッジ環境でもデプロイすることを可能にします。
一般的なOpenShfit・Kubernetesは、3台のコントロールプレーンと複数台のノードによってクラスターを構成し、クラスター内ではetcdクラスターやapi-serverなど多くのコンポーネントを実行する必要がありますが、MicroShiftは単一ノードにインストールされ、microshiftとmicroshift-etcdの2つプロセスで構成されます。なお、MicroShiftにはOpenShift Consoleは含まれないため、基本的にはCLIやAPIによる管理が必要です。
$ oc get node NAME STATUS ROLES AGE VERSION device-edge Ready control-plane,master,worker 31m v1.30.7 $ oc get pod -A NAMESPACE NAME READY STATUS RESTARTS AGE kube-system csi-snapshot-controller-5455f69945-j5cts 1/1 Running 0 31m kube-system csi-snapshot-webhook-59bcbf54cf-pn89l 1/1 Running 0 31m openshift-dns dns-default-mqdm5 2/2 Running 0 29m openshift-dns node-resolver-jmbzk 1/1 Running 0 31m openshift-ingress router-default-67fbc85cf4-gbr5s 1/1 Running 0 31m openshift-ovn-kubernetes ovnkube-master-jmdvp 4/4 Running 1 (29m ago) 31m openshift-ovn-kubernetes ovnkube-node-8hnp6 1/1 Running 1 (29m ago) 31m openshift-service-ca service-ca-5f74b7b968-msj5v 1/1 Running 0 31m openshift-storage lvms-operator-7f544467bc-662kj 1/1 Running 0 31m openshift-storage vg-manager-4bfmq 1/1 Running 0 29m
Device EdgeのMicroShiftはCSIドライバーとしてLVMSが利用されています。LVMSはTopoLVMをベースとしたCSIプラグインであり、LVM(Logical Volume Manager)からPVのダイナミックプロビジョニングすることが可能です。ネットワークはOpenShiftと同じようにOVN-Kubernetesが利用され、OpenShift Ingress ControllerとRouteリソースによってクラスターで実行されるアプリケーションを外部に公開することが可能です。
また、microshift-gitopsパッケージが提供されており、MicroShift向けに最適化されたArogoCDを利用する事が可能です。ArgoCDを利用することでGitリポジトリ上のマニフェストを参照してOpenShift上にリソースを作成・更新することが可能になり、多数のエッジデバイス上のアプリケーションをマニフェストにより効率的に管理することができます。
Ansible Automation Platform
エッジコンピューティングの実行環境は地理的に分散しているため、現地でのITスタッフによる対応が難しく、運用・管理の効率化が重要です。MicroShiftとGitOpsを活用することでクラウドネイティブなアプリケーションの管理が可能になりますが、エッジデバイスの初期設定やOSアップデート、マルチベンダーで構成される既存システムとの連携、高度なアプリケーションの管理などはAnsible Playbookを使って自動化できます。Ansible Automation Platformを利用することで、Ansible Playbookやインベントリを一元管理し、地理的に分散した環境の自動化を実現できます。また、ジョブの実行履歴や結果を確認するためのダッシュボードも利用できるため、分散されたエッジコンピューティング環境を効率的に管理することが可能です。

まとめ
Red Hat Device Edgeはエッジコンピューティングを実現するために必要な機能を提供することで、管理の複雑性、ネットワーク品質、限られたコンピュートリソース等のエッジコンピューティング特有の課題を解決し、エッジコンピューティングの導入を容易にします。
弊社では、Red Hat Device Edgeの検証の一貫として、コンシューマー向けPC上でコンテナ化されたオープンソースのコンピュータービジョンを実行し、USBカメラの映像に映り込んだ人数を表示するエッジ推論アプリケーションや、学習用ロボットアームの制御等の動作確認を実施していますので、Red Hat Device Edgeに関してご興味がございましたら、弊社営業担当までご相談ください。

※本記事の内容は執筆者個人の見解であり、所属する組織の見解を代表するものではありません。