소개
이 문서에서는 CCE(Contact Center Enterprise) ADS(관리 및 데이터베이스 서버)에 연결할 수 없는 경우 Cisco CUIC(Unified Intelligence Center)의 문제를 해결하는 방법에 대해 설명합니다.
배경 정보
CUIC는 ADS 서버의 awdb에 연결됩니다. 특정 오류로 인해 연결에 실패하고 CUIC 로그를 수집하면 이 오류가 표시됩니다.
0000177816: 10.10.10.10: Jul 14 2018 00:18:21.816 -0700: %CCBU___________CUIC-6-INFO: Checking if it's ok to switch the DS nodes based on exception thrown: Invalid sub-protocol Invalid sub-protocol: 'sqlserver'
java.sql.SQLException: Invalid sub-protocol Invalid sub-protocol: 'sqlserver'
at com.informix.util.IfxErrMsg.getLocSQLException(IfxErrMsg.java:493)
at com.informix.jdbc.IfxDriver.checkURL(IfxDriver.java:560)
at com.informix.jdbc.IfxDriver.connect(IfxDriver.java:208)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
SQL Server 데이터 원본에 액세스하지 못했음을 나타내는 일반 오류입니다. 이 오류의 일반적인 이유 중 하나는 CUIC와 ADS 서버 간의 TLS(Transport Layer Security) 핸드셰이크 프로세스 실패와 관련이 있습니다.
문제
CUIC가 데이터베이스에 연결할 수 없으므로 보고서가 생성될 때 정보가 표시되지 않는 경우, CUIC 기본 페이지 > 데이터 소스 아래에 그림과 같이 데이터 소스가 오프라인(빨간색 X)으로 표시됩니다.
데이터 소스를 편집할 때 연결 테스트 단추를 선택하면 그림과 같이 이 오류가 표시됩니다.
보고된 특정 오류입니다. "데이터베이스 호스트 UCCE.cc.lab 잘못된 하위 프로토콜 잘못된 하위 프로토콜: 이미지에 표시된 대로 'sql server' "를 선택합니다.
문제 해결
1단계. CUIC 애플리케이션 로그를 수집합니다.
2단계. CUIC 애플리케이션 로그에서 이 문제와 관련된 예외를 찾습니다.
0000177816: 10.10.10.10: Jul 14 2018 00:18:21.816 -0700: %CCBU___________CUIC-6-INFO: Checking if it's ok to switch the DS nodes based on exception thrown: Invalid sub-protocol Invalid sub-protocol: 'sqlserver'
java.sql.SQLException: Invalid sub-protocol Invalid sub-protocol: 'sqlserver'
at com.informix.util.IfxErrMsg.getLocSQLException(IfxErrMsg.java:493)
at com.informix.jdbc.IfxDriver.checkURL(IfxDriver.java:560)
at com.informix.jdbc.IfxDriver.connect(IfxDriver.java:208)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
참고: UCCE 11.6은 ADS에 연결하기 위해 TLS(Transport Layer Security) 1.2를 지원합니다. 이 오류는 CUIC 11.5에서 TLS 1.0/1.1만 지원하므로 TLS 버전 불일치와 관련이 있습니다. 자세한 내용은 호환성 매트릭스를 참조하십시오.
요약
이 시나리오의 오류는 CUIC 11.5에서 TLS 1.0을 사용하는 반면 Microsoft SQL Server에서 사용하는 버전은 TLS 1.2이기 때문입니다.
이 TLS 호환성 문제와 관련된 개선 사항 오류가 있습니다. 여기서 이 동작에 대해 자세히 설명합니다. CSCvd35048 .
솔루션
로그의 오류는 여러 가지 이유로 데이터 원본에 대한 연결이 실패했음을 나타냅니다. 문제가 TLS 협상 실패와 관련된 경우 이 문제를 해결하기 위해 구현할 수 있는 두 가지 옵션이 있습니다.
옵션 1. CUIC 11.6은 기본적으로 TLS 1.2를 지원합니다. CUIC 서버를 11.6으로 업그레이드하고 최신 COP 파일을 미리 설치합니다. 이 옵션을 사용하는 것이 좋습니다.
옵션 2. 임시 해결 방법을 사용할 수도 있습니다. TLS 1.0을 사용하려면 ADS의 일부 레지스트리 키를 변경할 수 있습니다. 이는 변경해야 하는 레지스트리 키입니다.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server] "Enabled"=dword:00000001(Defaults to 0 and disables by default)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client] "Enabled"=dword:00000001(Defaults to 0 and disables by default)
주의: 옵션 2는 권장되지 않습니다. CUIC를 버전 11.6으로 업그레이드할 수 없는 경우에만 사용하십시오.