Nesta página, descrevemos as etapas para criar e provisionar uma Partner Interconexão entre nuvens para conexão do Amazon Web Services (AWS) iniciada em Google Cloud.
Se você não tiver uma chave de ativação da AWS, poderá iniciar e provisionar uma interconexão entre nuvens por parceiro para uma conexão da AWS em Google Cloud.
Antes de iniciar o processo de provisionamento do Partner Interconexão entre nuvens para AWS, verifique se as seguintes condições foram atendidas:
- Você já precisa ter uma conta da Amazon Web Services.
- Você também precisa criar uma rede de nuvem privada virtual (VPC), se ela ainda não existir, para conectar seu transporte.
Para ter uma conexão bem-sucedida, crie o recurso transport.
Siga estas instruções para criar o transporte.
Antes de começar
Antes de começar, leia as seções a seguir.
Criar ou selecionar um projeto
Para facilitar a configuração da Partner Interconexão entre nuvens para AWS, identifique um projeto válido.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
-
Para inicializar a gcloud CLI, execute o seguinte comando:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
-
Para inicializar a gcloud CLI, execute o seguinte comando:
gcloud init Se você estiver usando a Google Cloud CLI, defina o ID do projeto usando o comando
gcloud config set.gcloud config set project PROJECT_ID
Substitua
PROJECT_IDpelo ID exclusivo do seu projeto.As instruções da CLI gcloud nesta página presumem que você tenha definido o ID do projeto.
Para confirmar se você definiu o ID do projeto corretamente, use o comando
gcloud config list.gcloud config list --format='text(core.project)'
No console do Google Cloud , acesse a página da API Network Connectivity.
Clique em Ativar.
PROJECT: o nome do projeto.LOCATION: o nome da região Google Cloud em que você quer provisionar a conectividade, comous-west1.PROJECT: o nome do projeto em que você quer criar o transporte.LOCATION: o nome da região Google Cloud em que você quer provisionar a conectividade, comous-west1.TRANSPORT_ID: um nome para o recurso de transporte.NETWORK: a rede em que você quer criar o transporte.REMOTE_PROFILE: o perfil em que você quer provisionar a conectividadeBANDWIDTH: a largura de banda escolhida para sua conexão, comoBPS_1GAWS_ACCOUNT_ID: o ID da sua conta da AWSIP_RANGE: uma lista separada por vírgulas de intervalos de endereços IPSTACK_TYPE(opcional): tipo de pilha da versão do endereço IP. Precisa serIPV4_ONLYouIPV4_IPV6. O padrão éIPV4_ONLY.LOCATION: o nome da região Google Cloud em que você quer provisionar a conectividade, comous-west1.OPERATION_ID: o ID da operação- O valor do campo
generatedActivationKey - O valor do campo
peeringNetwork TRANSPORT_NAME: o nome do transporte que você criou.VPC_NETWORK: o nome da rede VPC para listar as rotasPEERING_NETWORK: o nome da rede VPC fornecida pelo recursoTransportque você copiou do campopeeringNetworkdo recursotransport.PROJECT: o nome do projeto que você está fazendo peering.NETWORK: o nome do recurso de rede a que adicionar peering.TRANSPORT_ID: o nome do recurso de transporte.NETWORK: o nome da rede VPC para listar as tabelas de rotasLOCATION: o local do recurso de transportePROJECTcom o nome do projeto para o qual você quer listar as rotas.NETWORK: o nome da rede VPC para listar as tabelas de rotas- Para encontrar respostas para perguntas comuns sobre a arquitetura e os recursos do Cloud Interconnect, consulte as Perguntas frequentes sobre o Cloud Interconnect.
- Para saber mais sobre o Cloud Interconnect, consulte a visão geral do Cloud Interconnect.
- Para saber mais sobre as práticas recomendadas ao planejar e configurar o Cloud Interconnect, consulte Práticas recomendadas.
- Para encontrar nomes de recursos Google Cloud , consulte as APIs do Cloud Interconnect.
Ativar a API Network Connectivity
Antes de executar qualquer tarefa do Cloud Interconnect, é necessário ativar a API Network Connectivity.
Console
Para ativar a API Network Connectivity, faça o seguinte:
Como alternativa, é possível ativar a API usando a biblioteca de APIs do console doGoogle Cloud , conforme descrito em Como ativar APIs.
Inicie a conexão em Google Cloud se você não tiver uma chave de ativação
Listar perfis disponíveis
Para listar os perfis disponíveis em um projeto específico na região em que você quer provisionar a conectividade, siga estas etapas.
API
Use o método networkconnectivity.remoteTransportProfiles.list com um corpo de solicitação vazio.
$ curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://networkconnectivity.googleapis.com/v1beta/projects/PROJECT/locations/LOCATION/remoteTransportProfiles"
Substitua os seguintes valores:
Criar o recurso transport
Durante o processo de criação do recurso transport, é necessário especificar os campos largura de banda, rede, remoteProfile e remoteAccountId. advertisedRoutes é um campo opcional, mas é necessário especificá-lo para garantir a conectividade da AWS. Esse campo pode ser uma lista de sub-redes IPv4 e IPv6.
Se a rede usar a criação automática de sub-redes, use o valor 10.128.0.0/9 de Google Cloud.
Para criar um recurso de transporte, siga estas etapas.
API
Use o método networkconnectivity.transports.create especificando o TRANSPORT_ID, semelhante ao exemplo a seguir:
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" "https://networkconnectivity.googleapis.com/v1beta/projects/PROJECT/locations/LOCATION/transports?="TRANSPORT_ID" --data '{
"network": "NETWORK",
"remoteProfile": "REMOTE_PROFILE",
"bandwidth": "BANDWIDTH",
"remoteAccountId": "AWS_ACCOUNT_ID",
"advertisedRoutes": ["IP_RANGE_1","IP_RANGE_2"],
"stackType": "STACK_TYPE
}'
Substitua os seguintes valores:
Na saída, encontre o valor do campo name. Ele tem o formato
projects/PROJECT/locations/LOCATION/operations/OPERATION_ID,
em que OPERATION_ID é o ID da sua operação.
Para verificar o status da operação, use o método networkconnectivity.operations.get.
GET https://networkconnectivity.googleapis.com/v1/locations/LOCATION/operations/OPERATION_ID
Substitua:
Se o recurso transport tiver concluído a criação, a saída terá a linha
"done": true. Copie os seguintes valores da saída para usar nas etapas
posteriores:
Conclua as etapas na API da AWS.
Siga as instruções no documento de referência da API da AWS usando a chave de ativação gerada na etapa anterior.
Estabelecer o peering de rede VPC
É possível estabelecer proativamente o peering de rede VPC na extremidadeGoogle Cloud . Para isso, use o peeringNetwork retornado do
recurso transport criado anteriormente e crie um peering com
o mesmo tipo de pilha. O tipo de pilha padrão corresponde ao recurso transport usando IPV4_ONLY.
Para receber as rotas da AWS, ative o campo
Import custom routes.
A MTU na rede VPC de peering é definida explicitamente como o máximo para evitar problemas de MTU na conectividade. Se você estiver usando uma MTU menor que 8896, poderá receber um aviso WARNING: Some requests generated
warnings: - Network MTU 1460B does not match the peer's MTU 8896B. Nesse caso, verifique se você está usando configurações de MTU correspondentes entre a rede VPC do Google Cloud e a rede VPC da AWS. Se eles não corresponderem, talvez seja necessário substituir os valores de MTU pelo menor denominador comum. Por exemplo, se você estiver usando 8896 em Google Cloud e 8800 na AWS,
tudo em Google Cloud precisa ser configurado como 8800.
gcloud
Para estabelecer o peering de rede VPC, use o
comando gcloud compute networks peerings create.
gcloud compute networks peerings create "TRANSPORT_NAME" \
--network="VPC_NETWORK"
--peer-network="PEERING_NETWORK" \
--import-custom-routes
--export-custom-routes
Substitua os seguintes valores:
Se o comando for bem-sucedido, o campo state da saída terá o valor ACTIVE.
API
Para estabelecer o peering de rede VPC, use o
método compute.networks.addPeering.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks/NETWORK/addPeering
Substitua os seguintes valores:
Verificar sua conexão
Para verificar se a conectividade foi estabelecida, liste as redes VPC em peering e as tabelas de rotas. Depois que a configuração da AWS for concluída, você poderá ver as rotas da AWS na lista.
gcloud
Para listar as redes VPC com peering, use o
comando gcloud compute networks peerings list.
gcloud compute networks peerings list
O resultado será o seguinte:
DEST_RANGE TYPE NEXT_HOP_REGION PRIORITY STATUS 10.0.0.0/16 DYNAMIC_PEERING_ROUTE us-east4 0 accepted 10.0.0.0/16 DYNAMIC_PEERING_ROUTE us-east4 0 accepted
Para listar rotas de um transporte específico, use o
comando gcloud compute networks peerings list-routes.
gcloud compute networks peerings list-routes TRANSPORT_ID\
--direction=INCOMING \
--network=NETWORK \
--region=LOCATION
Substitua os seguintes valores:
API
Para listar as redes com peering, use o
método compute.networks.list.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks
Substitua PROJECT pelo nome do projeto em que você quer listar as redes.
Para listar rotas, use o
método compute.routes.listPeeringRoutes.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/networks/NETWORK/listPeeringRoutes
Substitua os seguintes valores: