概要
このドキュメントでは、RESTクライアントとしてPostManを使用して、ERS API経由でISEサポートバンドルをトリガーおよびダウンロードするプロセスについて説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- ISE
- 外部RESTfulサービス
- RESTクライアントには、Postman、REREST、Insomniaなどがあります。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアのバージョンに基づいています。
- Cisco ISE 3.1パッチ6
- Postman RESTクライアントv10.17.4
注:この手順は、他のISEバージョンとRESTクライアントで類似または同一です。これらの手順は、特に明記されていない限り、すべての2.xおよび3.x ISEソフトウェアリリースで使用できます。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
設定
ERSの有効化(ポート9060)
ERS APIは、ポート443およびポート9060で動作するHTTPS専用のREST APIです。ポート9060はデフォルトで閉じられているため、最初に開く必要があります。 このポートにアクセスしようとしているクライアントが最初にERSをイネーブルにしなかった場合、サーバからのタイムアウトが表示されます。したがって、最初の要件は、Cisco ISE管理UIからERSを有効にすることです。
Administration > Settings > API Settingsの順に移動し、ERS(読み取り/書き込み)トグルボタンを有効にします。
注:ERS APIはTLS 1.1とTLS 1.2をサポートしています。ERS APIは、Cisco ISE GUIのSecurity SettingsウィンドウでTLS 1.0を有効にしても(Administration > System > Settings > Security Settings)、TLS 1.0をサポートしません。Security SettingsウィンドウでTLS 1.0を有効にすることは、EAPプロトコルだけに関連し、ERS APIには影響しません。
ERS管理者の作成
Cisco ISE管理者を作成し、パスワードを割り当て、ERS Adminとしてユーザをadminグループに追加します。残りの設定は空のままにしておくことができます。
Postmanの設定
Postmanのオンライン版をダウンロードまたは使用してください。
- ユーザを作成し、ワークスペースを作成するには、[ワークスペース] タブの下にある[ワークスペースの作成] をクリックします。
2. 「空白の作業領域」を選択し、作業領域に名前を割り当てます。説明を追加して公開することができます。 この例では、Personalisが選択されています。
ワークスペースを作成したら、API呼び出しを設定できます。
トリガーサポートバンドル
任意のコールを設定するために、では最初にISE ERS SDK(Software Developer Kit)にアクセスします。このツールは、ISEが実行できるAPIコールのリスト全体をコンパイルします。
- https://{ise-ip}/ers/sdkにアクセスします。
- ISE管理者クレデンシャルを使用してログインします。
- APIドキュメントの展開
- Support Bundle Trigger Configurationが表示されるまでスクロールダウンして、これをクリックします。
- このオプションでは、ISEでこのオプションに対して実行できるすべての操作を検索できます。Createを選択します。
6. RestクライアントでXMLまたはJSONを使用してAPI呼び出しを実行するために必要な設定と、想定される応答例を確認できます。
7.Back to Postmanでは、ISEに対して基本認証を設定できます。Authorizationタブで、認証タイプとしてBasic Authを選択し、ISEで以前に作成したISE ERSユーザクレデンシャルを追加します。
注:Postmanで変数が設定されていない限り、パスワードはクリアテキストで表示されます
8. PostmanでHeadersタブに移動し、SDKに表示されるXMLまたはJSONを使用してAPI呼び出しに必要なヘッダーを設定します。この例では、JSONが使用されます。 ヘッダー設定は次のようになります。
9.次のページに移動します。 本文 ヘッダーと選択 rawを参照。これにより、サポートバンドルのトリガーに必要なXMLまたはJSONテンプレートを貼り付けることができます。
10. XMLまたはJSONテンプレートをBodyセクションに貼り付け、必要に応じて値を変更します。
XML:
http://www.w3.org/2001/XMLSchema" xmlns:ns1="ers.ise.cisco.com" xmlns:ers="ers.ise.cisco.com" description="Support Bundle Generation" name="
supportBundle">
Node hostname the SB is being collected from
mm/dd/yyyy
true|false
true|false
true|false
true|false
t
rue|false
true|false
true|false
mm/dd/yyyy
JSON:
{ "SupportBundle": { "name": "supportBundle", "description": "Support Bundle Generation", "hostName": "node hostname the SB is being collected from", "supportBundleIncludeOptions": { "includeConfigDB": true|false, "includeDebugLogs": true|false, "includeLocalLogs": true|false, "includeCoreFiles": true|false, "mntLogs": true|false, "includeSystemLogs": true|false, "policyXml": true|false, "fromDate": "mm/dd/yyyy", "toDate": "mm/dd/yyyy" } } }
11.方法としてPOSTを選択し、https://{ISE-ip}/ers/config/supportbundleを貼り付けて、Sendをクリックします。 すべてが正しく設定されていれば、「201 Created」というメッセージが表示され、結果が空になります。
サポートバンドルステータスの確認
一連のGETコールを実行することで、サポートバンドルがトリガーされたのか、完了したのかを確認できます。
注:サポートバンドルは、ログから収集された情報量に応じて、完了までに5 ~ 20分かかります。
- SDKのSupport Bundle Statustab selectGet-Allの下にあります。次のGETコールを実行できるように、IDを取得する必要があります。 前に見たように、コールを実行するために必要なヘッダーと、期待される応答を次に示します。
2.メートル次に移動します。 ヘッダー SDKに表示されるAPI呼び出しに必要なヘッダーをタブで設定します。この例では、JSONが使用されます。ヘッダー設定は次のようになります。
3.方法としてGETを選択し、https://{ISE-ip}/ers/config/supportbundlestatusを貼り付けて、Sendをクリックします。 すべてが正しく設定されている場合は、「200 OK」メッセージと、最後にトリガーされたサポートバンドルに関連する情報を含む結果が表示されます。このコールでは、サポートバンドルが正常に完了したかどうかはわかりません。このコールからIDを収集し、次のGETコールで使用できるようにします。
4. IDが収集されたら、SDKのSupport Bundle StatustabおよびselectGet-By-Idに移動します。前に見たように、ここにはコールの実行に必要なヘッダーと、予想される応答が示されています。
5.メートル次に移動します。 ヘッダー SDKに表示されるAPI呼び出しに必要なヘッダーをタブで設定します。この例では、JSONが使用されます。ヘッダー設定は次のようになります。
6.方法としてGETを選択し、https://{ISE-ip}/ers/config/supportbundlestatus/{id} と手順3で収集したIDを貼り付け、最後にSendをクリックします。 すべてが正しく設定されている場合は、「200 OK」メッセージと、最後にトリガーされたサポートバンドルの完了に関連するかどうかに関連する情報を含む結果が表示されます。PUTコールが必要なため、このコールからのfileNameをメモします。
サポートバンドルのダウンロード
サポートバンドルが完了状態であることを確認したら、ダウンロードに進むことができます。
- SDKのSupport Bundle DownloadtabでDownload SupportBundleを選択します。前に見たように、コールの実行に必要なヘッダー、XMLおよびJSONテンプレート、および予想される応答を次に示します。
2.メートル次に移動します。 ヘッダー SDKに表示されるAPI呼び出しに必要なヘッダーをタブで設定します。この例では、JSONが使用されます。ヘッダー設定は次のようになります。
3.次のページに移動します。 本文 ヘッダーと選択 rawを参照。これにより、サポートバンドルのダウンロードに必要なXMLまたはJSONテンプレートを貼り付けることができます。
4. XMLまたはJSONテンプレートをBodyセクションに貼り付け、必要に応じて値を変更します。ファイル名は、ステップ6で収集したファイルの名前(ise-support-bundle-pk-ise3-1test-external-09-26-2023-01-26.tar.gpg)になります。
XML
http://www.w3.org/2001/XMLSchema" xmlns:ns1="ers.ise.cisco.com" xmlns:ers="ers.ise.cisco.com">
Support bundle file name to be picked for download
JSON:
{ "ErsSupportBundleDownload" : { "fileName" : "Support bundle file name to be picked for download" } }
5.方法としてPUTを選択し、https://{ISE-ip}/ers/config/supportbundledownload を貼り付けて、Sendをクリックします。 すべてが正しく設定されていれば、「200 OK」というメッセージとファイルのダウンロードが表示されます。
確認
APIサービスのGUIページ(https://{iseip}:{port}/api/swagger-ui/index.htmlやhttps://{iseip}:9060/ers/sdkなど)にアクセスできる場合は、APIサービスが期待どおりに動作していることを意味します。
トラブルシュート
- すべてのREST操作が監査され、ログがシステムログに記録されます。
- Open APIに関連する問題をトラブルシューティングするには、Debug Log ConfigurationウィンドウでapiserviceコンポーネントのログレベルをDEBUGに設定します。
- ERS APIに関連する問題をトラブルシューティングするには、Debug Log ConfigurationウィンドウでersコンポーネントのログレベルをDEBUGに設定します。このウィンドウを表示するには、Cisco ISE GUIに移動し、メニューアイコンをクリックして、Operations > Troubleshoot > Debug Wizard > Debug Log Configurationの順に選択します。
- ログはDownload Logsウィンドウからダウンロードできます。このウィンドウを表示するには、Cisco ISE GUIに移動し、メニューアイコンをクリックして、Operations > Troubleshoot > Download Logsの順に選択します。
- Support Bundleタブの下のDownloadボタンをクリックしてSupport Bundleタブからサポートバンドルをダウンロードするか、api-serviceデバッグログのLog Fileの値をクリックしてDebug Logsタブからapi-serviceデバッグログをダウンロードするかを選択できます。