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:
- As credenciais da conta de usuário são melhores para operações de uso único ou para os 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 do Console do Google Cloud ou à instância de VM, crie um par de chaves SSH e adicione a chave pública ao projeto ou metadados de 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.