

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# QuickStart: Elastic Beanstalk에 ASP.NET 애플리케이션 배포
<a name="aspnet-quickstart"></a>

이 QuickStart 자습서에서는 ASP.NET 애플리케이션을 생성하고 AWS Elastic Beanstalk 환경에 배포하는 프로세스를 안내합니다.

**프로덕션용으로 사용 불가**  
예제는 설명용으로만 제공됩니다. 예제 애플리케이션을 프로덕션 환경에서 사용하지 마세요.

**Topics**
+ [AWS 계정](#aspnet-quickstart-aws-account)
+ [사전 조건](#aspnet-quickstart-prereq)
+ [1단계: ASP.NET 애플리케이션 생성](#aspnet-quickstart-create-app)
+ [2단계: 로컬에서 애플리케이션 실행](#aspnet-quickstart-run-local)
+ [3단계:를 사용하여 ASP.NET 애플리케이션 배포 AWS Toolkit for Visual Studio](#aspnet-quickstart-deploy)
+ [4단계: Elastic Beanstalk에서 애플리케이션 실행](#aspnet-quickstart-run-eb-ap)
+ [5단계: 정리](#aspnet-quickstart-cleanup)
+ [AWS 애플리케이션을 위한 리소스](#aspnet-quickstart-eb-resources)
+ [다음 단계](#aspnet-quickstart-next-steps)
+ [Elastic Beanstalk 콘솔을 사용하여 배포](#aspnet-quickstart-console)

## AWS 계정
<a name="aspnet-quickstart-aws-account"></a>

아직 AWS 고객이 아닌 경우 AWS 계정을 생성해야 합니다. 가입하면 Elastic Beanstalk 및 필요한 기타 AWS 서비스에 액세스할 수 있습니다.

이미 AWS 계정이 있는 경우 로 이동할 수 있습니다[사전 조건](#aspnet-quickstart-prereq).

### AWS 계정 생성
<a name="aspnet-quickstart-aws-account-procedure"></a>

#### 에 가입 AWS 계정
<a name="sign-up-for-aws"></a>

를 시작하려면이 AWS필요합니다 AWS 계정. 생성에 대한 자세한 AWS 계정내용은 *AWS Account Management 참조 안내서*의 [시작하기 AWS 계정](https://docs.aws.amazon.com//accounts/latest/reference/getting-started.html)를 참조하세요.

## 사전 조건
<a name="aspnet-quickstart-prereq"></a>

이 QuickStart 자습서에서는 "Hello World" 애플리케이션을 생성하고 Visual Studio 및를 사용하여 Elastic Beanstalk 환경에 배포하는 방법을 안내합니다 AWS Toolkit for Visual Studio.

### Visual Studio
<a name="aspnet-quickstart-prereq.vs"></a>

Visual Studio를 다운로드하고 설치하려면 Visual Studio [다운로드 페이지](https://visualstudio.microsoft.com/downloads/)의 지침을 따릅니다. 이 예제에서는 Visual Studio 2022를 사용합니다. Visual Studio 설치 중에 다음과 같은 특정 항목을 선택합니다.
+ **워크로드** 탭에서 **ASP.NET 및 웹 개발**을 선택합니다.
+ **개별 구성 요소** 탭에서 **.NET Framework 4.8 개발 도구**와 **.NET Framework 프로젝트 및 항목 템플릿**을 선택합니다.

### AWS Toolkit for Visual Studio
<a name="aspnet-quickstart-prereq.aws-vs-tk"></a>

다운로드 및 설정하려면 AWS Toolkit for Visual Studio 사용 설명서의 [시작하기](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/getting-set-up.html) 주제의 지침을 AWS Toolkit for Visual Studio 따르세요.

## 1단계: ASP.NET 애플리케이션 생성
<a name="aspnet-quickstart-create-app"></a>

그 다음, Elastic Beanstalk 환경에 배포할 애플리케이션을 생성합니다. ‘Hello World’ ASP.NET 웹 애플리케이션을 생성합니다.

**ASP.NET 애플리케이션을 생성하려면**

1. Visual Studio를 시작합니다. **파일** 메뉴에서 **신규**를 선택한 다음, **프로젝트**를 선택합니다.

1. **새 프로젝트 생성** 대화 상자가 표시됩니다. **ASP.NET 웹 애플리케이션(.NET Framework)**을 선택한 후 **다음**을 선택합니다.

1. **새 프로젝트 구성** 대화 상자에서 **프로젝트 이름**에 `eb-aspnet`을 입력합니다. **프레임워크** 드롭다운 메뉴에서 **.NET Framework 4.8**을 선택한 다음, **생성**을 선택합니다.

   프로젝트 디렉터리를 기록합니다. 이 예제에서 프로젝트 디렉터리 이름은 `C:\Users\Administrator\source\repos\eb-aspnet\eb-aspnet`입니다.

1. **새 ASP.NET 웹 애플리케이션 생성** 대화 상자가 표시됩니다. **비어 있는** 템플릿을 선택합니다. 그런 다음 **생성**을 선택합니다.

   현재 Visual Studio를 사용하여 비어 있는 ASP.NET 웹 애플리케이션 프로젝트를 생성했습니다. 다음으로 ASP.NET 웹 애플리케이션의 진입점 역할을 하는 웹 양식을 생성합니다.

1. **프로젝트** 메뉴에서 **새 항목 추가**를 선택합니다. **새 항목 추가** 페이지에서 **웹 양식**을 선택하고 이름을 `Default.aspx`로 지정합니다. 그런 다음 **추가**를 선택합니다.

1. 다음을 `Default.aspx:`로 추가합니다.

   ```
   <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="eb_aspnet.Default" %>
   
   <!DOCTYPE html>
   
   <html xmlns="https://www.w3.org/1999/xhtml">
   <head runat="server">
       <title>Hello Elastic Beanstalk!</title>
   </head>
   <body>
       <form id="body" runat="server">
           <div>
               Hello Elastic Beanstalk! This is an ASP.NET on Windows Server application.
           </div>
       </form>
   </body>
   </html>
   ```

## 2단계: 로컬에서 애플리케이션 실행
<a name="aspnet-quickstart-run-local"></a>

Visual Studio의 **디버그** 메뉴에서 **디버깅 시작**을 선택하여 애플리케이션을 로컬에서 실행합니다. 페이지에 ‘Hello Elastic Beanstalk\! This is an ASP.NET on Windows Server application.’이 표시됩니다.

## 3단계:를 사용하여 ASP.NET 애플리케이션 배포 AWS Toolkit for Visual Studio
<a name="aspnet-quickstart-deploy"></a>

다음 단계에 따라 Elastic Beanstalk 환경을 생성하고 해당 환경에 새 애플리케이션을 배포하세요.

**환경을 생성하고 ASP.NET 애플리케이션을 배포하려면**

1. **솔루션 탐색기**에서 애플리케이션을 마우스 오른쪽 버튼으로 클릭한 후 ** AWS Elastic Beanstalk에 게시**를 선택합니다.

1. 새로운 Elastic Beanstalk 애플리케이션 및 환경의 이름을 선택합니다.

1. 이후에는 Elastic Beanstalk에서 제공하는 기본값으로 진행하거나 원하는 옵션 및 설정을 수정할 수 있습니다.

1. **검토** 페이지에서 **배포**를 선택합니다. 이렇게 하면 ASP.NET 웹 애플리케이션이 패키징되어 Elastic Beanstalk에 배포됩니다.

   Elastic Beanstalk에서 환경을 생성하는 데 약 5분이 걸립니다. Elastic Beanstalk 배포 기능은 새롭게 개발된 코드에 사용할 수 있게 될 때까지 환경을 모니터링합니다. **Env:<**environment name**>** 탭에서 환경의 상태를 확인할 수 있습니다.

## 4단계: Elastic Beanstalk에서 애플리케이션 실행
<a name="aspnet-quickstart-run-eb-ap"></a>

환경을 생성하는 프로세스가 완료되면 **Env:<**environment name**>** 탭에 애플리케이션을 시작하는 도메인 URL 등의 환경 및 애플리케이션에 대한 정보가 표시됩니다. 이 탭에서 이 URL을 선택하거나 복사하여 웹 브라우저에 붙여넣습니다.

축하합니다\! Elastic Beanstalk를 사용하여 ASP.NET 애플리케이션을 배포했습니다\!

## 5단계: 정리
<a name="aspnet-quickstart-cleanup"></a>

애플리케이션 작업을 마치면 AWS Toolkit for Visual Studio에서 환경을 종료할 수 있습니다.

**환경을 종료하려면**

1. **AWS Explorer**에서 Elastic Beanstalk 노드와 애플리케이션 노드를 확장합니다. 애플리케이션 환경을 마우스 오른쪽 버튼으로 클릭하고 **Terminate Environment(환경 종료)**를 선택합니다.

1. 메시지가 표시되면 **예**를 선택하여 환경을 종료하고자 함을 확인합니다. Elastic Beanstalk가 환경에서 실행 중인 AWS 리소스를 종료하는 데 몇 분 정도 걸립니다.

## AWS 애플리케이션을 위한 리소스
<a name="aspnet-quickstart-eb-resources"></a>

단일 인스턴스 애플리케이션을 생성했습니다. 이 애플리케이션은 단일 EC2 인스턴스를 사용하는 간단한 샘플 애플리케이션 역할을 하므로 로드 밸런싱이나 오토 스케일링이 필요하지 않습니다. 단일 인스턴스 애플리케이션의 경우 Elastic Beanstalk는 다음 AWS 리소스를 생성합니다.
+ **EC2 인스턴스** - 선택한 플랫폼에서 웹 앱을 실행하도록 구성된 Amazon EC2 가상 머신입니다.

  특정 언어 버전, 프레임워크, 웹 컨테이너 또는 조합을 지원하도록 각 플랫폼마다 실행하는 소프트웨어, 구성 파일 및 스크립트 세트가 다릅니다. 대부분의 플랫폼에서는 웹 앱 앞의 웹 트래픽을 처리하고, 웹 앱으로 요청을 전달하고, 정적 자산을 제공하고, 액세스 및 오류 로그를 생성하는 역방향 프록시로 Apache 또는 nginx를 사용합니다.
+ **인스턴스 보안 그룹** - 포트 80에서 수신 트래픽을 허용하도록 구성된 Amazon EC2 보안 그룹입니다. 이 리소스를 통해 로드 밸런서의 HTTP 트래픽이 웹 앱을 실행하는 EC2 인스턴스에 도달할 수 있습니다. 기본적으로 다른 포트에서는 트래픽이 허용되지 않습니다.
+ **Amazon S3 버킷(Amazon S3 bucket)** - Elastic Beanstalk 사용 시 생성된 소스 코드, 로그 및 기타 아티팩트의 스토리지 위치입니다.
+ **Amazon CloudWatch 경보** - 환경의 인스턴스에 대한 로드를 모니터링하는 두 개의 CloudWatch 경보로, 로드가 너무 높거나 너무 낮은 경우 트리거됩니다. 경보가 트리거되면 이에 대한 응답으로 Auto Scaling 그룹이 스케일 업 또는 축소됩니다.
+ **CloudFormation 스택** - Elastic Beanstalk는 CloudFormation 를 사용하여 환경에서 리소스를 시작하고 구성 변경 사항을 전파합니다. 리소스는 [CloudFormation 콘솔](https://console.aws.amazon.com/cloudformation)에서 볼 수 있는 템플릿에서 정의됩니다.
+  **도메인 이름(Domain name)** - *{{subdomain}}.{{region}}.elasticbeanstalk.com* 형식으로 웹 앱으로 라우팅되는 도메인 이름입니다.

이러한 모든 리소스는 Elastic Beanstalk에서 관리합니다. 사용자가 환경을 종료하면 Elastic Beanstalk는 환경에 있는 모든 리소스를 종료합니다.

## 다음 단계
<a name="aspnet-quickstart-next-steps"></a>

애플리케이션을 실행하는 환경이 있으면 언제든 다른 애플리케이션 또는 애플리케이션의 새 버전을 배포할 수 있습니다. EC2 인스턴스를 프로비저닝하거나 다시 시작할 필요가 없기 때문에 새 애플리케이션 버전을 매우 빠르게 배포할 수 있습니다. Elastic Beanstalk 콘솔을 사용하여 새로운 환경을 탐색할 수도 있습니다. 자세한 단계는 이 가이드의 *시작하기* 장의 [환경 탐색](GettingStarted.md#GettingStarted.Explore)을 참조하세요.

**더 많은 자습서 보기**  
다른 예제 애플리케이션으로 다른 자습서를 사용하려는 경우 [Windows 기반의 .NET Core 애플리케이션에 대한 QuickStart](dotnet-quickstart.md) 단원을 참조하세요.

샘플 애플리케이션을 하나 이상 배포하고 ASP.NET 애플리케이션을 로컬로 개발하고 실행할 준비가 되면 [.NET 개발 환경 설정](dotnet-devenv.md) 단원을 참조하세요.

## Elastic Beanstalk 콘솔을 사용하여 배포
<a name="aspnet-quickstart-console"></a>

Elastic Beanstalk 콘솔을 사용하여 샘플 애플리케이션을 시작할 수도 있습니다. 자세한 단계는 이 가이드의 *시작하기* 장의 [예제 애플리케이션 생성](GettingStarted.md#GettingStarted.CreateApp)을 참조하세요.