Leaseshare
De Lease Share
bewerking brengt een vergrendeling van een Azure-bestandsshare of een momentopname van een share tot stand en beheert deze. Deze API wordt volledig ondersteund, maar het is een verouderde beheer-API. Gebruik in plaats daarvan Bestandsshares - Lease, geleverd door de opslagresourceprovider (Microsoft.Storage). Zie Bewerkingen op FileShares voor meer informatie over het programmatisch communiceren met FileShare
resources met behulp van de opslagresourceprovider.
De vergrendelingsduur kan 15 tot 60 seconden of oneindig zijn. U kunt de Lease Share
bewerking aanroepen in een van de volgende modi:
-
Acquire
: Om een nieuwe lease aan te vragen. -
Renew
: Om een bestaande lease te verlengen. -
Change
: de id van een bestaande lease wijzigen. -
Release
: om de lease vrij te maken als deze niet meer nodig is, zodat een andere client onmiddellijk een lease kan verkrijgen voor de bestandsshare. -
Break
: Om de lease te beëindigen, maar ervoor te zorgen dat een andere klant geen nieuwe lease kan verkrijgen totdat de huidige leaseperiode is verstreken.
Notitie
De Lease Share
bewerking is beschikbaar in versie 2020-02-10 en hoger.
Protocol beschikbaarheid
Bestandsshareprotocol ingeschakeld | Beschikbaar |
---|---|
SMB | |
NFS |
Aanvraag
U kunt de Lease Share
aanvraag als volgt samenstellen. HTTPS wordt aanbevolen. Vervang myaccount door de naam van uw opslagaccount.
Methode | Aanvraag-URI | HTTP-versie |
---|---|---|
PUT |
https://myaccount.file.core.windows.net/myshare?comp=lease&restype=share |
HTTP/1.1 |
PUT |
https://myaccount.file.core.windows.net/myshare?comp=lease&sharesnapshot=<DateTime>&restype=share |
HTTP/1.1 |
URI-parameters
U kunt de volgende extra parameter opgeven voor de aanvraag-URI.
Parameter | Beschrijving |
---|---|
timeout |
Optioneel. De timeout parameter wordt uitgedrukt in seconden. Zie Time-outs instellen voor Azure Files bewerkingen voor meer informatie. |
Aanvraagheaders
In de volgende tabel worden vereiste en optionele aanvraagheaders beschreven.
Aanvraagheader | Beschrijving |
---|---|
Authorization |
Vereist. Hiermee geeft u het autorisatieschema, de accountnaam en de handtekening. Zie Aanvragen voor Azure Storage autoriseren voor meer informatie. |
Date of x-ms-date |
Vereist. Geef de Coordinated Universal Time (UTC) op voor de aanvraag. Zie Aanvragen voor Azure Storage autoriseren voor meer informatie. |
x-ms-version |
Optioneel. Hiermee geeft u de versie van de bewerking te gebruiken voor deze aanvraag. Zie Versiebeheer voor de Azure Storage-services voor meer informatie. |
x-ms-lease-id: <ID> |
Vereist om de lease te verlengen, te wijzigen of vrij te geven. U kunt de waarde van x-ms-lease-id opgeven in een geldige GUID-tekenreeksindeling. Zie Guid Constructor (String) voor een lijst met geldige notaties. |
x-ms-lease-action: <action> |
acquire : Vraagt een nieuwe lease aan. Als de bestandsshare geen actieve lease heeft, maakt Azure Files een lease voor de bestandsshare en retourneert een nieuwe lease-id. Als de bestandsshare een actieve lease heeft, kunt u alleen een nieuwe lease aanvragen met behulp van de actieve lease-id. U kunt echter een nieuwe x-ms-lease duration opgeven, inclusief een negatieve (-1) voor een lease die nooit verloopt.renew : Vernieuwt de lease. U kunt de lease verlengen als de lease-id die is opgegeven in de aanvraag overeenkomt met de lease-id die is gekoppeld aan de bestandsshare. Houd er rekening mee dat u de lease kunt verlengen, zelfs als deze is verlopen, zolang de bestandsshare niet opnieuw is geleased sinds het verlopen van die lease. Wanneer u een lease verlengt, wordt de klok voor de leaseduur opnieuw ingesteld.change : Wijzig de lease-id van een actieve lease. Een change moet de huidige lease-id in x-ms-lease-id bevatten en een nieuwe lease-id in x-ms-proposed-lease-id .release : laat de lease los. U kunt de lease vrijgeven als de lease-id die is opgegeven in de aanvraag overeenkomt met de lease-id die is gekoppeld aan de bestandsshare. Door de lease vrij te geven, kan een andere client onmiddellijk de lease voor de bestandsshare verkrijgen zodra de release is voltooid.break : verbreek de lease als de bestandsshare een actieve lease heeft. Nadat een lease is verbroken, kan deze niet worden verlengd. Elke geautoriseerde aanvraag kan de lease verbreken. De aanvraag is niet vereist om een overeenkomende lease-id op te geven. Wanneer een lease wordt verbroken, mag de lease-onderbrekingsperiode verlopen. break Dit release zijn de enige bewerkingen die u in deze periode op de bestandsshare kunt uitvoeren. Wanneer een lease is verbroken, geeft het antwoord het interval in seconden aan totdat een nieuwe lease kan worden verkregen.Een gebroken lease kan ook worden vrijgegeven. Een client kan onmiddellijk een lease van een bestandsshare verkrijgen die is vrijgegeven. |
x-ms-lease-break-period: N |
Optioneel. Voor een break bewerking is dit de voorgestelde duur die de lease moet voortzetten voordat deze wordt onderbroken, in seconden, tussen 0 en 60. Deze onderbrekingsperiode wordt alleen gebruikt als deze korter is dan de resterende tijd van de lease. Als het langer is, wordt de resterende tijd van de lease gebruikt. Een nieuwe lease is niet beschikbaar voordat de onderbrekingsperiode is verstreken, maar de lease kan langer worden vastgehouden dan de onderbrekingsperiode. Als deze header niet wordt weergegeven met een break bewerking, breekt een lease met een vaste duur na het verstrijken van de resterende leaseperiode en een oneindige lease onmiddellijk. |
x-ms-lease-duration: -1 |
Vereist voor acquire . Hiermee geeft u de duur van de lease, in seconden, of een negatieve (-1) voor een lease die nooit verloopt. Een niet-oneindige lease kan tussen 15 en 60 seconden duren. Een leaseduur kan niet worden gewijzigd met behulp van renew of change . |
x-ms-proposed-lease-id: <ID> |
Optioneel voor acquire en vereist voor change . Voorgestelde lease-id, in een GUID-tekenreeksindeling. Azure Blob Storage retourneert 400 (Invalid request) als de voorgestelde lease-id niet de juiste indeling heeft. Zie Guid Constructor (String) voor een lijst met geldige notaties. |
Origin |
Optioneel. Hiermee geeft u de oorsprong van waaruit de aanvraag wordt uitgegeven. De aanwezigheid van deze header resulteert in CORS-headers (Cross-Origin Resource Sharing) in het antwoord. Zie CORS-ondersteuning voor de Storage-services voor meer informatie. |
x-ms-client-request-id |
Optioneel. Biedt een door de client gegenereerde, ondoorzichtige waarde met een limiet van 1 kibibyte (KiB) die wordt vastgelegd in de logboeken wanneer logboekregistratie is geconfigureerd. We raden u ten zeerste aan deze header te gebruiken om activiteiten aan de clientzijde te correleren met aanvragen die de server ontvangt. Zie Azure Files bewaken voor meer informatie. |
Aanvraagbody
Geen.
Voorbeeldaanvraag
De volgende voorbeeldaanvraag laat zien hoe u een lease kunt verkrijgen:
Request Syntax:
PUT https://myaccount.file.core.windows.net/myshare?restype=share&comp=lease HTTP/1.1
Request Headers:
x-ms-version: 2020-02-10
x-ms-lease-action: acquire
x-ms-lease-duration: -1
x-ms-proposed-lease-id: 1f812371-a41d-49e6-b123-f4b542e851c5
x-ms-date: Thu, 26 Jan 2012 23:30:18 GMT
Authorization: SharedKey testaccount1:esSKMOYdK4o+nGTuTyeOLBI+xqnqi6aBmiW4XI699+o=
Antwoord
Het antwoord bevat een HTTP-statuscode en een set antwoordheaders.
Statuscode
De geslaagde statuscodes die worden geretourneerd voor leasebewerkingen zijn de volgende:
-
Acquire
: een geslaagde bewerking retourneert statuscode 201 (gemaakt). -
Renew
: Een geslaagde bewerking retourneert statuscode 200 (OK). -
Change
: Een geslaagde bewerking retourneert statuscode 200 (OK). -
Release
: Een geslaagde bewerking retourneert statuscode 200 (OK). -
Break
: Een geslaagde bewerking retourneert statuscode 202 (Geaccepteerd).
Zie Status- en foutcodes voor meer informatie over statuscodes.
Antwoordheaders
Het antwoord voor deze bewerking bevat de volgende headers. Het antwoord kan ook extra, standaard HTTP-headers bevatten. Alle standaardheaders voldoen aan de HTTP/1.1-protocolspecificatie.
Syntax | Beschrijving |
---|---|
ETag |
De ETag voor de bestandsshare. |
Last-Modified |
Retourneert de datum en tijd waarop de bestandsshare voor het laatst is gewijzigd. Zie Weergave van datum-tijdwaarden in kopteksten voor meer informatie. Elke bewerking die de bestandsshare of de eigenschappen of metagegevens wijzigt, werkt het tijdstip van de laatste wijziging bij. Dit omvat het instellen van de machtigingen van de bestandsshare. Bewerkingen op blobs hebben geen invloed op het tijdstip van de laatste wijziging van de bestandsshare. |
x-ms-lease-id: <id> |
Wanneer u een lease aanvraagt, retourneert Azure Files een unieke lease-id. Zolang de lease actief is, moet u de lease-id opnemen bij elke aanvraag om de bestandsshare te verwijderen of om de lease te verlengen, te wijzigen of vrij te geven. Een geslaagde verlengingsbewerking retourneert ook de lease-id voor de actieve lease. |
x-ms-lease-time: seconds |
Geschatte resterende tijd in de leaseperiode, in seconden. Deze header wordt alleen geretourneerd voor een geslaagde aanvraag om de lease te verbreken. Als de onderbreking onmiddellijk is, 0 wordt geretourneerd. |
x-ms-request-id |
Uniek identificeert de aanvraag die is gedaan en kan worden gebruikt voor het oplossen van problemen met de aanvraag. Zie Problemen met API-bewerkingen oplossen voor meer informatie. |
x-ms-version |
Geeft de versie aan van de FileREST-API die wordt gebruikt om de aanvraag uit te voeren. |
Date |
Een UTC-datum/tijd-waarde die de tijd aangeeft waarop het antwoord is gestart. De service genereert deze waarde. |
Access-Control-Allow-Origin |
Wordt geretourneerd als de aanvraag een Origin header bevat en CORS is ingeschakeld met een overeenkomende regel. Deze header retourneert de waarde van de aanvraagheader van de oorsprong in het geval van een overeenkomst. |
Access-Control-Expose-Headers |
Wordt geretourneerd als de aanvraag een Origin header bevat en CORS is ingeschakeld met een overeenkomende regel. Retourneert de lijst met antwoordheaders die moeten worden weergegeven voor de client of verlener van de aanvraag. |
Access-Control-Allow-Credentials |
Wordt geretourneerd als de aanvraag een Origin header bevat en CORS is ingeschakeld met een overeenkomende regel die niet alle origins toestaat. Deze header is ingesteld op true . |
x-ms-client-request-id |
Kan worden gebruikt om problemen met aanvragen en bijbehorende antwoorden op te lossen. De waarde van deze header is gelijk aan de waarde van de x-ms-client-request-id header, als deze aanwezig is in de aanvraag. De waarde is maximaal 1024 zichtbare ASCII-tekens. Als de x-ms-client-request-id header niet aanwezig is in de aanvraag, is deze niet aanwezig in het antwoord. |
Hoofdtekst van de reactie
Geen.
Voorbeeldantwoord
Hier volgt een voorbeeldantwoord voor een aanvraag voor het verkrijgen van een lease:
Response Status:
HTTP/1.1 201 Created
Response Headers:
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: cc6b209a-b593-4be1-a38a-dde7c106f402
x-ms-version: 2020-02-10
x-ms-lease-id: 1f812371-a41d-49e6-b123-f4b542e851c5
Date: Thu, 26 Jan 2012 23:30:18 GMT
Autorisatie
Alleen de accounteigenaar kan deze bewerking aanroepen.
Opmerkingen
Een lease van een bestandsshare biedt exclusieve verwijderingstoegang tot de bestandsshare. Bewerkingen voor het ophalen van bestandsshares worden uitgevoerd op een leasebestandsshare, zonder de lease-id op te slaan. Voor het instellen van bestandssharebewerkingen is de lease-id van de bestandsshare vereist. Als de lease-id niet is opgenomen in bewerkingen voor het instellen van bestandsshares, mislukt de bewerking met 412 (voorwaarde is mislukt). De lease wordt verleend voor de duur die is opgegeven bij het verkrijgen van de lease, van 15 tot 60 seconden of een oneindige duur.
Wanneer een klant een lease verkrijgt, wordt een lease-id geretourneerd. Azure Files genereert een lease-id als er geen is opgegeven in de acquire-aanvraag. De client kan deze lease-id gebruiken om de lease te verlengen, de lease-id te wijzigen of de lease vrij te geven. In het volgende diagram ziet u de vijf statussen van een lease en de opdrachten of gebeurtenissen die wijzigingen in de leasestatus veroorzaken.
Een lease kan zich in een van deze statussen bevinden, afhankelijk van of de lease is vergrendeld of ontgrendeld, en of de lease in die status kan worden verlengd. De leaseacties die in het voorgaande diagram worden weergegeven, veroorzaken statusovergangen.
Verlengingsstatus | Vergrendelde lease | Ontgrendelde lease |
---|---|---|
Hernieuwbare lease | Geleasd | Verlopen |
Niet-hernieuwbare lease | Breken | Defect, beschikbaar |
-
Available
, wordt de lease ontgrendeld en kan worden verkregen. Toegestane actie:acquire
. -
Leased
, is de lease vergrendeld. Toegestane acties:acquire
(alleen dezelfde lease-id),renew
,change
,release
enbreak
. -
Expired
, is de leaseduur verlopen. Toegestane acties:acquire
,renew
,release
enbreak
. -
Breaking
, is de lease verbroken, maar de lease blijft vergrendeld totdat de onderbrekingsperiode is verstreken. Toegestane acties:release
enbreak
. -
Broken
, de lease is verbroken en de onderbrekingsperiode is verlopen. Toegestane acties:acquire
,release
enbreak
.
Azure Files behoudt de lease-id nadat een lease van een bestandsshare is verlopen. Een client kan de lease verlengen of vrijgeven met behulp van de verlopen lease-id. Als de client probeert een verlopen lease met de vorige lease-id te vernieuwen of vrij te geven en de aanvraag mislukt, betekent dit dat de bestandsshare opnieuw is geleased of verwijderd sinds de lease voor het laatst actief was. Als een lease verloopt in plaats van expliciet te worden vrijgegeven, moet een client mogelijk maximaal één minuut wachten voordat een nieuwe lease kan worden verkregen voor de bestandsshare. De client kan de lease echter onmiddellijk verlengen met de verlopen lease-id.
De eigenschap van de Last-Modified-Time
bestandsshare wordt niet bijgewerkt door aanroepen naar Lease Share
.
De volgende tabellen tonen de resultaten van acties op containers met leases in verschillende leasestatussen. Letters (A), (B) en (C) vertegenwoordigen lease-id's en (X) vertegenwoordigt een lease-id die wordt gegenereerd door Azure Files.
Resultaten van gebruikspogingen op shares per leasestatus
Actie | Beschikbaar | Geleased (A) | Fouten maken (A) | Gebroken (A) | Verlopen (A) |
---|---|---|---|---|---|
Verwijderen met (A) | Mislukt (412) | Geleased (A), verwijderen is geslaagd | Fouten maken (A), verwijderen is geslaagd | Mislukt (412) | Mislukt (412) |
Verwijderen met (B) | Mislukt (412) | Mislukt (409) | Mislukt (412) | Mislukt (412) | Mislukt (412) |
Verwijderen, geen lease opgegeven | Beschikbaar, verwijderen is geslaagd | Mislukt (412) | Mislukt (412) | Beschikbaar, verwijderen is geslaagd | Beschikbaar, verwijderen is geslaagd |
Andere bewerkingen met (A) | Mislukt (412) | Geleased (A), bewerking is geslaagd | Breken (A), bewerking is geslaagd | Mislukt (412) | Mislukt (412) |
Andere bewerkingen met (B) | Mislukt (412) | Mislukt (409) | Mislukt (409) | Mislukt (412) | Mislukt (412) |
Bewerkingen, geen lease opgegeven | Beschikbaar, bewerking slaagt | Geleased (A), bewerking is geslaagd | Breken (A), bewerking is geslaagd | Verbroken (A), is de bewerking geslaagd | Verlopen (A), de bewerking is voltooid |
Resultaten van leasebewerkingen op aandelen per leasestatus
Actie | Beschikbaar | Geleased (A) | Brekend (A) | Gebroken (A) | Verlopen (A) |
---|---|---|---|---|---|
Acquire , geen voorgestelde lease-id |
Geleased (X) | Mislukt (409) | Mislukt (409) | Geleased (X) | Geleased (X) |
Acquire (A) |
Geleased (A) | Geleased (A), nieuwe duur | Mislukt (409) | Geleased (A) | Geleased (A) |
Acquire (B) |
Geleased (B) | Mislukt (409) | Mislukt (409) | Geleased (B) | Geleased (B) |
Break , punt =0 |
Mislukt (409) | Gebroken (A) | Gebroken (A) | Gebroken (A) | Gebroken (A) |
Break , punt>0 |
Mislukt (409) | Brekend (A) | Brekend (A) | Gebroken (A) | Gebroken (A) |
Change , (A) tot (B) |
Mislukt (409) | Geleased (B) | Mislukt (409) | Mislukt (409) | Mislukt (409) |
Change , (B) tot (A) |
Mislukt (409) | Geleased (A) | Mislukt (409) | Mislukt (409) | Mislukt (409) |
Change , (B) tot (C) |
Mislukt (409) | Mislukt (409) | Mislukt (409) | Mislukt (409) | Mislukt (409) |
Renew (A) |
Mislukt (409) | Geleased (A), verloopklok opnieuw instellen | Mislukt (409) | Mislukt (409) | Geleased (A) |
Renew (B) |
Mislukt (409) | Mislukt (409) | Mislukt (409) | Mislukt (409) | Mislukt (409) |
Release (A) |
Mislukt (409) | Beschikbaar | Beschikbaar | Beschikbaar | Beschikbaar |
Release (B) |
Mislukt (409) | Mislukt (409) | Mislukt (409) | Mislukt (409) | Mislukt (409) |
Duur verloopt | Beschikbaar | Verlopen (A) | Gebroken (A) | Gebroken (A) | Verlopen (A) |