Azure 지역을 모두 나열할 수 있는 API가 있습니까?
저는 일부 API를 통해 모든 Azure 위치를 나열하고 싶습니다(모든 지역에 대한 구성 파일을 생성해야 하며 오타를 방지하기 위해 Azure가 수행하는 정확한 이름을 사용해야 합니다).이 질문을 찾았지만 특정 구독이 사용할 수 있는 지역만 나열됩니다.
구독에 액세스할 수 있는지 여부에 관계없이 존재하는 모든 지역을 나열하려고 합니다.
az account list-locations -o table
다음과 같은 표를 제공합니다.
DisplayName Name RegionalDisplayName
------------------------ ------------------- -------------------------------------
East US eastus (US) East US
East US 2 eastus2 (US) East US 2
South Central US southcentralus (US) South Central US
West US 2 westus2 (US) West US 2
Australia East australiaeast (Asia Pacific) Australia East
Southeast Asia southeastasia (Asia Pacific) Southeast Asia
North Europe northeurope (Europe) North Europe
UK South uksouth (Europe) UK South
West Europe westeurope (Europe) West Europe
Central US centralus (US) Central US
North Central US northcentralus (US) North Central US
West US westus (US) West US
South Africa North southafricanorth (Africa) South Africa North
Central India centralindia (Asia Pacific) Central India
East Asia eastasia (Asia Pacific) East Asia
Japan East japaneast (Asia Pacific) Japan East
JIO India West jioindiawest (Asia Pacific) JIO India West
Korea Central koreacentral (Asia Pacific) Korea Central
Canada Central canadacentral (Canada) Canada Central
France Central francecentral (Europe) France Central
Germany West Central germanywestcentral (Europe) Germany West Central
Norway East norwayeast (Europe) Norway East
Switzerland North switzerlandnorth (Europe) Switzerland North
UAE North uaenorth (Middle East) UAE North
Brazil South brazilsouth (South America) Brazil South
Central US (Stage) centralusstage (US) Central US (Stage)
East US (Stage) eastusstage (US) East US (Stage)
East US 2 (Stage) eastus2stage (US) East US 2 (Stage)
North Central US (Stage) northcentralusstage (US) North Central US (Stage)
South Central US (Stage) southcentralusstage (US) South Central US (Stage)
West US (Stage) westusstage (US) West US (Stage)
West US 2 (Stage) westus2stage (US) West US 2 (Stage)
Asia asia Asia
Asia Pacific asiapacific Asia Pacific
Australia australia Australia
Brazil brazil Brazil
Canada canada Canada
Europe europe Europe
Global global Global
India india India
Japan japan Japan
United Kingdom uk United Kingdom
United States unitedstates United States
East Asia (Stage) eastasiastage (Asia Pacific) East Asia (Stage)
Southeast Asia (Stage) southeastasiastage (Asia Pacific) Southeast Asia (Stage)
Central US EUAP centraluseuap (US) Central US EUAP
East US 2 EUAP eastus2euap (US) East US 2 EUAP
West Central US westcentralus (US) West Central US
West US 3 westus3 (US) West US 3
South Africa West southafricawest (Africa) South Africa West
Australia Central australiacentral (Asia Pacific) Australia Central
Australia Central 2 australiacentral2 (Asia Pacific) Australia Central 2
Australia Southeast australiasoutheast (Asia Pacific) Australia Southeast
Japan West japanwest (Asia Pacific) Japan West
Korea South koreasouth (Asia Pacific) Korea South
South India southindia (Asia Pacific) South India
West India westindia (Asia Pacific) West India
Canada East canadaeast (Canada) Canada East
France South francesouth (Europe) France South
Germany North germanynorth (Europe) Germany North
Norway West norwaywest (Europe) Norway West
Switzerland West switzerlandwest (Europe) Switzerland West
UK West ukwest (Europe) UK West
UAE Central uaecentral (Middle East) UAE Central
Brazil Southeast brazilsoutheast (South America) Brazil Southeast
Get-AzureRMLocation
계정/ 테넌트/구독을 실행할 위치 목록이 표시됩니다.
아래 답변에서, 이것은 Azure PS의 최신 버전과 완벽하게 작동합니다!
Get-AzLocation | select DisplayName, Location | Format-Table
이것은 오래된 질문이며 이미 승인된 답변을 가지고 있습니다.그러나 Azure 모듈에는 변경 사항이 거의 없으므로 최신 명령을 여기에 추가합니다.
위치에 대한 API가 아직 존재하지 않는 것 같습니다.그러나 Powershell Az 모듈의 최신 버전을 사용하면 위치를 가져올 수 있습니다.
Get-AzLocation | select DisplayName, Location | Format-Table
이렇게 하면 필요한 속성을 선택하고 출력 형식을 표 형식으로 지정할 수 있습니다.AZ CLI 명령은 여전히 위와 동일하게 유지됩니다.
powershell 스크립트를 사용하여 가능한 해결책은 URL: https://azure.microsoft.com/en-us/regions/ 에서 응답을 구문 분석하는 것입니다.이것을 이용하여, 당신은 새로 발표된 지역에 대한 정보를 얻을 수 있습니다.
Java 또는 C#을 사용해도 괜찮다면 아래 솔루션도 유용합니다.
java의 지역 목록의 경우 maven의 의존성은 https://github.com/Azure/azure-libraries-for-java/tree/master/azure-mgmt-resources 에 있는 zure-mgmt-dll입니다.설명서: https://azure.github.io/azure-sdk-for-java/com/microsoft/azure/management/resources/fluentcore/arm/Region.html
c#을 사용하는 경우 nuget의 종속성은 Microsoft입니다.애저. 매니지먼트.리소스 관리자.유창합니다. 참고로 소스 코드 URL: https://github.com/Azure/azure-libraries-for-net/blob/master/src/ResourceManagement/ResourceManager/Region.cs
저는 Azure에 인증할 필요 없이 Azure 지역을 얻을 수 있는 방법을 알아보다가 우연히 이 스레드를 발견했습니다.@girip11의 응답과 유사하게, 저는 공개 Azure 문서를 기반으로 구축해 왔습니다.다음은 데이터를 가져오는 파이썬 스크립트입니다.
import requests
import pandas as pd
from re import search
def list_azure_regions():
url = 'https://azure.microsoft.com/en-us/explore/global-infrastructure/geographies/'
html = requests.get(url).content
df_list = pd.read_html(html)
regions_list = []
locations_list = []
for df in df_list:
for dc in list(df):
if search('Regions', dc):
pass
else:
if search('Coming soon', dc):
state = 'planned'
else:
state = 'active'
location = df[dc][0]
region = dc.removesuffix(' Start free')
region = region.removesuffix(' Get started')
region = region.removesuffix(' Coming soon')
if region in regions_list:
pass
else:
regions_list.append(region)
locations_list.append(
dict({
'display_name': region,
'name': region.replace(' ','').lower(),
'location': location,
'state': state
})
)
return locations_list
azure_regions = list_azure_regions()
print(azure_regions)
는 스립트유응반환다니합답을형의 유형의 응답을 반환합니다.<class 'list'>
필요하다면 좀 더 읽기 쉬운 것으로 변환할 수도 있습니다.Windows에서 실행되는 경우 I.E:
> python .\get-azure-regions.py | ConvertFrom-Json
display_name name location state
------------ ---- -------- -----
East Asia eastasia Hong Kong active
Southeast Asia southeastasia Singapore active
Australia Central australiacentral Canberra active
Australia East australiaeast New South Wales active
Australia Southeast australiasoutheast Victoria active
China East chinaeast Shanghai active
China East 2 chinaeast2 Shanghai active
China North chinanorth Beijing active
China North 2 chinanorth2 Beijing active
China North 3 chinanorth3 Hebei active
Central India centralindia Pune active
India South Central indiasouthcentral Hyderabad active
South India southindia Chennai active
Indonesia Central indonesiacentral Jakarta planned
Japan East japaneast Tokyo, Saitama active
Japan West japanwest Osaka active
Korea Central koreacentral Seoul active
Malaysia West malaysiawest Kuala Lumpur planned
New Zealand North newzealandnorth Auckland planned
Taiwan North taiwannorth Taipei planned
Austria East austriaeast Vienna planned
Belgium Central belgiumcentral Brussels active
...
다음 REST API를 사용할 수 있습니다. https://management.azure.com/subscriptions/**YOUR_SUBSCRIPTION_ID**/providers?api -version=2020-10-01
참조:
- https://learn.microsoft.com/en-us/rest/api/resources/providers/list
- https://learn.microsoft.com/en-us/rest/api/resources/providers/listattenantscope
그러나 PowerShell 및 AZ 명령줄과 마찬가지로 지정된 구독에서 사용할 수 있는 데이터 센터 영역만 표시됩니다.
언급URL : https://stackoverflow.com/questions/44143981/is-there-an-api-to-list-all-azure-regions
'source' 카테고리의 다른 글
node.js 모듈에서 내부(내보내기 아님) 기능에 액세스하고 테스트하는 방법은 무엇입니까? (0) | 2023.05.16 |
---|---|
Pydoc으로 문서를 작성하려면 어떻게 해야 합니까? (0) | 2023.05.16 |
파일, 어셈블리 또는 종속성 중 하나를 로드할 수 없습니다. (0) | 2023.05.16 |
기존 mongodb에서 단일 컬렉션 복원 (0) | 2023.05.16 |
모든 컨트롤을 대상으로 하는 방법(WPF 스타일) (0) | 2023.05.16 |