2017-03-10 2 views
0

다음과 같은 문제가 있습니다 :
1. MongoDB 데이터베이스를 사용하는 스프링 부트 응용 프로그램이 있습니다.
2. 로컬에서 테스트 한 결과 제대로 작동합니다. 앱이 데이터베이스에 제대로 연결됩니다.
3. 하늘빛에 스프링 부트 앱을 설치했지만 앱이 MongoDB 데이터베이스에 연결할 수 없습니다. 나는 예외 아래 얻을 :. ReadPreferenceServerSelector 일치하는 서버를 기다리는 동안 30000 밀리 초 후 시간이 초과스프링 부트, MongoDB 연결 시간 초과

는 "{readPreference = 주} 클러스터 상태의 클라이언트보기 유형 = UNKNOWN, 서버 = [{주소 = appexpirer {이다. } {Java.net.SocketTimeoutException : Read timed out}}]에 의해 발생하는 documents.azure.com:10250, type = UNKNOWN, state = CONNECTING, 예외 = {com.mongodocket.MongoSocketReadTimeoutException : 메시지 수신 중 시간 초과} com.mongodb.MongoTimeoutException : ReadPreferenceServerSelector {readPreference = primary}와 일치하는 서버를 기다리는 동안 30000ms 후에 시간이 초과되었습니다. 클러스터 상태의 클라이언트보기는 {type = UNKNOWN, servers = [{address = appexpirer.documents.azure.com : 10250, 유형 = 알 수 없음, 상태 = 연결 중, 예외 = {com.mongodb.MongoSocketRead TimeoutException은} 메시지를 수신 제한 시간 동안, {로 java.net.SocketTimeoutException 발생 :

spring.data : 읽기}}] "

내 application.properties이 제대로 구성되어 있는지 생각을 시간 초과 .mongodb.uri = MongoDB를 : // 사용자 이름 : 암호 @ 호스트 : 포트/databaseName을 SSL = 사실 & sslInvalidHostNameAllowed = 사실
server.ssl.enabled = 사실 진정한
server.ssl.enabled - 프로토콜 =

?

하지만 확실하지 않습니다. 잘못된 점을 알려주십시오.

로보 몽고 도구를 사용하여 연결하면 잘 작동합니다. Java 8을 사용합니다. 문제가 될 수 있습니까?

+0

부트 응용 프로그램을 푸른 색으로 어떻게 배포 했습니까? DocumentDb 끝점에 대한 아웃 바운드 액세스를 방해 할 수있는 것이 있습니까? – kgu87

+0

git을 통해 app.jar 파일과 web.config 파일을 배포했습니다. Azure에서 app 서비스에 구성된 ssl이 없기 때문에 ssl에서 문제가 될 수 있는지 궁금합니다. MongoDB는 SSL 연결이 필요합니다. 혹시 그런 경우에 만났습니까? – lwalukie

+0

내 컴퓨터에서 부팅하여 오류가 표시되는 mongo 끝점에 도달 할 수 있습니다. 그것은 인증 오류 (obviosly)를 보여주기 때문에 연결 문제가 mongo 엔드 포인트가 아니라 오히려 부트 응용 프로그램이있는 곳에서 발생하는 것처럼 보입니다. – kgu87

답변

0

앱 서버에서 데이터베이스 (Mongo) 서버로 연결을여셨습니까? 그 오류는 방금 요청 패킷을 삭제 방화벽처럼 들리 네요.

Azure 및 AWS와 같은 서비스는 모든 것이 매우 단단히 고정되어 있습니다. 일반적으로 사용하려는 모든 연결 지점을 명시 적으로 열거 나 허용해야합니다.

+0

당신은 무엇을 의미합니까 - "앱 서버에서 데이터베이스 (몽고) 서버로의 연결을여셨습니까?" 설치 서비스와 데이터베이스 서버가 있습니다. 둘 다 Azure에서 설정되고 호스팅됩니다. 내가 어떻게 Azure에서 그 둘 사이의 연결을 설정해야합니까? Robomongo에서 데이터베이스에 연결할 수는 있지만 앱 서비스에서는 불가능합니다 (항상 타임 스탬프 가져 오기). – lwalukie