Para transferir arquivos para instâncias de VM do Compute Engine, opções diferentes estão disponíveis, dependendo do sistema operacional da estação de trabalho e do sistema operacional da instância de VM de destino.
Transferir de | Para VMs do Linux |
---|---|
Linux ou macOS | |
Windows |
Transferir arquivos pelo Cloud Storage
Os buckets do Cloud Storage podem ser usados como um ponto de transferência entre você e suas VMs. É possível usar um navegador da Web, a CLI do Google Cloud ou uma linguagem de programação para transferir arquivos entre o Cloud Storage e as VMs do Compute Engine.
Diferentes tipos de credenciais podem ser usados para a etapa de upload e de download conforme suas necessidades:
- O acesso a dados em nome de um usuário é melhor para operações de uso único ou para recursos pelos quais você é responsável.
- Use as credenciais da conta de serviço em implantações ajustadas e cenários de recursos compartilhados.
Para transferir arquivos entre um computador e uma VM com o Cloud Storage, faça isto:
- Crie um bucket do Cloud Storage se você já não tiver um bucket para transferências de arquivos.
-
Use permissões do IAM para modificar o acesso ao bucket:
- As contas que fazem upload de arquivos para o bucket precisam ter o papel de Administrador de objetos do Storage.
- As contas que fazem o download de arquivos precisam ter o papel de Leitor de objetos do Storage.
- Faça login no dispositivo de origem e faça o upload dos arquivos no bucket.
- Faça login no dispositivo de destino e faça o download dos arquivos do bucket, concluindo a transferência.
- Opcional: exclua os arquivos que não são mais necessários para evitar cobranças indesejadas no armazenamento.
Se você precisar transferir arquivos na outra direção, reverta o processo. Verifique se a conta que está fazendo upload do arquivo tem acesso de gravação no bucket.
Transferir arquivos usando SSH no navegador
Se você conseguir estabelecer uma conexão SSH com uma VM usando o SSH no navegador, é possível usar essa conexão para transferir arquivos para e da VM.
Fazer upload para a VM
- No Console do Google Cloud, acesse a página Instâncias de VMs.
- In the list of virtual machine instances, click SSH in the row of the instance that you want to connect to.
Depois que a conexão for estabelecida, clique no ícone de upload
.A caixa de diálogo de upload será aberta.
- Escolha os arquivos para fazer upload.
- Clique em Fazer upload de arquivos para fazer upload dos arquivos. O upload
do arquivo é feito para o diretório
/home/USER
.
Fazer o download a partir da VM
- No Console do Google Cloud, acesse a página Instâncias de VMs.
- In the list of virtual machine instances, click SSH in the row of the instance that you want to connect to.
Depois que a conexão for estabelecida, clique no ícone de download
.A caixa de diálogo de download será aberta.
- Na caixa de texto Caminho, insira o caminho do arquivo relativo para download.
- Clique em Fazer download para fazer o download do arquivo. O download do arquivo é feito para a pasta de download padrão da estação de trabalho.
Transferir arquivos com o Google Cloud CLI
A Google Cloud CLI fornece um utilitário de transferência de arquivos Secure Copy Protocol (SCP) por meio de uma conexão SSH estabelecida.
Para transferir arquivos usando SCP, faça isto:
-
Revise suas regras de firewall e confirme se as conexões SSH na porta
22
são permitidas. Caso contrário, crie uma regra de firewall SSH. - Verifique se a gcloud CLI está instalada no dispositivo de origem que contém os arquivos a serem transferidos.
-
Use o comando
gcloud compute scp
para transferir os arquivos para a máquina de destino.
No exemplo a seguir, copiamos um arquivo da estação de trabalho para o diretório inicial da VM:
gcloud compute scp LOCAL_FILE_PATH VM_NAME:REMOTE_DIR
Substitua:
LOCAL_FILE_PATH
: o caminho do arquivo na sua máquinaVM_NAME
: o nome da VMREMOTE_DIR
: um diretório na máquina remota
Também é possível copiar arquivos e diretórios da máquina remota. No exemplo a seguir, copiamos de maneira recursiva um diretório da origem para o destino:
gcloud compute scp --recurse VM_NAME:REMOTE_DIR LOCAL_FILE_PATH
Para mais informações, consulte a documentação de referência do gcloud compute scp
.
Transferir arquivos usando SCP em estações de trabalho Linux e macOS
A ferramenta de linha de comando scp
funciona de maneira semelhante ao comando gcloud compute scp
, mas exige que você gerencie manualmente as chaves SSH.
Para transferir arquivos usando o SCP, é preciso que, na rede usada pela VM, exista uma regra de firewall que permita conexões SSH na porta 22
. Para verificar
se essa regra de firewall existe, procure uma regra que permita
conexões tcp:22
no console do Google Cloud.
Se você não tiver uma regra de firewall que permita conexões SSH na porta 22
,
crie a regra.
A ferramenta scp
utiliza os mesmos arquivos de chave que você usa para se conectar às instâncias com SSH padrão.
Se você ainda não aplicou uma chave pública ao projeto ou à instância de VM do console do Google Cloud, crie um par de chaves SSH e adicione a chave pública aos metadados do projeto ou da instância.
Encontre o IP externo da VM para onde você quer enviar arquivos. No console do Google Cloud, acesse a página Instâncias de VMs.
Use a ferramenta
scp
para copiar um arquivo da estação de trabalho para o diretório inicial da VM de destino. Para este exemplo, a chave privada está em~/.ssh/my-ssh-key
.scp -i ~/.ssh/my-ssh-key LOCAL_FILE_PATH USERNAME@IP_ADDRESS:~
Substitua:
LOCAL_FILE_PATH
: o nome do arquivo local que você quer fazer upload.USERNAME
: seu nome de usuário.IP-ADDRESS
: o endereço IP externo da VM.
Também é possível copiar arquivos de uma VM para a estação de trabalho local invertendo as variáveis de origem e destino. Neste exemplo, copie um arquivo da VM para um caminho na estação de trabalho.
scp -i ~/.ssh/my-ssh-key USERNAME@IP_ADDRESS:REMOTE_FILE_PATH LOCAL_FILE_PATH
Substitua:
USERNAME
: seu nome de usuário.IP_ADDRESS
: o endereço IP externo da VM.REMOTE_FILE_PATH
: o nome do arquivo remoto que você quer fazer o download.LOCAL_FILE_PATH
: o local na estação de trabalho onde você quer fazer o download do arquivo.
Transferir arquivos usando WinSCP em estações de trabalho do Windows
Nas estações de trabalho do Windows, o cliente WinSCP permite gerenciar arquivos nas instâncias por meio de uma interface gráfica do navegador de arquivos.
O WinSCP usa os mesmos arquivos de chave usados para se conectar a VMs usando o PuTTY.
Faça o seguinte se você não tiver configurado a autenticação SSH com base em chave para a instância:
Crie um par de chaves SSH usando PuTTYgen. A chave SSH particular precisa usar o formato
.ppk
, que é o padrão para chaves criadas pelo PuTTYgen.Adicione a chave SSH pública aos metadados do projeto ou da VM. Para mais informações, consulte Adicionar chaves SSH aos metadados do projeto ou Adicionar chaves SSH aos metadados da instância.
Encontre o IP externo da VM para onde você quer enviar arquivos.
- No console do Google Cloud, acesse a página Instâncias de VMs.
- Na lista de VMs, localize o endereço IP externo na coluna IP externo da sua VM.
Faça o download e instale o WinSCP (em inglês). As configurações padrão de instalação funcionam para a maioria dos usuários.
Execute o programa WinSCP. Uma janela de login será aberta. Nela, é possível definir as configurações de conexão.
No WinSCP, defina as configurações de conexão.
Selecione
SCP
como o protocolo de transferência de arquivos no campo Protocolo de arquivo.No campo Host Name, especifique o endereço IP externo da VM à qual você quer se conectar.
No campo User name, especifique o nome de usuário Google que você usou para acessar o projeto. Neste exemplo, o usuário é
example-user
.
Clique na lista suspensa Advanced para abrir as configurações avançadas e vá até SSH > Authentication.
Na caixa Private key file, especifique o caminho para o arquivo da chave privada do par de chaves SSH criado para a VM.
Clique em Ok para salvar as configurações avançadas.
Clique em Login para se conectar à VM. Se a conexão for bem-sucedida, a janela abrirá o sistema de arquivos local à esquerda e o sistema de arquivos da VM à direita. É possível acessar diferentes diretórios nesses sistemas de arquivos e arrastar os arquivos para transferi-los para a VM e a partir dela.
Você provavelmente não tem permissão para gerenciar a maioria dos arquivos fora do diretório principal da VM. Navegue até o diretório inicial da VM:
/home/USERNAME
Use a interface do WinSCP para mover arquivos entre a estação de trabalho e a VM.
Depois de copiar os arquivos para a VM, conecte-se à instância para executar ou mover arquivos com permissões
sudo
completas.
A seguir
- Conecte-se às instâncias para usar os arquivos carregados.