17.10 SNMPの障害通知の送信先を設定する
リクエストボディを作成する際の注意事項
このAPIを実行する前に、SNMPの設定情報を取得するAPIで現在の設定内容を取得してください。取得したレスポンスボディをこのAPIのリクエストボディとして使用します。取得した設定情報には、snmpVersion属性で設定されているSNMPのバージョン以外の設定値が出力されていることもあります。設定内容を変更したい属性の値だけを変更してください。
VSP 5000 シリーズ、VSP G1000、VSP 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個まで指定できます。
- community(string)
- snmpv3Settings(object[])
(任意)SNMPトラップの送信先の設定の配列(SNMP v3の場合)
8個まで指定できます。複数指定する場合、sendTrapTo属性は一意となるように指定してください。snmpv3Settings属性を指定する場合、userName属性とsendTrapTo属性を必ず指定してください。
- userName(string)
SNMPトラップの報告に使用するユーザ名※
1~32文字の文字列を指定します。
- sendTrapTo(string)
SNMPトラップの送信先のIPアドレス
IPv4またはIPv6形式で指定します。
- authentication(object)
(任意)認証情報
パスワードによる認証を有効にする場合に指定します。指定できる属性については、authentication属性に指定できる属性の表を参照してください。
- userName(string)
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マネージャのリクエストを受け付けます。
- community(string)
- snmpv3Settings(object[])
(任意)リクエスト許可の設定の配列(SNMP v3の場合)
8個まで指定できます。複数指定する場合、userName属性は一意となるように指定してください。snmpv3Settings属性を指定する場合、userName属性を必ず指定してください。
- userName(string)
リクエストを受け付けるユーザ名※
1~32文字の文字列を指定します。大文字小文字を区別します。
- authentication(object)
(任意)認証情報
パスワードによる認証を有効にする場合に指定します。指定できる属性については、authentication属性に指定できる属性の表を参照してください。
- userName(string)
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 G1000、VSP 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 G1000、VSP G1500、またはVSP F1500の場合、8~180文字の文字列を指定します。
VSP E シリーズ、VSP Gx00 モデルまたはVSP Fx00 モデルの場合、8~64文字の文字列を指定します。
パスワードを変更しない場合は、空文字を指定してください。
注※ 使用できる文字は次のとおりです。- 半角英数字
- 半角記号
! # $ ' ( ) + - . = @ [ ] _ ` { } ~
VSP 5000 シリーズ、VSP G1000、VSP G1500、VSP 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