Dela via


Låneresurs

Åtgärden Lease Share upprättar och hanterar ett lås på en Azure-filresurs eller en resursögonblicksbild. Det här API:et stöds fullt ut, men det är ett äldre hanterings-API. Använd i stället Filresurser – Lån som tillhandahålls av lagringsresursprovidern (Microsoft.Storage). Mer information om hur du interagerar programmatiskt med resurser med FileShare hjälp av lagringsresursprovidern finns i Åtgärder på Filresurser.

Låsets varaktighet kan vara mellan 15 och 60 sekunder, eller så kan den vara oändlig. Du kan anropa åtgärden Lease Share i något av följande lägen:

  • Acquire: Så här begär du ett nytt lån.
  • Renew: Förnya ett befintligt lån.
  • Change: Ändra ID:t för ett befintligt lån.
  • Release: För att frigöra lånet om det inte längre behövs, så att en annan klient omedelbart kan skaffa ett lån mot filresursen.
  • Break: Avsluta lånet, men se till att en annan klient inte kan skaffa ett nytt lån förrän den aktuella låneperioden har gått ut.

Anteckning

Åtgärden Lease Share är tillgänglig i version 2020-02-10 och senare.

Protokolltillgänglighet

Aktiverat filresursprotokoll Tillgängligt
SMB Ja
NFS Yes

Förfrågan

Du kan skapa begäran på Lease Share följande sätt. HTTPS rekommenderas. Ersätt myaccount med namnet på ditt lagringskonto.

Metod URI för förfrågan HTTP-version
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-parametrar

Du kan ange följande ytterligare parameter i begärande-URI:n.

Parameter Beskrivning
timeout Valfritt. Parametern timeout uttrycks i sekunder. Mer information finns i Ställa in tidsgränser för Azure Files åtgärder.

Begärandehuvuden

I följande tabell beskrivs obligatoriska och valfria begärandehuvuden.

Begärandehuvud Beskrivning
Authorization Krävs. Anger auktoriseringsschema, kontonamn och signatur. Mer information finns i Auktorisera begäranden till Azure Storage.
Date eller x-ms-date Krävs. Anger Coordinated Universal Time (UTC) för begäran. Mer information finns i Auktorisera begäranden till Azure Storage.
x-ms-version Valfritt. Anger vilken version av åtgärden som ska användas för den här begäran. Mer information finns i Versionshantering för Azure Storage-tjänsterna.
x-ms-lease-id: <ID> Krävs för att förnya, ändra eller frigöra lånet.

Du kan ange värdet x-ms-lease-id för i valfritt giltigt GUID-strängformat. En lista över giltiga format finns i Guid-konstruktor (sträng ).
x-ms-lease-action: <action> acquire: Begär ett nytt lån. Om filresursen inte har ett aktivt lån skapar Azure Files ett lån på filresursen och returnerar ett nytt låne-ID. Om filresursen har ett aktivt lån kan du bara begära ett nytt lån med hjälp av det aktiva låne-ID:t. Du kan dock ange en ny x-ms-lease duration, inklusive negativ (-1) för ett lån som aldrig upphör att gälla.

renew: Förnyar lånet. Du kan förnya lånet om det låne-ID som anges i begäran matchar det som är associerat med filresursen. Observera att du kan förnya lånet även om det har upphört att gälla, så länge filresursen inte har hyrts igen sedan lånet löpte ut. När du förnyar ett lån återställs lånetidsklockan.

change: Ändra låne-ID för ett aktivt lån. Ett change måste innehålla det aktuella låne-ID:t i x-ms-lease-idoch ett nytt låne-ID i x-ms-proposed-lease-id.

release: Frigör lånet. Du kan frigöra lånet om det låne-ID som anges i begäran matchar det som är associerat med filresursen. När lånet släpps kan en annan klient omedelbart hämta lånet för filresursen så snart versionen är klar.

break: Avbryt lånet om filresursen har ett aktivt lån. När ett lån har brutits kan det inte förnyas. Alla auktoriserade begäranden kan avbryta lånet. Begäran krävs inte för att ange ett matchande låne-ID. När ett lån bryts kan låneperioden förflutit och breakrelease är de enda åtgärder som du kan utföra på filresursen under den här tiden. När ett lån har brutits anger svaret intervallet i sekunder tills ett nytt lån kan förvärvas.

Ett lån som har brutits kan också frisläppas. En klient kan omedelbart hämta ett filresurslån som har frisläppts.
x-ms-lease-break-period: N Valfritt. För en break åtgärd är detta den föreslagna varaktigheten som lånet ska fortsätta innan det bryts, i sekunder, mellan 0 och 60. Den här brytperioden används bara om den är kortare än den tid som återstår för lånet. Om den är längre används den återstående tiden för lånet. Ett nytt lån är inte tillgängligt innan avbrottsperioden har gått ut, men lånet kan behållas längre än brytperioden. Om det här huvudet inte visas med en break åtgärd bryts ett lån med fast varaktighet efter att den återstående låneperioden har gått ut och ett oändligt lån bryts omedelbart.
x-ms-lease-duration: -1 Krävs för acquire. Anger lånets varaktighet, i sekunder eller negativt (-1) för ett lån som aldrig upphör att gälla. Ett icke-oändligt lån kan vara mellan 15 och 60 sekunder. En lånetid kan inte ändras med hjälp renew av eller change.
x-ms-proposed-lease-id: <ID> Valfritt för acquireoch krävs för change. Föreslaget låne-ID i ett GUID-strängformat. Azure Blob Storage returnerar 400 (Invalid request) om det föreslagna låne-ID:t inte har rätt format. En lista över giltiga format finns i Guid-konstruktor (sträng ).
Origin Valfritt. Anger ursprunget som begäran utfärdas från. Förekomsten av det här huvudet resulterar i CORS-huvuden (cross-origin resource sharing) i svaret. Mer information finns i CORS-stöd för Lagringstjänster .
x-ms-client-request-id Valfritt. Tillhandahåller ett klientgenererat, täckande värde med en teckengräns på 1 kibibyte (KiB) som registreras i loggarna när loggning har konfigurerats. Vi rekommenderar starkt att du använder det här huvudet för att korrelera aktiviteter på klientsidan med begäranden som servern tar emot. Mer information finns i Övervaka Azure Files.

Begärandetext

Inga.

Exempelbegäran

Följande exempelbegäran visar hur du skaffar ett lån:

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=  

Svarsåtgärder

Svaret innehåller en HTTP-statuskod och en uppsättning svarshuvuden.

Statuskod

Statuskoderna för lyckade lån som returneras för låneåtgärder är följande:

  • Acquire: En lyckad åtgärd returnerar statuskoden 201 (skapad).
  • Renew: En lyckad åtgärd returnerar statuskoden 200 (OK).
  • Change: En lyckad åtgärd returnerar statuskoden 200 (OK).
  • Release: En lyckad åtgärd returnerar statuskoden 200 (OK).
  • Break: En lyckad åtgärd returnerar statuskoden 202 (godkänd).

Information om statuskoder finns i Status och felkoder.

Svarshuvuden

Svaret för den här åtgärden innehåller följande rubriker. Svaret kan också innehålla ytterligare standard-HTTP-huvuden. Alla standardhuvuden överensstämmer med HTTP/1.1-protokollspecifikationen.

Syntax Description
ETag ETag För filresursen.
Last-Modified Returnerar datum och tid då filresursen senast ändrades. Mer information finns i Representation av datum-tidsvärden i rubriker.

Alla åtgärder som ändrar filresursen, dess egenskaper eller metadata, uppdaterar den senast ändrade tiden. Detta inkluderar att ange filresursens behörigheter. Åtgärder på blobar påverkar inte den senast ändrade tiden för filresursen.
x-ms-lease-id: <id> När du begär ett lån returnerar Azure Files ett unikt låne-ID. När lånet är aktivt måste du inkludera låne-ID:t med en begäran om att ta bort filresursen eller förnya, ändra eller frigöra lånet.

En lyckad förnyelseåtgärd returnerar också låne-ID:t för det aktiva lånet.
x-ms-lease-time: seconds Ungefärlig tid som återstår i låneperioden, i sekunder. Det här huvudet returneras endast för en lyckad begäran om att avbryta lånet. Om pausen är omedelbar 0 returneras.
x-ms-request-id Identifierar unikt den begäran som gjordes och kan användas för att felsöka begäran. Mer information finns i Felsöka API-åtgärder.
x-ms-version Anger vilken version av FileREST-API:et som används för att köra begäran.
Date Ett UTC-datum/tid-värde som anger den tid då svaret initierades. Tjänsten genererar det här värdet.
Access-Control-Allow-Origin Returneras om begäran innehåller ett Origin huvud och CORS är aktiverat med en matchande regel. Det här huvudet returnerar värdet för ursprungsbegärans huvud vid en matchning.
Access-Control-Expose-Headers Returneras om begäran innehåller ett Origin huvud och CORS är aktiverat med en matchande regel. Returnerar listan över svarshuvuden som ska exponeras för klienten eller utfärdaren av begäran.
Access-Control-Allow-Credentials Returneras om begäran innehåller ett Origin huvud och CORS är aktiverat med en matchande regel som inte tillåter alla ursprung. Det här huvudet är inställt på true.
x-ms-client-request-id Kan användas för att felsöka begäranden och motsvarande svar. Värdet för det här huvudet är lika med värdet för x-ms-client-request-id huvudet, om det finns i begäran. Värdet är högst 1 024 synliga ASCII-tecken. x-ms-client-request-id Om rubriken inte finns i begäran visas den inte i svaret.

Själva svaret

Inga.

Exempelsvar

Följande är ett exempelsvar för en begäran om att skaffa ett lån:

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  

Auktorisering

Endast kontoägaren kan anropa den här åtgärden.

Kommentarer

Ett lån på en filresurs ger exklusiv borttagningsåtkomst till filresursen. Hämta filresursåtgärder lyckas på en hyrd filresurs, utan att inkludera låne-ID:t. Ange filresursåtgärder kräver filresursens låne-ID. Om låne-ID:t inte ingår i de angivna filresursåtgärderna misslyckas åtgärden med 412 (Villkoret misslyckades). Lånet beviljas för den tidsperiod som anges när lånet förvärvas, vilket kan vara mellan 15 och 60 sekunder eller en oändlig varaktighet.

När en klient skaffar ett lån returneras ett låne-ID. Azure Files genererar ett låne-ID om ett inte anges i begäran om att hämta. Klienten kan använda det här låne-ID:t för att förnya lånet, ändra sitt låne-ID eller frigöra lånet. Följande diagram visar de fem tillstånden för ett lån och de kommandon eller händelser som orsakar ändringar i lånetillståndet.

Diagram över filresursens lånetillstånd och utlösare för tillståndsändring.

Ett lån kan vara i något av dessa tillstånd, baserat på om lånet är låst eller olåst och om lånet kan förnyas i det tillståndet. Låneåtgärderna som visas i föregående diagram orsakar tillståndsövergångar.

Förnyelsestatus Låst lån Upplåst lån
Förnybart lån Leasade Upphörd
Icke-förnybart lån Bryta Bruten, tillgänglig
  • Availableär lånet upplåst och kan förvärvas. Tillåten åtgärd: acquire.
  • Leasedär lånet låst. Tillåtna åtgärder: acquire (endast samma låne-ID), renew, change, releaseoch break.
  • Expiredhar lånetiden upphört att gälla. Tillåtna åtgärder: acquire, renew, releaseoch break.
  • Breakinghar lånet brutits, men lånet fortsätter att vara låst tills avbrottsperioden har gått ut. Tillåtna åtgärder: release och break.
  • Brokenhar lånet brutits och brytperioden har upphört att gälla. Tillåtna åtgärder: acquire, releaseoch break.

Azure Files behåller låne-ID:t när ett filresurslån har upphört att gälla. En klient kan förnya eller frigöra lånet med sitt utgångna låne-ID. Om klienten försöker förnya eller släppa ett utgånget lån med sitt tidigare låne-ID och begäran misslyckas innebär det att filresursen hyrdes igen eller togs bort eftersom lånet senast var aktivt. Om ett lån upphör att gälla i stället för att uttryckligen släppas kan en klient behöva vänta upp till en minut innan ett nytt lån kan förvärvas för filresursen. Klienten kan dock förnya lånet med det utgångna låne-ID:t omedelbart.

Filresursens Last-Modified-Time egenskap uppdateras inte av anrop till Lease Share.

Följande tabeller visar resultatet av åtgärder för containrar med lån i olika lånetillstånd. Bokstäver (A), (B) och (C) representerar låne-ID:n och (X) representerar ett låne-ID som genereras av Azure Files.

Utfall av användningsförsök på resurser efter lånetillstånd

Åtgärd Tillgängligt Leasad (A) Icke-bakåtkompatibelt (A) Bruten (A) Har upphört att gälla (A)
Ta bort med (A) Misslyckas (412) Leasad (A), borttagning lyckas Icke-bakåtkompatibelt (A) och borttagningen lyckas Misslyckas (412) Misslyckas (412)
Ta bort med (B) Misslyckas (412) Misslyckas (409) Misslyckas (412) Misslyckas (412) Misslyckas (412)
Ta bort, inget lån har angetts Tillgänglig, borttagningen lyckas Misslyckas (412) Misslyckas (412) Tillgänglig, borttagningen lyckas Tillgänglig, borttagningen lyckas
Andra åtgärder med (A) Misslyckas (412) Leasad (A), åtgärden lyckas Icke-bakåtkompatibelt (A), åtgärden lyckas Misslyckas (412) Misslyckas (412)
Andra åtgärder med (B) Misslyckas (412) Misslyckas (409) Misslyckas (409) Misslyckas (412) Misslyckas (412)
Åtgärder, inget lån har angetts Tillgänglig, åtgärden lyckas Leasad (A), åtgärden lyckas Icke-bakåtkompatibelt (A), åtgärden lyckas Bruten (A), åtgärden lyckas Förfallen (A), åtgärden lyckas

Utfall av leasingåtgärder på resurser efter lånetillstånd

Åtgärd Tillgängligt Leasad (A) Icke-bakåtkompatibelt (A) Bruten (A) Har upphört att gälla (A)
Acquire, inget föreslaget låne-ID Leasad (X) Misslyckas (409) Misslyckas (409) Leasad (X) Leasad (X)
Acquire (A) Leasad (A) Leasad (A), ny varaktighet Misslyckas (409) Leasad (A) Leasad (A)
Acquire (B) Leasad (B) Misslyckas (409) Misslyckas (409) Leasad (B) Leasad (B)
Break, period=0 Misslyckas (409) Bruten (A) Bruten (A) Bruten (A) Bruten (A)
Break, period>0 Misslyckas (409) Icke-bakåtkompatibelt (A) Icke-bakåtkompatibelt (A) Bruten (A) Bruten (A)
Change, (A) till (B) Misslyckas (409) Leasad (B) Misslyckas (409) Misslyckas (409) Misslyckas (409)
Change, (B) till (A) Misslyckas (409) Leasad (A) Misslyckas (409) Misslyckas (409) Misslyckas (409)
Change, (B) till (C) Misslyckas (409) Misslyckas (409) Misslyckas (409) Misslyckas (409) Misslyckas (409)
Renew (A) Misslyckas (409) Leasad (A), återställning av utgångsklocka Misslyckas (409) Misslyckas (409) Leasad (A)
Renew (B) Misslyckas (409) Misslyckas (409) Misslyckas (409) Misslyckas (409) Misslyckas (409)
Release (A) Misslyckas (409) Tillgängligt Tillgängligt Tillgängligt Tillgängligt
Release (B) Misslyckas (409) Misslyckas (409) Misslyckas (409) Misslyckas (409) Misslyckas (409)
Varaktigheten upphör att gälla Tillgängligt Har upphört att gälla (A) Bruten (A) Bruten (A) Har upphört att gälla (A)