다음을 통해 공유


Visual Studio에서 Service Fabric 애플리케이션 업그레이드 구성

Azure Service Fabric용 Visual Studio 도구는 로컬 또는 원격 클러스터에 게시하기 위한 업그레이드 지원을 제공합니다. 테스트 및 디버깅 중에 애플리케이션을 대체하는 대신 애플리케이션을 최신 버전으로 업그레이드하려는 세 가지 시나리오가 있습니다.

  • 업그레이드하는 동안 애플리케이션 데이터가 손실되지 않습니다.
  • 업그레이드 도메인에 분산된 서비스 인스턴스가 충분한 경우 업그레이드 중에 서비스 중단이 발생하지 않도록 가용성은 여전히 높습니다.
  • 업그레이드하는 동안 애플리케이션에 대해 테스트를 실행할 수 있습니다.

업그레이드하는 데 필요한 매개 변수

일반 또는 업그레이드의 두 가지 배포 유형 중에서 선택할 수 있습니다. 일반 배포는 클러스터의 이전 배포 정보 및 데이터를 지우고 업그레이드 배포는 이를 유지합니다. Visual Studio에서 Service Fabric 애플리케이션을 업그레이드할 때 애플리케이션 업그레이드 매개 변수 및 상태 검사 정책을 제공해야 합니다. 애플리케이션 업그레이드 매개 변수는 업그레이드를 제어하는 데 도움이 되며 상태 검사 정책은 업그레이드의 성공 여부를 결정합니다. 자세한 내용은 Service Fabric 애플리케이션 업그레이드: 업그레이드 매개 변수 를 참조하세요.

세 가지 업그레이드 모드는 Monitored, UnmonitoredAutoUnmonitoredManual입니다.

  • 모니터링되는 업그레이드는 업그레이드 및 애플리케이션 상태 검사를 자동화합니다.
  • UnmonitoredAuto 업그레이드는 업그레이드를 자동화하지만 애플리케이션 상태 검사를 건너뜁니다.
  • UnmonitoredManual 업그레이드를 수행하는 경우 각 업그레이드 도메인을 수동으로 업그레이드해야 합니다.

각 업그레이드 모드에는 서로 다른 매개 변수 집합이 필요합니다. 사용 가능한 업그레이드 옵션에 대한 자세한 내용은 애플리케이션 업그레이드 매개 변수 를 참조하세요.

Visual Studio에서 Service Fabric 애플리케이션 업그레이드

Visual Studio Service Fabric 도구를 사용하여 Service Fabric 애플리케이션을 업그레이드하는 경우 애플리케이션 업그레이드 확인란 을 선택하여 일반 배포가 아닌 업그레이드로 게시 프로세스를 지정할 수 있습니다.

업그레이드 매개 변수를 구성하려면

  1. 확인란 옆에 있는 설정 단추를 클릭합니다. 업그레이드 매개 변수 편집 대화 상자가 나타납니다. 업그레이드 매개 변수 편집 대화 상자는 Monitored, UnmonitoredAuto 및 UnmonitoredManual 업그레이드 모드를 지원합니다.

  2. 사용하려는 업그레이드 모드를 선택한 다음 매개 변수 그리드를 채웁니다.

    각 매개 변수에는 기본값이 있습니다. 선택적 매개 변수 DefaultServiceTypeHealthPolicy 는 해시 테이블 입력을 사용합니다. DefaultServiceTypeHealthPolicy에 대한 해시 테이블 입력 형식의 예는 다음과 같습니다.

    @{ ConsiderWarningAsError = "false"; MaxPercentUnhealthyDeployedApplications = 0; MaxPercentUnhealthyServices = 0; MaxPercentUnhealthyPartitionsPerService = 0; MaxPercentUnhealthyReplicasPerPartition = 0 }
    

    ServiceTypeHealthPolicyMap 은 해시 테이블 입력을 다음 형식으로 사용하는 또 다른 선택적 매개 변수입니다.

    @ {"ServiceTypeName" : "MaxPercentUnhealthyPartitionsPerService,MaxPercentUnhealthyReplicasPerPartition,MaxPercentUnhealthyServices"}
    

    다음은 실제 예제입니다.

    @{ "ServiceTypeName01" = "5,10,5"; "ServiceTypeName02" = "5,5,5" }
    
  3. UnmonitoredManual 업그레이드 모드를 선택하는 경우 PowerShell 콘솔을 수동으로 시작하여 업그레이드 프로세스를 계속 진행하고 완료해야 합니다. 수동 업그레이드의 작동 방식을 알아보려면 Service Fabric 애플리케이션 업그레이드: 고급 항목을 참조하세요.

PowerShell을 사용하여 애플리케이션 업그레이드

PowerShell cmdlet을 사용하여 Service Fabric 애플리케이션을 업그레이드할 수 있습니다. 자세한 내용은 Service Fabric 애플리케이션 업그레이드 자습서Start-ServiceFabricApplicationUpgrade 를 참조하세요.

애플리케이션 매니페스트 파일에서 상태 검사 정책 지정

Service Fabric 애플리케이션의 모든 서비스에는 기본값을 재정의하는 자체 상태 정책 매개 변수가 있을 수 있습니다. 애플리케이션 매니페스트 파일에서 이러한 매개 변수 값을 제공할 수 있습니다.

다음 예제에서는 애플리케이션 매니페스트의 각 서비스에 대해 고유한 상태 검사 정책을 적용하는 방법을 보여 줍니다.

<Policies>
    <HealthPolicy ConsiderWarningAsError="false" MaxPercentUnhealthyDeployedApplications="20">
        <DefaultServiceTypeHealthPolicy MaxPercentUnhealthyServices="20"               
                MaxPercentUnhealthyPartitionsPerService="20"
                MaxPercentUnhealthyReplicasPerPartition="20" />
        <ServiceTypeHealthPolicy ServiceTypeName="ServiceTypeName1"
                MaxPercentUnhealthyServices="20"
                MaxPercentUnhealthyPartitionsPerService="20"
                MaxPercentUnhealthyReplicasPerPartition="20" />      
    </HealthPolicy>
</Policies>

다음 단계

애플리케이션 업그레이드에 대한 자세한 내용은 Visual Studio를 사용하여 애플리케이션 업그레이드를 참조하세요.