Konfigurowanie zasad zarządzania cyklem życia
Zarządzanie cyklem życia usługi Azure Blob Storage oferuje zasady oparte na regułach, których można użyć do przeniesienia danych obiektów blob do odpowiednich warstw dostępu lub wygaśnięcia danych na końcu cyklu życia danych. Zasady cyklu życia działają na podstawowym obiekcie blob i opcjonalnie w wersjach lub migawkach obiektu blob. Aby uzyskać więcej informacji na temat zasad zarządzania cyklem życia, zobacz Optymalizowanie kosztów przez automatyczne zarządzanie cyklem życia danych.
Zasady zarządzania cyklem życia składają się z co najmniej jednej reguły definiującej zestaw akcji do wykonania na podstawie spełnionego warunku. W przypadku podstawowego obiektu blob można sprawdzić jeden z następujących warunków:
- Liczba dni od utworzenia obiektu blob.
- Liczba dni od ostatniej modyfikacji obiektu blob.
- Liczba dni od ostatniego uzyskania dostępu do obiektu blob. Aby użyć tego warunku w akcji, należy najpierw opcjonalnie włączyć śledzenie czasu ostatniego dostępu.
Uwaga
Każda operacja modyfikując obiekt blob, w tym aktualizację metadanych lub właściwości obiektu blob, zmienia czas ostatniej modyfikacji obiektu blob.
Gdy wybrany warunek ma wartość true, zasady zarządzania wykonują określoną akcję. Jeśli na przykład zdefiniowano akcję przenoszenia obiektu blob z warstwy Gorąca do warstwy Chłodna, jeśli nie została ona zmodyfikowana przez 30 dni, zasady zarządzania cyklem życia przeniosą obiekt blob 30 dni po ostatniej operacji zapisu do tego obiektu blob.
W przypadku migawki lub wersji obiektu blob sprawdzany warunek to liczba dni od utworzenia migawki lub wersji.
Uwaga
Zasady zarządzania cyklem życia są obsługiwane w przypadku blokowych obiektów blob i uzupełnialnych obiektów blob na kontach ogólnego przeznaczenia w wersji 2, kontach blokowych obiektów blob w warstwie Premium i kontach usługi Blob Storage.
Opcjonalnie włącz śledzenie czasu dostępu
Przed skonfigurowaniem zasad zarządzania cyklem życia można włączyć śledzenie czasu dostępu do obiektów blob. Po włączeniu śledzenia czasu dostępu zasady zarządzania cyklem życia mogą obejmować akcję na podstawie czasu ostatniego uzyskania dostępu do obiektu blob za pomocą operacji odczytu lub zapisu. Aby zminimalizować wpływ na opóźnienie dostępu do odczytu, tylko pierwszy odczyt z ostatnich 24 godzin aktualizuje czas ostatniego dostępu. Kolejne operacje odczytu w tym samym 24-godzinnym okresie nie aktualizują czasu ostatniego dostępu. Jeśli obiekt blob jest modyfikowany między operacjami odczytu, czas ostatniego dostępu jest nowszym z dwóch wartości.
Jeśli śledzenie czasu ostatniego dostępu nie jest włączone, daysAfterLastAccessTimeGreaterThan używa daty włączenia zasad cyklu życia zamiast LastAccessTime
właściwości obiektu blob. Ta data jest również używana, gdy LastAccessTime
właściwość jest wartością null. Aby uzyskać więcej informacji na temat korzystania ze śledzenia czasu ostatniego dostępu, zobacz Przenoszenie danych na podstawie czasu ostatniego dostępu.
Aby włączyć śledzenie czasu ostatniego dostępu w witrynie Azure Portal, wykonaj następujące kroki:
W witrynie Azure Portal przejdź do swojego konta magazynu.
W sekcji Zarządzanie danymi wybierz pozycję Zarządzanie cyklem życia.
Zaznacz pole wyboru "Włącz śledzenie dostępu"
Użyj właściwości daysAfterLastAccessTimeGreaterThan, aby określić liczbę dni od ostatniego dostępu, po której należy wykonać akcję w obiekcie blob.
Tworzenie zasad lub zarządzanie nimi
Zasady zarządzania cyklem życia można dodawać, edytować lub usuwać za pomocą witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia platformy Azure lub szablonu usługi Azure Resource Manager.
Istnieją dwa sposoby dodawania zasad za pośrednictwem witryny Azure Portal.
Widok listy
W witrynie Azure Portal przejdź do swojego konta magazynu.
W obszarze Zarządzanie danymi wybierz pozycję Zarządzanie cyklem życia, aby wyświetlić lub zmienić zasady zarządzania cyklem życia.
Wybierz kartę Widok listy.
Wybierz pozycję Dodaj regułę i nadaj regule nazwę w formularzu Szczegóły . Można również ustawić wartości zakresu reguły, typu obiektu blob i podtypu obiektu blob. W poniższym przykładzie ustawiono zakres filtrowania obiektów blob. Powoduje to dodanie karty Zestaw filtrów.
- Wybierz pozycję Podstawowe obiekty blob , aby ustawić warunki dla reguły. W poniższym przykładzie obiekty blob są przenoszone do magazynu chłodnego, jeśli nie zostały zmodyfikowane przez 30 dni.
Opcja Ostatni dostęp jest dostępna tylko wtedy, gdy włączono śledzenie czasu dostępu i wybrano blokowe obiekty blob jako typ obiektu blob. Aby dowiedzieć się, jak włączyć śledzenie dostępu, zobacz Opcjonalne włączanie śledzenia czasu dostępu.
- Jeśli na stronie Szczegóły wybrano pozycję Ogranicz obiekty blob z filtrami, wybierz pozycję Filtr, aby dodać opcjonalny filtr. Poniższy przykład filtruje obiekty blob, których nazwa zaczyna się od logowania w kontenerze o nazwie sample-container.
- Wybierz pozycję Dodaj , aby dodać nowe zasady.
Należy pamiętać, że zasady zarządzania cyklem życia nie będą usuwać bieżącej wersji obiektu blob, dopóki nie zostaną usunięte żadne poprzednie wersje lub migawki skojarzone z tym obiektem blob. Jeśli obiekty blob na koncie magazynu mają poprzednie wersje lub migawki, podczas określania akcji usuwania w ramach zasad należy wybrać pozycję Podstawowe obiekty blob, migawki i wersje w sekcji Podtyp obiektu blob.
Widok kodu
- W witrynie Azure Portal przejdź do swojego konta magazynu.
- W obszarze Zarządzanie danymi wybierz pozycję Zarządzanie cyklem życia, aby wyświetlić lub zmienić zasady zarządzania cyklem życia.
- Wybierz kartę Widok kodu. Na tej karcie można zdefiniować zasady zarządzania cyklem życia w formacie JSON.
Poniższy przykładowy kod JSON definiuje zasady cyklu życia, które przenoszą blokowy obiekt blob, którego nazwa zaczyna się od logowania do warstwy Chłodna, jeśli od czasu modyfikacji obiektu blob minęło ponad 30 dni.
{
"rules": [
{
"enabled": true,
"name": "move-to-cool",
"type": "Lifecycle",
"definition": {
"actions": {
"baseBlob": {
"tierToCool": {
"daysAfterModificationGreaterThan": 30
}
}
},
"filters": {
"blobTypes": [
"blockBlob"
],
"prefixMatch": [
"sample-container/log"
]
}
}
}
]
}