소개
이 문서에서는 동기화 정책 작업과 관련된 Cisco CPS(Policy Suite) 오류를 해결하고 해결하는 방법에 대해 설명합니다.
사전 요구 사항
요구 사항
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
사용되는 구성 요소
이 문서의 정보는 Cisco Policy Suite를 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 이해해야 합니다.
문제: 동기화 정책 작업을 처리하는 동안 오류가 발생했습니다.
/var/log/broadhop/consolidated-qns.log 로그 파일에서 발생한 오류:
ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Data store is not available: No master DB available: sessionmgrxx-SITE1:27720
ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Duplicate Value for Unique Data Constraint: credential networkId: 61431792343
다음 예에서는 서로 다른 2개의 사이트와 2개의 타임스탬프에 있는 오류를 보여 줍니다.
오류로 인해 지름 응답 시간이 약간 늘어날 수 있으며, 그라플라나에서도 스파이크를 관찰할 수 있습니다.
SITE-1 통합-qns 로그:
SITE1-qns11 2016-10-13 09:44:59,343 [pool-2-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Data store is not available: No master DB available: sessionmgrxx-SITE1:27720
at com.broadhop.spr.dao.impl.mongo.MongoPersistence.searchSubscribers(MongoPersistence.java:433) ~[com.broadhop.spr.dao.mongo_2.3.6.r078013.jar:na]
SITE1-qns04 2016-10-13 10:42:03,629 [pool-2-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
SITE1-qns06 2016-10-13 10:47:20,555 [pool-3-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
SITE-1 Mongo 로그:
2016-10-13T08:22:02.330+1100 [conn15604045] command spr.$cmd command: count { count: "subscriber", query: { services_key.code_key: "HWBB" }, fields: {} } planSummary: COLLSCAN keyUpdates:0 numYields:2 locks(micros) r:1297276 reslen:48 700ms
2016-10-13T08:47:02.909+1100 [conn15605855] command spr.$cmd command: count { count: "subscriber", query: { services_key.code_key: "HWBB" }, fields: {} } planSummary: COLLSCAN keyUpdates:0 numYields:1 locks(micros) r:1095391 reslen:48 585ms
2016-10-13T09:37:02.563+1100 [conn15609536] command spr.$cmd command: count { count: "subscriber", query: { services_key.code_key: "HWBB" }, fields: {} } planSummary: COLLSCAN keyUpdates:0 numYields:0 locks(micros) r:519701 reslen:48 519ms
2016-10-13T09:52:02.472+1100 [conn15610667] command spr.$cmd command: count { count: "subscriber", query: { services_key.code_key: "HWBB" }, fields: {} } planSummary: COLLSCAN keyUpdates:0 numYields:1 locks(micros) r:1072306 reslen:48 564ms
2016-10-13T10:27:02.649+1100 [conn15613701] command spr.$cmd command: count { count: "subscriber", query: { services_key.code_key: "HWBB" }, fields: {} } planSummary: COLLSCAN keyUpdates:0 numYields:1 locks(micros) r:657876 reslen:48 504ms
SITE-2 통합 qns 로그:
SITE2-qns04 2016-11-18 05:28:33,776 [pool-1361732-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Duplicate Value for Unique Data Constraint: credential networkId: 61431792343
SITE2-qns09 2016-11-17 20:47:59,539 [pool-1361592-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Duplicate Value for Unique Data Constraint: credential networkId: 61431792343
SITE2-qns06 2016-11-17 01:45:15,476 [pool-63652-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Data store is not available: No master DB available: sessionmgr11-SITE1:27720
SITE2-qns12 2016-11-17 01:45:15,514 [pool-63484-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Data store is not available: No master DB available: sessionmgr11-SITE1:27720
SITE2-qns10 2016-11-12 07:40:53,659 [pool-63538-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Duplicate Value for Unique Data Constraint: credential networkId: 61431792343
"동기화 정책 작업을 처리하는 동안 오류가 발생했습니다."는 두 가지 이유로 인해 발생할 수 있습니다.
1. 기본/마스터 MongoDB에 액세스할 수 없거나 다운되었습니다.
2. 네트워크 문제로 인해 QNS(정책 서버) 인스턴스가 VM(세션 관리자 가상 컴퓨터)에 액세스할 수 없습니다.
이 로그는 동기화 정책 작업에 대한 sessionmgr VM 액세스 예외 사항을 대부분의 QNS VM에서 확인할 수 있으므로 네트워크 변동과 관련이 있음을 나타냅니다.이러한 예외는 연결할 수 없는 관련 마스터 SPR DB(sessionmgr11-SITE1:27720)입니다.동일한 기간 동안 MongoDB 로그에는 오류가 관찰되지 않습니다.또한 동일한 기간 동안 기본-보조 DB 장애 조치가 관찰되지 않았습니다.
솔루션
다음 두 가지 이유로 인해 SITE1 및 SITE2에서 "동기화 정책 작업" 오류가 발생했습니다.
1.
SITE1-qns11 2016-10-13 09:44:59,343 [pool-2-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Data store is not available: No master DB available: sessionmgrxx-SITE1:27720
"데이터 저장소를 사용할 수 없습니다." 이는 빠른 속도로 해결되는 소규모 네트워크 변동의 사례처럼 보입니다.
2 .
SITE2-qns04 2016-11-18 05:28:33,776 [pool-1361732-thread-1] ERROR c.b.policy.impl.RulesPolicyService - An error occured while processing a Sync Policy Action.
com.broadhop.spr.exception.SubscriberException: Duplicate Value for Unique Data Constraint: credential networkId: 61431792343
"Duplicate Value for Unique Data Constraint"는 PCEF에서 중복 요청을 수신할 때 이 예외가 관찰되므로 시스템 또는 가입자에게 영향을 주지 않습니다. 원래 요청이 이미 승인되었습니다.
다음은 consolidated-qns.log에서 "데이터 저장소를 사용할 수 없음"을 확인할 때 Cisco에서 권장하는 단계입니다.
1단계. QNS VM과 sessionmgr11-SITE1VM 간의 네트워크 경로 또는 라우터를 확인합니다.
2단계. QNS VM 및 sessionmgr11-SITE1VM의 /var/log/메시지를 확인합니다.
3단계. QNS 및 sessionmgr11-SITE1 VM이 연결된 라우터를 확인합니다.
sessionmgrxx-xxx:277xx에 DB 인스턴스를 연결하려고 시도하는 동안 "datastore not available" 예외가 발생하는지 확인하려면 네트워크 문제가 발생하는 sessionmgrxx VM에서 전체 기간(24시간 동안 실행될 수 있음)에 대해 이 명령을 실행할 수 있습니다. 출력은 /var/tmp/output.txt에 저장됩니다.
while true; do netstat -apn | grep 27720; sleep 1 ; done | tee /var/tmp/output.txt
netstat 명령의 실행을 중지하려면 Ctrl C를 사용하여 중지하면 됩니다.
ctrl c
참고 sessionmgrxx-xxx에서 TCP 연결을 연결하고 재설정하는 데 문제가 있는 경우그런 다음 데이터를 삭제하고 보조 노드에서 DB를 다시 생성하여 데이터베이스(DB)를 복구해야 합니다. ( 복구 / 복구 DB 링크 게시 - )