Mencadangkan data ke Cloud Storage

Halaman ini menunjukkan cara mencadangkan data dari komputer lokal ke Cloud Storage menggunakan Cloud Tools for PowerShell. Tidak seperti sebagian besar resource, Cloud Tools for PowerShell menyediakan dua cara untuk mengakses resource Cloud Storage, yaitu cmdlet dan penyedia PowerShell.

Penyedia ini memungkinkan Anda mengakses bucket dan objek Storage seperti sistem file, menggunakan perintah sistem file yang sudah Anda pahami. Namun, penyedia ini memiliki beberapa batasan. Tidak semua nama objek hukum dikonversi ke jalur penyedia hukum. Anda tidak dapat menggunakan penyedia untuk mengelola ACL. Untuk kasus lanjutan ini, Anda dapat menggunakan cmdlet. Lihat referensi cmdlet Cloud Tools for PowerShell untuk mempelajari cmdlet Cloud Storage lebih lanjut.

Mengupload data

Data di Cloud Storage diatur ke dalam bucket. Buat bucket baru sebagai berikut:

Cmdlets

Gunakan cmdlet New-GcsBucket untuk membuat bucket baru:

$bucket = "my-gcs-bucket"
New-GcsBucket $bucket

Penyedia

Bucket adalah folder di root drive gs:\. Membuat item baru di tingkat tersebut akan membuat bucket baru.

cd gs:\
$bucket = "my-gcs-bucket"
mkdir $bucket

Mengupload file ke bucket

Anda dapat mengupload satu file atau seluruh direktori ke bucket:

Cmdlets

Menggunakan New-GcsObject. Tindakan ini memerlukan bucket tujuan dan nama objek sebagai parameter. Sumber konten objek Penyimpanan baru bergantung pada kumpulan parameter yang Anda gunakan.

Anda dapat mengupload konten file lokal ke Cloud Storage dengan menggunakan parameter -File dan menentukan jalur file. Atau, Anda dapat meneruskan konten objek sebagai string melalui pipeline PowerShell, atau Anda dapat menggunakan parameter -Value.

Anda dapat mengupload seluruh direktori dari disk lokal ke Cloud Storage menggunakan parameter -Folder dan menentukan jalur folder. Jika Anda tidak ingin folder diupload langsung ke root bucket Cloud Storage, gunakan -ObjectNamePrefix untuk menentukan awalan yang akan diterapkan ke setiap objek yang diupload.

# Upload the folder LogFiles and its content to the root of the widget bucket.
New-GcsObject -Bucket "widget" -Folder "C:\inetpub\logs\LogFiles"

# Upload the folder LogFiles and its content to directory Test in the widget bucket.
New-GcsObject -Bucket "widget" -Folder "C:\inetpub\logs\LogFiles" -ObjectNamePrefix "Test"

Penyedia

Menggunakan New-Item. Ini memerlukan jalur ke item yang sedang dibuat. Jalur ini dapat berupa jalur absolut atau jalur relatif. Konten Objek Penyimpanan baru dapat ditentukan sebagai string ke parameter -Value atau dengan menentukan jalur file ke parameter -File.

New-Item gs:\my-gcs-bucket\new-object -File $file

Cuplikan berikut mengupload seluruh direktori dari disk lokal ke Cloud Storage.

cd $folder
$files = Get-ChildItem -Recurse
$data = @()
foreach ($file in $files) {
      $objectPath = $file | Resolve-Path -Relative
      $data += @{file = $file; objectPath = $objectPath}
}
cd gs:\my-gcs-bucket
foreach($element in $data) {
      Write-Host "`t${$element.objectPath}"
      New-Item $element.objectPath -File $element.file
}

Menelusuri data

Anda dapat menelusuri data dengan cmdlet, atau dengan penyedia melalui cmdlet penelusuran file umum.

Cmdlets

Anda dapat menelusuri objek bucket menggunakan Get-GcsObject. Hal ini dapat berguna jika digabungkan dengan cmdlet Out-GridView untuk memvisualisasikan data Anda:

Get-GcsObject $bucket | Select Name, Size | Out-GridView

Penyedia

Anda dapat menggunakan Get-ChildItem atau salah satu aliasnya: dir, ls, atau gci. Anda dapat menggunakan parameter -Recurse untuk mencari dalam semua folder logis:

cd gs:\my-gcs-bucket
ls -Recurse

Membaca data

Untuk membaca data melalui penyedia, gunakan cmdlet Get-Content standar. Atau, gunakan cmdlet Read-GcsObject.

Cmdlets

Untuk membaca konten objek Cloud Storage, gunakan cmdlet Read-GcsObject. Secara default, fungsi ini membaca konten objek sebagai string dan menulisnya ke pipeline PowerShell. Anda dapat menentukan parameter -OutFile untuk mendownload konten objek ke disk lokal sebagai gantinya:

Read-GcsObject $bucket "timestamp.txt" | Write-Host
Read-GcsObject $bucket "logo.png" `
    -OutFile "$Env:UserProfile\pictures\logo.png"

Penyedia

Untuk membaca konten objek Cloud Storage, gunakan cmdlet Get-Content, atau salah satu aliasnya: cat, gc, atau type.

cd gs:\my-gcs-bucket
cat my-object-name

Menghapus data

Untuk menghapus data melalui penyedia, gunakan cmdlet Remove-Item standar. Atau, gunakan cmdlet Remove-GcsObject.

Cmdlets

Untuk menghapus data apa pun di Cloud Storage, gunakan cmdlet Remove-GcsObject:

Get-GcsObject $bucket | Remove-GcsObject

Penyedia

Untuk menghapus data di Cloud Storage, gunakan cmdlet Remove-Item, atau salah satu aliasnya, del, rm, erase:

cd gs:\my-gcs-bucket
rm my-object-name