App Service 네트워킹 기능 검색

완료됨

기본적으로 App Service에서 호스트되는 앱은 인터넷을 통해 직접 액세스할 수 있으며 인터넷 호스팅 엔드포인트에만 연결할 수 있습니다. 많은 애플리케이션의 경우 인바운드 및 아웃바운드 네트워크 트래픽을 제어해야 합니다.

Azure App Service에는 다음 두 가지 기본 배포 유형이 있습니다.

  • 다중 테넌트 공용 서비스는 무료, 공유, 기본, 표준, 프리미엄, 프리미엄V2 및 프리미엄V3 가격 책정 SKU에서 App Service 계획을 호스트합니다.
  • 단일 테넌트 ASE(App Service Environment)는 Azure 가상 네트워크에서 직접 격리된 SKU App Service 계획을 호스트합니다.

다중 테넌트 App Service 네트워킹 기능

Azure App Service는 분산 시스템입니다. 들어오는 HTTP 또는 HTTPS 요청을 처리하는 역할을 프런트 엔드라고 합니다. 역할 은(는) 고객 워크로드를 호스트하며이라는 이름이 붙습니다. App Service 배포의 모든 역할은 다중 테넌트 네트워크에 있습니다. 동일한 App Service 배율 단위에는 여러 고객이 있기 때문에 App Service 네트워크를 네트워크에 직접 연결할 수 없습니다.

네트워크를 연결하는 대신 애플리케이션 통신의 다양한 측면을 처리하는 기능이 필요합니다. 앱에 대한 요청을 처리하는 기능은 앱에서 호출할 때 문제를 해결하는 데 사용할 수 없습니다. 마찬가지로 앱의 호출 문제를 해결하는 기능은 앱에 대한 문제를 해결하는 데 사용할 수 없습니다.

인바운드 기능 아웃바운드 기능
앱 할당 주소 하이브리드 연결
액세스 제한 사항 게이트웨이가 필요한 가상 네트워크 통합
서비스 엔드포인트 가상 네트워크 통합
프라이빗 엔드포인트

몇 가지 예외와 함께 문제를 해결하기 위해 기능을 혼합할 수 있습니다. 다음 인바운드 사용 사례는 App Service 네트워킹 기능을 사용하여 앱에 대한 인바운드 트래픽을 제어하는 방법의 예입니다.

인바운드 사용 사례 특징
앱에 대한 IP 기반 SSL 요구 사항 지원 앱 할당 주소
앱에 대한 공유되지 않은 전용 인바운드 주소 지원 앱 할당 주소
잘 정의된 주소 집합에서 앱에 대한 액세스 제한 액세스 제한 사항

기본 네트워킹 동작

Azure App Service 확장 단위는 각 배포에서 많은 고객을 지원합니다. 무료 및 공유 SKU 계획은 다중 테넌트 작업자에서 고객 워크로드를 호스팅합니다. 기본 및 상위 계획은 하나의 App Service 계획 전용 고객 워크로드를 호스트합니다. 표준 App Service 계획이 있는 경우 해당 계획의 모든 앱이 동일한 작업자에서 실행됩니다. 작업자를 스케일 아웃하면 해당 App Service 계획의 모든 앱이 App Service 계획의 각 인스턴스에 대해 새 작업자에 복제됩니다.

아웃바운드 주소

작업자 가상 머신은 App Service 계획에 의해 크게 세분화됩니다. 무료, 공유, 기본, 표준 및 프리미엄 플랜은 모두 동일한 작업자 가상 머신 유형을 사용합니다. PremiumV2 계획은 다른 가상 머신 유형을 사용합니다. PremiumV3는 또 다른 가상 머신 유형을 사용합니다. 가상 머신 패밀리를 변경하면 다른 아웃바운드 주소 집합이 표시됩니다.

아웃바운드 호출에 사용되는 많은 주소가 있습니다. 아웃바운드 호출을 수행하는 데 앱에서 사용하는 아웃바운드 주소는 앱의 속성에 나열됩니다. 이러한 주소는 App Service 배포에서 동일한 작업자 가상 머신 패밀리에서 실행되는 모든 앱에서 공유됩니다. 앱이 배율 단위에서 사용할 수 있는 모든 주소를 보려면 해당 주소를 나열하는 possibleOutboundIpAddresses 속성이 있습니다.

아웃바운드 IP 찾기

Azure Portal에서 앱에서 현재 사용하는 아웃바운드 IP 주소를 찾으려면 앱의 왼쪽 탐색에서 속성 선택합니다.

Cloud Shell에서 다음 Azure CLI 명령을 실행하여 동일한 정보를 찾을 수 있습니다. 추가 아웃바운드 IP 주소 필드에 나열됩니다.

az webapp show \
    --resource-group <group_name> \
    --name <app_name> \ 
    --query outboundIpAddresses \
    --output tsv

가격 책정 계층에 관계없이 앱에 대해 가능한 모든 아웃바운드 IP 주소를 찾으려면 Cloud Shell에서 다음 명령을 실행합니다.

az webapp show \
    --resource-group <group_name> \ 
    --name <app_name> \ 
    --query possibleOutboundIpAddresses \
    --output tsv