2014-06-16 7 views
0

Amazon EC2에 2 대의 서버가 있습니다. 이것이 관련성이 있는지 여부는 확실하지 않습니다. 서버 1은 응용 프로그램 서버이고 서버 2는 캐시 서버입니다. 두 서버 모두 Windows 2012를 실행하고 있습니다. 서버 1과 서버 2는 도메인에 속하지 않습니다. 두 서버에서 일치하는 로컬 사용자와 일치하는 암호가 있습니다. 이 사용자는 허용 된 클라이언트 목록에 부여되었습니다.작업 그룹의 AppFabric 서버에 액세스

테스트로서 DataCache를 호출하고 키를 넣고 동일한 키를 가져 와서 그 값을 반향하는 콘솔 응용 프로그램이 있습니다. 콘솔 응용 프로그램이 캐시 서버에서 실행되면 작동합니다. 그러나 앱 서버에서 실행되면 연결되어 캐시 또는 기본 캐시를 가져올 수 있습니다. 그러나 일반 오류 errca0017 하위 상태로 put 작업 중 실패합니다.

CacheClusterSecurity를 ​​None 및 None으로 설정하려고 시도했지만 여전히 동일한 동작입니다. 또한 허용 된 클라이언트 목록에 Everyone을 추가하려고 시도했습니다.

모든 도움을 주시면 감사하겠습니다. 가능한 경우 EC2 클라우드에서 도메인을 만들고 유지 관리하지 않으려 고합니다.

+0

방화벽이 될 수 있습니까? appfabric 포트를 열었습니까? – stuartd

+0

그것이 우리가 확인한 첫 번째 것입니다. 22233 포트에서 텔넷을 통해 캐시 서버에 연결할 수 있습니다. 또한 WireShark를 통한 연결을 볼 수 있습니다. – G33kKahuna

답변

2

최근에 고객과 동일한 문제가 발생했습니다.

우리의 경우 실패는 NbtNs 이름 조회 실패로 인한 것입니다. AppFabric은 net.tcp://NetBIOSName:22233을 수신하도록 구성됩니다. 클라이언트가 NetBIOS 이름을 해석 할 수 없으면 PUT 호출이 실패합니다. 기본 실패 :

System.ServiceModel.EndpointNotFoundException: No DNS entries exist for host machineName. ---> System.Net.Sockets.SocketException: No such host is known 

    at System.Net.Dns.GetAddrInfo(String name) 

    at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6) 

    at System.Net.Dns.GetHostEntry(String hostNameOrAddress) 

    at System.ServiceModel.Channels.DnsCache.Resolve(Uri uri) 

    --- End of inner exception stack trace --- 

해결 방법 : 클라이언트 호스트 파일에 machineName/IP 콤보가 추가되었습니다.

업데이트 : "AppFabric의 작업 그룹 시나리오는 프로덕션에서 지원되지 않습니다." http://msdn.microsoft.com/en-us/library/hh351385(v=azure.10).aspx