PowerShell kullanarak Windows Server/Windows İstemcisi için Azure’a yedekleme dağıtma ve yönetme

Bu makalede, Windows Server veya Windows istemcisinde Azure Backup'ı ayarlamak ve yedekleme ile kurtarmayı yönetmek için PowerShell'in nasıl kullanılacağı gösterilmektedir.

Azure PowerShell'i yükleme

Not

Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Başlamak için en son PowerShell sürümünü yükleyin.

Kurtarma Hizmetleri kasası oluşturma

Aşağıdaki adımlar bir Kurtarma Hizmetleri kasası oluşturma işleminde size yol gösterir. Kurtarma Hizmetleri kasası, Backup kasasından farklıdır.

  1. Azure Backup'ı ilk kez kullanıyorsanız, Azure Kurtarma Hizmeti sağlayıcısını aboneliğinize kaydetmek için Register-AzResourceProvider cmdlet'ini kullanmanız gerekir.

    Register-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
    
  2. Kurtarma Hizmetleri kasası bir Azure Resource Manager kaynağıdır, bu nedenle bunu bir Kaynak Grubu içine yerleştirmeniz gerekir. Mevcut bir kaynak grubunu kullanabilir veya yeni bir kaynak grubu oluşturabilirsiniz. Yeni bir kaynak grubu oluştururken kaynak grubunun adını ve konumunu belirtin.

    New-AzResourceGroup –Name "test-rg" –Location "WestUS"
    
  3. Yeni kasayı oluşturmak için New-AzRecoveryServicesVault cmdlet'ini kullanın. Kasa için kaynak grubu için kullanılan konumu belirttiğinizden emin olun.

    New-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName " test-rg" -Location "WestUS"
    
  4. Kullanılacak depolama yedekliliği türünü belirtin. Yerel Olarak Yedekli Depolama (LRS), Coğrafi olarak yedekli Depolama (GRS) veya Alanlar arası yedekli depolama (ZRS) kullanabilirsiniz. Aşağıdaki örnek, GeoRedundant olarak ayarlanmış testVault için -Backup Depolama Redundancy seçeneğini gösterir.

    İpucu

    Çoğu Azure Backup cmdlet’i, girdi olarak Kurtarma Hizmetleri kasasını gerektirir. Bu nedenle, Backup Recovery Services kasa nesnesini bir değişkende depolamak uygundur.

    $Vault1 = Get-AzRecoveryServicesVault –Name "testVault"
    Set-AzRecoveryServicesBackupProperties -Vault $Vault1 -BackupStorageRedundancy GeoRedundant
    

Abonelikteki kasaları görüntüleme

Geçerli abonelikteki tüm kasaların listesini görüntülemek için Get-AzRecoveryServicesVault komutunu kullanın. Yeni bir kasa oluşturulup oluşturulmadığını denetlemek veya abonelikte hangi kasaların kullanılabilir olduğunu görmek için bu komutu kullanabilirsiniz.

Get-AzRecoveryServicesVault komutunu çalıştırın ve abonelikteki tüm kasalar listelenir.

Get-AzRecoveryServicesVault
Name              : Contoso-vault
ID                : /subscriptions/1234
Type              : Microsoft.RecoveryServices/vaults
Location          : WestUS
ResourceGroupName : Contoso-docs-rg
SubscriptionId    : 1234-567f-8910-abc
Properties        : Microsoft.Azure.Commands.RecoveryServices.ARSVaultProperties

MARS Aracısı'nı yükseltme

2.0.9083.0'ın altındaki Microsoft Azure Kurtarma Hizmetleri (MARS) Aracısı sürümlerinin Azure Erişim Denetimi hizmetine bağımlılığı vardır. MARS Aracısı, Azure Backup Aracısı olarak da adlandırılır.

Microsoft, 2018'de Azure Erişim Denetimi hizmetini kullanım dışı bırakılmıştır. 19 Mart 2018'de, MARS Aracısı'nın 2.0.9083.0'ın altındaki tüm sürümlerinde yedekleme hataları yaşanacaktır. Yedekleme hatalarını önlemek veya çözmek için MARS Aracınızı en son sürüme yükseltin. MARS Aracısı yükseltmesi gerektiren sunucuları belirlemek için Microsoft Azure Kurtarma Hizmetleri (MARS) aracısını yükseltme makalesindeki adımları izleyin.

MARS Aracısı, dosya ve klasörleri ve sistem durumu verilerini Azure'a yedeklemek için kullanılır. System Center DPM ve Azure Backup Sunucusu, verileri Azure'a yedeklemek için MARS Aracısı'nı kullanır.

Azure Backup aracısını yükleme

Azure Backup aracısını yüklemeden önce yükleyicinin indirilip Windows Server'da mevcut olması gerekir. Yükleyicinin en son sürümünü Microsoft İndirme Merkezi'nden veya Kurtarma Hizmetleri kasasının Pano sayfasından alabilirsiniz. Yükleyiciyi gibi C:\Downloads\*kolay erişilebilir bir konuma kaydedin.

Alternatif olarak, indiriciyi almak için PowerShell'i kullanın:

$MarsAURL = 'https://aka.ms/Azurebackup_Agent'
$WC = New-Object System.Net.WebClient
$WC.DownloadFile($MarsAURL,'C:\downloads\MARSAgentInstaller.exe')
C:\Downloads\MARSAgentInstaller.exe /q

Aracıyı yüklemek için yükseltilmiş bir PowerShell konsolunda aşağıdaki komutu çalıştırın:

MARSAgentInstaller.exe /q

Bu, aracıyı tüm varsayılan seçeneklerle yükler. Yükleme arka planda birkaç dakika sürer. /nu seçeneğini belirtmezseniz, güncelleştirmeleri denetlemek için yüklemenin sonunda Windows Update penceresi açılır. Yüklendikten sonra aracı, yüklü programlar listesinde gösterilir.

Yüklü programların listesini görmek için Denetim Masası> Programs>Programları ve Özellikleri'ne gidin.

Agent installed

Yükleme seçenekleri

Komut satırı aracılığıyla kullanılabilen tüm seçenekleri görmek için aşağıdaki komutu kullanın:

MARSAgentInstaller.exe /?

Kullanılabilir seçenekler şunlardır:

Seçenek Ayrıntılar Varsayılan
/q Sessiz yükleme -
/p:"location" Azure Backup aracısının yükleme klasörünün yolu. C:\Program Files\Microsoft Azure Recovery Services Agent
/s:"location" Azure Backup aracısı için önbellek klasörünün yolu. C:\Program Files\Microsoft Azure Kurtarma Hizmetleri Aracısı\Scratch
/M Microsoft Update'e katılma -
/Nu Yükleme tamamlandıktan sonra güncelleştirmeleri denetleme -
/D Microsoft Azure Kurtarma Hizmetleri Aracısı'nın kaldırılması -
/Ph Proxy Ana Bilgisayar Adresi -
/Po Proxy Ana Bilgisayar Bağlantı Noktası Numarası -
/Pu Proxy Ana Bilgisayarı Kullanıcı Adı -
/Pw Proxy Parolası -

Windows Server veya Windows istemci makinesini kurtarma hizmetleri kasasına kaydetme

Kurtarma Hizmetleri kasasını oluşturduktan sonra en son aracıyı ve kasa kimlik bilgilerini indirin ve C:\Downloads gibi uygun bir konumda depolayın.

$CredsPath = "C:\downloads"
$CredsFilename = Get-AzRecoveryServicesVaultSettingsFile -Backup -Vault $Vault1 -Path $CredsPath

PowerShell Az modülünü kullanarak kaydolma

Not

Az 3.5.0 sürümünde kasa sertifikası oluşturmayla ilgili bir hata düzeltildi. Kasa sertifikası indirmek için Az 3.5.0 sürüm veya üzerini kullanın.

Temel platform sınırlamaları nedeniyle PowerShell'in en son Az modülünde kasa kimlik bilgilerinin indirilmesi için otomatik olarak imzalanan bir sertifika gerekir. Aşağıdaki örnekte otomatik olarak imzalanan bir sertifika sağlama ve kasa kimlik bilgilerini indirme adımları gösterilmektedir.

$dt = $(Get-Date).ToString("M-d-yyyy")
$cert = New-SelfSignedCertificate -CertStoreLocation Cert:\CurrentUser\My -FriendlyName 'test-vaultcredentials' -subject "Windows Azure Tools" -KeyExportPolicy Exportable -NotAfter $(Get-Date).AddHours(48) -NotBefore $(Get-Date).AddHours(-24) -KeyProtection None -KeyUsage None -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.2") -Provider "Microsoft Enhanced Cryptographic Provider v1.0"
$certficate = [convert]::ToBase64String($cert.Export([System.Security.Cryptography.X509Certificates.X509ContentType]::Pfx))
$CredsFilename = Get-AzRecoveryServicesVaultSettingsFile -Backup -Vault $Vault -Path $CredsPath -Certificate $certficate

Windows Server veya Windows istemci makinesinde Start-OBRegistration cmdlet'ini çalıştırarak makineyi kasaya kaydedin. Bu ve yedekleme için kullanılan diğer cmdlet'ler, MARS AgentInstaller'ın yükleme işleminin bir parçası olarak eklediği MSONLINE modülündendir.

Aracı yükleyicisi $Env:PSModulePath değişkenini güncelleştirmez. Bu, modül otomatik yüklemenin başarısız olduğu anlamına gelir. Bu sorunu çözmek için aşağıdakileri yapabilirsiniz:

$Env:PSModulePath += ';C:\Program Files\Microsoft Azure Recovery Services Agent\bin\Modules'

Alternatif olarak, modülü betiğinize aşağıdaki gibi el ile yükleyebilirsiniz:

Import-Module -Name 'C:\Program Files\Microsoft Azure Recovery Services Agent\bin\Modules\MSOnlineBackup'

Çevrimiçi Yedekleme cmdlet'lerini yükledikten sonra kasa kimlik bilgilerini kaydedersiniz:

Start-OBRegistration -VaultCredentials $CredsFilename.FilePath -Confirm:$false
CertThumbprint      : 7a2ef2caa2e74b6ed1222a5e89288ddad438df2
SubscriptionID      : ef4ab577-c2c0-43e4-af80-af49f485f3d1
ServiceResourceName : testvault
Region              : WestUS
Machine registration succeeded.

Önemli

Kasa kimlik bilgileri dosyasını belirtmek için göreli yollar kullanmayın. Cmdlet'ine giriş olarak mutlak bir yol sağlamanız gerekir.

Ağ ayarları

Windows makinesinin İnternet bağlantısı bir ara sunucu üzerinden olduğunda, ara sunucu ayarları aracıya da sağlanabilir. Bu örnekte ara sunucu olmadığından, ara sunucuyla ilgili tüm bilgileri açıkça temizleyeceğiz.

Bant genişliği kullanımı, haftanın belirli bir gün kümesi için ve non-work hour bandwidth seçenekleriyle work hour bandwidth de denetlenebilir.

Proxy ve bant genişliği ayrıntılarını ayarlama işlemi Set-OBMachineSetting cmdlet'i kullanılarak yapılır:

Set-OBMachineSetting -NoProxy
Server properties updated successfully.
Set-OBMachineSetting -NoThrottle
Server properties updated successfully.

Şifreleme ayarları

Azure Backup'a gönderilen yedekleme verileri, verilerin gizliliğini korumak için şifrelenir. Şifreleme parolası, geri yükleme sırasında verilerin şifresini çözmek için kullanılan "parola"dır.

Azure portalının Kurtarma Hizmetleri kasası bölümündeki Ayarlar> Özellikler>Güvenlik PIN'i altında Oluştur'a tıklayarak bir güvenlik pini oluşturmanız gerekir.

Not

Güvenlik PIN'i yalnızca Azure portalı üzerinden oluşturulabilir.

Ardından bunu komutunda olarak generatedPIN kullanın:

$PassPhrase = ConvertTo-SecureString -String "Complex!123_STRING" -AsPlainText -Force
Set-OBMachineSetting -EncryptionPassPhrase $PassPhrase -SecurityPin "<generatedPIN>"
Server properties updated successfully

Önemli

Parola bilgileri ayarlandıktan sonra güvenli ve güvenli tutun. Bu parola olmadan Azure'dan verileri geri yükleyemezsiniz.

Dosya ve klasörleri yedekleme

Windows Sunucularından ve istemcilerinden Azure Backup'a yapılan tüm yedeklemeler bir ilkeye tabidir. İlke üç bölümden oluşur:

  • Yedeklemelerin ne zaman alınması ve hizmetle eşitlenmesi gerektiğini belirten bir yedekleme zamanlaması.
  • Azure'da kurtarma noktalarının ne kadar süreyle tutulduğunu belirten bir bekletme zamanlaması .
  • Nelerin yedeklenmesi gerektiğini belirleyen bir dosya ekleme/dışlama belirtimi.

Bu belgede, yedeklemeyi otomatikleştirdiğimiz için hiçbir şeyin yapılandırılmadığını varsayacağız. New-OBPolicy cmdlet'ini kullanarak yeni bir yedekleme ilkesi oluşturarak başlayacağız.

$NewPolicy = New-OBPolicy

Şu anda ilke boş ve hangi öğelerin dahil olacağını veya hariç tutulacağını, yedeklemelerin ne zaman çalıştırılacağını ve yedeklemelerin nerede depolandığını tanımlamak için diğer cmdlet'ler gereklidir.

Yedekleme zamanlamasını yapılandırma

İlkenin üç bölümünden ilki, New-OBSchedule cmdlet'i kullanılarak oluşturulan yedekleme zamanlamasıdır. Yedekleme zamanlaması, yedeklemelerin ne zaman alınması gerektiğini tanımlar. Zamanlama oluştururken iki giriş parametresi belirtmeniz gerekir:

  • Yedeklemenin çalıştırılması gereken haftanın günleri. Yedekleme işini yalnızca bir günde, haftanın her gününde veya aradaki herhangi bir birleşimde çalıştırabilirsiniz.
  • Yedeklemenin çalıştırılması gereken günün saatleri. Yedeklemenin tetiklenebileceği günün en fazla üç farklı saatini tanımlayabilirsiniz.

Örneğin, her Cumartesi ve Pazar saat 16:00'da çalışan bir yedekleme ilkesi yapılandırabilirsiniz.

$Schedule = New-OBSchedule -DaysOfWeek Saturday, Sunday -TimesOfDay 16:00

Yedekleme zamanlamasının bir ilkeyle ilişkilendirilmesi gerekir ve bu, Set-OBSchedule cmdlet'i kullanılarak gerçekleştirilebilir.

Set-OBSchedule -Policy $NewPolicy -Schedule $Schedule
BackupSchedule : 4:00 PM Saturday, Sunday, Every 1 week(s) DsList : PolicyName : RetentionPolicy : State : New PolicyState : Valid

Bekletme ilkesini yapılandırma

Bekletme ilkesi, yedekleme işlerinden oluşturulan kurtarma noktalarının ne kadar süreyle tutulduğunu tanımlar. New-OBRetentionPolicy cmdlet'ini kullanarak yeni bir bekletme ilkesi oluştururken, yedekleme kurtarma noktalarının Azure Backup ile korunacağı gün sayısını belirtebilirsiniz. Aşağıdaki örnek yedi günlük bir bekletme ilkesi ayarlar.

$RetentionPolicy = New-OBRetentionPolicy -RetentionDays 7

Bekletme ilkesi, Set-OBRetentionPolicy cmdlet'i kullanılarak ana ilkeyle ilişkilendirilmelidir:

Set-OBRetentionPolicy -Policy $NewPolicy -RetentionPolicy $RetentionPolicy
BackupSchedule  : 4:00 PM
                  Saturday, Sunday,
                  Every 1 week(s)
DsList          :
PolicyName      :
RetentionPolicy : Retention Days : 7

                  WeeklyLTRSchedule :
                  Weekly schedule is not set

                  MonthlyLTRSchedule :
                  Monthly schedule is not set

                  YearlyLTRSchedule :
                  Yearly schedule is not set

State           : New
PolicyState     : Valid

Yedeklenecek dosyaları dahil etme ve dışlama

Nesne OBFileSpec , bir yedeklemeye dahil edilecek ve dışlanacak dosyaları tanımlar. Bu, bir makinedeki korumalı dosya ve klasörlerin kapsamını belirleyen bir kural kümesidir. Gerektiği kadar dosya ekleme veya dışlama kuralına sahip olabilir ve bunları bir ilkeyle ilişkilendirebilirsiniz. Yeni bir OBFileSpec nesnesi oluştururken şunları yapabilirsiniz:

  • Eklenecek dosya ve klasörleri belirtin
  • Dışlanacak dosya ve klasörleri belirtin
  • Yalnızca belirtilen klasördeki en üst düzey dosyaların yedeklenip yedeklenmeyeceğini bir klasördeki (veya) verilerin özyinelemeli yedeklemesini belirtin.

İkincisi, New-OBFileSpec komutunda -NonRecursive bayrağı kullanılarak elde edilir.

Aşağıdaki örnekte C: ve D: birimlerini yedekleyeceğiz ve Windows klasöründeki işletim sistemi ikili dosyalarını ve geçici klasörleri hariç tutacağız. Bunu yapmak için New-OBFileSpec cmdlet'ini kullanarak iki dosya belirtimi oluşturacağız: biri dahil etmek ve diğeri dışlamak için. Dosya belirtimleri oluşturulduktan sonra, Add-OBFileSpec cmdlet'i kullanılarak ilkeyle ilişkilendirilmiştir.

$Inclusions = New-OBFileSpec -FileSpec @("C:\", "D:\")
$Exclusions = New-OBFileSpec -FileSpec @("C:\windows", "C:\temp") -Exclude
Add-OBFileSpec -Policy $NewPolicy -FileSpec $Inclusions
BackupSchedule  : 4:00 PM
                  Saturday, Sunday,
                  Every 1 week(s)
DsList          : {DataSource
                  DatasourceId:0
                  Name:C:\
                  FileSpec:FileSpec
                  FileSpec:C:\
                  IsExclude:False
                  IsRecursive:True

                  , DataSource
                  DatasourceId:0
                  Name:D:\
                  FileSpec:FileSpec
                  FileSpec:D:\
                  IsExclude:False
                  IsRecursive:True

                  }
PolicyName      :
RetentionPolicy : Retention Days : 7

                  WeeklyLTRSchedule :
                  Weekly schedule is not set

                  MonthlyLTRSchedule :
                  Monthly schedule is not set

                  YearlyLTRSchedule :
                  Yearly schedule is not set

State           : New
PolicyState     : Valid
Add-OBFileSpec -Policy $NewPolicy -FileSpec $Exclusions
BackupSchedule  : 4:00 PM
                  Saturday, Sunday,
                  Every 1 week(s)
DsList          : {DataSource
                  DatasourceId:0
                  Name:C:\
                  FileSpec:FileSpec
                  FileSpec:C:\
                  IsExclude:False
                  IsRecursive:True
                  ,FileSpec
                  FileSpec:C:\windows
                  IsExclude:True
                  IsRecursive:True
                  ,FileSpec
                  FileSpec:C:\temp
                  IsExclude:True
                  IsRecursive:True

                  , DataSource
                  DatasourceId:0
                  Name:D:\
                  FileSpec:FileSpec
                  FileSpec:D:\
                  IsExclude:False
                  IsRecursive:True

                  }
PolicyName      :
RetentionPolicy : Retention Days : 7

                  WeeklyLTRSchedule :
                  Weekly schedule is not set

                  MonthlyLTRSchedule :
                  Monthly schedule is not set

                  YearlyLTRSchedule :
                  Yearly schedule is not set

State           : New
PolicyState     : Valid

İlkeyi uygulama

Artık ilke nesnesi tamamlandı ve ilişkili bir yedekleme zamanlaması, bekletme ilkesi ve dosyaların dahil edilmesi/dışlanması listesi var. Bu ilke artık Azure Backup'ın kullanması için işlenebilir. Yeni oluşturulan ilkeyi uygulamadan önce Remove-OBPolicy cmdlet'ini kullanarak sunucuyla ilişkilendirilmiş mevcut yedekleme ilkesi olmadığından emin olun. İlkenin kaldırılması onay ister. Onayı atlamak için cmdlet'iyle -Confirm:$false bayrağını kullanın.

Not

Güvenlik PIN'i ayarlamayı isterse cmdlet'i çalıştırırken Yöntem 1 bölümüne bakın.

Get-OBPolicy | Remove-OBPolicy
Microsoft Azure Backup Are you sure you want to remove this backup policy? This will delete all the backed up data. [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

İlke nesnesinin işlenmesi Set-OBPolicy cmdlet'i kullanılarak yapılır. Bu ayrıca onay ister. Onayı atlamak için cmdlet'iyle -Confirm:$false bayrağını kullanın.

Set-OBPolicy -Policy $NewPolicy
Microsoft Azure Backup Do you want to save this backup policy ? [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
BackupSchedule : 4:00 PM Saturday, Sunday, Every 1 week(s)
DsList : {DataSource
         DatasourceId:4508156004108672185
         Name:C:\
         FileSpec:FileSpec
         FileSpec:C:\
         IsExclude:False
         IsRecursive:True,

         FileSpec
         FileSpec:C:\windows
         IsExclude:True
         IsRecursive:True,

         FileSpec
         FileSpec:C:\temp
         IsExclude:True
         IsRecursive:True,

         DataSource
         DatasourceId:4508156005178868542
         Name:D:\
         FileSpec:FileSpec
         FileSpec:D:\
         IsExclude:False
         IsRecursive:True
    }
PolicyName : c2eb6568-8a06-49f4-a20e-3019ae411bac
RetentionPolicy : Retention Days : 7
              WeeklyLTRSchedule :
              Weekly schedule is not set

              MonthlyLTRSchedule :
              Monthly schedule is not set

              YearlyLTRSchedule :
              Yearly schedule is not set
State : Existing PolicyState : Valid

Get-OBPolicy cmdlet'ini kullanarak mevcut yedekleme ilkesinin ayrıntılarını görüntüleyebilirsiniz. Yedekleme zamanlaması için Get-OBSchedule cmdlet'ini ve bekletme ilkeleri için Get-OBRetentionPolicy cmdlet'ini kullanarak detaya gidebilirsiniz

Get-OBPolicy | Get-OBSchedule
SchedulePolicyName : 71944081-9950-4f7e-841d-32f0a0a1359a
ScheduleRunDays : {Saturday, Sunday}
ScheduleRunTimes : {16:00:00}
State : Existing
Get-OBPolicy | Get-OBRetentionPolicy
RetentionDays : 7
RetentionPolicyName : ca3574ec-8331-46fd-a605-c01743a5265e
State : Existing
Get-OBPolicy | Get-OBFileSpec
FileName : *
FilePath : \?\Volume{b835d359-a1dd-11e2-be72-2016d8d89f0f}\
FileSpec : D:\
IsExclude : False
IsRecursive : True

FileName : *
FilePath : \?\Volume{cdd41007-a22f-11e2-be6c-806e6f6e6963}\
FileSpec : C:\
IsExclude : False
IsRecursive : True

FileName : *
FilePath : \?\Volume{cdd41007-a22f-11e2-be6c-806e6f6e6963}\windows
FileSpec : C:\windows
IsExclude : True
IsRecursive : True

FileName : *
FilePath : \?\Volume{cdd41007-a22f-11e2-be6c-806e6f6e6963}\temp
FileSpec : C:\temp
IsExclude : True
IsRecursive : True

İsteğe bağlı yedekleme gerçekleştirme

Bir yedekleme ilkesi ayarlandıktan sonra yedeklemeler zamanlamaya göre gerçekleşir. Start-OBBackup cmdlet'i kullanılarak isteğe bağlı yedekleme tetikleme de mümkündür:

Get-OBPolicy | Start-OBBackup
Initializing
Taking snapshot of volumes...
Preparing storage...
Generating backup metadata information and preparing the metadata VHD...
Data transfer is in progress. It might take longer since it is the first backup and all data needs to be transferred...
Data transfer completed and all backed up data is in the cloud. Verifying data integrity...
Data transfer completed
In progress...
Job completed.
The backup operation completed successfully.

MARS aracısında Windows Server Sistem Durumunu yedekleme

Bu bölüm, MARS aracısında Sistem Durumunu ayarlamak için PowerShell komutunu kapsar

Zamanla

$sched = New-OBSchedule -DaysOfWeek Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday -TimesOfDay 2:00

Bekletme

$rtn = New-OBRetentionPolicy -RetentionDays 32 -RetentionWeeklyPolicy -RetentionWeeks 13 -WeekDaysOfWeek Sunday -WeekTimesOfDay 2:00  -RetentionMonthlyPolicy -RetentionMonths 13 -MonthDaysOfMonth 1 -MonthTimesOfDay 2:00

Zamanlamayı ve saklamayı yapılandırma

New-OBPolicy | Add-OBSystemState |  Set-OBRetentionPolicy -RetentionPolicy $rtn | Set-OBSchedule -Schedule $sched | Set-OBSystemStatePolicy

İlkeyi doğrulama

Get-OBSystemStatePolicy

Azure Backup'tan verileri geri yükleme

Bu bölüm, Azure Backup'tan verilerin kurtarılmasını otomatikleştirme adımları boyunca size yol gösterir. Bunu yapmak için aşağıdaki adımlar gerekir:

  1. Kaynak birimi seçin
  2. Geri yükleneceği bir yedekleme noktası seçin
  3. Geri yükleneceği öğeyi belirtme
  4. Geri yükleme işlemini tetikleme

Kaynak birimi seçme

Azure Backup'tan bir öğeyi geri yüklemek için önce öğenin kaynağını tanımlamanız gerekir. Komutları bir Windows Server veya Windows istemcisi bağlamında yürütürken makine zaten tanımlanmıştır. Kaynağı tanımlamanın bir sonraki adımı, kaynağı içeren birimi tanımlamaktır. Bu makineden yedeklenen birimlerin veya kaynakların listesi Get-OBRecoverableSource cmdlet'i yürütülerek alınabilir. Bu komut, bu sunucudan/istemciden yedeklenen tüm kaynaklardan oluşan bir dizi döndürür.

$Source = Get-OBRecoverableSource
$Source
FriendlyName : C:\
RecoverySourceName : C:\
ServerName : myserver.microsoft.com

FriendlyName : D:\
RecoverySourceName : D:\
ServerName : myserver.microsoft.com

Geri yükleneceği bir yedekleme noktası seçme

Get-OBRecoverableItem cmdlet'ini uygun parametrelerle yürüterek yedekleme noktalarının listesini alırsınız. Örneğimizde, C: kaynak birimi için en son yedekleme noktasını seçip belirli bir dosyayı kurtarmak için kullanacağız.

$Rps = Get-OBRecoverableItem $Source[0]
$Rps

IsDir                : False
ItemNameFriendly     : C:\
ItemNameGuid         : \\?\Volume{297cbf7a-0000-0000-0000-401f00000000}\
LocalMountPoint      : C:\
MountPointName       : C:\
Name                 : C:\
PointInTime          : 10/17/2019 7:52:13 PM
ServerName           : myserver.microsoft.com
ItemSize             :
ItemLastModifiedTime :

IsDir                : False
ItemNameFriendly     : C:\
ItemNameGuid         : \\?\Volume{297cbf7a-0000-0000-0000-401f00000000}\
LocalMountPoint      : C:\
MountPointName       : C:\
Name                 : C:\
PointInTime          : 10/16/2019 7:00:19 PM
ServerName           : myserver.microsoft.com
ItemSize             :
ItemLastModifiedTime :

nesnesi $Rps bir yedekleme noktası dizisidir. İlk öğe en son noktadır ve N. öğesi en eski noktadır. En son noktayı seçmek için kullanacağız $Rps[0].

Geri yükleneceği öğeyi belirtme

Belirli bir dosyayı geri yüklemek için, kök birime göre dosya adını belirtin. Örneğin, C:\Test\Cat.job dosyasını almak için aşağıdaki komutu yürütür.

$Item = New-OBRecoverableItem $Rps[0] "Test\cat.jpg" $FALSE
$Item
IsDir                : False
ItemNameFriendly     : C:\Test\cat.jpg
ItemNameGuid         :
LocalMountPoint      : C:\
MountPointName       : C:\
Name                 : cat.jpg
PointInTime          : 10/17/2019 7:52:13 PM
ServerName           : myserver.microsoft.com
ItemSize             :
ItemLastModifiedTime : 21-Jun-14 6:43:02 AM

Geri yükleme işlemini tetikleme

Geri yükleme işlemini tetikleyebilmek için öncelikle kurtarma seçeneklerini belirtmemiz gerekir. Bu, New-OBRecoveryOption cmdlet'i kullanılarak yapılabilir. Bu örnekte, dosyaları C:\temp dizinine geri yüklemek istediğimizi varsayalım. Ayrıca, C:\temp hedef klasöründe zaten var olan dosyaları atlamak istediğimizi de varsayalım. Böyle bir kurtarma seçeneği oluşturmak için aşağıdaki komutu kullanın:

$RecoveryOption = New-OBRecoveryOption -DestinationPath "C:\temp" -OverwriteType Skip

Şimdi cmdlet'in çıktısından Get-OBRecoverableItem seçilende $Item Start-OBRecovery komutunu kullanarak geri yükleme işlemini tetikleyin:

Start-OBRecovery -RecoverableItem $Item -RecoveryOption $RecoveryOption
Estimating size of backup items...
Estimating size of backup items...
Estimating size of backup items...
Estimating size of backup items...
Job completed.
The recovery operation completed successfully.

Bölgeler Arası Geri Yükleme

Bölgeler Arası Geri Yükleme (CRR), MARS yedekleme verilerini azure eşleştirilmiş bir bölge olan ikincil bir bölgeden geri yüklemenize olanak tanır. Bu, denetim ve uyumluluk için tatbikatlar gerçekleştirmenizi ve olağanüstü durum durumunda Azure'da birincil bölgenin kullanılamaması sırasında verileri kurtarmanızı sağlar.

Özgün sunucu geri yükleme

İkincil bölgeden (Bölgeler Arası Geri Yükleme) özgün sunucu için geri yükleme gerçekleştiriyorsanız, nesneyi alırken bayrağını UseSecondaryRegionOBRecoverableSource kullanın.

$sources = Get-OBRecoverableSource -UseSecondaryRegion
$RP = Get-OBRecoverableItem -Source $sources[0]
$RO = New-OBRecoveryOption -DestinationPath $RecoveryPath -OverwriteType Overwrite
Start-OBRecovery -RecoverableItem $RP -RecoveryOption $RO -Async | ConvertTo-Json

Alternatif sunucu geri yükleme

İkincil bölgeden (Bölgeler Arası Geri Yükleme) alternatif bir sunucu için geri yükleme gerçekleştiriyorsanız, Azure portalından ikincil bölge kasası kimlik bilgileri dosyasını indirin ve geri yükleme için ikincil bölge kasası kimlik bilgilerini geçirin.

$serverName = ‘myserver.mycompany.com’
$secVaultCred = “C:\Users\myuser\Downloads\myvault_Mon Jul 17 2023.VaultCredentials”
$passphrase = ‘Default Passphrase’
$alternateServers = Get-OBAlternateBackupServer -VaultCredentials $secVaultCred
$altServer = $alternateServers[2] | Where-Object {$_.ServerName -Like $serverName}
$pwd = ConvertTo-SecureString -String $passphrase -AsPlainText -Force
$sources = Get-OBRecoverableSource $altServer
$RP = Get-OBRecoverableItem -Source $sources[0]
$RO = New-OBRecoveryOption
Start-OBRecoveryMount -RecoverableItem $RP -RecoveryOption $RO -EncryptionPassphrase $pwd  -Async | ConvertTo-Json 

Azure Backup aracısını kaldırma

Azure Backup aracısını kaldırma işlemi aşağıdaki komut kullanılarak yapılabilir:

.\MARSAgentInstaller.exe /d /q

Aracı ikili dosyalarının makineden kaldırılmasının dikkate alınması gereken bazı sonuçlar vardır:

  • Dosya filtresini makineden kaldırır ve değişikliklerin izlenmesi durdurulur.
  • Tüm ilke bilgileri makineden kaldırılır, ancak ilke bilgileri hizmette depolanmaya devam eder.
  • Tüm yedekleme zamanlamaları kaldırılır ve başka yedekleme yapılmaz.

Ancak Azure'da depolanan veriler, saklama ilkesi kurulumuna göre korunur ve korunur. Eski noktalar otomatik olarak eskir.

Uzaktan yönetim

Azure Backup aracısı, ilkeleri ve veri kaynaklarıyla ilgili tüm yönetimler PowerShell aracılığıyla uzaktan yapılabilir. Uzaktan yönetilecek makinenin doğru hazırlanması gerekir.

Varsayılan olarak, WinRM hizmeti el ile başlatma için yapılandırılır. Başlangıç türü Otomatik olarak ayarlanmalıdır ve hizmet başlatılmalıdır. WinRM hizmetinin çalıştığını doğrulamak için Status özelliğinin değeri Çalışıyor olmalıdır.

Get-Service -Name WinRM
Status   Name               DisplayName
------   ----               -----------
Running  winrm              Windows Remote Management (WS-Manag...

PowerShell uzaktan iletişim için yapılandırılmalıdır.

Enable-PSRemoting -Force
WinRM is already set up to receive requests on this computer.
WinRM has been updated for remote management.
WinRM firewall exception enabled.
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force

Makine artık aracı yüklemesinden başlayarak uzaktan yönetilebilir. Örneğin, aşağıdaki betik aracıyı uzak makineye kopyalar ve yükler.

$DLoc = "\\REMOTESERVER01\c$\Windows\Temp"
$Agent = "\\REMOTESERVER01\c$\Windows\Temp\MARSAgentInstaller.exe"
$Args = "/q"
Copy-Item "C:\Downloads\MARSAgentInstaller.exe" -Destination $DLoc -Force

$Session = New-PSSession -ComputerName REMOTESERVER01
Invoke-Command -Session $Session -Script { param($D, $A) Start-Process -FilePath $D $A -Wait } -ArgumentList $Agent, $Args

Sonraki adımlar

Windows Server/İstemci için Azure Backup hakkında daha fazla bilgi için: