연습 - Azure CLI 명령을 사용하여 피어링을 위한 가상 네트워크 준비
이제 회사가 가상 네트워크 피어링을 구현할 준비가 되었습니다. 서로 다른 가상 네트워크에 배포된 시스템을 연결하려고 합니다. 이 계획을 테스트하기 위해 회사가 이미 Azure에서 실행 중인 서비스를 지원하는 가상 네트워크부터 만들겠습니다. 세 개의 가상 네트워크가 필요합니다.
- Sales 가상 네트워크는 북유럽에 배포되었습니다. 영업 시스템은 고객이 참여한 후 추가되는 데이터를 처리하는 데 이 가상 네트워크를 사용합니다. 영업 팀은 마케팅 데이터에 액세스할 수 있기를 원합니다.
- Marketing 가상 네트워크는 북유럽에 배포되었습니다. 마케팅 시스템은 이 가상 네트워크를 사용합니다. 마케팅 팀 구성원은 영업 팀과 정기적으로 의견을 나눕니다. 영업 및 마케팅 시스템이 연결되어 있지 않으므로 영업 팀과 해당 데이터를 공유하려면 다운로드해야 합니다.
- 연구 가상 네트워크는 서유럽에 배포되었습니다. 연구 시스템은 이 가상 네트워크를 사용합니다. 연구팀원들은 마케팅부서와 논리적인 업무 관계를 맺고 있지만 영업팀이 데이터에 직접 엑세스 하는 것을 원치 않습니다.
다음 리소스를 만들 것입니다.
가상 네트워크 | 지역 | 가상 네트워크 주소 공간 | 서브넷 | 서브넷 주소 공간 |
---|---|---|---|---|
SalesVNet | 북유럽 | 10.1.0.0/16 | 앱 | 10.1.1.0/24 |
MarketingVNet | 북유럽 | 10.2.0.0/16 | 앱 | 10.2.1.0/24 |
ResearchVNet | 서유럽 | 10.3.0.0/16 | 데이터 | 10.3.1.0/24 |
가상 네트워크 만들기
Cloud Shell에서 다음 명령을 실행하여 Sales 시스템의 가상 네트워크 및 서브넷을 만듭니다.
az network vnet create \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name SalesVNet \ --address-prefixes 10.1.0.0/16 \ --subnet-name Apps \ --subnet-prefixes 10.1.1.0/24 \ --location northeurope
다음 명령을 실행하여 Marketing 시스템의 가상 네트워크 및 서브넷을 만듭니다.
az network vnet create \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name MarketingVNet \ --address-prefixes 10.2.0.0/16 \ --subnet-name Apps \ --subnet-prefixes 10.2.1.0/24 \ --location northeurope
다음 명령을 실행하여 Research 시스템의 가상 네트워크 및 서브넷을 만듭니다.
az network vnet create \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name ResearchVNet \ --address-prefixes 10.3.0.0/16 \ --subnet-name Data \ --subnet-prefixes 10.3.1.0/24 \ --location westeurope
가상 네트워크 구성 확인
방금 만든 것들을 간단하게 살펴보겠습니다.
Cloud Shell에서 다음 명령을 실행하여 가상 네트워크를 봅니다.
az network vnet list --query "[?contains(provisioningState, 'Succeeded')]" --output table
다음과 같은 출력이 표시됩니다.
Location Name EnableDdosProtection ProvisioningState ResourceGuid ResourceGroup ----------- ------------- ---------------------- ------------------- ------------------------------------ ------------------------------------------ westeurope ResearchVNet False Succeeded 9fe09fe0-d6cd-4043-aba8-b5e850a91251 learn-cb081b92-bc67-49cf-a965-1aeb40a2e25c northeurope SalesVNet False Succeeded 8f030706-cce4-4a7b-8da2-a9f738887ffd learn-cb081b92-bc67-49cf-a965-1aeb40a2e25c northeurope MarketingVNet False Succeeded ffbf8430-b0eb-4c3d-aa94-3b3156b90bed learn-cb081b92-bc67-49cf-a965-1aeb40a2e25c
각 가상 네트워크에 가상 머신 만들기
이제 각 가상 네트워크에 일부 Ubuntu VM(가상 머신)을 배포하겠습니다. 이러한 VM은 각 가상 네트워크에서 서비스를 시뮬레이션합니다. 이 모듈의 마지막 단원에서는 이러한 VM을 사용하여 가상 네트워크 간의 연결을 테스트할 것입니다.
Cloud Shell에서
<password>
를 Linux VM에 대한 요구 사항을 충족하는 암호로 바꿔 다음 명령을 실행하여 SalesVNet의 Apps 서브넷에서 Ubuntu VM을 만듭니다. 나중에 사용할 수 있도록 해당 암호를 기록해 둡니다.az vm create \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --no-wait \ --name SalesVM \ --location northeurope \ --vnet-name SalesVNet \ --subnet Apps \ --image Ubuntu2204 \ --admin-username azureuser \ --admin-password <password>
참고
이 명령에서
--no-wait
매개 변수를 사용하면 VM이 빌드하는 동안 Cloud Shell에서 계속 작업할 수 있습니다.<password>
를 Linux VM에 대한 요구 사항을 충족하는 암호로 바꿔 다음 명령을 실행하여 MarketingVNet의 Apps 서브넷에서 Ubuntu VM을 또 하나 만듭니다. 나중에 사용할 수 있도록 이 암호를 기록해 둡니다. VM을 만드는 데 1~2 시간이 걸릴 수 있습니다.az vm create \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --no-wait \ --name MarketingVM \ --location northeurope \ --vnet-name MarketingVNet \ --subnet Apps \ --image Ubuntu2204 \ --admin-username azureuser \ --admin-password <password>
<password>
를 Linux VM에 대한 요구 사항을 충족하는 암호로 바꿔 다음 명령을 실행하여 ResearchVNet의 Data 서브넷에서 Ubuntu VM을 만듭니다. 나중에 사용할 수 있도록 이 암호를 기록해 둡니다.az vm create \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --no-wait \ --name ResearchVM \ --location westeurope \ --vnet-name ResearchVNet \ --subnet Data \ --image Ubuntu2204 \ --admin-username azureuser \ --admin-password <password>
VM이 실행 중 상태에 도달하는 데 몇 분 정도 걸릴 수 있습니다.
Vm이 실행 중인지 확인하려면 다음 명령을 실행합니다. Linux
watch
명령은 5초마다 새로 고치도록 구성되어 있습니다.watch -d -n 5 "az vm list \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --show-details \ --query '[*].{Name:name, ProvisioningState:provisioningState, PowerState:powerState}' \ --output table"
ProvisioningState가 성공이고 PowerState가 VM 실행 중이면 VM 배포가 성공한 것입니다.
VM이 실행 중이면 다음 단계를 진행해도 됩니다.
Ctrl-c
를 눌러 명령을 중지하고 연습을 계속 진행합니다.