Azure Service Fabric Node.js 애플리케이션 호스트

이 빠른 시작은 Azure 실행되는 서비스 Fabric 클러스터에 기존 애플리케이션(이 예제의Node.js)을 배포하는 데 도움이 됩니다.

사전 요구 사항

시작하기 전에 서비스 Fabric SDK 및 Visual Studio 2019 또는 2015 설치를 포함하는 개발 환경을 설정해야 합니다.

또한 배포를 위해 기존 Node.js 애플리케이션이 있어야 합니다. 이 빠른 시작에서는 여기에서 다운로드할 수 있는 간단한 Node.js 웹 사이트를 사용합니다. 다음 단계에서 프로젝트를 만든 후 이 파일을 <path-to-project>\ApplicationPackageRoot\<package-name>\Code\ 폴더에 추출하세요.

Azure 구독이 없는 경우 무료 계정을 만드세요.

서비스 만들기

Visual Studio를 관리자 권한으로 실행합니다.

다음을 사용하여 프로젝트 만들기 CTRL+SHIFT+N

새 프로젝트 대화 상자에서 클라우드 > Service Fabric 애플리케이션을 선택하세요.

애플리케이션 이름을 MyGuestApp으로 지정하고 Create 키를 누릅니다.

Important

Node.js 창에 있는 경로에 대한 260자 제한을 쉽게 깰 수 있습니다. 프로젝트 자체에 대한 짧은 경로(예: c:\code\svc1)를 사용합니다. 필요에 따라 의 지침 따라 Windows 10 긴 파일 경로를 사용하도록 설정할 수 있습니다.

Visual Studio 의 새 프로젝트 대화 상자

다음 대화 상자에서 모든 유형의 서비스 Fabric 서비스를 만들 수 있습니다. 이 빠른 시작에서는 게스트 실행 파일을 선택합니다.

서비스 이름을 MyGuestService 로 지정하고 오른쪽의 옵션을 다음 값으로 설정합니다.

Setting Value
코드 패키지 폴더 <Node.js 앱이 있는 폴더>
코드 패키지 동작 프로젝트에 폴더 내용 복사
프로그램 node.exe
Arguments server.js
작업 폴더 CodePackage

확인을 누릅니다.

Visual Studio의 새 서비스 대화 상자

Visual Studio 애플리케이션 프로젝트 및 행위자 서비스 프로젝트를 만들고 솔루션 탐색기 표시합니다.

애플리케이션 프로젝트(MyGuestApp)에는 코드가 직접 포함되어 있지 않습니다. 프로젝트는 서비스 프로젝트 집합을 참조합니다. 또한 다음과 같은 세 가지 다른 유형의 콘텐츠가 포함됩니다.

  • 프로필 게시
    다양한 환경에 대한 도구 기본 설정입니다.

  • 스크립트
    애플리케이션을 배포/업그레이드하기 위한 PowerShell 스크립트입니다.

  • 애플리케이션 정의
    ApplicationPackageRoot 아래에 애플리케이션 매니페스트를 포함합니다. 연결된 애플리케이션 매개 변수 파일은 애플리케이션을 정의하고 지정된 환경에 맞게 특별히 구성할 수 있도록 하는 ApplicationParameters 아래에 있습니다.

서비스 프로젝트의 내용에 대한 개요는 Reliable Services 시작을 참조하세요.

네트워킹 설정

배포하는 예제 Node.js 앱은 포트 80을 사용하며, 서비스 Fabric 해당 포트를 노출해야 한다고 알려야 합니다.

프로젝트에서 ServiceManifest.xml 파일을 엽니다. 매니페스트 <Resources> \ <Endpoints> 아래쪽에는 이미 정의된 항목이 있습니다. 해당 항목을 수정하여 Port, ProtocolType를 추가하세요.

  <Resources>
    <Endpoints>
      <!-- This endpoint is used by the communication listener to obtain the port on which to 
           listen. Please note that if your service is partitioned, this port is shared with 
           replicas of different partitions that are placed in your code. -->
      <Endpoint Name="MyGuestAppServiceTypeEndpoint" Port="80" Protocol="http" Type="Input" />
    </Endpoints>
  </Resources>

Azure에 배포하기

F5 키를 누르고 프로젝트를 실행하면 로컬 클러스터에 배포됩니다. 그러나 대신 Azure 배포해 보겠습니다.

프로젝트를 마우스 오른쪽 단추로 클릭하고 퍼블리시...를 선택합니다. Azure 게시할 대화 상자를 엽니다.

Service Fabric 서비스에 대한 Azure 대화 상자에 게시

PublishProfiles\Cloud.xml 대상 프로필을 선택합니다.

이전에 배포하지 않은 경우 배포할 Azure 계정을 선택합니다. 아직 없다면 가입하세요.

Connection Endpoint에서 배포할 서비스 Fabric 클러스터를 선택합니다. 없는 경우 < 새 클러스터 만들기...를 선택합니다. > Azure 포털에 대한 웹 브라우저 창을 엽니다. 자세한 내용은 포털에서 클러스터 만들기를 참조하세요.

Service Fabric 클러스터를 만들 때 Custom endpoints 설정을 반드시 80으로 설정하세요.

사용자 지정 엔드포인트를 사용하는 서비스 패브릭 노드 유형 구성

새 서비스 Fabric 클러스터를 만드는 작업은 완료하는 데 다소 시간이 걸립니다. 만든 후에는 게시 대화 상자로 돌아가서 새로 고침<을 선택합니다>. 새 클러스터가 드롭다운 상자에 나열됩니다. 선택합니다.

게시를 누르고 배포가 완료되기를 기다립니다.

몇 분이 걸릴 수 있습니다. 완료되면 애플리케이션을 완전히 사용할 수 있는 데 몇 분 정도 더 걸릴 수 있습니다.

웹 사이트 테스트

서비스가 게시된 후 웹 브라우저에서 테스트합니다.

먼저 Azure 포털을 열고 서비스 Fabric 서비스를 찾습니다.

서비스 주소의 개요 창을 확인합니다. 클라이언트 연결 엔드포인트 속성의 도메인 이름을 사용합니다. http://mysvcfab1.westus2.cloudapp.azure.com을 예로 들 수 있습니다.

Azure 포털의 서비스 패브릭 개요 블레이드

이 주소로 이동하면 HELLO WORLD 응답이 표시됩니다.

클러스터 삭제

해당 리소스에 대한 요금이 청구되므로 이 빠른 시작을 위해 만든 모든 리소스를 삭제하는 것을 잊지 마세요.

다음 단계

게스트 실행 파일에 대해 자세히 알아보세요.