자습서: Azure Portal을 사용하여 여러 가상 머신 인바운드 NAT 규칙 만들기

인바운드 NAT 규칙을 사용하면 Azure Load Balancer 공용 IP 주소 및 포트 번호를 사용하여 Azure Virtual Network의 VM(가상 머신)에 연결할 수 있습니다.

규칙에 대한 Azure Load Balancer 자세한 내용은 Azure Portal을 사용하여 Azure Load Balancer 규칙 관리를 참조하세요.

이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.

  • 가상 네트워크 및 가상 머신을 만듭니다.
  • 프런트 엔드 IP, 상태 프로브, 백 엔드 구성 및 부하 분산 규칙을 사용하여 표준 SKU 공용 부하 분산 장치를 만듭니다.
  • 여러 VM 인바운드 NAT 규칙 만들기
  • 백 엔드 풀에 대한 아웃바운드 인터넷 액세스를 위한 NAT 게이트웨이를 만듭니다.
  • VM에 웹 서버를 설치하고 구성하여 포트 전달 및 부하 분산 규칙을 보여줍니다.

필수 조건

가상 네트워크 및 가상 머신 만들기

자습서의 리소스에는 가상 네트워크 및 서브넷이 필요합니다. 이 섹션에서는 이후 단계를 위해 가상 네트워크와 가상 머신을 만듭니다.

  1. Azure Portal에 로그인합니다.

  2. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  3. 가상 머신에서 + 만들기>+ 가상 머신을 선택합니다.

  4. 가상 머신 만들기기본 탭에서 다음 값을 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group 새로 만들기를 선택합니다.
    TutorialLBPF-rg를 입력합니다.
    확인을 선택합니다.
    인스턴스 세부 정보
    가상 머신 이름 myVM1을 입력합니다.
    지역 (미국) 미국 서부 2를 입력합니다.
    가용성 옵션 가용성 영역을 선택합니다.
    가용성 영역 1을 입력합니다.
    보안 유형 표준을 선택합니다.
    이미지 Ubuntu Server 20.04 LTS - Gen2를 선택합니다.
    Azure Spot 인스턴스 기본값을 선택하지 않은 상태로 둡니다.
    크기 VM 크기를 선택합니다.
    관리자 계정
    인증 유형 SSH 공개 키를 선택합니다.
    사용자 이름 azureuser를 입력합니다.
    SSH 공개 키 원본 새 키 쌍 생성을 선택합니다.
    키 쌍 이름 myKey를 입력합니다.
    인바운드 포트 규칙
    공용 인바운드 포트 없음을 선택합니다.
  5. 네트워킹 탭을 선택하거나 다음: 디스크, 다음: 네트워킹을 차례로 선택합니다.

  6. 네트워킹 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    네트워크 인터페이스
    가상 네트워크 새로 만들기를 선택합니다.
    이름myVNet을 입력합니다.
    주소 공간주소 범위 아래에 10.1.0.0/16을 입력합니다.
    서브넷서브넷 이름 아래에 myBackendSubnet을 입력합니다.
    주소 범위10.1.0.0/24를 입력합니다.
    확인을 선택합니다.
    서브넷 myBackendSubnet을 선택합니다.
    공용 IP 없음을 선택합니다.
    NIC 네트워크 보안 그룹 추가 고급을 선택합니다.
    네트워크 보안 그룹 구성 새로 만들기를 선택합니다.
    이름myNSG를 입력합니다.
    인바운드 규칙 아래에서 + 인바운드 규칙 추가를 선택합니다.
    서비스에서 HTTP를 선택합니다.
    우선 순위100을 입력합니다.
    이름myNSGRule을 입력합니다.
    추가를 선택합니다.
    확인을 선택합니다.
  7. 검토 + 만들기 탭을 선택하거나, 페이지 하단에 있는 검토 + 만들기 단추를 선택합니다.

  8. 만들기를 실행합니다.

  9. 새 키 쌍 생성 프롬프트에서 프라이빗 키 다운로드 및 리소스 만들기를 선택합니다. 키 파일은 myKey.pem으로 다운로드됩니다. .pem 파일이 다운로드된 위치를 알아야 합니다. 이 키 파일의 경로가 이후 단계에서 필요합니다.

  10. 1~8단계에 따라 다음 값 및 myVM1과 동일한 다른 모든 설정을 사용하여 또 다른 VM을 만듭니다.

    설정 VM 2
    기본 사항
    인스턴스 세부 정보
    가상 머신 이름 myVM2
    가용성 영역 2
    관리자 계정
    인증 유형 SSH 퍼블릭 키
    SSH 공개 키 원본 Azure에 저장된 기존 키 사용을 선택합니다.
    저장된 키 myKey를 선택합니다.
    인바운드 포트 규칙
    공용 인바운드 포트 없음을 선택합니다.
    네트워킹
    네트워크 인터페이스
    공용 IP 없음을 선택합니다.
    NIC 네트워크 보안 그룹 추가 고급을 선택합니다.
    네트워크 보안 그룹 구성 기존 myNSG를 선택합니다.

부하 분산 장치 만들기

이 섹션에서는 부하 분산 장치를 만듭니다. 프런트 엔드 IP, 백 엔드 풀, 부하 분산 및 인바운드 NAT 규칙이 만들기의 일환으로 구성됩니다.

  1. 포털 맨 위에 있는 검색 상자에 부하 분산 장치를 입력합니다. 검색 결과에서 부하 분산 장치를 선택합니다.

  2. 부하 분산 장치 페이지에서 만들기를 선택합니다.

  3. 부하 분산 장치 만들기 페이지의 기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group TutorialLBPF-rg를 선택합니다.
    인스턴스 세부 정보
    이름 myLoadBalancer를 입력합니다.
    지역 미국 서부 2를 선택합니다.
    SKU 기본값인 표준을 그대로 둡니다.
    Type 퍼블릭을 선택합니다.
    계층 기본 지역을 그대로 둡니다.
  4. 페이지 하단에서 다음: 프런트 엔드 IP 구성을 선택합니다.

  5. 프런트 엔드 IP 구성에서 + 프런트 엔드 IP 추가를 선택합니다.

  6. 이름myFrontend를 입력합니다.

  7. IP 버전에 대해 IPv4 또는 IPv6를 선택합니다.

    참고 항목

    IPv6은 현재 라우팅 기본 설정 또는 지역 간 부하 분산(글로벌 계층)에서 지원되지 않습니다.

  8. IP 형식으로 IP 주소를 선택합니다.

    참고 항목

    IP 접두사에 대한 자세한 내용은 Azure 공용 IP 주소 접두사를 참조하세요.

  9. 공용 IP 주소에서 새로 만들기를 선택합니다.

  10. 공용 IP 주소 추가에서 이름myPublicIP를 입력합니다.

  11. 가용성 영역에서 영역 중복을 선택합니다.

    참고 항목

    가용성 영역이 있는 지역에서는 영역 없음(기본 옵션), 특정 영역 또는 영역 중복을 선택하는 옵션이 있습니다. 해당하는 도메인 장애 요구 사항에 따라 원하는 옵션을 선택하면 됩니다. 가용성 영역이 없는 지역에서는 이 필드가 표시되지 않습니다.
    가용성 영역에 대한 자세한 내용은 가용성 영역 개요를 참조하세요.

  12. 라우팅 기본 설정에는 Microsoft 네트워크의 기본값을 그대로 둡니다.

  13. 확인을 선택합니다.

  14. 추가를 선택합니다.

  15. 페이지 하단에서 다음: 백 엔드 풀을 선택합니다.

  16. 백 엔드 풀 탭에서 + 백 엔드 풀 추가를 선택합니다.

  17. 백 엔드 풀 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    속성 myBackendPool을 입력합니다.
    가상 네트워크 myVNet(TutorialLBPF-rg)을 선택합니다.
    백 엔드 풀 구성 NIC를 선택합니다.
    IP 버전 IPv4를 선택합니다.
  18. 가상 머신에서 + 추가를 선택합니다.

  19. 백 엔드 풀에 가상 머신 추가에서 myVM1myVM2 옆에 있는 확인란을 선택합니다.

  20. 추가를 선택합니다.

  21. 추가를 선택합니다.

  22. 페이지 하단에 있는 다음: 인바운드 규칙 단추를 선택합니다.

  23. 인바운드 규칙 탭의 부하 분산 규칙에서 + 부하 분산 규칙 추가를 선택합니다.

  24. 부하 분산 규칙 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    속성 myHTTPRule 입력
    IP 버전 요구 사항에 따라 IPv4 또는 IPv6를 선택합니다.
    프런트 엔드 IP 주소 myFrontend를 선택합니다.
    백 엔드 풀 myBackendPool을 선택합니다.
    프로토콜 TCP를 선택합니다.
    포트 80을 입력합니다.
    백 엔드 포트 80을 입력합니다.
    상태 프로브 새로 만들기를 선택합니다.
    이름myHealthProbe를 입력합니다.
    프로토콜에서 TCP를 선택합니다.
    나머지는 기본값으로 두고 확인을 선택합니다.
    세션 지속성 없음을 선택합니다.
    유휴 제한 시간(분) 15를 입력하거나 선택합니다.
    TCP 재설정 사용을 선택합니다.
    부동 IP 사용 안 함을 선택합니다.
    아웃바운드 SNAT(Source Network Address Translation) (권장) 아웃바운드 규칙을 사용하여 백 엔드 풀 멤버에 인터넷 액세스 권한을 제공합니다.(기본값)를 그대로 둡니다.

    부하 분산 규칙에 대한 자세한 내용은 부하 분산 규칙을 참조하세요.

  25. 추가를 선택합니다.

  26. 페이지 하단에 있는 파란색 검토 + 만들기 단추를 선택합니다.

  27. 만들기를 실행합니다.

여러 VM 인바운드 NAT 규칙 만들기

이 섹션에서는 부하 분산 장치의 백 엔드 풀에 대한 다중 인스턴스 인바운드 NAT 규칙을 만듭니다.

  1. 포털 맨 위에 있는 검색 상자에 부하 분산 장치를 입력합니다. 검색 결과에서 부하 분산 장치를 선택합니다.

  2. myLoadBalancer를 선택합니다.

  3. myLoadBalancer의 설정에서 인바운드 NAT 규칙을 선택합니다.

  4. 인바운드 NAT 규칙에서 + 추가를 선택합니다.

  5. 인바운드 NAT 규칙 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    속성 myNATRule-SSH를 입력합니다.
    Type 백 엔드 풀을 선택합니다.
    대상 백 엔드 풀 myBackendPool을 선택합니다.
    프런트 엔드 IP 주소 myFrontend를 선택합니다.
    프런트 엔드 포트 범위 시작 221을 입력합니다.
    백 엔드 풀의 최대 컴퓨터 수 500을 입력합니다.
    백 엔드 포트 22를 입력합니다.
    프로토콜 TCP를 선택합니다.
  6. 나머지는 기본값으로 두고 추가를 선택합니다.

참고 항목

백 엔드 풀 가상 머신에 대한 포트 매핑을 보려면 포트 매핑 보기를 참조하세요.

NAT 게이트웨이 만들기

이 섹션에서는 가상 네트워크의 리소스에 대한 아웃바운드 인터넷 액세스를 위한 NAT 게이트웨이를 만듭니다.

아웃바운드 연결 및 Azure Virtual Network NAT에 대한 자세한 내용은 아웃바운드 연결에 대한 SNAT(Source Network Address Translation) 사용Virtual Network NAT란을 참조하세요.

  1. 포털 맨 위에 있는 검색 상자에 NAT 게이트웨이를 입력합니다. 검색 결과에서 NAT 게이트웨이를 선택합니다.

  2. NAT 게이트웨이에서 + 만들기를 선택합니다.

  3. NAT(Network Address Translation) 게이트웨이 만들기에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group TutorialLBPF-rg를 선택합니다.
    인스턴스 세부 정보
    NAT Gateway 이름 myNATgateway를 입력합니다.
    지역 미국 서부 2를 선택합니다.
    가용성 영역 없음을 선택합니다.
    유휴 제한 시간(분) 15를 입력합니다.
  4. 아웃바운드 IP 탭을 선택하거나 페이지 하단에 있는 다음: 아웃바운드 IP 단추를 선택합니다.

  5. 아웃바운드 IP에서 공용 IP 주소 옆에 있는 새 공용 IP 주소 만들기를 선택합니다.

  6. 공용 IP 주소 추가에서 이름myNATGatewayIP를 입력합니다.

  7. 확인을 선택합니다.

  8. 서브넷 탭을 선택하거나 페이지 하단에 있는 다음: 서브넷 단추를 선택합니다.

  9. 가상 네트워크서브넷 탭에서 myVNet을 선택합니다.

  10. 서브넷 이름 아래에서 myBackendSubnet을 선택합니다.

  11. 페이지 하단에서 파란색 검토 + 만들기 단추를 선택하거나 검토 + 만들기 탭을 선택합니다.

  12. 만들기를 실행합니다.

웹 서버 설치

이 섹션에서는 인바운드 NAT 규칙을 통해 가상 머신에 SSH로 연결하고 웹 서버를 설치합니다.

  1. 포털 맨 위에 있는 검색 상자에 부하 분산 장치를 입력합니다. 검색 결과에서 부하 분산 장치를 선택합니다.

  2. myLoadBalancer를 선택합니다.

  3. 설정에서 프런트 IP 구성을 선택합니다.

  4. 프런트 엔드 IP 구성에서 myFrontendIP 주소를 기록해 둡니다. 이 예시에서는 20.99.165.176입니다.

    Screenshot of public IP in Azure portal.

  5. Mac 또는 Linux 컴퓨터를 사용하는 경우 Bash 프롬프트를 엽니다. Windows 컴퓨터를 사용하는 경우 PowerShell 프롬프트를 엽니다.

  6. 프롬프트에서 myVM1에 대한 SSH 연결을 엽니다. IP 주소를 이전 단계에서 검색한 주소 및 myVM1 인바운드 NAT 규칙에 사용한 포트 221로 대체합니다. .pem의 경로를 키 파일이 다운로드된 경로로 대체합니다.

    ssh -i .\Downloads\myKey.pem azureuser@20.99.165.176 -p 221
    

    만든 SSH 키는 다음에 Azure에서 VM을 만들 때 사용할 수 있습니다. 다음에 VM을 만들 때 SSH 공개 키 원본에 대해 Azure에 저장된 키 사용을 선택하면 됩니다. 컴퓨터에 프라이빗 키가 이미 있으므로 아무것도 다운로드하지 않아도 됩니다.

  7. SSH 세션에서 패키지 소스를 업데이트한 다음, 최신 NGINX 패키지를 설치합니다.

    sudo apt-get -y update
    sudo apt-get -y install nginx
    
  8. Exit를 입력하여 SSH 세션을 나갑니다.

  9. 프롬프트에서 myVM2에 대한 SSH 연결을 엽니다. IP 주소를 이전 단계에서 검색한 주소 및 myVM2 인바운드 NAT 규칙에 사용한 포트 222로 대체합니다. .pem의 경로를 키 파일이 다운로드된 경로로 대체합니다.

    ssh -i .\Downloads\myKey.pem azureuser@20.99.165.176 -p 222
    
  10. SSH 세션에서 패키지 소스를 업데이트한 다음, 최신 NGINX 패키지를 설치합니다.

    sudo apt-get -y update
    sudo apt-get -y install nginx
    
  11. Exit를 입력하여 SSH 세션을 나갑니다.

웹 서버 테스트

이 섹션에서 웹 브라우저를 열고 이전 단계에서 검색한 부하 분산 장치의 IP 주소를 입력합니다.

  1. 웹 브라우저를 엽니다.

  2. 주소 표시줄에 부하 분산 장치의 IP 주소를 입력합니다. 이 예시에서는 20.99.165.176입니다.

  3. 기본 NGINX 웹 사이트가 표시됩니다.

    Screenshot of testing the NGINX web server.

리소스 정리

이 애플리케이션을 더 이상 사용하지 않으려면 다음 단계에 따라 가상 머신 및 부하 분산 장치를 삭제합니다.

  1. 포털 맨 위에 있는 검색 상자에 리소스 그룹을 입력합니다. 검색 결과에서 리소스 그룹을 선택합니다.

  2. 리소스 그룹에서 TutorialLBPF-rg를 선택합니다.

  3. 리소스 그룹 삭제를 선택합니다.

  4. 리소스 그룹 이름 입력:TutorialLBPF-rg를 입력합니다. 삭제를 선택합니다.

다음 단계

지역 간 부하 분산 장치를 만드는 방법을 알아보려면 다음 문서로 계속 진행하세요.