6.2. デバイスの表示


インベントリー内のデバイスに関する詳細情報を取得するには、Red Hat Edge Manager CLI を使用できます。

6.2.1. Web UI でのデバイスインベントリーとデバイス詳細の表示

登録されたデバイスの詳細 (ステータスや健全性など) は、Red Hat Edge Manager Web UI で確認できます。

前提条件

手順

  1. ナビゲーションパネルから、Application Links Edge Manager を選択します。外部 Edge Manager インスタンスが開きます。
  2. ナビゲーションパネルから Devices を選択すると、デバイスのインベントリー、詳細、および廃止されたデバイスを表示できます。

6.2.2. CLI でのデバイスインベントリーとデバイス詳細の表示

以下の手順を実行します。

手順

  1. 次のコマンドを実行して、デバイスインベントリー内のデバイスを表示します。

    flightctl get devices

    以下の出力例を参照してください。

    NAME           ALIAS    OWNER   SYSTEM  UPDATED     APPLICATIONS  LAST SEEN
    <device_name>  <none>   <none>  Online  Up-to-date  <none>        3 seconds ago
  2. 次のコマンドを実行して、このデバイスの詳細を YAML 形式で表示します。

    flightctl get device/<device_name> -o yaml

    以下の出力例を参照してください。

    apiVersion: flightctl.io/v1alpha1
    kind: Device
    metadata:
      name: <device_name>
      labels: 
    1
    
        region: eu-west-1
        site: factory-berlin
    spec:
      os:
        image: quay.io/flightctl/rhel:9.5 
    2
    
      config:
      - name: my-os-configuration 
    3
    
        configType: GitConfigProviderSpec
        gitRef:
          path: /configuration
          repository: my-configuration-repo
          targetRevision: production
    status:
      os:
        image: quay.io/flightctl/rhel:9.5 
    4
    
      config:
        renderedVersion: "1" 
    5
    
      applications:
        data: {} 
    6
    
        summary:
          status: Unknown 
    7
    
      resources: 
    8
    
        cpu: Healthy
        disk: Healthy
        memory: Healthy
      systemInfo: 
    9
    
        architecture: amd64
        bootID: 037750f7-f293-4c5b-b06e-481eef4e883f
        operatingSystem: linux
      summary:
        info: ""
        status: Online 
    10
    
      updated:
        status: UpToDate 
    11
    
      lastSeen: "2024-08-28T11:45:34.812851905Z" 
    12
    
    [...]
    1
    デバイスに割り当てられたユーザー定義のラベル。
    2
    デバイスのターゲット OS イメージバージョン。
    3
    デバイスのターゲット OS 設定。
    4
    デバイスの現在の OS イメージバージョン。
    5
    デバイスの現在の OS 設定バージョン。
    6
    デバイスのデプロイされたアプリケーションの現時点でのリスト。
    7
    デバイス上のアプリケーションのヘルスステータス。
    8
    CPU、ディスク、およびメモリーリソースの可用性。
    9
    基本的なシステム情報。
    10
    デバイスのヘルスステータス。
    11
    デバイスの更新ステータス。
    12
    デバイスの最後のチェックイン時刻と日付。

6.2.3. ラベルとラベルセレクター

リソースにラベルを割り当てて、場所、ハードウェアの種類、目的などを記録することで、リソースを整理できます。Red Hat Edge Manager のラベルは、Kubernetes のラベルおよびラベルセレクターと同じ構文、原則、演算子に準拠したものです。デバイスのインベントリーを表示するとき、またはデバイスに操作を適用するときに、ラベルの付いたデバイスを選択できます。

ラベルは key=value 形式で記述します。キーはデバイスのグループ化に使用できます。たとえば、ラベルが site=<location> という命名規則に従っている場合は、デバイスをサイトごとにグループ化できます。キーのみを含むラベルを使用することもできます。

ラベルが有効であるためには、次のルールに従う必要があります。

  • キーと値はそれぞれ 63 文字以下である必要があります。
  • キーと値は英数字 (a-zA-Z0-9) で構成できます。
  • キーと値には、ダッシュ (-)、アンダースコア (_)、ドット (.) も含めることができます。ただし、これらの文字を最初または最後の文字として使用することはできません。
  • 値は省略できます。

ラベルは次の方法でデバイスに適用できます。

  • イメージのビルド時にデフォルトのラベルセットを定義し、デプロイ時にすべてのデバイスに自動適用されるようにします。
  • 登録時に初期ラベルを割り当てます。
  • 登録後、ラベルを割り当てます。

リソースにラベルを割り当てたら、ラベルセレクターを作成して、一部のデバイスを選択できます。ラベルセレクターは、ラベルのコンマ区切りリストであり、同じラベルセットを持つデバイスを選択するためのものです。

以下の例を参照してください。

Expand
ラベルセレクターの例選択されるデバイス

site=factory-berlin

ラベルのキーが site であり、ラベルの値が factory-berlin であるすべてのデバイス。

site!=factory-berlin

ラベルのキーが site であるが、ラベルの値が factory-berlin ではないすべてのデバイス。

site in (factory-berlin,factory-madrid)

ラベルのキーが site であり、ラベルの値が factory-berlin または factory-madrid のいずれかであるすべてのデバイス。

ラベルとセレクターの詳細は、Kubernetes ドキュメントの Labels and Selectors を参照してください。

6.2.3.1. Web UI でのデバイスとそのラベルの表示

Web UI でデバイスとそれに関連付けられたラベルを表示します。ラベルを使用すると、デバイスとデバイス群を整理できます。

以下の手順を実行します。

  1. ナビゲーションパネルから、Application Links Edge Manager を選択します。外部 Edge Manager インスタンスが開きます。
  2. ナビゲーションパネルから Devices を選択します。
  3. 管理するデバイスを選択します。Details タブの Labels で、関連付けられたラベルを確認できます。

6.2.3.2. CLI でのデバイスとそのラベルの表示

デバイスとそれに関連するラベルを表示します。ラベルを使用すると、デバイスとデバイス群を整理できます。

以下の手順を実行します。

手順

  1. -o wide オプションを使用して、インベントリー内のデバイスとそのラベルを表示します。

    flightctl get devices -o wide

    以下の出力例を参照してください。

    NAME            ALIAS    OWNER   SYSTEM  UPDATED     APPLICATIONS  LAST SEEN      LABELS
    <device1_name>  <none>   <none>  Online  Up-to-date  <none>        3 seconds ago  region=eu-west-1,site=factory-berlin
    <device2_name>  <none>   <none>  Online  Up-to-date  <none>        1 minute ago   region=eu-west-1,site=factory-madrid
  2. -l <key=value> オプションを使用して、インベントリー内の特定のラベルまたはラベルセットを持つデバイスを表示します。

    flightctl get devices -l site=factory-berlin -o wide

    以下の出力例を参照してください。

    NAME            ALIAS    OWNER   SYSTEM  UPDATED     APPLICATIONS  LAST SEEN      LABELS
    <device1_name>  <none>   <none>  Online  Up-to-date  <none>        3 seconds ago  region=eu-west-1,site=factory-berlin

6.2.3.3. CLI でのラベルの更新

CLI を使用してデバイスのラベルを更新します。

以下の手順を実行します。

手順

  1. 次のコマンドを実行して、デバイスの現在の定義をファイルにエクスポートします。

    flightctl get device/<device1_name> -o yaml > my_device.yaml
  2. 任意のエディターを使用して、my_device.yaml ファイルを編集します。以下の例を参照してください。

    apiVersion: flightctl.io/v1alpha1
    kind: Device
    metadata:
      labels:
        some_key: some_value
        some_other_key: some_other_value
      name: <device1_name>
    spec:
    [...]
  3. ファイルを保存し、更新したデバイス定義を次のコマンドを実行して適用します。

    flightctl apply -f my_device.yaml
  4. 次のコマンド例を実行して変更を確認します。

    NAME            ALIAS    OWNER   SYSTEM  UPDATED     APPLICATIONS  LAST SEEN      LABELS
    <device1_name>  <none>   <none>  Online  Up-to-date  <none>        3 minutes ago  some_key=some_value,some_other_key=some_other_value
    <device2_name>  <none>   <none>  Online  Up-to-date  <none>        4 minutes ago  region=eu-west-1,site=factory-madrid

6.2.4. フィールドセレクター

フィールドセレクターは、特定のリソースフィールドの値に基づいて、Red Hat Edge Manager リソースのリストをフィルタリングします。Kubernetes のフィールドおよびラベルセレクターと同じ構文、原則、演算子に準拠したものですが、より高度な検索用に追加の演算子を利用できます。

6.2.4.1. サポートされているフィールド

Red Hat Edge Manager リソースには、選択可能な一連のメタデータフィールドがあります。

各リソースは次のメタデータフィールドをサポートしています。

  • metadata.name
  • metadata.owner
  • metadata.creationTimestamp
注記

ラベルを照会する際には、詳細で柔軟なラベルフィルタリングのために、ラベルセレクターを使用してください。

詳細は、ラベルとラベルセレクター を参照してください。

6.2.4.2. 追加のサポートされるフィールドのリスト

メタデータフィールドに加えて、各リソースには選択可能な固有のフィールドセットがあり、リソース固有の属性に基づいて、フィルタリングと選択にさらなる柔軟性を提供します。

以下の表は、各リソースの種類でフィルタリングがサポートされるフィールドのリストです。

Expand
種類Fields

証明書署名要求

status.certificate

デバイス

status.summary.status

status.applicationsSummary.status

status.updated.status

status.lastSeen

status.lifecycle.status

登録要求

status.approval.approved

status.certificate

フリート

spec.template.spec.os.image

リポジトリー

spec.type

spec.url

リソース同期

spec.repository

6.2.4.3. フィールドの検出

Red Hat Edge Manager の一部のリソースは、サポートされているフィールドを追加で公開する場合があります。サポートされているフィールドは、flightctl--field-selector オプション付きで使用すると確認できます。サポートされていないフィールドを使用しようとすると、エラーメッセージに利用可能なサポート対象フィールドがリスト表示されます。

以下の例を参照してください。

flightctl get device --field-selector='text'
Error: listing devices: 400, message: unknown or unsupported selector: unable to resolve selector name "text". Supported selectors are: [metadata.alias metadata.creationTimestamp metadata.name metadata.nameoralias metadata.owner status.applicationsSummary.status status.lastSeen status.summary.status status.updated.status]

フィールド text はフィルタリングで有効なフィールドではありません。このエラーメッセージでは、Device リソースの --field-selector で使用できるサポートされているフィールドのリストが示されています。

サポートされているフィールドのいずれかを使用することができます。

flightctl get devices --field-selector 'metadata.alias contains cluster'

metadata.alias フィールドは、包含演算子 contains を使用して確認され、値 cluster があるかどうかが確認されます。

例 1: 特定のデバイスを名前で除外する

次のコマンドは、名前で特定のデバイスを除外します。

flightctl get devices --field-selector 'metadata.name!=c3tkb18x9fw32fzx5l556n0p0dracwbl4uiojxu19g2'

例 2: 所有者、ラベル、作成タイムスタンプでフィルタリングする

このコマンドは、Fleet/pos-fleet が所有し、us リージョンにあり、2024 年に作成されたデバイスを取得します。

flightctl get devices --field-selector 'metadata.owner=Fleet/pos-fleet, metadata.creationTimestamp >= 2024-01-01T00:00:00Z, metadata.creationTimestamp < //2025-01-01T00:00:00Z' -l 'region=us'

例 3: 所有者、ラベル、デバイスステータスでフィルタリングする

このコマンドは、Fleet/pos-fleet が所有し、us リージョンにあり、status.updated.statusUnknown または OutOfDate のいずれかであるデバイスを取得します。

flightctl get devices --field-selector 'metadata.owner=Fleet/pos-fleet, status.updated.status in (Unknown, OutOfDate)' -l 'region=us'

6.2.4.4. サポートされている演算子

Expand
演算子記号説明

Exists

exists

フィールドが存在するかどうかを確認します。

DoesNotExist

!

フィールドが存在しないかどうかを確認します。

Equals

=

フィールドが値と等しいかどうかを確認します。

DoubleEquals

==

別の形式の等価性チェック。

NotEquals

!=

フィールドが値と等しくないかどうかを確認します。

GreaterThan

>

フィールドが値より大きいかどうかを確認します。

GreaterThanOrEquals

>=

フィールドが値以上かどうかを確認します。

LessThan

<

フィールドが値より小さいかどうかを確認します。

LessThanOrEquals

フィールドが値以下かどうかを確認します。

In

in

フィールドが値のリスト内にあるかどうかを確認します。

NotIn

notin

フィールドが値のリストに含まれていないかどうかを確認します

Contains

contains

フィールドに値があるかどうかを確認します。

NotContains

notcontains

フィールドに値が含まれていないかどうかを確認します。

6.2.4.4.1. フィールドタイプ別の演算子の使用

各フィールドタイプは、一部の特定の演算子をサポートしています。

Expand
フィールドタイプサポートされている演算子

文字列

Equals: フィールド値が指定された文字列と完全に一致する場合にマッチします。

DoubleEquals: フィールド値が指定された文字列と完全に一致する場合にマッチします (Equals の代替)。

NotEquals: フィールド値が指定された文字列と完全に一致しない場合にマッチします。

In: フィールド値がリスト内の少なくとも 1 つの文字列と一致する場合にマッチします。

NotIn: フィールド値がリスト内のどの文字列とも一致しない場合にマッチします。

Contains: フィールド値に指定された部分文字列が含まれている場合にマッチします。

NotContains: フィールド値に指定された部分文字列が含まれていない場合にマッチします。

Exists: フィールドが存在する場合にマッチします。

DoesNotExist: フィールドが存在しない場合にマッチします。

テキスト文字列

タイムスタンプ

Equals: フィールド値が指定されたタイムスタンプと完全に一致する場合にマッチします。

DoubleEquals: フィールド値が指定されたタイムスタンプと完全に一致する場合にマッチします (Equals の代替)。

NotEquals: フィールド値が指定されたタイムスタンプと完全に一致しない場合にマッチします。

GreaterThan: フィールド値が指定されたタイムスタンプより後の場合にマッチします。

GreaterThanOrEquals: フィールド値が指定されたタイムスタンプ以後の場合にマッチします。

LessThan: フィールド値が指定されたタイムスタンプより前の場合にマッチします。

LessThanOrEquals: フィールド値が指定されたタイムスタンプ以前の場合にマッチします。

In: フィールド値がリスト内の少なくとも 1 つのタイムスタンプと一致する場合にマッチします。

NotIn: フィールド値がリスト内のどのタイムスタンプとも一致しない場合にマッチします。

Exists: フィールドが存在する場合にマッチします。

DoesNotExist: フィールドが存在しない場合にマッチします。

RFC 3339 形式

数値

Equals: フィールド値が指定された数値と等しい場合にマッチします。

DoubleEquals: フィールド値が指定された数値と等しい場合にマッチします (Equals の代替)。

NotEquals: フィールド値が指定された数値と等しくない場合にマッチします。

GreaterThan: フィールド値が指定された数値より大きい場合にマッチします。

GreaterThanOrEquals: フィールド値が指定された数値以上の場合にマッチします。

LessThan: フィールド値が指定された数値より小さい場合にマッチします。

LessThanOrEquals: フィールド値が指定された数値以下の場合にマッチします。

In: フィールド値がリスト内の少なくとも 1 つの数値と等しい場合にマッチします。

NotIn: フィールド値がリスト内のどの数字とも一致しない場合にマッチします。

Exists: フィールドが存在する場合にマッチします。

DoesNotExist: フィールドが存在しない場合にマッチします。

数値形式

ブール値

Equals: 値が true または false の場合にマッチします。

DoubleEquals: 値が true または false の場合にマッチします (Equals の代替)。

NotEquals: 値が指定された値の反対である場合にマッチします。

In: 値 (true または false) がリスト内にある場合にマッチします。

注記

リストに含めることができるのは true または false のみできるため、この演算子の使用は制限されています。

NotIn: 値がリストにない場合にマッチします。

Exists: フィールドが存在する場合にマッチします。

DoesNotExist: フィールドが存在しない場合にマッチします。

ブール形式 (truefalse)

配列

Contains: 配列に指定された値がある場合にマッチします。

NotContains: 配列に指定された値が含まれていない場合にマッチします。In: 配列が指定された値と重複する場合にマッチします。

NotIn: 配列が指定された値と重複しない場合にマッチします。Exists: フィールドが存在する場合にマッチします。

DoesNotExist: フィールドが存在しない場合にマッチします。

注記

Array[Index] を使用すると、要素が配列要素に対して定義された型として扱われます。たとえば、文字列、タイムスタンプ、数値、ブール値などです。

配列要素

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る