2011-04-27 5 views
2

아마존 EC2 클라우드에 Windows Server 2008 R2가 있습니다. 사무실의 내 바탕 화면에서 해당 서버에서 실행중인 C# Windows Service 또는 WCF 서비스를 디버그 할 수 있기를 바랍니다.아마존 웹 서비스 (EC2) 및 C# Windows 서비스/WCF로 원격 디버그

이전에는 클라우드의 서버에 Visual Studio를 설치했지만 우리는 로컬 서버에 대해 원격 디버깅을 사용했기 때문에 클라우드에서 작동하도록하는 방법이 있었으면합니다.

클라우드의 VPC/도메인없이 Amazon 클라우드에 원격 디버깅을 수행 한 사람이 있습니까?

모든 제안이나 해결책이 가장 높이 평가됩니다. 방화벽 구성을 제외하고 로컬 서버에 대해 원격 디버깅에 대한이보다는 EC2 인스턴스에 대해 원격 디버깅에 대해 다른 아무것도 없다

답변

6

...

내가 대신 EC2 서버에 VPN 연결을 설정하는 것이 좋습니다 것입니다 방화벽 포트를 여는 방법 (PPTP는 쉽고 빠름) 당신은 내가 아니라 열려있는 방화벽 포트를 "생각"한다면

적어도 다음 (안된)가 필요합니다 :

TCP 139, (모든 DCOM 관련) TCP 445, UDP 137, UDP 138

+0

VPN은 훌륭한 ID입니다 호스트 이름에 대한 통과 무엇에 한정자 설정 "기본"

  • 에 예. 감사! – Mikecito

  • +0

    Visual Studio 2012 원격 디버깅의 경우 포트 4016 및 4017을 사용해야합니다. –

    2

    EC2 인스턴스에서 항상 문제가되는 또 다른 문제는 msvsmon에/hostname 매개 변수를 전달하지 않는 것입니다. msvsmon은 내부 호스트 이름을 기본값으로 사용하고 "ip-1-2-3-4.us-west-2.compute.internal"으로 듣기 시작합니다. 즉, Visual Studio에서의 연결 시도를 무시합니다. 고객은 그들이 'ec2-7-8-9-0.us-west-2.compute.amazonaws.com'과 대화하고 있다고 생각합니다. 이 문제를 해결하려면, 전체 공공 DNS 이름을 얻거나 당신의 EC2 인스턴스의 공용 IP 다음과 같이 대한 Msvsmon.exe 시작 :

    msvsmon.exe /hostname ec2-7-8-9-0.us-west-2.compute.amazonaws.com 
    

    그런 다음 Visual Studio에서 :

    1. 도구 -> 프로세스에 연결
    2. 설정 운송은 대한 Msvsmon.exe를 출시 할 때