ISEのDashboardのALARMSにQueue Link Errorという記録が表示されている場合があります。

本稿ではQueue Link Errorの意味や対処、ISE deploymentへの影響を簡単に紹介します。
ISEのProcessでISE Messaging Serviceというのがあります(下から3番目)。
iseisa/admin# show application status ise
ISE PROCESS NAME STATE PROCESS ID
--------------------------------------------------------------------
Database Listener running 82679
Database Server running 81 PROCESSES
Application Server running 22090
Profiler Database running 87615
ISE Indexing Engine running 94174
AD Connector running 99237
M&T Session Database running 87398
M&T Log Processor running 90407
Certificate Authority Service running 98968
EST Service running 40520
SXP Engine Service disabled
Docker Daemon running 84795
TC-NAC Service disabled
(snip)
DHCP Server (dhcpd) disabled
DNS Server (named) disabled
ISE Messaging Service running 85401
Segmentation Policy Service disabled
SSE Connector disabled
iseisa/admin#
これはISE 2.4で導入されたISE RabbitMQ Containerの名前が2.6以降で変更されたものでDocker上で動くメッセージブローカ コンテナです。各ISE Node上で起動されNode間での情報のやりとりに使用されています。Node間の通信はISEのInternal CAで発行した証明書を使ったTLS通信となります。Queue LinkはこのNode間のconnectionであり、Queue Link Errorはここに問題が発生したことを意味します。
Error発生の理由は複数考えられますが、中でも多いのがISE Messaging Serviceで使用されているCertificate chainの問題によるものです。以下のようにCauseに記載されます。

このような場合は、
Administration > System > Certificates > Certificate Management > Certificate Signing Requests
からGenerate Certificate Signing Requests (CSR)をクリックしてUsageでISE Messaging Serviceを選択、再発行したいNodeを選択してGenerateします。

もしくは特定NodeのMessaging Serviceだけの問題では無い場合、UsageでISE Root CAを選択してInternal CAのchain全体をReplaceする必要がある場合も考えられます。
Queue Link Errorは利用状況によっては実害を感じられないこともあります。また、直接結びつきそうにない現象の原因となることもあります。ISE Messaging Serviceがどのような機能で使用されているか例を以下でいくつか挙げます。
-
MnTへのログ転送

Queue Linkに問題がありPSN-MnT間等でMnTへのログ転送に問題があると、
- Live logsが表示されない
- Reportが表示されない
- DashboardのSystem Summaryが表示されない
といった事象に至る場合があります。
上記の対処以外にこのcheckを外してMessaging Serviceを経由しないログ転送にすることで事象が復旧する場合があります。
-
Light Data Distribution

当初はLight Session Directoryという名称でしたが、機能追加と略称がよろしくないこともありこの名称に変わりました。PSN間でのsession情報共有やProfilerで使用するEndpoint Owner情報(特定のMAC addressがどのnodeにつながっているか)の共有で使用されます。session情報の共有が出来ていない場合、例えばPostureで端末が認証されたNodeとAnyConnect ISE Posture moduleがposture reportを送信したNodeが違っていた場合、端末ではCompliant判定をしているにも拘わらずISEのsession情報がそれを反映できず、期待したAuthorization ruleが選ばれないということがありえます。
Node間での情報のやりとりを使用した機能で問題が出ている場合、一度Queue Link ErrorのAlarmが出ていないか確認するのも一つの手と思われます。
Light Data Distribution
Syslog over Cisco ISE Messaging Service