Visual Studio를 사용하여 클라우드 서비스 게시

참고 항목

이 문서는 새 고객에게 더 이상 사용되지 않으며 2024년 8월 31일에 사용 중지되는 Azure Cloud Services(클래식)에 적용됩니다. 이 기술로 빌드된 기존 서비스는 여전히 Azure Cloud Services(추가 지원)를 통해 지원됩니다. 새 개발의 경우 Azure 앱 Service, Azure Functions 또는 Azure Container Apps와 같은 특정 용도로 설계된 최신 서비스 유형을 사용하는 것이 좋습니다. 사용 가능한 서비스의 최신 목록은 Azure 제품 디렉터리를 참조 하세요.

Visual Studio는 클라우드 서비스의 스테이징 환경과 프로덕션 환경을 모두 지원하기 때문에 애플리케이션을 Azure에 직접 게시할 수 있습니다. 게시할 때 배포 환경 및 배포 패키지에 일시적으로 사용되는 스토리지 계정을 선택합니다.

Azure 애플리케이션을 개발 및 테스트할 경우 웹 배포를 사용하여 변경 사항을 웹 역할에 대해 증분적으로 게시할 수 있습니다. 애플리케이션을 배포 환경에 게시하면 웹 배포를 사용하여 웹 역할을 실행 중인 가상 머신에 변경 사항을 직접 배포할 수 있습니다. 웹 역할을 업데이트하고 변경 사항을 테스트할 때마다 전체 Azure 애플리케이션을 패키지로 만들고 게시하지 않아도 됩니다. 이 방법을 사용하면 애플리케이션을 배포 환경에 게시할 때까지 기다리지 않고도 클라우드에서 웹 역할 변경 사항을 사용하여 테스트할 수 있습니다.

웹 배포를 사용하여 Azure 애플리케이션을 게시하고 웹 역할을 업데이트하려면 다음 절차를 수행하십시오.

  • Visual Studio에서 Azure 애플리케이션 게시 또는 패키지 작성
  • 개발 및 테스트 주기에서 웹 역할 업데이트

필수 조건

Visual Studio에서 Azure 애플리케이션 게시 또는 패키지 작성

Azure 애플리케이션을 게시하면 다음 작업 중 하나를 수행할 수 있습니다.

  • Azure Portal에서 이 패키지와 서비스 구성 파일을 사용하여 애플리케이션을 배포 환경에 게시할 수 있습니다.

  • Visual Studio에서 Azure 프로젝트 게시: 애플리케이션을 Azure에 직접 게시하려면 게시 마법사를 사용합니다. 자세한 내용은 Azure 애플리케이션 게시 마법사를 참조하세요.

Visual Studio에서 서비스 패키지를 만들려면

  1. 애플리케이션에서 게시할 준비가 되었으면 솔루션 탐색기를 열고 사용자의 역할이 포함된 Azure 프로젝트에 대한 바로 가기 메뉴를 연 다음 게시를 선택합니다.

  2. 서비스 패키지만 만들려면 다음 단계를 따릅니다.

    1. Azure 프로젝트의 바로 가기 메뉴를 열고 패키지를 선택합니다.

    2. Azure 애플리케이션 패키지 작성 대화 상자에서 패키지를 만들려는 서비스 구성을 선택한 다음 빌드 구성을 선택합니다.

    3. (옵션 사항) 클라우드 서비스를 게시한 다음 원격 데스크톱을 사용하도록 설정하려면 모든 역할에 대해 원격 데스크톱 사용을 선택한 다음 설정을 선택하여 원격 데스크톱 자격 증명을 구성합니다. 자세한 내용은 Visual Studio를 사용하여 Azure Cloud Services에서 역할에 대한 원격 데스크톱 연결 사용을 참조하세요.

      클라우드 서비스를 게시한 다음 디버그하려면 모든 역할에 대해 원격 디버거 사용을 선택하여 원격 디버깅을 사용하도록 설정합니다.

    4. 패키지를 만들려면 패키지 링크를 선택합니다.

      파일 탐색기에 새로 작성된 패키지의 파일 위치가 표시됩니다. 이 위치를 복사해서 Azure Portal에서 사용할 수 있습니다.

    5. 이 패키지를 배포 환경에 게시하려면 Azure Portal을 사용하여 클라우드 서비스를 만들고 이 패키지를 환경에 배포할 때 이 위치를 패키지 위치로 사용해야 합니다.

  3. (선택 사항) 배포 프로세스를 취소하려면 활동 로그의 개별 항목에 대한 바로 가기 메뉴에서 취소한 후 제거를 선택합니다. 이 명령은 배포 프로세스를 중지하고 Azure에서 배포 환경을 삭제합니다. 배포 후 환경을 제거하려면 Azure Portal을 사용합니다.

개발 및 테스트 주기에서 웹 역할 업데이트

앱의 백 엔드 인프라가 안정적일지라도 웹 역할을 더욱 빈번하게 업데이트해야 할 경우 웹 배포를 사용하여 사용자 프로젝트의 웹 역할만 업데이트할 수 있습니다. 웹 배포는 백 엔드 작업자 역할을 재빌드 또는 재배포하지 않으려는 경우 또는 여러 웹 역할이 있는 가운대 하나의 웹 역할만 업데이트하려는 경우에 편리합니다.

웹 배포 사용에 대한 요구 사항

  • 개발 및 테스트 목적으로만 사용: 웹 역할이 실행되고 있는 가상 머신에 직접 변경 내용이 적용됩니다. 이 가상 머신을 재사용해야 하는 경우 게시한 원본 패키지를 사용하여 역할 가상 머신을 다시 만들기 때문에 변경 사항이 저장되지 않습니다. 웹 역할의 최신 변경 사항을 가져오려면 애플리케이션을 다시 게시합니다.

  • 웹 역할만 업데이트 가능: 작업자 역할은 업데이트 불가. 또한, web role.cs 에서 RoleEntryPoint을 업데이트할 수 없습니다.

  • 웹 역할의 단일 인스턴스만 지원 가능: 배포 환경에서 웹 역할의 여러 인스턴스를 사용 불가. 하지만 각각의 웹 역할에 하나의 인스턴스만 있는 경우는 지원됩니다.

  • 원격 데스크톱 연결 활성화: 웹 배포가 사용자 이름 및 암호를 사용하여 가상 머신에 연결한 다음 IIS(인터넷 정보 서비스)를 실행중인 서버에 변경점을 배포하는 것을 허용합니다. 또한 가상 머신에 연결하고 이 가상 머신에 IIS에 대해 신뢰할 수 있는 인증서를 추가해야 할 수 있습니다. (이 인증서는 웹 배포에서 사용하는 IIS 원격 연결의 보안을 유지합니다.)

다음 절차는 Azure 애플리케이션 게시 마법사를 사용하는 경우를 가정합니다.

애플리케이션을 게시할 때 웹 배포를 사용하도록 설정

  1. 모든 웹 역할에 대해 웹 배포 사용 옵션을 사용하도록 설정하려면 먼저 원격 데스크톱 연결을 구성해야 합니다. 모든 역할에 대해 원격 데스크톱 사용을 선택한 다음 원격 데스크톱 구성 상자가 나타나면 원격 연결에 사용할 자격 증명을 제공합니다. Visual Studio를 사용하여 Azure Cloud Services에서 역할에 대한 원격 데스크톱 연결 사용을 참조하세요.

  2. 애플리케이션의 모든 웹 역할에 웹 배포를 사용하려면 모든 웹 역할에 웹 배포 사용을 선택합니다.

    노란색 경고 삼각형이 나타납니다. 웹 배포는 기본적으로 신뢰할 수 없는 자체 서명 인증서를 사용하며, 이 인증서는 민감한 데이터를 업로드하는 데 적합하지 않습니다. 민감한 데이터를 위해 이 프로세스의 보안을 보장해야 하는 경우 웹 배포 연결에 사용할 SSL 인증서를 추가할 수 있습니다. 이 인증서는 신뢰할 수 있는 인증서여야 합니다. 자세한 내용은 보안 웹 배포를 참조하세요.

  3. 다음을 선택하여 요약 화면을 표시한 다음 게시를 선택하여 클라우드 서비스를 배포합니다.

    클라우드 서비스가 게시됩니다. 생성된 가상 컴퓨터에 IIS에 사용하도록 설정된 원격 연결이 있으므로 웹 배포를 사용하여 웹 역할을 다시 게시하지 않고도 웹 역할을 업데이트할 수 있습니다.

    참고 항목

    웹 역할에 둘 이상의 인스턴스가 구성된 경우 애플리케이션을 게시하기 위해 만든 패키지에서 각 웹 역할이 오직 하나의 인스턴스로 제한된다는 경고 메시지가 나타납니다. 계속하려면 확인을 선택합니다. 요구 사항 섹션에서 설명한 바와 같이 둘 이상의 웹 역할은 지원되지만 역할당 하나의 인스턴스만 허용됩니다.

웹 배포를 사용하여 웹 역할 업데이트

  1. 웹 배포를 사용하려면 Visual Studio에서 게시하려는 웹 역할의 프로젝트에 대해 코드를 변경한 다음 솔루션에서 이 프로젝트 노드를 마우스 오른쪽 단추로 클릭한 다음 게시를 가리킵니다. 웹 게시 대화 상자가 나타납니다.

  2. (선택 사항) IIS의 원격 연결에 사용하기 위해 신뢰할 수 있는 SSL 인증서를 추가한 경우 신뢰할 수 없는 인증서 허용 체크박스를 선택 취소합니다. 보안 웹 배포를 위해 인증서를 추가하는 방법은 이 문서의 뒷부분에서 보안 웹 배포 구현 섹션을 참조하세요.

  3. 웹 배포를 사용하려면 처음으로 패키지를 게시한 때 원격에 데스크톱 연결에 설정한 사용자 이름과 암호를 요구하는 게시 메커니즘을 따라야 합니다.

    1. 사용자 이름에 사용자 이름을 입력합니다.

    2. 암호에 암호를 입력합니다.

    3. (선택 사항) 이 프로필에 이 암호를 저장하려면 암호 저장을 선택합니다.

  4. 변경 내용을 웹 역할에 게시하려면 게시를 선택합니다.

    상태 표시줄에 게시 시작이 표시됩니다. 게시가 완료되면 게시 완료 가 나타납니다. 이제 가상 머신의 웹 역할에 변경 내용이 배포되었습니다. 이제 Azure 환경에서 Azure 애플리케이션을 사용하여 변경 내용을 테스트할 수 있습니다.

보안 웹 배포

  1. 웹 배포는 기본적으로 신뢰할 수 없는 자체 서명 인증서를 사용하며, 이 인증서는 민감한 데이터를 업로드하는 데 적합하지 않습니다. 민감한 데이터를 위해 이 프로세스의 보안을 보장해야 하는 경우 웹 배포 연결에 사용할 SSL 인증서를 추가할 수 있습니다. 이 인증서는 신뢰할 수 있는 인증서여야 하며 CA(인증 기관)에서 얻을 수 있습니다.

    각 웹 역할에 대한 각각의 가상 머신에 보안 웹 배포를 구현하려면 웹 배포에 사용하려는 신뢰할 수 있는 인증서를 Azure Portal에 업로드해야 합니다. 이 인증서는 애플리케이션을 게시할 때 웹 역할에 대해 만들어지는 가상 머신에 인증서가 추가되도록 보장합니다.

  2. IIS에 원격 연결에 사용할 SSL 인증서를 추가하려면 다음 단계를 다릅니다.

    1. 웹 역할을 실행 중인 가상 머신에 연결하려면 클라우드 탐색기 또는 서버 탐색기에서 웹 역할의 인스턴스를 선택한 다음 원격 데스크톱을 사용하여 연결 명령을 선택합니다. 가상 머신에 연결하는 방법에 대한 자세한 내용은 Visual Studio를 사용하여 Azure Cloud Services에서 역할에 대한 원격 데스크톱 연결 사용을 참조하세요. 브라우저에 .rdp 파일을 다운로드하라는 메시지가 표시됩니다.

    2. SSL 인증서를 추가하려면 IIS 관리자에서 관리 서비스를 엽니다. IIS 관리자의 작업 창에서 바인딩 링크를 열어 SSL을 사용하도록 설정합니다. 사이트 바인딩 추가 대화 상자가 나타납니다. 추가를 선택한 다음 유형 드롭다운 목록에서 HTTPS를 선택합니다. SSL 인증서 목록에서 CA에서 서명하고 사용자가 Azure Portal에 업로드한 SSL 인증서를 선택합니다. 자세한 내용은 관리 서비스의 연결 설정 구성을 참조하세요.

      참고 항목

      신뢰할 수 있는 SSL 인증서를 추가하면 게시 마법사에 더 이상 노란색 경고 삼각형이 나타나지 않습니다.

서비스 패키지에 파일 포함

역할에 대해 만든 가상 머신에서 사용할 수 있도록 서비스 패키지에 특정 파일을 포함해야 하는 경우가 있습니다. 예를 들어 서비스 패키지에 시작 스크립트에서 사용하는 .exe 또는 .msi 파일을 추가할 수 있습니다. 또는 웹 역할 또는 작업자 역할 프로젝트에서 요구하는 어셈블리를 추가해야 하는 경우가 있습니다. 파일을 포함하려면 Azure 애플리케이션의 솔루션에 추가해야 합니다.

  1. 서비스 패키지에 어셈블리를 추가하려면 다음 단계를 사용합니다.

    1. 솔루션 탐색기에서 참조 어셈블리가 없는 프로젝트의 프로젝트 노드를 엽니다.

    2. 프로젝트에 어셈블리를 추가하려면 참조 폴더의 바로 가기 메뉴를 연 다음 참조 추가를 선택합니다. 참조 추가 대화 상자가 나타납니다.

    3. 추가하려는 참조를 선택한 다음 확인을 선택합니다. 참조 폴더 아래 목록에 참조가 추가됩니다.

    4. 추가한 어셈블리의 바로 가기 메뉴를 열고 속성을 선택합니다. 속성 창이 열립니다.

      이 어셈블리를 서비스 패키지에 포함하려면 로컬 복사 목록에서 True를 선택합니다.

  2. 솔루션 탐색기 에서 참조 어셈블리가 없는 프로젝트의 프로젝트 노드를 엽니다.

  3. 프로젝트에 어셈블리를 추가하려면 참조 폴더의 바로 가기 메뉴를 연 다음 참조 추가를 선택합니다. 참조 추가 대화 상자가 나타납니다.

  4. 추가하려는 참조를 선택한 다음 확인 단추를 선택합니다.

    참조 폴더 아래 목록에 참조가 추가됩니다.

  5. 추가한 어셈블리의 바로 가기 메뉴를 열고 속성을 선택합니다. 속성 창이 열립니다.

  6. 이 어셈블리를 서비스 패키지에 포함하려면 로컬 복사 목록에서 True를 선택합니다.

  7. 웹 역할 프로젝트에 추가된 서비스 패키지에 파일을 포함하려면 파일의 바로 가기 메뉴를 연 다음 속성을 선택합니다. 속성 창의 빌드 작업 목록 상자에서 콘텐츠를 선택합니다.

  8. 작업자 역할 프로젝트에 추가된 서비스 패키지에 파일을 포함하려면 파일의 바로 가기 메뉴를 연 다음 속성을 선택합니다. 속성 창의 출력 디렉터리에 복사에서 변경된 내용만 복사를 선택합니다.

Visual Studio에서 Azure로 게시하는 방법에 대한 자세한 내용은 Azure 애플리케이션 마법사 게시를 참조하세요.