가상 네트워크에서 Azure Spring Apps 문제 해결

참고 항목

Azure Spring Apps는 Azure Spring Cloud 서비스의 새 이름입니다. 서비스에 새 이름이 지정되었지만, 자산을 업데이트하는 동안 스크린샷, 비디오, 다이어그램과 같은 일부 위치에서는 당분간 이전 이름이 표시됩니다.

이 문서의 적용 대상: ✔️ 기본/표준 ✔️ Enterprise

이 문서는 가상 네트워크에서 Azure Spring Apps를 사용할 때 발생할 수 있는 다양한 문제를 해결하는 데 도움이 됩니다.

Azure Spring Apps 서비스 인스턴스를 만드는 데 문제가 발생했습니다.

Azure Spring Apps의 인스턴스를 만들려면 가상 네트워크에 인스턴스를 배포할 수 있는 권한이 있어야 합니다. Azure Spring Apps 서비스 인스턴스는 자체적으로 가상 네트워크에 Azure Spring Apps 서비스 권한을 부여해야 합니다. 자세한 내용은 가상 네트워크에 Azure Spring Apps 배포가상 네트워크에 서비스 권한 부여 섹션을 참조하세요.

Azure Portal을 사용하여 Azure Spring Apps 서비스 인스턴스를 설정하는 경우 Azure Portal에서 권한의 유효성을 검사합니다.

Azure CLI를 사용하여 Azure Spring Apps 서비스 인스턴스를 설정하려면 다음 요구 사항을 확인합니다.

  • 구독이 활성 상태입니다.
  • 이 위치는 Azure Spring Apps를 지원합니다.
  • 인스턴스에 대한 리소스 그룹이 이미 만들어졌습니다.
  • 리소스 이름이 명명 규칙을 준수합니다. 소문자, 숫자 및 하이픈만 포함해야 합니다. 첫 글자는 문자여야 합니다. 마지막 글자는 문자 또는 숫자여야 합니다. 값은 2~32자를 포함해야 합니다.

Resource Manager 템플릿을 사용하여 Azure Spring Apps 서비스 인스턴스를 설정하려면 Azure Resource Manager 템플릿의 구조 및 구문 이해를 참조하세요.

일반적인 만들기 문제

오류 메시지 수정 방법
Resources created by Azure Spring Apps were disallowed by policy. 네트워크 리소스는 자체 가상 네트워크에 Azure Spring Apps를 배포할 때 만들어집니다. 해당 생성을 차단하도록 정의된 Azure Policy가 있는지 확인해야 합니다. 오류 메시지에는 생성되지 않은 리소스가 나열됩니다.
Required traffic is not allowlisted. 필요한 트래픽이 허용 목록에 있는지 확인하려면 가상 네트워크에서 Azure Spring Apps 실행에 대한 고객 책임을 확인해야 합니다.

내 애플리케이션을 등록할 수 없거나 구성 서버에서 설정을 가져올 수 없습니다.

Azure Spring Apps 사용자 클러스터 내에서 실행되는 애플리케이션은 <service-instance-name>.svc.private.azuremicroservices.io 도메인을 통해 시스템 런타임 클러스터의 Eureka Server 및 Config Server에 액세스해야 합니다.

이 문제는 가상 네트워크가 사용자 지정 DNS 설정으로 구성된 경우에 발생합니다. 이 경우 Azure Spring Apps에서 사용하는 프라이빗 DNS 영역은 효과가 없습니다. 사용자 지정 DNS 서버에서 업스트림 DNS 서버로 Azure DNS IP 168.63.129.16을 추가하세요.

사용자 지정 DNS 서버가 Azure DNS IP 168.63.129.16을 업스트림 DNS 서버로 추가할 수 없는 경우 애플리케이션의 IP에 DNS 레코드 *.svc.private.azuremicroservices.io를 추가합니다. 자세한 내용은 가상 네트워크에서 Azure Spring Apps의 앱에 액세스애플리케이션의 IP 찾기 섹션을 참조하세요.

가상 네트워크에서 내 애플리케이션의 엔드포인트 또는 테스트 엔드포인트에 액세스할 수 없습니다.

가상 네트워크가 사용자 지정 DNS 설정으로 구성된 경우 Azure DNS IP 168.63.129.16을 아직 추가하지 않았다면 사용자 지정 DNS 서버에 업스트림 DNS 서버로 추가해야 합니다. 그런 후, 다음 지침을 진행합니다.

가상 네트워크가 사용자 지정 DNS 설정으로 구성되지 않았거나 가상 네트워크가 사용자 지정 DNS 설정으로 구성되어 있고 사용자 지정 DNS 서버의 업스트림 DNS 서버로 Azure DNS IP 168.63.129.16을 이미 추가한 경우 다음 단계를 완료합니다.

  1. 새 프라이빗 DNS 영역 private.azuremicroservices.io를 만듭니다.

  2. 프라이빗 DNS 영역을 가상 네트워크에 연결합니다.

  3. 다음 두 DNS 레코드를 추가합니다.

    • *.private.azuremicroservices.io -> 애플리케이션의 IP.
    • *.test.private.azuremicroservices.io -> 애플리케이션의 IP.

자세한 내용은 프라이빗 네트워크의 애플리케이션에 액세스를 참조하세요.

공용 네트워크에서 내 애플리케이션의 퍼블릭 엔드포인트에 액세스할 수 없습니다.

Azure Spring Apps는 퍼블릭 엔드포인트를 사용하여 애플리케이션을 인터넷에 노출하도록 지원합니다. 자세한 내용은 공용 네트워크에서 Azure Spring Apps의 애플리케이션을 인터넷에 노출을 참조하세요.

사용자 정의 경로 기능을 사용하는 경우 비대칭 라우팅으로 인해 일부 기능이 지원되지 않습니다. 지원되지 않는 기능은 다음 목록을 참조하세요.

  • 공용 네트워크를 사용하여 퍼블릭 엔드포인트를 통해 애플리케이션에 액세스합니다.
  • 공용 네트워크를 사용하여 로그 스트림에 액세스합니다.
  • 공용 네트워크를 사용하여 앱 콘솔에 액세스합니다.

자세한 내용은 Azure Spring Apps 인스턴스에 대한 송신 트래픽 제어를 참조하세요.

송신 트래픽이 방화벽으로 라우팅되는 경우 Azure Spring Apps에도 유사한 제한 사항이 적용됩니다. 두 경우 모두 클러스터에 비대칭 라우팅을 도입하기 때문에 문제가 발생합니다. 패킷은 엔드포인트의 공용 IP 주소에 도착하지만 개인 IP 주소를 통해 방화벽으로 돌아갑니다. 따라서 방화벽은 이러한 트래픽을 차단해야 합니다. 자세한 내용은 가상 네트워크에 Azure Spring Apps 배포사용자 고유의 경로 테이블 가져오기 섹션을 참조하세요.

송신 트래픽을 방화벽으로 라우팅하지만 애플리케이션을 인터넷에 노출해야 하는 경우 TLS 종료 기능을 사용하여 애플리케이션을 인터넷에 노출합니다. 자세한 내용은 Application Gateway에서 TLS 종료를 사용하여 애플리케이션을 인터넷에 노출을 참조하세요.

기타 문제