Como fazer o backup de dados no Google Cloud Storage

Nesta página, mostraremos como fazer o backup de dados de uma máquina local para o Cloud Storage com o Cloud Tools for PowerShell. Ao contrário da maioria dos recursos, o Cloud Tools for PowerShell oferece duas maneiras de acessar os recursos do Google Cloud Storage: os cmdlets e um provedor do PowerShell.

O provedor permite acessar intervalos do Storage e objetos como um sistema de arquivos com o uso dos comandos de sistema de arquivos que você já conhece. O provedor, no entanto, tem algumas limitações. Nem todos os nomes de objeto legais são convertidos em caminhos legais para o provedor. Você não pode usar o provedor para gerenciar ACLs. Para essas casos avançados, você pode usar os cmdlets. Consulte a referência de cmdlets do Cloud Tools for PowerShell para saber mais sobre os cmdlets do Cloud Storage.

Como fazer upload de dados

Os dados no Cloud Storage são organizados em intervalos. Use o seguinte procedimento para criar um novo intervalo:

Cmdlets

Use o cmdlet New-GcsBucket para criar um novo intervalo:

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

Provedor

Intervalos são pastas na raiz da unidade gs:\. Criar um novo item nesse nível criará um novo intervalo.

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

Fazer o upload de arquivos para um intervalo

Você pode enviar um único arquivo ou um diretório inteiro para seu intervalo:

Cmdlets

Use New-GcsObject. Ele exige um intervalo de destino e um nome de objeto como parâmetros. A origem do conteúdo do objeto do novo armazenamento depende dos parâmetros usados.

Para fazer o upload do conteúdo para um arquivo local no Cloud Storage, use o parâmetro -File e especifique um caminho para o arquivo. Como alternativa, você pode transmitir o conteúdo do objeto como uma string por meio do canal do PowerShell ou com o uso do parâmetro -Value.

Para fazer upload de todo um diretório do disco local para o Cloud Storage, use o parâmetro -Folder e especifique o caminho da pasta. Se você não quiser fazer upload da pasta diretamente para a raiz do intervalo do Cloud Storage, use -ObjectNamePrefix para especificar um prefixo que será aplicado a todos os objetos enviados.

# 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"

Provedor

Use New-Item. Ele exige um caminho para o item que está sendo criado. Esse caminho pode ser absoluto ou relativo. O conteúdo do novo objeto de armazenamento pode ser especificado como uma string do parâmetro -Value ou com a especificação de um caminho de arquivo para o parâmetro -File.

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

O snippet a seguir faz o upload de um diretório inteiro do disco local para o 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
}

Como pesquisar dados

Você pode pesquisar dados com cmdlets ou com o provedor por meio dos cmdlets de pesquisa de arquivos comuns.

Cmdlets

Para pesquisar nos objetos de um intervalo, use Get-GcsObject. Ele pode ser útil quando combinado com o cmdlet Out-GridView para visualizar seus dados:

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

Provedor

É possível definir Get-ChildItem ou um dos aliases: dir, ls ou gci. Use o parâmetro -Recurse para pesquisar em todas as pastas lógicas:

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

Como ler dados

Para ler dados por meio do provedor, use o cmdlet Get-Content padrão. Como alternativa, use o cmdlet Read-GcsObject.

Cmdlets

Para ler o conteúdo de um objeto do Cloud Storage, use o cmdlet Read-GcsObject. Por padrão, ele lê o conteúdo do objeto como uma string e o grava no canal do PowerShell. Especifique o parâmetro -OutFile para fazer o download do conteúdo do objeto para a unidade local:

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

Provedor

Para ler o conteúdo de um objeto do Cloud Storage, use o cmdlet Get-Content ou um dos aliases: cat, gc ou type.

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

Como excluir dados

Para excluir dados por meio do provedor, use o cmdlet padrão Remove-Item. Como alternativa, você pode usar o cmdlet Remove-GcsObject.

Cmdlets

Para remover quaisquer dados no Cloud Storage, use o cmdlet Remove-GcsObject:

Get-GcsObject $bucket | Remove-GcsObject

Provedor

Para remover dados no Cloud Storage, use o cmdlet Remove-Item ou um destes aliases: del, rm, erase:

cd gs:\my-gcs-bucket
rm my-object-name
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Cloud Tools for PowerShell