構成情報収集のカスタマイズ

エージェント(Linux)が収集する構成情報収集処理のカスタマイズ方法を説明します。

収集スクリプトのカスタマイズ

エージェント(Linux)の構成情報収集は、/opt/nec/pf/opm/agent/bin/inventory_script 配下のスクリプトにより収集します。 収集した結果は /tmp/inventory 配下に収集クラス単位で出力します。 各収集クラスの結果ファイルは /tmp/inventory_result 配下の InventoryAgent_collect_result.json にマージしてマネージャに送信します。

収集スクリプト 説明
CollectInventory.sh 構成情報収集スクリプト。構成管理エージェントから呼び出され、呼び出し時に指定されたクラス名に対応する収集スクリプトを呼び出します。
functions.sh 共通関数スクリプト。収集コマンドおよび共通関数を定義。各種情報収集スクリプトで利用している。
ComputerInfo.sh コンピュータ情報を収集する。
CPUInfo.sh CPU 情報を収集する。
DiskInfo.sh ディスク情報を収集する。
NetworkAdapterInfo.sh ネットワークアダプタ情報を収集する。
IPAddressInfo.sh IP アドレス情報を収集する。
BIOSInfo.sh BIOS 情報を収集する。
ServiceInfo.sh ソフトウェア情報を収集する。
SystemInfo.sh システム情報を収集する。

CollectInventory.sh は構成情報収集時にエージェントから呼び出される際に指定されるクラス名の一覧は以下の通りです。

クラス名 説明
ComputerInfo コンピュータ情報
CPUInfo CPU 情報
DiskInfo Disk 情報
NetworkAdapterInfo ネットワークアダプタ情報
IPAddressInfo IP 情報
BIOSInfo BIOS 情報
ServiceInfo サービス情報
OSInfo OS 情報
SWInfo ソフトウェア情報
SystemInfo システム情報

各クラスの収集方法変更する場合は、各クラスの収集処理をカスタマイズしてください。 各スクリプトは、/tmp/inventory 配下にクラス名.tmp のファイルを出力します。 出力する文字コードは UTF-8 になります。 各クラスの出力するクラス名.tmp ファイルのイメージ(例はCPUInfo.tmp のイメージ)は以下の通りです。

C@CPUInfo
I@
P@CPUID:CPU1
P@Name:Cortex-A53
P@Caption:Cortex-A53
P@NumberOfCores:2
P@NumberOfLogicalProcessors:1
P@Manufacturer:ARM
P@ProcessorID:
P@ProcessorType:aarch64
P@CurrentClockSpeed:1000
フォーマット

C@クラス名
I@データ区切り文字。SW 情報のような繰り返し項目の場合は、本区切文字で各データを区切り
ます
P@プロパティ名:値
W@プロパティ名:メッセージ(←収集に失敗したプロパティにエラー情報を記載します)

収集するプロパティの一覧は以下の通りです。

  • BIOSInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    Name 文字列 256 BIOS 名
    Version 文字列 256 BIOS バージョン
    Manufacturer 文字列 256 製造元
    SerialNumber 文字列 64 シリアル番号
  • CPUInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    CPUID 文字列 128 マシン内で一意の通番を払い出す(例:CPU1) 不可
    Name 文字列 1024 CPU 名
    Caption 文字列 64 CPU キャプション
    NumberOfCores 数値 2147483647 コア数
    NumberOfLogicalProcessors 数値 2147483647 論理プロセッサ数
    Manufacturer 文字列 4000 製造元
    ProcessorID 文字列 64 プロセッサID
    ProcessorType 文字列 256 プロセッサタイプ
    CurrentClockSpeed 数値 2147483647 周波数
  • ComputerInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    ElementName 文字列 4000 コンピュータ名 不可
    Domain 文字列 4000 ドメイン名
    Manufacturer 文字列 256 製造元
    Model 文字列 256 型番
    SystemType 文字列 4000 システムタイプ(例.aarch64)
    TotalPhysicalMemory 数値 9223372036854775807 物理メモリ(バイト)
  • DiskInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    Name 文字列 1024 ディスクパス( 例:/dev/mmcblk0p1)
    Size 数値 9223372036854775807 ディスクサイズ(バイト)
    FreeSize 数値 9223372036854775807 空き容量(バイト)
    FileSystem 文字列 64 ファイルシステム(例:ext4)
  • IPAddressInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    AdapterID 文字列 128 IP アドレスが紐づくアダプタID 不可
    IPAddress 文字列 64 IP アドレス
    IPSubnet 文字列 64 サブネット(例:24)
    DefaultIPGateway 文字列 256 デフォルトゲートウェイ
  • NetworkAdapterInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    AdapterID 文字列 128 アダプタID。マシン内の通番 不可
    Name 文字列 1024 アダプタ名(例:eth0)
    MACAddress 文字列 256 MAC アドレス
  • OSInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    Name 文字列 256 OS 名
    Caption 文字列 64 キャプション
    Version 文字列 64 バージョン
    BuildNumber 文字列 4000 ビルド番号
    Description 文字列 4000 説明
    LastBootUpTime 日時 - 最終起動日時(UTC)( 例:20210909083249.622932+000)
    TotalVisibleMemorySize 数値 9223372036854775807 トータルメモリ(バイト)
    TotalVirtualMemorySize 数値 9223372036854775807 仮想メモリ(バイト)
  • SWInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    Name 文字列 256 名前 不可
    Version 文字列 64 バージョン 不可
    Arch 文字列 256 アーキテクチャ(例:amd64) 不可
    Description 文字列 4000 説明
  • ServiceInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    Name 文字列 256 サービス名
    Description 文字列 4000 説明
  • SystemInfo

    プロパティ名 属性 最大文字数/最大数 説明 値の省略
    ICEVersion 文字列 4000 ICECore のバージョン
    FWVersion 文字列 4000 ファームウェアのバージョン  可

収集スクリプトの確認

作成した収集スクリプトは、構成情報収集契機で実行されます。 収集結果はWebUI のエッジ詳細画面で確認することができます。 収集したデータが不正な場合、不正項目については登録をスキップします。 構成情報を確認して設定されていない項目がある場合、収集スクリプトが出力する収集結果ファイル(クラス名.tmp)の内容を確認してください。