Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure NetApp Files hizmeti için REST API, NetApp hesabı, kapasite havuzu, birimler ve anlık görüntüler gibi kaynaklara karşı HTTP işlemlerini tanımlar. Bu makale, Azure NetApp Files REST API'sini kullanmaya başlamanıza yardımcı olur.
Azure NetApp Files REST API belirtimi
Azure NetApp Files için REST API belirtimi GitHub aracılığıyla yayımlanır:
https://github.com/Azure/azure-rest-api-specs/tree/main/specification/netapp/resource-manager
Değerlendirmeler
API sınırı aşıldığında HTTP yanıt kodu 429'dur. Örneğin:
"Microsoft.Azure.ResourceProvider.Common.Exceptions.ResourceProviderException: Error getting Pool. Rate limit exceeded for this endpoint - try again later ---> CloudVolumes.Service.Client.Client.ApiException: Error calling V2DescribePool: {\"code\":429,\"message\":\"Rate limit exceeded for this endpoint - try again later\"}Bu yanıt kodu azaltma veya geçici bir koşuldan gelebilir. Daha fazla bilgi için bkz. Azure Resource Manager HTTP 429 yanıt kodu .
Azure NetApp Files REST API'sine erişme
Henüz yapmadıysanız Azure CLI'yi yükleyin.
Microsoft Entra Kimliğinizde bir hizmet sorumlusu oluşturun:
Yeterli izinlere sahip olduğunuzu doğrulayın.
Azure CLI'ya aşağıdaki komutu girin:
az ad sp create-for-rbac --name $YOURSPNAMEGOESHERE --role Contributor --scopes /subscriptions/{subscription-id}Komut çıktısı aşağıdaki örneğe benzer:
{ "appId": "appIDgoeshere", "displayName": "APPNAME", "name": "http://APPNAME", "password": "supersecretpassword", "tenant": "tenantIDgoeshere" }Komut çıkışını koruyun. ,
passwordvetenantdeğerlerineappIdihtiyacınız olacaktır.
OAuth erişim belirteci isteyin:
Bu makaledeki örneklerde cURL kullanılır. Postman, Uykusuzluk ve Paw gibi çeşitli API araçlarını da kullanabilirsiniz.
Aşağıdaki örnekteki değişkenleri yukarıdaki 2. adımdaki komut çıkışıyla değiştirin.
curl -X POST -d 'grant_type=client_credentials&client_id=[APP_ID]&client_secret=[PASSWORD]&resource=https%3A%2F%2Fmanagement.azure.com%2F' https://login.microsoftonline.com/[TENANT_ID]/oauth2/tokenÇıkış, aşağıdaki örneğe benzer bir erişim belirteci sağlar:
eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Im5iQ3dXMTF3M1hrQi14VWFYd0tSU0xqTUhHUSIsImtpZCI6Im5iQ3dXMTF3M1hrQi14VWFYd0tSU0xqTUhHUSJ9Görüntülenen belirteç 3600 saniye boyunca geçerlidir. Bundan sonra yeni bir belirteç istemeniz gerekir. Belirteci bir metin düzenleyicisine kaydedin. Sonraki adım için buna ihtiyacınız olacak.
Rest API'ye erişiminizi doğrulamak için bir test çağrısı gönderin ve belirteci ekleyin:
curl -X GET -H "Authorization: Bearer [TOKEN]" -H "Content-Type: application/json" https://management.azure.com/subscriptions/[SUBSCRIPTION_ID]/providers/Microsoft.Web/sites?api-version=2022-05-01
API'yi kullanan örnekler
Bu makalede, isteklerin temeli için aşağıdaki URL kullanılır. Bu URL, Azure NetApp Files ad alanının kökünü gösterir.
https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts?api-version=2022-05-01
Aşağıdaki örneklerde yer alan ve RESOURCEGROUPGOESHERE değerlerini kendi değerlerinizle değiştirmelisinizSUBIDGOESHERE.
GET isteği örnekleri
Aşağıdaki örneklerde gösterildiği gibi, abonelikteki Azure NetApp Files nesnelerini sorgulamak için GET isteği kullanırsınız:
#get NetApp accounts
curl -X GET -H "Authorization: Bearer TOKENGOESHERE" -H "Content-Type: application/json" https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts?api-version=2022-05-01
#get capacity pools for NetApp account
curl -X GET -H "Authorization: Bearer TOKENGOESHERE" -H "Content-Type: application/json" https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts/NETAPPACCOUNTGOESHERE/capacityPools?api-version=2022-05-01
#get volumes in NetApp account & capacity pool
curl -X GET -H "Authorization: Bearer TOKENGOESHERE" -H "Content-Type: application/json" https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts/NETAPPACCOUNTGOESHERE/capacityPools/CAPACITYPOOLGOESHERE/volumes?api-version=2022-05-01
#get snapshots for a volume
curl -X GET -H "Authorization: Bearer TOKENGOESHERE" -H "Content-Type: application/json" https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts/NETAPPACCOUNTGOESHERE/capacityPools/CAPACITYPOOLGOESHERE/volumes/VOLUMEGOESHERE/snapshots?api-version=2022-05-01
PUT isteği örnekleri
Aşağıdaki örneklerde gösterildiği gibi, Azure NetApp Files'da yeni nesneler oluşturmak için PUT isteği kullanırsınız. PUT isteğinin gövdesi, değişiklikler için JSON biçimli verileri içerebilir. Curl komutuna metin veya başvuru olarak dosya olarak eklenmelidir. Gövdeye dosya olarak başvurmak için json örneğini bir dosyaya kaydedin ve curl komutuna ekleyin -d @<filename> .
#create a NetApp account
curl -d @<filename> -X PUT -H "Authorization: Bearer TOKENGOESHERE" -H "Content-Type: application/json" https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts/NETAPPACCOUNTGOESHERE?api-version=2022-05-01
#create a capacity pool
curl -d @<filename> -X PUT -H "Authorization: Bearer TOKENGOESHERE" -H "Content-Type: application/json" https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts/NETAPPACCOUNTGOESHERE/capacityPools/CAPACITYPOOLGOESHERE?api-version=2022-05-01
#create a volume
curl -d @<filename> -X PUT -H "Authorization: Bearer TOKENGOESHERE" -H "Content-Type: application/json" https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts/NETAPPACCOUNTGOESHERE/capacityPools/CAPACITYPOOLGOESHERE/volumes/MYNEWVOLUME?api-version=2022-05-01
#create a volume snapshot
curl -d @<filename> -X PUT -H "Authorization: Bearer TOKENGOESHERE" -H "Content-Type: application/json" https://management.azure.com/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.NetApp/netAppAccounts/NETAPPACCOUNTGOESHERE/capacityPools/CAPACITYPOOLGOESHERE/volumes/MYNEWVOLUME/Snapshots/SNAPNAME?api-version=2022-05-01
JSON örnekleri
Aşağıdaki örnekte NetApp hesabının nasıl oluşturulacağı gösterilmektedir:
{
"name": "MYNETAPPACCOUNT",
"type": "Microsoft.NetApp/netAppAccounts",
"location": "westus2",
"properties": {
"name": "MYNETAPPACCOUNT"
}
}
Aşağıdaki örnekte kapasite havuzunun nasıl oluşturulacağı gösterilmektedir:
{
"name": "MYNETAPPACCOUNT/POOLNAME",
"type": "Microsoft.NetApp/netAppAccounts/capacityPools",
"location": "westus2",
"properties": {
"name": "POOLNAME",
"size": "4398046511104",
"serviceLevel": "Premium"
}
}
Aşağıdaki örnekte yeni birimin nasıl oluşturulacağı gösterilmektedir. (Birimin varsayılan protokolü NFSV3'tür.)
{
"name": "MYNEWVOLUME",
"type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes",
"location": "westus2",
"properties": {
"serviceLevel": "Premium",
"usageThreshold": "322122547200",
"creationToken": "MY-FILEPATH",
"snapshotId": "",
"subnetId": "/subscriptions/SUBIDGOESHERE/resourceGroups/RESOURCEGROUPGOESHERE/providers/Microsoft.Network/virtualNetworks/VNETGOESHERE/subnets/MYDELEGATEDSUBNET.sn"
}
}
Aşağıdaki örnekte birimin anlık görüntüsünün nasıl oluşturulacağı gösterilmektedir:
{
"name": "apitest2/apiPool01/apiVol01/snap02",
"type": "Microsoft.NetApp/netAppAccounts/capacityPools/Volumes/Snapshots",
"location": "westus2",
"properties": {
"name": "snap02",
"fileSystemId": "0168704a-bbec-da81-2c29-503825fe7420"
}
}
Uyarı
Anlık görüntü oluşturmak için belirtmeniz fileSystemId gerekir. GET isteğiyle bir birimdeki fileSystemId değerini alabilirsiniz.