Hitachi

Hitachi Command Suite Configuration Manager REST API リファレンスガイド


17.10 SNMPの障害通知の送信先を設定する

ストレージシステムの障害情報(SIM)をSNMPで通知するための設定をします。このAPIは、プロトコルにhttpsを指定して実行してください。

リクエストボディを作成する際の注意事項

このAPIを実行する前に、SNMPの設定情報を取得するAPIで現在の設定内容を取得してください。取得したレスポンスボディをこのAPIのリクエストボディとして使用します。取得した設定情報には、snmpVersion属性で設定されているSNMPのバージョン以外の設定値が出力されていることもあります。設定内容を変更したい属性の値だけを変更してください。

VSP 5000 シリーズVSP G1000VSP G1500、またはVSP F1500の場合、このAPIは、snmpVersion属性で指定したSNMPのバージョンに対応する設定値だけを更新します。例えば、snmpVersion属性にv1を指定した場合、sendingTrapSetting属性の配下に指定した項目のうち、SNMPのバージョンがSNMP v1に対応した項目の値だけが更新されます。詳細は、リクエストボディの属性の説明を確認してください。

VSP E シリーズVSP Gx00 モデルまたはVSP Fx00 モデルの場合、このAPI は、snmpVersion属性で指定したSNMPのバージョン以外の設定値も含めて、すべての設定値を上書き更新します。取得したレスポンスボディの情報を削除すると、その設定内容が削除されます。

メモ
  • password属性とkey属性の値は、取得したレスポンスボディに空文字が出力されます。設定内容を変更する場合だけ値を指定します。
  • snmpEngineID属性は、設定を変更できません。値を指定しても無視されます。
  • REST API を実行するユーザが、対象ストレージシステムのリソースをREST API でロックしている場合、このAPIは実行できません。その場合は、ロックを解除してから実行してください。

実行権限

ストレージ管理者(初期設定)

リクエストライン

PUT <ベースURL>/v1/objects/storages/<ストレージデバイスID>/snmp-settings/instance

このAPIはPATCHメソッドでも実行できます。

リクエストメッセージ

オブジェクトID

instanceを指定します。

instanceは、単一のインスタンスしか持たないオブジェクトの場合に、オブジェクトIDとして指定する固定の値です。

クエリパラメータ
なし。
ボディ

SNMPのバージョンがSNMP v1の場合のコード例を次に示します。

{
  "isSNMPAgentEnabled": true,
  "snmpVersion": "v1",
  "sendingTrapSetting": {
    "snmpv1v2cSettings": [
      {
        "community": "MyRestSNMPCommunity1",
        "sendTrapTo": [
          "192.0.2.100",
          "192.0.2.200"
        ]
      }
    ]
  },
  "requestAuthenticationSetting": {
    "snmpv1v2cSettings": [
      {
        "community": "MyRestSNMPCommunity2",
        "requestsPermitted": [
          "192.0.3.100"
        ]
      }
    ]
  },
  "systemGroupInformation": {
    "storageSystemName": "VSP_G600",
    "contact": "confmanager.@example.com",
    "location": "Data Center 1F"
  }
}

SNMPのバージョンがSNMP v3の場合のコード例を次に示します。

{
  "isSNMPAgentEnabled": true,
  "snmpVersion": "v3",
  "sendingTrapSetting": {
    "snmpv3Settings": [
      {
        "userName": "MyRestSNMPUser1",
        "sendTrapTo": "192.0.2.100",
        "authentication": {
          "protocol": "SHA",
          "password": "TopSecretForMySNMP1",
          "encryption": {
            "protocol": "AES",
            "key": "KeyForMySNMP1"
          }
        }
      },
      {
        "userName": "MyRestSNMPUser2",
        "sendTrapTo": "192.0.2.200"
      }
    ]
  },
  "requestAuthenticationSetting": {
    "snmpv3Settings": [
      {
        "userName": "MyRestSNMPUser3",
        "authentication": {
          "protocol": "MD5",
          "password": "",
          "encryption": {
            "protocol": "DES",
            "key": ""
          }
        }
      }
    ]
  },
  "systemGroupInformation": {
    "storageSystemName": "VSP_G600",
    "contact": "confmanager.@example.com",
    "location": "Data Center 1F"
  }
}

属性

説明

isSNMPAgentEnabled

boolean

(必須)SNMPエージェントを有効にするかどうか

  • true:有効
  • false:無効

この属性をtrueにすると、障害情報(SIM)をSNMPトラップで通知します。また、SNMPオペレーションのリクエスト(GET REQUEST、GETNEXT REQUEST、およびGETBULK REQUEST)を受け付けます。

snmpVersion

string

(必須)SNMPのバージョン

使用するSNMPのバージョンを指定します。指定できる値は次のとおりです。

  • v1:SNMP v1
  • v2c:SNMP v2c
  • v3:SNMP v3

sendingTrapSetting

object

(任意)SNMPトラップの送信先

SNMPのバージョンによって指定できる属性が異なります。

  • snmpv1v2cSettings(object[])

    (任意)SNMPトラップの送信先の設定の配列(SNMP v1またはSNMP v2cの場合)

    32個まで指定できます。複数指定する場合、community属性は一意となるように指定してください。snmpv1v2cSettings属性を指定する場合、community属性とsendTrapTo属性の両方を必ず指定してください。

    • community(string)

      SNMPトラップの報告に使用するコミュニティ名

      1~180文字の文字列を指定します。

    • sendTrapTo(string[])

      SNMPトラップの送信先のIPアドレスの配列

      IPv4またはIPv6形式で指定します。32個まで指定できます。

  • snmpv3Settings(object[])

    (任意)SNMPトラップの送信先の設定の配列(SNMP v3の場合)

    8個まで指定できます。複数指定する場合、sendTrapTo属性は一意となるように指定してください。snmpv3Settings属性を指定する場合、userName属性とsendTrapTo属性を必ず指定してください。

    • userName(string)

      SNMPトラップの報告に使用するユーザ名

      1~32文字の文字列を指定します。

    • sendTrapTo(string)

      SNMPトラップの送信先のIPアドレス

      IPv4またはIPv6形式で指定します。

    • authentication(object)

      (任意)認証情報

      パスワードによる認証を有効にする場合に指定します。指定できる属性については、authentication属性に指定できる属性の表を参照してください。

requestAuthenticationSetting

object

(任意)リクエスト許可の設定

SNMPオペレーションのリクエスト(GET REQUEST、GETNEXT REQUEST、およびGETBULK REQUEST)許可の設定をします。SNMPのバージョンによって指定できる属性が異なります。

  • snmpv1v2cSettings(object[])

    (任意)リクエスト許可の設定の配列(SNMP v1またはSNMP v2cの場合)

    32個まで指定できます。複数指定する場合、community属性は一意となるように指定してください。snmpv1v2cSettings属性を指定する場合、community属性とrequestsPermitted属性の両方を必ず指定してください。

    • community(string)

      リクエストを受け付けるコミュニティ名

      1~180文字の文字列を指定します。

    • requestsPermitted(string[])

      リクエストを受け付けるSNMPマネージャのIPアドレスの配列

      IPv4またはIPv6形式で指定します。32個まで指定できます。空の配列を指定した場合は、すべてのSNMPマネージャのリクエストを受け付けます。

  • snmpv3Settings(object[])

    (任意)リクエスト許可の設定の配列(SNMP v3の場合)

    8個まで指定できます。複数指定する場合、userName属性は一意となるように指定してください。snmpv3Settings属性を指定する場合、userName属性を必ず指定してください。

    • userName(string)

      リクエストを受け付けるユーザ名

      1~32文字の文字列を指定します。大文字小文字を区別します。

    • authentication(object)

      (任意)認証情報

      パスワードによる認証を有効にする場合に指定します。指定できる属性については、authentication属性に指定できる属性の表を参照してください。

systemGroupInformation

object

(必須)システムグループ情報

  • storageSystemName(string)

    (必須)ストレージシステム名

    SNMPエージェントのMIBのsysNameとして出力されます。1~180文字の文字列を指定します。

  • contact(string)

    (必須)管理者名または連絡先

    SNMPエージェントのMIBのsysContactとして出力されます。0~180文字の文字列を指定します。

  • location(string)

    (必須)ストレージシステムの設置場所

    SNMPエージェントのMIBのsysLocationとして出力されます。0~180文字の文字列を指定します。

authentication属性に指定できる属性を次の表に示します。authentication属性を指定する場合、protocol属性とpassword属性を必ず指定してください。

属性

説明

protocol

string

認証方式

指定できる値は次のとおりです。

  • SHA
  • MD5

password

string

パスワード

VSP 5000 シリーズVSP G1000VSP G1500、またはVSP F1500の場合、8~180文字の文字列を指定します。

VSP E シリーズVSP Gx00 モデルまたはVSP Fx00 モデルの場合、8~64文字の文字列を指定します。

パスワードを変更しない場合は、空文字を指定してください。

encryption

object

(任意)暗号化情報

暗号化を有効にする場合に指定します。この属性を指定する場合、protocol属性とkey属性を必ず指定してください。

  • protocol(string)

    暗号化方式

    指定できる値は次のとおりです。

    • AES
    • DES
  • key(string)

    暗号鍵

    VSP 5000 シリーズVSP G1000VSP G1500、またはVSP F1500の場合、8~180文字の文字列を指定します。

    VSP E シリーズVSP Gx00 モデルまたはVSP Fx00 モデルの場合、8~64文字の文字列を指定します。

    パスワードを変更しない場合は、空文字を指定してください。

注※ 使用できる文字は次のとおりです。
  • 半角英数字
  • 半角記号

    ! # $ ' ( ) + - . = @ [ ] _ ` { } ~

    VSP 5000 シリーズVSP G1000VSP G1500VSP F1500の場合、community属性には、次の半角記号を使用できます。

    ! # $ ( ) + - . = @ [ ] _ ` { } ~

  • 半角スペース(先頭または末尾を除く)

レスポンスメッセージ

ボディ

ジョブオブジェクトを返します。affectedResources以外の属性については、ジョブオブジェクトの説明を参照してください。

属性

説明

affectedResources

SNMPの設定情報を取得するURL

ステータスコード

この操作のリクエストに対するステータスコードについては、HTTPステータスコードの説明を参照してください。

コード例

curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session b74777a3-f9f0-4ea8-bd8f-09847fac48d3" -X PUT --data-binary @./InputParameters.json https://192.0.2.100:23451/ConfigurationManager/v1/objects/storages/836000123456/snmp-settings/instance