다음을 통해 공유


Azure OpenAI 네트워킹 구성

이 문서에서는 보안 Azure OpenAI 리소스를 만들고 연결하는 방법을 알아봅니다. 이 문서의 단계에서는 Azure Virtual Network를 사용하여 Azure OpenAI 리소스에 대한 보안 경계를 만듭니다.

이 문서를 완료하면 다음 아키텍처가 제공됩니다.

  • Azure OpenAI 리소스가 상주할 서브넷이 있는 Azure Virtual Network.
  • 프라이빗 엔드포인트를 사용하여 가상 네트워크를 사용하여 통신하는 Azure OpenAI 리소스입니다.
  • Azure Bastion을 사용하면 브라우저를 사용하여 가상 네트워크 내의 점프 박스 VM과 안전하게 통신할 수 있습니다.
  • 가상 네트워크 내에서 보호되는 리소스에 원격으로 연결하고 액세스할 수 있는 Azure Virtual Machine입니다.

필수 조건

Azure Virtual Network 및 IP 네트워킹 사용에 대한 지식 잘 모르는 경우 컴퓨터 네트워킹 모듈의 기본 사항을 사용해 보세요.

Azure OpenAI 리소스의 네트워킹에 대한 자세한 내용은 Virtual Network 구성을 참조하세요.

가상 네트워크 만들기

가상 네트워크를 만들려면 다음 단계를 사용합니다.

  1. Azure Portal에서 왼쪽 위 구석에 있는 Portal 메뉴를 선택합니다. 메뉴에서 + 리소스 만들기를 선택하고 검색 필드에 가상 네트워크를 입력합니다. Virtual Network 항목을 선택한 다음 만들기를 선택합니다.

  2. 기본 사항 탭에서 이 리소스에 사용할 Azure 구독을 선택한 다음, 새 리소스 그룹을 선택하거나 만듭니다. 인스턴스 세부 정보에서 가상 네트워크에 대한 친숙한 이름을 입력하고 만들 지역을 선택합니다.

    가상 네트워크 설정의 스크린샷.

  3. 보안 및 IP 주소에 대한 기본 설정을 적용합니다. 가상 네트워크에 대해 "기본값"이라는 서브넷이 만들어집니다. 모든 프라이빗 엔드포인트를 위임하는 다른 서브넷을 만드는 것이 가장 좋습니다.

  4. Review + create를 선택합니다.

  5. 정보가 올바른지 확인한 후 만들기를 선택합니다.

Azure OpenAI 리소스 만들기

  1. Azure Portal의 왼쪽 위 모서리에 있는 포털 메뉴를 선택합니다. 메뉴에서 + 리소스 만들기를 선택한 다음 , Azure OpenAI를 입력합니다. Azure OpenAI 항목을 선택한 다음 만들기를 선택합니다.
  2. 기본 사항 탭에서 이 리소스에 사용할 Azure 구독을 선택한 다음, 새 리소스 그룹을 선택하거나 만듭니다. 인스턴스 세부 정보에서 리소스의 이름을 입력하고 만들 지역을 선택합니다. Azure OpenAI 리소스는 가상 네트워크와 동일한 지역에 있지 않습니다.
  3. Review + create를 선택합니다.

프라이빗 엔드포인트 및 프라이빗 DNS 영역 만들기

  1. Azure Portal에서 만든 Azure OpenAI 리소스를 선택합니다. 리소스 관리에서 네트워킹 탭으로 이동합니다.

  2. 액세스 허용에서 사용 안 함으로 선택합니다. 사용하지 않도록 설정하면 어떤 네트워크도 이 리소스에 액세스할 수 없습니다. 프라이빗 엔드포인트 연결은 이 리소스에 액세스할 수 있는 단독 방법입니다. 저장을 선택하여 설정을 저장합니다.

    리소스 네트워크 사용하지 않도록 설정 UX의 스크린샷.

  3. 프라이빗 엔드포인트 연결 탭으로 이동하고 + 프라이빗 엔드포인트를 선택합니다.

    프라이빗 엔드포인트 연결 탭의 스크린샷

  4. 기본 사항 탭에서 이 리소스에 사용할 Azure 구독을 선택한 다음, 새 리소스 그룹을 선택하거나 만듭니다. 인스턴스 세부 정보에서 리소스의 이름을 입력하고 만들 지역을 선택합니다. 프라이빗 네트워크를 만드는 지역은 가상 네트워크를 만들기 위해 선택한 지역과 동일해야 합니다. 네트워크 인터페이스 이름은 자동으로 이름을 사용하고 "-nic"를 추가합니다.

    프라이빗 엔드포인트 만들기의 스크린샷

  5. 리소스 탭에서 리소스 유형은 Microsoft.CognitiveServices/accounts이어야 합니다. 대상 하위 리소스의 경우 계정을 선택합니다.

  6. Virtual Network 탭에서 다음 값을 사용합니다.

    • 가상 네트워크: 이전에 만든 가상 네트워크입니다.
    • 서브넷: 기본값
  7. 사용자 지정 DNS 대신 Azure Private DNS를 사용하려면 DNS 탭에서 다음 값을 사용합니다.

    • 프라이빗 DNS 영역과 통합: 예
    • 구성 이름: privatelink-openai-azure-com
    • 구독: 이전 리소스를 포함하는 동일한 Azure 구독입니다.
    • 리소스 그룹: 이전 리소스를 포함하는 동일한 Azure 리소스 그룹입니다.

    프라이빗 링크 DNS 만들기 탭의 스크린샷

  8. Review + create를 선택합니다. 정보가 올바른지 확인한 후 만들기를 선택합니다.

  9. 프라이빗 엔드포인트가 만들어지면 프라이빗 엔드포인트 연결 이름, 상태 및 설명이 표시됩니다. 프라이빗 엔드포인트에 대한 링크를 선택하고 해당 DNS 구성에 대한 자세한 내용을 볼 수 있습니다.

    프라이빗 링크 및 엔드포인트 배포 후 배포 세부 정보의 스크린샷.

로컬 네트워크 액세스를 위한 게이트웨이 및 클라이언트 구성

로컬 또는 온-프레미스 클라이언트 머신에서 Azure AI Foundry Models의 Azure OpenAI에 액세스하려면 두 가지 방법이 있습니다. 한 가지 방법은 동일한 가상 네트워크에 배포된 가상 머신을 구성하는 것입니다. 또 다른 방법은 Azure VPN Gateway 및 Azure VPN 클라이언트를 구성하는 것입니다.

가상 네트워크에 대한 가상 네트워크 게이트웨이를 설정하는 지침은 자습서 – VPN 게이트웨이 만들기 및 관리를 참조하세요. 지점 및 사이트 간의 구성을 추가하고 Microsoft Entra ID 기반 인증을 사용하도록 설정하려면 Microsoft Entra ID 인증에 대한 VPN 게이트웨이 구성 을 참조하세요. Azure VPN 클라이언트 프로필 구성 패키지를 다운로드하고, 압축을 풀고, Azure VPN/azurevpnconfig.xml 파일을 Azure VPN 클라이언트로 가져옵니다.

리소스 호스트 이름을 가상 네트워크의 개인 IP로 가리키도록 로컬 컴퓨터 호스트 파일을 구성합니다. 호스트 파일은 Windows용 C:\Windows\System32\drivers\etc 및 Linux의 /etc/hosts에 있습니다. 예: 10.0.0.5 contoso.openai.azure.com

다른 허브 및 스포크 아키텍처를 통해 액세스 구성

기업에서 채택하는 일반적인 네트워킹 아키텍처는 허브-스포크 네트워크 토폴로지입니다. 이 네트워킹 토폴로지에서 허브 가상 네트워크는 인터넷에 대한 모든 수신 및 송신 트래픽을 제어하는 중앙 네트워크 영역이며 스포크 가상 네트워크는 다양한 유형의 워크로드를 호스트합니다. 그런 다음 허브 및 스포크 가상 네트워크가 피어링됩니다. 피어링(Peering)은 동일한 지역 또는 다른 지역에 있는 두 Azure Virtual Network 간에 원활한 연결을 허용하는 네트워킹 기능입니다. 피어링을 사용하면 가상 네트워크 간에 리소스, 데이터 및 서비스를 쉽게 공유할 수 있으므로 애플리케이션 배포 유연성이 향상되고 네트워크 아키텍처가 간소화됩니다.

기본 허브 및 스포크 아키텍처를 설정하려면 다음을 수행합니다.

  1. Azure 구독, 스포크 가상 네트워크에 두 번째 가상 네트워크를 만듭니다. 이 가상 네트워크는 동일한 지역에 있을 필요가 없습니다.
  2. 설정에서 피어링 탭으로 이동합니다. +추가를 선택합니다.
  3. 원격 가상 네트워크 요약에서 피어링 링크 이름을 제공하고 피어링할 가상 네트워크(이 경우 허브 가상 네트워크)를 선택합니다. "Allow <hub virtual network name> to access <spoke virtual network name>"이 선택되어 있는지 확인하십시오.
  4. 로컬 가상 네트워크 요약에서 피어링 링크 이름을 제공하고, "Allow <hub virtual network name> to access <spoke virtual network name>"가 선택되어 있는지 확인합니다. 그런 다음, 추가를 선택합니다.

NSG(네트워크 보안 그룹) 구성

네트워크 보안 그룹은 NIC(네트워크 인터페이스), VM 및 서브넷에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 데 사용됩니다. Azure OpenAI에서 트래픽을 허용하도록 NSG를 구성해야 합니다. NSG 구성에 대한 자세한 내용은 Azure 네트워크 보안 그룹 개요를 참조하세요.

구성 테스트

PowerShell에서 Test-NetConnection cmdlet을 사용하여 Azure OpenAI에 대한 네트워크 연결을 테스트할 수 있습니다. 이 cmdlet을 사용하면 컴퓨터와 다른 컴퓨터 간의 네트워크 연결을 테스트할 수 있습니다. 네트워크 문제 해결 및 디버깅에 유용한 도구입니다.

  1. IP 주소 해결: nslookup 명령을 사용하여 Azure OpenAI 엔드포인트의 IP 주소를 확인합니다. 다음은 그 예입니다.

    nslookup my-openai-instance.openai.azure.com
    

    그러면 Azure OpenAI 인스턴스와 연결된 공용 및 개인 IP 주소가 모두 반환됩니다. 개인 IP 주소는 프라이빗 엔드포인트의 DNS 구성에 표시되는 개인 IP와 동일해야 합니다.

  2. 프라이빗 엔드포인트 테스트: 다음으로 포트 443에서 개인 IP 주소에 대한 네트워크 연결을 테스트합니다. 다음은 그 예입니다.

    Test-NetConnection 10.0.0.4 -Port 443
    

이 명령은 Azure OpenAI 인스턴스와 동일한 프라이빗 네트워크에 있는 컴퓨터에서만 성공해야 합니다. 이 명령이 실패하면 네트워킹 문제가 있음을 의미합니다. 몇 가지 가능한 원인은 다음과 같습니다.

  • DNS 문제: DNS(도메인 이름 시스템)는 도메인 이름을 IP 주소로 변환하는 역할을 담당합니다. DNS에 문제가 있는 경우 Azure OpenAI 인스턴스의 도메인 이름을 해당 IP 주소로 올바르게 해결하지 못할 수 있습니다.

  • 프라이빗 네트워크에 없는 컴퓨터: 명령을 실행하는 컴퓨터가 Azure OpenAI 인스턴스와 동일한 프라이빗 네트워크에 없는 경우 프라이빗 IP 주소에 연결할 수 없으므로 명령이 실패합니다. 컴퓨터가 올바른 프라이빗 네트워크에 연결되어 있는지 확인합니다.

  • 고객 방화벽 차단: 컴퓨터와 Azure OpenAI 인스턴스 간에 사용자 지정 방화벽이 설정된 경우 연결이 차단될 수 있습니다. 방화벽은 미리 결정된 보안 규칙에 따라 들어오고 나가는 네트워크 트래픽을 제어하는 보안 조치입니다. 방화벽 설정을 확인하고 포트 443의 트래픽이 허용되는지 확인해야 합니다.

다음 단계