Compute Engine에서 .NET 시작하기


이 가이드에서는 Compute Engine을 시작하는 방법을 보여줍니다. 이 가이드에 따라 Hello World .NET 웹 앱을 Compute Engine에 배포합니다. App Engine을 시작하는 데 도움이 필요하면 App Engine 표준 환경을 참조하세요.

목표

  • Hello World 샘플 앱을 단일 Compute Engine 인스턴스에 배포합니다.

비용

이 문서에서는 비용이 청구될 수 있는 다음과 같은 Google Cloud 구성요소를 사용합니다.

프로젝트 사용량을 기준으로 예상 비용을 산출하려면 가격 계산기를 사용하세요. Google Cloud를 처음 사용하는 사용자는 무료 체험판을 사용할 수 있습니다.

시작하기 전에

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  3. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  4. Compute Engine API 사용 설정

    API 사용 설정

  5. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  6. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  7. Compute Engine API 사용 설정

    API 사용 설정

  8. Microsoft Windows를 실행하는 로컬 머신에 .NET Core SDK 2.1 이상을 설치합니다.
  9. Microsoft Windows를 실행하는 로컬 머신에 Web Deploy 3.6 이상을 설치합니다.

로컬에서 앱 실행

  1. 다운로드 및 압축 해제하거나 GitHub에서 샘플 저장소를 클론합니다.

    git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git
    
  2. PowerShell 창에서 HelloWorld 디렉터리로 이동합니다.

    cd getting-started-dotnet\HelloWorld
    
  3. 로컬 웹 서버를 시작합니다.

    dotnet run
    
  4. 웹브라우저를 열고 localhost:8080으로 이동합니다.

    웹브라우저에 로컬 머신에서 제공되는 Hello World 텍스트가 일부 표시됩니다.

  5. 계속 진행할 준비가 되면 Control+C를 눌러 로컬 웹 서버를 중지합니다.

단일 인스턴스에 배포

이 섹션에서는 Compute Engine에서 앱의 단일 인스턴스 실행을 단계별로 알아봅니다.

단일 인스턴스 배포

Compute Engine 인스턴스 만들기 및 구성

Google Cloud Marketplace에서 Compute Engine에서 Microsoft IIS를 실행하는 Windows 인스턴스를 실행할 수 있습니다.

  1. Google Cloud Console에서 ASP.NET Framework Cloud Marketplace 페이지로 이동합니다.

    Cloud Marketplace로 이동

  2. 실행을 클릭합니다.

  3. 설정을 기본값으로 두고 배포를 클릭합니다.

    Compute Engine 인스턴스가 배포될 때까지 기다립니다. 배포에는 일반적으로 5분 정도가 소요됩니다.

  4. 리소스 정보를 표시하려면 VM 인스턴스를 클릭합니다.

  5. VM 인스턴스를 편집하려면 리소스 관리를 클릭합니다.

  6. Windows 비밀번호 설정을 클릭한 다음 사용자 이름을 기록해 둡니다.

  7. 새 Windows 비밀번호를 복사한 후 닫기를 클릭합니다.

  8. VM 인스턴스 세부정보 페이지에서 외부 IP 주소를 기록해 둡니다.

  9. 로컬 Windows 머신에서 HelloWorld/Properties/PublishProfiles/ComputeEngine.pubxml 파일을 수정합니다.

  10. <MSDeployServiceURL></MSDeployServiceURL> 사이에 VM 인스턴스의 외부 IP 주소를 입력합니다(예: <MSDeployServiceURL>203.0.113.22</MSDeployServiceURL>).

  11. <UserName></UserName> 사이에 이전에 기록해 둔 인스턴스의 사용자 이름을 입력합니다.

  12. 변경 사항을 ComputeEngine.pubxml 파일에 저장합니다.

  13. PowerShell 창에서 앱을 Compute Engine 인스턴스에 게시합니다.

    dotnet publish -c Release `
      /p:PublishProfile=Properties\PublishProfiles\ComputeEngine.pubxml `
      "/p:Password=YOUR-PASSWORD"
    

    YOUR-PASSWORD를 이전에 복사해 둔 비밀번호로 바꿉니다.

  14. 웹브라우저를 열고 인스턴스의 외부 IP 주소로 이동합니다.

    웹브라우저에 Compute Engine 인스턴스에서 제공되는 Hello World 텍스트 일부가 표시됩니다.

인스턴스 관리 및 모니터링

Google Cloud 콘솔을 사용하여 인스턴스를 모니터링하고 관리할 수 있습니다.

  1. Compute Engine 리소스에서 생성한 모든 로그를 보려면 로그 뷰어 페이지로 이동합니다. 로그 탐색기로 이동

    Cloud Logging이 자동으로 구성되어 syslog를 포함한 다양한 공통 서비스의 로그를 수집합니다.

삭제

이 튜토리얼에서 사용된 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 리소스가 포함된 프로젝트를 삭제하거나 프로젝트를 유지하고 개별 리소스를 삭제하세요.

프로젝트 삭제

  1. Google Cloud 콘솔에서 리소스 관리 페이지로 이동합니다.

    리소스 관리로 이동

  2. 프로젝트 목록에서 삭제할 프로젝트를 선택하고 삭제를 클릭합니다.
  3. 대화상자에서 프로젝트 ID를 입력한 후 종료를 클릭하여 프로젝트를 삭제합니다.

개별 리소스 삭제

gcloud compute instances delete my-app-instance --zone=YOUR_ZONE --delete-disks=all
gcloud compute firewall-rules delete default-allow-http-80

다음 단계