Crie e execute testes de conectividade

Aprenda a executar o Connectivity Tests seguindo as etapas nesta página.

Para editar ou excluir um ou mais testes, consulte Atualizar ou excluir testes de conectividade.

Para saber mais sobre o Connectivity Tests, consulte a visão geral.

Antes de começar

Antes de usar o Connectivity Tests, configure os seguintes itens no Google Cloud:

  1. No console do Google Cloud, acesse a página do seletor de projetos.

    Acessar o seletor de projetos

    Selecione ou crie um projeto do Google Cloud.

  2. Verifique se o faturamento está ativado no seu projeto do Google Cloud.
  3. Instale a Google Cloud CLI, que faz parte da CLI do Google Cloud. Para instalar a versão mais recente da CLI gcloud, consulte a documentação da CLI gcloud.

    Para acessar uma lista de todos os comandos, consulte a referência do comando gcloud.

  4. Ativar a API Network Management. A ativação da API fornece o seguinte:

    • Exemplos de chamadas de API que usam a API Network Management.

      É possível testar comandos da API Network Management usando o API Explorer. No documento de referência da API Network Management, use a coluna Try this API para explorar os campos da API e executar um teste.

    • Exemplo de código que usa o cliente da API Python.

      Com o código de exemplo, presumimos que você tenha criado um recurso chamado api para interagir com a API Network Management. Para criar um recurso, use a função build. Veja o exemplo a seguir:

      from googleapiclient.discovery import build
      api = build('networkmanagement', 'v1')
      

      Para mais informações sobre o cliente Python da API, acesse:

  5. Acesse as permissões necessárias para executar e visualizar testes. Veja mais detalhes em Atribuir acesso.

Como executar o Connectivity Tests

Ao executar um teste de conectividade, você fornece entradas de teste como uma 5 tuplas sem a porta de origem.

As seções a seguir mostram como executar um teste para os endpoints de origem e destino descritos em Casos de uso comuns.

No console do Google Cloud, é possível executar Testes de conectividade usando uma das seguintes opções:

  • A página Connectivity Tests, disponível no menu Rede > Network Intelligence Center.

  • A página Detalhes da interface de rede para uma interface de rede de uma instância de máquina virtual (VM) do Compute Engine. Se você usar esta página, precisará usar a interface de rede atual como Origem ou Destino do teste. Nesta página, listamos apenas os testes relevantes para a interface de rede atual.

Cada teste que você cria é executado imediatamente após a criação e é armazenado no recurso Connectivity Tests. O teste existe até você excluí-lo.

Para verificar o status de uma operação de teste enquanto a operação é executada, consulte Como verificar uma operação de teste em execução. Alguns exemplos de operações de teste são create e rerun.

Ao usar um endereço IP para o terminal de origem ou destino, pode ser necessário especificar campos adicionais.

Práticas recomendadas

  • Quando você testa um terminal (uma VM ou endereço IP) localizado em um projeto de serviço VPC compartilhado, é mais conveniente executar o teste no projeto de serviço. Isso ocorre porque você pode selecionar o endereço IP ou VM na caixa suspensa no console do Google Cloud.

    No entanto, é necessário também especificar o projeto host antes de especificar a rede de Nuvem Privada Virtual (VPC), porque a rede está no projeto host. Para detalhes, consulte Como testar endereços IP em uma rede VPC compartilhada.

  • Ao executar um teste entre a rede VPC e a rede local ou peering, é útil executar outro teste de conectividade usando o endereço IP local como a origem e uma instância de VM ou um endereço IP na sua rede VPC como destino.

    Esse tipo de teste verifica se o Google Cloud está anunciando rotas conforme o esperado para sua rede local. No entanto, o Connectivity Tests não verifica se sua rede local recebeu e implementou essas rotas.

  • Leva de 20 a 120 segundos para que os testes de conectividade recebam uma atualização de configuração e incorpore-a à análise. Se você executar um teste imediatamente depois de fazer uma alteração de configuração, talvez não veja os resultados esperados. Certifique-se de esperar tempo suficiente entre a alteração da configuração e a execução dos testes.

    Esse atraso não se aplica à análise de planos de dados ativos. Portanto, você pode ver uma incompatibilidade temporária entre os resultados mostrados pela análise do plano de dados ativos e pela análise da configuração. Por exemplo, se você adicionar uma regra de firewall, ela poderá ser acessada para a análise do plano de dados em tempo real. No entanto, talvez seja necessário aguardar algum tempo antes que a regra de firewall seja acessível para análise da configuração.

Como testar para ou de uma VM com várias interfaces de rede

Nesta seção, você verá como testar de e para a interface de rede não primária de uma VM.

Console

Se você especificar uma instância de VM com várias interfaces de rede como origem ou destino de um teste, o Connectivity Tests solicitará a seleção de uma interface de rede em uma lista.

Se preferir, execute um teste na página Detalhes da interface de rede para uma interface de rede de uma instância de VM do Compute Engine. Se você usar esta página, precisará usar a interface de rede atual como Origem ou Destino do teste.

gcloud e API

É necessário especificar a interface de rede a ser usada no teste de uma das seguintes maneiras:

  • endereço IP e URI da rede;
  • endereço IP e URI da VM;
  • URI da rede e URI da VM.

Fornecer apenas o URI para uma VM com várias interfaces seleciona apenas a interface principal da VM.

Listar todos os testes para um projeto

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione um projeto na parte superior da página, no menu suspenso do projeto.
  3. A página Connectivity Tests é atualizada e mostra os testes para esse projeto.

gcloud

Para listar todos os testes de um projeto, insira o seguinte comando gcloud. Este comando mostra os testes no projeto atualmente selecionado.

  gcloud network-management connectivity-tests list

Para listar testes em um projeto específico, especifique o PROJECT_ID.

  gcloud network-management connectivity-tests list --project=PROJECT_ID

API

Para listar todos os testes pertencentes a um projeto, use o método projects.locations.global.connectivityTests.list.

GET https://networkmanagement.googleapis.com/v1/{parent=projects/PROJECT_ID/locations/global}/connectivityTests
  • Substitua PROJECT_ID pelo ID do projeto que contém os testes que você quer listar.

Python

O código de exemplo a seguir lista todos os testes existentes que pertencem a um projeto. Para mais informações, consulte list na biblioteca de cliente da API do Google para Python.

project_id = "PROJECT_ID"
parent = 'projects/%s/locations/global' % project_id
request = api.projects().locations().global_().connectivityTests().list(parent=parent)
print(json.dumps(request.execute(), indent=4))

Substitua PROJECT_ID pelo ID do projeto que contém os testes que você quer listar.

Teste entre instâncias de VM em uma rede VPC

Essas etapas pressupõem que as duas instâncias da VM estejam no mesmo projeto do Google Cloud.

Console

Na página principal de testes de conectividade

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

    As etapas restantes aparecem automaticamente no console do Google Cloud.

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. No menu Endpoint de origem, selecione Instância de VM.
    2. No menu Instância da VM de origem, selecione a instância específica.
    3. No menu Interface de rede de origem, selecione a interface de rede.

      Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM que identifique exclusivamente o local de origem.

    4. Opcional: selecione o Endereço IP de origem na lista. O padrão é o endereço IP da instância da VM de origem.
  6. Em Destino, faça o seguinte:
    1. No menu Endpoint de destino, selecione Instância da VM.
    2. No menu Instância da VM de destino, selecione a instância específica.
    3. No menu Interface de rede de destino, selecione a interface de rede.

      Se a instância da VM tiver várias interfaces de rede, selecione uma delas para identificar o local de destino de maneira exclusiva.

    4. Opcional: selecione o Endereço IP de destino na lista. O padrão é o endereço IP da instância da VM de destino.
  7. Observação: para uma instância de pilha dupla, a origem e o endereço IP de destino precisam ser do mesmo tipo. Por exemplo, não é possível testar de uma VM com endereço IPv4 a uma VM com endereço IPv6.

  8. No campo Porta de destino, insira uma porta.
  9. Clique em Criar.
  10. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

Na página de detalhes da interface de rede

  1. No console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar instâncias de VM

  2. Se ainda não estiver selecionado, selecione o projeto que contém a instância em que você quer executar um teste.
  3. Clique na instância que você quer usar para executar um teste.
  4. Em Interfaces de rede, selecione a interface de rede que você quer usar para executar um teste.

    Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM para identificar exclusivamente o local de destino.

  5. Em Análise de rede, clique em Criar teste de conectividade e faça o seguinte:

    1. No campo Nome do teste, insira um nome para o teste.
    2. Na lista Protocolo, selecione um protocolo.
    3. Em Origem, selecione Interface de rede atual ou Outro.

      Se você selecionar Interface de rede atual, faça o seguinte:

      1. No menu Endpoint de destino, selecione Instância da VM.
      2. No menu Instância da VM de destino, selecione a instância.
      3. No menu Interface de rede de destino, selecione a interface de rede.
      4. Opcional: selecione o endereço IP de destino. O padrão é o endereço IP da instância da VM de destino.

      Se você selecionar Outro, faça o seguinte:

      1. No menu Endpoint de origem, selecione Instância de VM.
      2. No menu Instância da VM de origem, selecione a instância.
      3. No menu Interface de rede de origem, selecione a interface de rede.
      4. Opcional: selecione o endereço IP de origem. O padrão é o endereço IP da instância da VM de origem.
    4. No campo Porta de destino, insira uma porta de destino para o destino especificado.

    5. Clique em Criar.

  6. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-instance=SOURCE_INSTANCE \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --destination-instance=DESTINATION_INSTANCE \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • DESTINATION_INSTANCE: o URI da VM de destino (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2).
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Terraform

É possível usar um recurso Terraform para criar um teste entre duas instâncias de VM em uma rede VPC.

resource "google_network_management_connectivity_test" "instance_test" {
  name = "conn-test-instances"
  source {
    instance = google_compute_instance.source.id
  }

  destination {
    instance = google_compute_instance.destination.id
    port     = "80"
  }

  protocol = "TCP"
}

resource "google_compute_instance" "source" {
  name         = "source-vm"
  machine_type = "e2-medium"

  boot_disk {
    initialize_params {
      image = data.google_compute_image.debian_9.id
    }
  }

  network_interface {
    network = "default"
    access_config {
    }
  }
}

resource "google_compute_instance" "destination" {
  name         = "dest-vm"
  machine_type = "e2-medium"

  boot_disk {
    initialize_params {
      image = data.google_compute_image.debian_9.id
    }
  }

  network_interface {
    network = "default"
    access_config {
    }
  }
}

data "google_compute_image" "debian_9" {
  family  = "debian-11"
  project = "debian-cloud"
}

API

O teste de amostra a seguir determina se a configuração de rede existente permite que a VM instance1 faça ping na VM instance2.

Use o método projects.locations.global.connectivityTests.create.

 POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
   {
     "source": {
       "instance": "SOURCE_INSTANCE",
       "ipAddress": "SOURCE_IP_ADDRESS",
     },
     "destination": {
       "instance": "DESTINATION_INSTANCE",
       "ipAddress": "DESTINATION_IP_ADDRESS",
     },
     "protocol": "PROTOCOL",
   }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • DESTINATION_INSTANCE: o URI da VM de destino, por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2.
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Python

O código de exemplo a seguir cria um teste entre duas instâncias de VM. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

test_input = {
  "source": {
      "instance":
          "SOURCE_INSTANCE",
      "ipAddress":
          "SOURCE_IP_ADDRESS",
      "projectId":
          "SOURCE_INSTANCE_PROJECT_ID"
  },
  "destination": {
      "instance":
          "DESTINATION_INSTANCE",
      "ipAddress":
          "DESTINATION_IP_ADDRESS",
      "projectId":
          "DESTINATION_INSTANCE_PROJECT_ID"
  },
  "protocol":
      "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • SOURCE_INSTANCE_PROJECT_ID: o ID do projeto da VM de origem.
  • DESTINATION_INSTANCE: o URI da VM de destino (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2).
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • DESTINATION_INSTANCE_PROJECT_ID: o ID do projeto da VM de destino.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Teste entre endereços IP privados em uma rede VPC

Este exemplo pressupõe que os dois endereços IP sejam endereços IP privados no mesmo projeto do Google Cloud e na mesma rede VPC.

Se você estiver testando entre redes VPC emparelhadas, selecione as redes de origem e destino para cada par.

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

    As etapas restantes aparecem no console do Google Cloud.

  2. Selecione Criar teste de conectividade.

  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:

    1. Na lista Endpoint de origem, selecione Endereço IP.
    2. No campo Endereço IP de origem, digite o endereço IP de origem.
    3. Se a rede VPC do endereço IP de origem estiver no projeto atual, desmarque a caixa de seleção Este é um endereço IP usado no Google Cloud.

      Se a rede VPC estiver em outro projeto, no campo Endereço IP de origem ou projeto de serviço, selecione o projeto em que a rede está localizada.

      Se o endereço IP estiver fora do espaço de endereço RFC 1918, marque a caixa de seleção Confirmo que o endpoint de origem reside em um intervalo fora do espaço de endereço RFC 1918. Em seguida, na lista Rede de origem, selecione a rede que contém o endereço IP de origem.

  6. Em Destino, faça o seguinte:

    1. Na lista Endpoint de destino, selecione Endereço IP.
    2. No campo Endereço IP de destino, digite o endereço de IP.
    3. Se a rede VPC do endereço IP de destino estiver no projeto atual, desmarque a caixa de seleção Este é um endereço IP usado no Google Cloud.

      Se a rede VPC estiver em outro projeto, no campo Endereço IP ou projeto de serviço de destino, selecione o projeto em que a rede está localizada.

      Se o endereço IP estiver fora do espaço de endereço RFC 1918, marque a caixa de seleção Confirmo que o endpoint de destino reside em um intervalo fora do espaço de endereço RFC 1918. Em seguida, na lista Rede de destino, selecione a rede que contém o endereço IP de destino.

  7. No campo Porta de destino, digite um número de porta válido. O número precisa estar entre 0 e 65.535, inclusive.
  8. Clique em Criar.

Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Substitua variáveis para as opções de comando pelos valores da rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --source-network=SOURCE_NETWORK \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-network=DESTINATION_NETWORK \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK: o URI da rede VPC em que o endereço IP de origem está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.
  • DESTINATION_NETWORK: o URI da rede VPC em que o endereço IP de destino está localizado (por exemplo, projects/myproject/global/networks/network-a).
  • DESTINATION_PORT: a porta do protocolo IP do destino. Esta opção é válida apenas para protocolos TCP ou UDP. O padrão é a porta 80.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Se a rede for desconhecida ou você não tiver permissão para acessar a rede, poderá especificar a rede como GCP_NETWORK, em vez de fornecer um URI da rede.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

gcloud network-management connectivity-tests create NAME \
    --source-ip-address=SOURCE_IP_ADDRESS \
    [--source-network-type=GCP_NETWORK] \
    --destination-instance=DESTINATION_INSTANCE  \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK_TYPE: o tipo de rede em que a origem está localizada. Neste caso, use o valor de GCP_NETWORK.
  • DESTINATION_INSTANCE: o URI da VM de destino, por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Esta opção é válida apenas para protocolos TCP ou UDP. O padrão é a porta 80.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Ao especificar um endereço IP de origem que é externo fora do Google Cloud, você precisa especificar um networkType de NON_GCP_NETWORK. Substitua os valores no comando a seguir pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --source-network-type=NON_GCP_NETWORK \
    --destination-ip-address= DESTINATION_IP_ADDRESS \
    --destination-network=DESTINATION_NETWORK \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK_TYPE: o tipo de rede em que a origem está localizada. Neste caso, use o valor de NON_GCP_NETWORK.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.
  • DESTINATION_NETWORK: um URI para a rede VPC em que o endereço IP de destino está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Terraform

É possível usar um recurso Terraform para criar um teste entre dois endereços IP em uma rede VPC.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

resource "google_network_management_connectivity_test" "default" {
  name = "conn-test-addr"
  source {
    ip_address   = google_compute_address.source_addr.address
    project_id   = google_compute_address.source_addr.project
    network      = google_compute_network.default.id
    network_type = "GCP_NETWORK"
  }

  destination {
    ip_address = google_compute_address.dest_addr.address
    project_id = google_compute_address.dest_addr.project
    network    = google_compute_network.default.id
    port       = "80"
  }

  protocol = "UDP"
}

resource "google_compute_network" "default" {
  name                    = "connectivity-vpc"
  auto_create_subnetworks = false
}

resource "google_compute_subnetwork" "default" {
  name          = "connectivity-vpc-subnet"
  ip_cidr_range = "10.0.0.0/8"
  region        = "us-central1"
  network       = google_compute_network.default.id
}

resource "google_compute_firewall" "default" {
  name    = "allow-incoming-all"
  network = google_compute_network.default.name

  allow {
    protocol = "all"
  }

  source_ranges = ["0.0.0.0/0"]
}

resource "google_compute_address" "source_addr" {
  name         = "src-addr"
  subnetwork   = google_compute_subnetwork.default.id
  address_type = "INTERNAL"
  address      = "10.0.0.42"
  region       = "us-central1"
}

resource "google_compute_address" "dest_addr" {
  name         = "dest-addr"
  subnetwork   = google_compute_subnetwork.default.id
  address_type = "INTERNAL"
  address      = "10.0.0.43"
  region       = "us-central1"
}

resource "google_compute_instance" "source" {
  name         = "source-vm1"
  machine_type = "e2-medium"
  zone         = "us-central1-a"

  boot_disk {
    initialize_params {
      image = data.google_compute_image.default.id
    }
  }

  network_interface {
    network    = google_compute_network.default.id
    subnetwork = google_compute_subnetwork.default.id
    network_ip = "10.0.0.42"
    access_config {
    }
  }
}

resource "google_compute_instance" "destination" {
  name         = "dest-vm1"
  machine_type = "e2-medium"
  zone         = "us-central1-a"

  boot_disk {
    initialize_params {
      image = data.google_compute_image.default.id
    }
  }

  network_interface {
    network    = google_compute_network.default.id
    subnetwork = google_compute_subnetwork.default.id
    network_ip = "10.0.0.43"
    access_config {
    }
  }
}

data "google_compute_image" "default" {
  family  = "debian-11"
  project = "debian-cloud"
}

API

Este exemplo testa a capacidade de executar ping do endereço IP de origem para o endereço IP de destino.

Use o método projects.locations.global.connectivityTests.create.

  POST https://reachability.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
  {
    "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "network": "SOURCE_NETWORK"
    },
    "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "network": "DESTINATION_NETWORK",
      "port": "DESTINATION_PORT",
    },
      "protocol": "PROTOCOL".
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK: o URI da rede VPC em que o endereço IP de origem está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.
  • DESTINATION_NETWORK: um URI para a rede VPC em que o endereço IP de destino está localizado (por exemplo, projects/myproject/global/networks/network-a).
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Se a rede VPC for desconhecida ou você não tiver permissão para acessar a rede, poderá especificar a rede como GCP_NETWORK, em vez de fornecer um URI da rede.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

  POST https://reachability.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?connectivityTestId=TEST_ID'
  {
    "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "networkType": "GCP_NETWORK"
    },
    "destination": {
      "instance": "DESTINATION_INSTANCE",
      "ipAddress": "DESTINATION_IP_ADDRESS"
    },
    "protocol": "PROTOCOL"
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK_TYPE: o tipo de rede em que a origem está localizada. Neste caso, use o valor de GCP_NETWORK.
  • DESTINATION_INSTANCE: o URI da VM de destino (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2).
  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Ao especificar um endereço IP de origem que é externo fora do Google Cloud, você precisa especificar um networkType de NON_GCP_NETWORK. Substitua os valores no comando a seguir pelos valores da sua rede do Google Cloud.

  POST https://reachability.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
  {
    "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "networkType": "NON_GCP_NETWORK",

    },
    "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "network": "DESTINATION_NETWORK",
      "port": "DESTINATION_PORT",
    },
    "protocol": "PROTOCOL",
  }'

Python

O código de exemplo a seguir cria um teste entre dois endereços IP. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

test_input = {
  "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "projectId": "SOURCE_IP_PROJECT_ID"
  },
  "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "port": "DESTINATION_PORT",
      "projectId": "DESTINATION_IP_PROJECT_ID"
  },
  "protocol": "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_IP_PROJECT_ID: o ID do projeto para o endereço IP de origem.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • DESTINATION_IP_PROJECT_ID: o ID do projeto para o endereço IP de destino.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Se a rede VPC for desconhecida ou você não tiver permissão para acessar a rede, poderá especificar a rede como GCP_NETWORK, em vez de fornecer um URI da rede.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

O exemplo a seguir cria um teste entre dois endereços IP.

test_input = {
    "source": {
        "ipAddress": "SOURCE_IP_ADDRESS",
        "networkType": "GCP_NETWORK"
    },
    "destination": {
        "ipAddress": "DESTINATION_IP_ADDRESS",
        "port": "DESTINATION_PORT",
        "projectId": "DESTINATION_IP_PROJECT_ID"
    },
    "protocol": "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
  parent="projects/PROJECT_ID/locations/global",
  testId="TEST_ID",
  body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK_TYPE: o tipo de rede em que a origem está localizada. Neste caso, use o valor de GCP_NETWORK.
  • DESTINATION_IP_ADDRESS: o endereço IP da VM de destino.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • DESTINATION_IP_PROJECT_ID: o ID do projeto para o endereço IP de destino.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Ao especificar um endereço IP de origem que é externo fora do Google Cloud, você precisa especificar um networkType de NON_GCP_NETWORK.

Como testar endereços IP em uma rede VPC compartilhada

Quando você tem uma rede VPC compartilhada, é possível criar e executar um teste no projeto host ou no projeto de serviço.

O exemplo a seguir mostra os dois casos e usa um endereço IP de destino alocado no projeto de serviço. Os valores do campo no console do Google Cloud são um pouco diferentes para cada caso. No entanto, as opções de comando para a Google Cloud CLI e para chamadas de API são as mesmas.

Console: do host

  1. No console do Google Cloud, no projeto host, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. Na lista Endpoint de origem, selecione Endereço IP.
    2. Digite o endereço IP de origem.
    3. Marque a caixa de seleção Este é um endereço IP usado no Google Cloud.
    4. Se este for um endereço IP interno, não acessível pela Internet, selecione a rede VPC onde o endereço está localizado.
    5. Se o endereço IP particular estiver fora do espaço de endereço RFC 1918, marque a caixa de seleção Confirmo que o endpoint de origem está em um intervalo fora do espaço de endereço RFC 1918 e selecione a rede de destino que contém o endereço IP.
  6. Em Destino, faça o seguinte:
    1. Na lista Endpoint de destino, selecione Endereço IP.
    2. Digite o endereço IP de destino.
    3. Marque a caixa de seleção Este é um endereço IP usado no Google Cloud.
    4. Se este for um endereço IP interno, não acessível pela Internet, selecione a rede VPC onde o endereço está localizado.
    5. Se o endereço IP particular estiver fora do espaço de endereço RFC 1918, marque a caixa de seleção Confirmo que o endpoint de origem está em um intervalo fora do espaço de endereço RFC 1918 e selecione a rede de destino que contém o endereço IP.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

Console: do serviço

  1. No console do Google Cloud, no projeto de serviço, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. Na lista Endpoint de origem, selecione Endereço IP.
    2. Digite o Endereço IP de origem.
    3. Marque a caixa de seleção Este é um endereço IP usado no Google Cloud.
    4. Se este for um endereço IP interno, não acessível pela Internet, selecione a rede VPC onde o endereço está localizado.
  6. Em Destino, faça o seguinte:
    1. Na lista Endpoint de destino, selecione Endereço IP.
    2. Digite o Endereço IP de destino.
    3. Marque a caixa de seleção Este é um endereço IP usado no Google Cloud.
    4. Especifique o Endereço IP de destino ou o projeto de serviço em que o endereço IP está localizado.
    5. Se o endereço IP particular estiver fora do espaço de endereço RFC 1918, marque a caixa de seleção Confirmo que o endpoint de origem está em um intervalo fora do espaço de endereço RFC 1918 e selecione a rede de destino que contém o endereço IP.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Digite o comando a seguir para testar entre dois endereços IP privados em um host e em um projeto de serviço em que o endereço IP de destino esteja localizado no projeto de serviço. Substitua variáveis para as opções de comando pelos valores da sua rede VPC.

Como o endereço IP de destino está no projeto de serviço, especifique o projeto de serviço e o URI da rede do projeto host. Nesse caso, default representa a rede VPC padrão para o host-project.

gcloud network-management connectivity-tests create NAME \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --source-project=SOURCE_PROJECT \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-network=DESTINATION_NETWORK \
    --destination-project=DESTINATION_PROJECT \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_PROJECT: o ID do projeto do endpoint de origem.
  • DESTINATION_IP_ADDRESS: é o endereço IP de destino interno ou externo para o qual você está testando no projeto de serviço.
  • DESTINATION_NETWORK: um URI para a rede VPC do projeto host (por exemplo, projects/host-project/global/networks/default).
  • DESTINATION_PROJECT: o ID do projeto do endpoint de destino. Por exemplo, um projeto chamado service-project que representa o projeto de serviço usado para essa rede VPC compartilhada.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

API

Use o método projects.locations.global.connectivityTests.create.

  POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
    {
      "source": {
        "ipAddress": "SOURCE_IP_ADDRESS",
        "projectId": "SOURCE_PROJECT",
      },
      "destination": {
        "ipAddress": "DESTINATION_IP_ADDRESS",
        "projectId": "DESTINATION_PROJECT",
        "network": "DESTINATION_NETWORK",
        "port": "DESTINATION_PORT",
      },
      "protocol": "PROTOCOL",
    }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_PROJECT: o ID do projeto do endpoint de origem.
  • DESTINATION_IP_ADDRESS: é o endereço IP de destino interno ou externo para o qual você está testando no projeto de serviço.
  • DESTINATION_PROJECT: o ID do projeto do endpoint de destino. Por exemplo, um projeto chamado service-project que representa o projeto de serviço usado para essa rede VPC compartilhada.
  • DESTINATION_NETWORK: um URI para a rede VPC do projeto host (por exemplo, projects/host-project/global/networks/default).
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Python

O código de exemplo a seguir cria um teste entre dois endereços IP. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

test_input = {
  "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "projectId": "SOURCE_IP_PROJECT_ID"
  },
  "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "projectId": "DESTINATION_IP_PROJECT_ID",
      "network": "DESTINATION_NETWORK",
      "port": "DESTINATION_PORT",
  },
  "protocol": "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_IP_PROJECT_ID: o ID do projeto do endpoint de origem.
  • DESTINATION_IP_ADDRESS: é o endereço IP de destino interno ou externo para o qual você está testando no projeto de serviço.
  • DESTINATION_IP_PROJECT_ID: o ID do projeto do endpoint de destino. Por exemplo, um projeto chamado service-project que representa o projeto de serviço usado para essa rede VPC compartilhada.
  • DESTINATION_NETWORK: um URI para a rede VPC do projeto host (por exemplo, projects/host-project/global/networks/default).
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Como testar de uma VM para um serviço gerenciado pelo Google

Nesta seção, você verá como testar a partir de uma VM na sua rede VPC em um serviço executado em uma rede VPC do Google. Por exemplo, siga as etapas nesta seção para testar a conectividade com uma instância do Cloud SQL ou um plano de controle do cluster do GKE. Também é possível executar um teste usando um endpoint do serviço gerenciado pelo Google como origem e um endpoint na rede VPC como destino.

Por padrão, os Testes de conectividade tentam executar um teste usando o endereço IP particular do endpoint do serviço gerenciado pelo Google. Se o endpoint não tiver um endereço IP particular, o Connectivity Tests usará o endereço IP público. O Connectivity Tests analisa se o pacote consegue alcançar o endpoint, o que inclui analisar a configuração na rede VPC do Google. Se forem detectados problemas de configuração no seu projeto, a análise será interrompida antes de analisar a configuração de rede do Google.

Para testar a partir de uma VM em um serviço gerenciado pelo Google, consulte as instruções a seguir.

Console

Na página principal do Connectivity Tests

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:

    1. No menu Endpoint de origem, selecione Instância de VM.
    2. No menu Instância da VM de origem, selecione a instância específica.
    3. No menu Interface de rede de origem, selecione a interface de rede.

      Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM que identifique exclusivamente o local de origem.

    4. Opcional: selecione o Endereço IP de origem na lista. O padrão é o endereço IP da instância da VM de origem.

  6. Em Destino, faça o seguinte:

    1. No menu Endpoint de destino, selecione um tipo de recurso de serviço gerenciado pelo Google, como o plano de controle do cluster do GKE.
    2. No menu Plano de controle do cluster do GKE de destino, selecione o cluster em que você quer testar a conectividade com o plano de controle do GKE.
    3. Opcional: selecione o endereço IP do plano de controle do cluster do GKE de destino na lista. O padrão é o endereço IP da instância da VM de origem.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.

  8. Clique em Criar.

  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue em Ver resultados do teste.

Na página de detalhes da interface de rede

  1. No console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar instâncias de VM

  2. Se ainda não estiver selecionado, selecione o projeto que contém a instância em que você quer executar um teste.
  3. Clique na instância que você quer usar para executar um teste.
  4. Em Interfaces de rede, selecione a interface de rede que você quer usar para executar um teste.
  5. Em Análise de rede, clique em Criar teste de conectividade.
  6. No campo Nome do teste, insira um nome para o teste.
  7. Na lista Protocolo, selecione um protocolo.
  8. Em Origem, selecione Interface de rede atual.
  9. Em Destino, faça o seguinte:
    1. No menu Endpoint de destino, selecione um tipo de recurso de serviço gerenciado pelo Google, como o plano de controle do cluster do GKE.
    2. No menu Plano de controle do cluster do GKE de destino, selecione o cluster em que você quer testar a conectividade com o plano de controle do GKE.
    3. Opcional: selecione o endereço IP do plano de controle do cluster do GKE de destino na lista. O padrão é o endereço IP da instância da VM de origem.
  10. No campo Porta de destino, insira uma porta de destino para o destino especificado.
    1. Clique em Criar.
    2. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Substitua as variáveis para as opções de comando de acordo com a seguinte orientação:

gcloud network-management connectivity-tests create NAME \
    --source-instance=SOURCE_INSTANCE \
    --source-ip-address=SOURCE_IP_ADDRESS \
      DESTINATION_RESOURCE_FLAG=DESTINATION_ENDPOINT \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • DESTINATION_RESOURCE_FLAG: a sinalização que especifica o tipo de recurso de serviço gerenciado pelo Google.

    Para as opções disponíveis, consulte:

    • --destination-gke-master-cluster
    • --destination-cloud-sql-instance

    Para obter mais informações, consulte a referência gcloud network-management connectivity-tests create.

  • DESTINATION_ENDPOINT: o URI do endpoint de destino.; por exemplo, projects/myproject/locations/us-central1/clusters/cluster-1 para a sinalização --destination-gke-master-cluster.

  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.

  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

API

Use o método projects.locations.global.connectivityTests.create.

 POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
   {
     "source": {
       "instance": "SOURCE_INSTANCE",
       "ipAddress": "SOURCE_IP_ADDRESS",
     },
     "destination": {
       "DESTINATION_RESOURCE_FIELD": "DESTINATION_ENDPOINT",
       "port": DESTINATION_PORT
     },
     "protocol": "PROTOCOL",
   }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • DESTINATION_RESOURCE_FIELD: o campo que especifica o tipo de recurso de serviço gerenciado pelo Google.

    Para as opções disponíveis, consulte:

    • gkeMasterCluster
    • cloudSqlInstance

    Para mais informações, consulte a referência do endpoint.

  • DESTINATION_ENDPOINT: o URI do endpoint de destino, por exemplo, projects/myproject/locations/us-central1/clusters/cluster-1 para o campo gkeMasterCluster.

  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.

  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Python

O código de exemplo a seguir cria um teste entre uma instância de VM e um endpoint de serviço gerenciado pelo Google. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

test_input = {
  "source": {
      "instance":
          "SOURCE_INSTANCE",
      "ipAddress":
          "SOURCE_IP_ADDRESS",
      "projectId":
          "SOURCE_INSTANCE_PROJECT_ID"
  },
  "destination": {
      "DESTINATION_RESOURCE_FIELD":
          "DESTINATION_ENDPOINT",
      "port":
          "DESTINATION_PORT"
  },
  "protocol":
      "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • SOURCE_INSTANCE_PROJECT_ID: o ID do projeto da VM de origem.
  • DESTINATION_RESOURCE_FIELD: o campo que especifica o tipo de recurso de serviço gerenciado pelo Google.

    Para as opções disponíveis, consulte:

    • gkeMasterCluster
    • cloudSqlInstance

    Para mais informações, consulte a referência do endpoint.

  • DESTINATION_ENDPOINT: o URI do endpoint de destino, por exemplo, projects/myproject/locations/us-central1/clusters/cluster-1 para o campo gkeMasterCluster.

  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.

  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

  • PROJECT_ID: o ID do projeto em que você está criando o teste.

  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Testar de uma VM para endpoints do Private Service Connect

Nesta seção, descrevemos como testar de uma VM para um endpoint do Private Service Connect.

Por exemplo, é possível seguir as etapas desta seção para testar se um pacote pode ser entregue a um serviço publicado que usa o Private Service Connect. O Connectivity Tests analisa se um pacote pode alcançar o endpoint, o que inclui a análise de endpoints conectados, serviços publicados e conexão de proxy. A análise terminará antecipadamente se a conexão com um serviço publicado que usa o Private Service Connect não for aceita.

Você pode testar a conectividade com estas opções:

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:

    1. No menu Endpoint de origem, selecione Instância de VM.
    2. No menu Instância da VM de origem, selecione a instância específica.
    3. No menu Interface de rede de origem, selecione a interface de rede.

      Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM que identifique exclusivamente o local de origem.

    4. Opcional: selecione o Endereço IP de origem na lista. O padrão é o endereço IP da instância da VM de origem.

  6. Em Destino, faça o seguinte:

    1. No menu Endpoint de destino, selecione Endpoint do PSC.
    2. No menu Endpoint PSC de destino, selecione o endpoint PSC.

      Se o endpoint de destino estiver em um projeto diferente do atual, selecione O endpoint está em um projeto diferente de "PROJECT_NAME". Em seguida, no campo Projeto de endpoint de destino, selecione o projeto em que o endpoint está localizado.

  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.

  8. Clique em Criar.

  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-instance=SOURCE_INSTANCE \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-network=DESTINATION_NETWORK \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • DESTINATION_IP_ADDRESS: o endereço IP do endpoint ou do back-end que você quer testar.
  • DESTINATION_NETWORK: um URI para a rede VPC em que o endereço IP de destino está localizado (por exemplo, projects/myproject/global/networks/default).
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Se o endpoint ou o back-end forem usados para acessar serviços publicados, será necessário especificar o DESTINATION_NETWORK porque o endpoint ou o back-end tem um endereço IP interno.

API

O exemplo de teste a seguir determina se a configuração de rede atual permite que a VM instance1 dê um ping no endereço IP do endpoint do Private Service Connect.

Use o método projects.locations.global.connectivityTests.create.

 POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
   {
     "source": {
       "instance": "SOURCE_INSTANCE",
       "ipAddress": "SOURCE_IP_ADDRESS",
     },
    "destination": {
      "forwardingRule": "DESTINATION_FORWARDING_RULE",
      "port": "DESTINATION_PORT",
     },
     "protocol": "PROTOCOL",
   }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • DESTINATION_IP_ADDRESS: o endereço IP do endpoint ou do back-end que você quer testar.
  • DESTINATION_NETWORK: um URI para a rede VPC em que o endereço IP de destino está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Se o endpoint ou o back-end forem usados para acessar serviços publicados, será necessário especificar o DESTINATION_NETWORK porque o endpoint ou o back-end tem um endereço IP interno.

Python

O código de exemplo a seguir cria um teste entre uma instância de VM e um endpoint do Private Service Connect. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

test_input = {
  "source": {
      "instance":
          "SOURCE_INSTANCE",
      "ipAddress":
          "SOURCE_IP_ADDRESS",
      "projectId":
          "SOURCE_INSTANCE_PROJECT_ID"
  },
  "destination": {
      "forwardingRule": "DESTINATION_FORWARDING_RULE",
      "port": "DESTINATION_PORT",
  },
  "protocol":
      "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • SOURCE_INSTANCE_PROJECT_ID: o ID do projeto da VM de origem.
  • DESTINATION_IP_ADDRESS: o endereço IP do endpoint ou do back-end que você quer testar.
  • DESTINATION_NETWORK: um URI para a rede VPC em que o endereço IP de destino está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Se o endpoint ou o back-end forem usados para acessar serviços publicados, será necessário especificar o DESTINATION_NETWORK porque o endpoint ou o back-end tem um endereço IP interno.

Testar de uma a versão do ambiente padrão do App Engine em um destino

Nesta seção, descrevemos como testar a conectividade de uma versão do ambiente padrão do App Engine para uma instância de VM, um endereço IP ou um serviço gerenciado pelo Google.

O aplicativo do ambiente padrão do App Engine é composto por um único recurso de aplicativo que inclui pelo menos um serviço. Em cada serviço são implantadas versões desse serviço. É possível testar a acessibilidade de uma versão de um serviço do ambiente padrão do App Engine para uma instância de VM, um endereço IP ou um serviço gerenciado pelo Google.

Para ver uma análise detalhada de configuração, configure seu serviço para usar um conector de acesso VPC sem servidor. O resultado do teste de conectividade pode ser diferente para cada versão do serviço. Só é possível testar a acessibilidade dos pacotes de teste que usam o protocolo UDP ou TCP.

Testar a conectividade de uma versão de serviço do ambiente padrão do App Engine em uma instância de VM

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. Insira um nome para o teste.
  4. Selecione um protocolo.
  5. No menu Endpoint de origem, selecione App Engine.
    1. No menu Serviço do App Engine, selecione o serviço específico do ambiente padrão do App Engine a partir do qual você quer testar a conectividade. Por exemplo, selecione helloworld-service.s
      1. Se o endpoint de origem estiver em um projeto diferente do atual, marque a caixa de seleção O endpoint está em um projeto diferente de "PROJECT_NAME".
      2. Selecione um projeto em que o endpoint existe.
    2. No menu da versão do App Engine, selecione uma versão do serviço do ambiente padrão do App Engine a partir do qual você quer testar a conectividade.
  6. Em Destino, selecione uma Instância de VM de destino na lista.

    Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM para identificar exclusivamente o local de destino.

  7. Opcional: selecione o Endereço IP de destino na lista. O padrão é o endereço IP da instância da VM de destino.

  8. No campo Porta de destino, insira uma porta de destino para o destino especificado.

  9. Clique em Criar.

  10. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-app-engine-version=APP_ENGINE_VERSION \
    --destination-instance=DESTINATION_INSTANCE \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • APP_ENGINE_VERSION: o URI da versão do ambiente padrão do App Engine de origem. Por exemplo, apps/myproject/services/service-name/versions/version-name.
  • DESTINATION_INSTANCE: o URI da VM de destino, por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2.
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

API

Use o método projects.locations.global.connectivityTests.create.

  POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
  {
    "source": {
      "appEngineVersion": {
        "uri": "APP_ENGINE_VERSION",
        },
    },
    "destination": {
      "instance": "DESTINATION_INSTANCE",
      "ipAddress": "DESTINATION_IP_ADDRESS",
    },
    "protocol": "PROTOCOL",
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da função de origem do Cloud Run.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • APP_ENGINE_VERSION: o URI da versão do ambiente padrão do App Engine de origem. Por exemplo, apps/myproject/services/service-name/versions/version-name.
  • DESTINATION_INSTANCE: o URI da VM de destino, por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2.
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

Testar a conectividade de uma versão de um serviço do ambiente padrão do App Engine em um endereço IP

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. Insira um nome para o teste.
  4. Selecione um protocolo.
  5. No menu Endpoint de origem, selecione um App Engine.
    1. No menu Serviço do App Engine, selecione o serviço específico do ambiente padrão do App Engine a partir do qual você quer testar a conectividade. Por exemplo, selecione helloworld-service.
      1. Se o endpoint de origem estiver em um projeto diferente do atual, marque a caixa de seleção O endpoint está em um projeto diferente de "PROJECT_NAME".
      2. Selecione um projeto em que o endpoint existe.
    2. No menu da versão do App Engine, selecione uma versão do serviço do ambiente padrão do App Engine a partir do qual você quer testar a conectividade.
  6. Em Destino, selecione Endereço IP e insira um endereço IP.
  7. Insira uma porta de destino.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-app-engine-version=APP_ENGINE_VERSION \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • APP_ENGINE_VERSION: o URI da versão do ambiente padrão do App Engine de origem. Por exemplo, apps/myproject/services/service-name/versions/version-name.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

API

Use o método projects.locations.global.connectivityTests.create.

  POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
  {
    "source": {
      "appEngineVersion": {
        "uri": "APP_ENGINE_VERSION",
        },
    },
    "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
    },
    "protocol": "PROTOCOL",
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da função de origem do Cloud Run.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • APP_ENGINE_VERSION: o URI da versão do ambiente padrão do App Engine de origem. Por exemplo, apps/myproject/services/service-name/versions/version-name.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

Testar a conectividade de uma versão de serviço do ambiente padrão do App Engine em um serviço gerenciado pelo Google

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. Insira um nome para o teste.
  4. Selecione um protocolo.
  5. No menu Endpoint de origem, selecione um App Engine.
    1. No menu Serviço do App Engine, selecione o serviço específico do ambiente padrão do App Engine a partir do qual você quer testar a conectividade. Por exemplo, selecione helloworld-service.
      1. Se o endpoint de origem estiver em um projeto diferente do atual, marque a caixa de seleção O endpoint está em um projeto diferente de "PROJECT_NAME".
      2. Selecione um projeto em que o endpoint existe.
    2. No menu da versão do App Engine, selecione uma versão do serviço do ambiente padrão do App Engine a partir do qual você quer testar a conectividade.
  6. Em Destino, faça o seguinte:
    1. No menu Endpoint de destino, selecione um tipo de recurso de serviço gerenciado pelo Google, como o plano de controle do cluster do GKE.
    2. No menu Plano de controle do cluster do GKE de destino, selecione o cluster em que você quer testar a conectividade com o plano de controle do GKE.
    3. Opcional: selecione o endereço IP do plano de controle do cluster do GKE de destino na lista. O padrão é o endereço IP da instância da VM de origem.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-app-engine-version=APP_ENGINE_VERSION \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
      DESTINATION_RESOURCE_FLAG=DESTINATION_ENDPOINT \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • APP_ENGINE_VERSION: o URI da versão do ambiente padrão do App Engine de origem. Por exemplo, apps/myproject/services/servicename/versions/version-number.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.
  • DESTINATION_RESOURCE_FLAG: a sinalização que especifica o tipo de recurso de serviço gerenciado pelo Google.

    Para as opções disponíveis, consulte:

    • --destination-gke-master-cluster
    • --destination-cloud-sql-instance

    Para obter mais informações, consulte a referência gcloud network-management connectivity-tests create.

  • DESTINATION_ENDPOINT: o URI do endpoint de destino.; por exemplo, projects/myproject/locations/us-central1/clusters/cluster-1 para a sinalização --destination-gke-master-cluster.

  • DESTINATION_PORT: a porta do protocolo IP do destino. Esta opção é válida apenas para protocolos TCP ou UDP. O padrão é a porta 80.

  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

API

Use o método projects.locations.global.connectivityTests.create.

  POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
  {
    "source": {
      "appEngineVersion": {
        "uri": "APP_ENGINE_VERSION",
        },
    },
    "destination": {
      "DESTINATION_RESOURCE_FIELD": "DESTINATION_ENDPOINT",
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "port": DESTINATION_PORT,
    },
    "protocol": "PROTOCOL",
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da função de origem do Cloud Run.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • APP_ENGINE_VERSION: o URI da versão do ambiente padrão do App Engine de origem. Por exemplo, apps/myproject/services/servicename/versions/version-number.
  • DESTINATION_RESOURCE_FIELD: o campo que especifica o tipo de recurso de serviço gerenciado pelo Google.

    Para as opções disponíveis, consulte:

    • gkeMasterCluster
    • cloudSqlInstance

    Para mais informações, consulte a referência do endpoint.

  • DESTINATION_ENDPOINT: o URI do endpoint de destino, por exemplo, projects/myproject/locations/us-central1/clusters/cluster-1 para o campo gkeMasterCluster.

  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.

  • DESTINATION_PORT: a porta do protocolo IP do destino. Esta opção é válida apenas para protocolos TCP ou UDP. O padrão é a porta 80.

  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Testar de uma função do Cloud Run para um destino

Esta seção descreve como testar a conectividade de uma função do Cloud Run que é implantada em uma região específica do Google Cloud em uma instância de VM, um endereço IP ou um serviço gerenciado pelo Google. Por exemplo, siga as etapas desta seção para testar a conectividade de uma função do Cloud Run implantada em us-central1 como a origem a um endpoint na rede VPC como o destino.

Para conferir uma análise detalhada de configuração, verifique se a função do Cloud Run está ativa e se você configurou um conector de acesso VPC sem servidor para a função do Cloud Run.

As configurações de saída do Cloud Functions controlam o roteamento de solicitações HTTP de saída de uma função do Cloud Run e controlam os tipos de tráfego roteados pelo conector para sua rede VPC. Para mais informações, consulte Configurações de saída das funções do Cloud Run.

Testar a conectividade de uma função do Cloud Run para uma instância de VM

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. No menu Endpoint de origem, selecione 1ª geração da função do Cloud.
    2. No menu Função do Cloud, selecione a função específica do Cloud Run em que você quer testar a conectividade. Por exemplo, selecione function-1.
    3. No menu de localização Função do Cloud, selecione a região do Google Cloud em que você implantou a função do Cloud Run. É possível implantar funções do Cloud Run em várias regiões com configurações diferentes, mas com o mesmo nome.
  6. Em Destino, faça o seguinte:

    1. No menu Endpoint de destino, selecione Instância da VM.
    2. No menu Instância da VM de destino, selecione uma instância de VM.
    3. No menu Interface de rede de destino, selecione a interface de rede.

      Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM que identifique exclusivamente o local de destino.

    4. Opcional: selecione o Endereço IP de destino na lista. O padrão é o endereço IP da instância da VM de destino.

  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.

  8. Clique em Criar.

  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-cloud-function=SOURCE_CLOUD_FUNCTION \
    --destination-instance=DESTINATION_INSTANCE \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_CLOUD_FUNCTION: o URI da função do Cloud Run, por exemplo, projects/myproject/locations/us-central1/functions/function-1.
  • DESTINATION_INSTANCE: o URI da VM de destino, por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2.
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

API

Use o método projects.locations.global.connectivityTests.create.

POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
{
  "source": {
    "cloudFunction": {
      "uri": "SOURCE_CLOUD_FUNCTION",
      },
  },
  "destination": {
    "instance": "DESTINATION_INSTANCE",
    "ipAddress": "DESTINATION_IP_ADDRESS",
  },
  "protocol": "PROTOCOL",
}'

Substitua:

  • PROJECT_ID: o ID do projeto da função de origem do Cloud Run.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_CLOUD_FUNCTION: o URI da função do Cloud Run, por exemplo, projects/myproject/locations/us-central1/functions/function-1.
  • DESTINATION_INSTANCE: o URI da VM de destino, por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2.
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Testar a conectividade de uma função do Cloud Run para um endereço IP

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. No menu Endpoint de origem, selecione 1ª geração da função do Cloud.
    2. No menu Função do Cloud, selecione a função específica do Cloud Run em que você quer testar a conectividade. Por exemplo, selecione function-1.
    3. No menu de localização Função do Cloud, selecione a região do Google Cloud em que você implantou a função do Cloud Run. É possível implantar funções do Cloud Run em várias regiões com configurações diferentes, mas com o mesmo nome.
  6. Em Destino, selecione Endereço IP e insira um endereço IP.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue na seção Ver os resultados do teste mais adiante nesta página.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-cloud-function=SOURCE_CLOUD_FUNCTION \
    --destination-ip-address==DESTINATION_IP_ADDRESS \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_CLOUD_FUNCTION: o URI da função do Cloud Run, por exemplo, projects/myproject/locations/us-central1/functions/function-1.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino para o qual você está testando.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

API

Use o método projects.locations.global.connectivityTests.create.

POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
{
  "source": {
    "cloudFunction": {
      "uri": "SOURCE_CLOUD_FUNCTION",
    },
  },
  "destination": {
    "ipAddress": "DESTINATION_IP_ADDRESS",
  },
  "protocol": "PROTOCOL",
}'

Substitua:

  • PROJECT_ID: o ID do projeto da função de origem do Cloud Run.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_CLOUD_FUNCTION: o URI da função do Cloud Run, por exemplo, projects/myproject/locations/us-central1/functions/function-1.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino para o qual você está testando.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Testar a conectividade entre uma função do Cloud Run e um serviço gerenciado pelo Google

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. No menu Endpoint de origem, selecione 1ª geração da função do Cloud.
    2. No menu Função do Cloud, selecione a função específica do Cloud Run em que você quer testar a conectividade. Por exemplo, selecione function-1.
    3. No menu Localização da função do Cloud, selecione a região do Google Cloud em que você implantou a função do Cloud Run. É possível implantar funções do Cloud Run em várias regiões com configurações diferentes, mas com o mesmo nome.
  6. Em Destino, faça o seguinte:
    1. No menu Endpoint de destino, selecione um tipo de recurso de serviço gerenciado pelo Google, como Instância do Cloud SQL.
    2. No menu Instância do Cloud SQL de destino, selecione a instância do Cloud SQL da qual você quer testar a conectividade.
    3. Opcional: selecione o Endereço IP da instância de destino do Cloud SQL na lista. O padrão é o endereço IP da função de origem do Cloud Run.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue na seção Ver os resultados do teste mais adiante nesta página.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-cloud-function=SOURCE_CLOUD_FUNCTION \
      DESTINATION_RESOURCE_FLAG=DESTINATION_ENDPOINT \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_CLOUD_FUNCTION: o URI da função do Cloud Run, por exemplo, projects/myproject/locations/us-central1/functions/function-1.
  • DESTINATION_RESOURCE_FLAG: a sinalização que especifica o tipo de recurso de serviço gerenciado pelo Google.

    Para as opções disponíveis, consulte:

    • --destination-gke-master-cluster
    • --destination-cloud-sql-instance

    Para obter mais informações, consulte a referência gcloud network-management connectivity-tests create.

  • DESTINATION_ENDPOINT: o URI do endpoint de destino.; por exemplo, projects/myproject/locations/us-central1/clusters/cluster-1 para a sinalização --destination-gke-master-cluster.

  • DESTINATION_IP_ADDRESS: o endereço IP de destino interno ou externo para o qual você está fazendo testes.

  • DESTINATION_PORT: a porta do protocolo IP do destino. Esta opção é válida apenas para protocolos TCP ou UDP. O padrão é a porta 80.

  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Testar de uma revisão do Cloud Run em um destino

Nesta seção, descrevemos como testar a conectividade de uma revisão do Cloud Run em uma instância de VM, um endereço IP ou um serviço gerenciado pelo Google.

É possível implantar vários serviços do Cloud Run em um único projeto. Cada serviço do Cloud Run tem um endpoint HTTPS em um subdomínio exclusivo do domínio *.run.app. Cada implantação do serviço do Cloud Run cria uma nova revisão imutável. É possível testar a acessibilidade de uma revisão em uma instância de VM, um endereço IP ou um serviço gerenciado pelo Google. Para ver uma análise detalhada de configuração, configure um conector de acesso VPC sem servidor para sua revisão. Os resultados dos testes de conectividade podem ser diferentes para cada revisão.

Por exemplo, um serviço do Cloud Run chamadocloud_run_test tem uma revisão first-revision configurada para usar um conector de acesso VPC sem servidor e outra revisão second-revision que não está configurada para usar um conector de acesso VPC sem servidor. O resultado geral da acessibilidade pode ser acessado pela first-revision, mas não pela second-revision.

Ao criar um teste de conectividade, é possível selecionar em uma lista de revisões de um serviço do Cloud Run.

Testar a conectividade de uma revisão de um serviço do Cloud Run em uma instância de VM

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. Insira um nome para o teste.
  4. Selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. No menu Endpoint de origem, selecione Cloud Run.
    2. No menu Serviço do Cloud Run, selecione o serviço específico do Cloud Run em que você quer testar a conectividade. Por exemplo, selecione helloworld-run.
      1. Se o endpoint de origem estiver em um projeto diferente do atual, marque a caixa de seleção O endpoint está em um projeto diferente de "PROJECT_NAME".
      2. Selecione um projeto em que o endpoint existe.
    3. No menu de revisão do Cloud Run, selecione uma revisão do Cloud Run em que você está testando.
  6. Em Destino, faça o seguinte:

    1. No menu Endpoint de destino, selecione Instância da VM.
    2. No menu Instância da VM de destino, selecione a instância específica.
    3. No menu Interface de rede de destino, selecione a interface de rede.

      Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM para identificar exclusivamente o local de destino.

    4. Opcional: selecione o Endereço IP de destino na lista. O padrão é o endereço IP da instância da VM de destino.

  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.

  8. Clique em Criar.

  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-cloud-run-revision=CLOUD_RUN_REVISION \
    --destination-instance=DESTINATION_INSTANCE \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • CLOUD_RUN_REVISION: o URI da revisão de origem do Cloud Run, por exemplo, projects/myproject/locations/us-central1/revisions/cloudrun-revision.
  • DESTINATION_INSTANCE: o URI da VM de destino, por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2.
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

API

Use o método projects.locations.global.connectivityTests.create.

POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
{
  "source": {
    "cloudRunRevision": {
      "uri": "CLOUD_RUN_REVISION",
      },
  },
    "destination": {
      "instance": "DESTINATION_INSTANCE",
      "ipAddress": "DESTINATION_IP_ADDRESS"
      },
    "protocol": "PROTOCOL",
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da função de origem do Cloud Run.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • CLOUD_RUN_REVISION: o URI da revisão de origem do Cloud Run, por exemplo, projects/myproject/locations/us-central1/revisions/cloudrun-revision.
  • DESTINATION_INSTANCE: o URI da VM de destino, por exemplo, projects/myproject/zones/us-east1-b/instances/instance-2.
  • DESTINATION_IP_ADDRESS: o endereço IP da instância da VM de destino em que você está testando. O endereço IP precisa ser um dos endereços IP da instância de VM de destino.
  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

Testar a conectividade de uma revisão de um serviço do Cloud Run em um endereço IP

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. Insira um nome para o teste.
  4. Selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. No menu Endpoint de origem, selecione Cloud Run.
    2. No menu Serviço do Cloud Run, selecione o serviço específico do Cloud Run em que você quer testar a conectividade. Por exemplo, selecione helloworld-run.
      1. Se o endpoint de origem estiver em um projeto diferente do atual, marque a caixa de seleção O endpoint está em um projeto diferente de "PROJECT_NAME".
      2. Selecione um projeto em que o endpoint existe.
    3. No menu de revisão do Cloud Run, selecione uma revisão do Cloud Run em que você está testando.
  6. Em Destino, selecione Endereço IP e insira um endereço IP.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-cloud-run-revision=CLOUD_RUN_REVISION \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • CLOUD_RUN_REVISION: o URI da revisão de origem do Cloud Run, por exemplo, projects/myproject/locations/us-central1/revisions/cloudrun-revision.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

API

Use o método projects.locations.global.connectivityTests.create.

POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
{
  "source": {
    "cloudRunRevision": {
      "uri": "CLOUD_RUN_REVISION",
      },
  },
    "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      },
    "protocol": "PROTOCOL",
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da função de origem do Cloud Run.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • CLOUD_RUN_REVISION: o URI da revisão de origem do Cloud Run, por exemplo, projects/myproject/locations/us-central1/revisions/cloudrun-revision.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

Testar a conectividade de uma revisão de um serviço do Cloud Run em um serviço gerenciado pelo Google

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. Insira um nome para o teste.
  4. Selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. No menu Endpoint de origem, selecione Cloud Run.
    2. No menu Serviço do Cloud Run, selecione o serviço específico do Cloud Run em que você quer testar a conectividade. Por exemplo, selecione helloworld-run.
      1. Se o endpoint de origem estiver em um projeto diferente do atual, marque a caixa de seleção O endpoint está em um projeto diferente de "PROJECT_NAME".
      2. Selecione um projeto em que o endpoint existe.
    3. No menu de revisão do Cloud Run, selecione uma revisão do Cloud Run em que você está testando.
  6. Em Destino, faça o seguinte:
    1. No menu Endpoint de destino, selecione um tipo de recurso de serviço gerenciado pelo Google, como o plano de controle do cluster do GKE.
    2. No menu Plano de controle do cluster do GKE de destino, selecione o cluster em que você quer testar a conectividade com o plano de controle do GKE.
    3. Opcional: selecione o endereço IP do plano de controle do cluster do GKE de destino na lista. O padrão é o endereço IP da instância da VM de origem.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-cloud-run-revision=CLOUD_RUN_REVISION \
      DESTINATION_RESOURCE_FLAG=DESTINATION_ENDPOINT \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • CLOUD_RUN_REVISION: o URI da revisão de origem do Cloud Run, por exemplo, projects/myproject/locations/us-central1/revisions/cloudrun-revision.
  • PROJECT_NAME: o nome do projeto em que o endpoint está localizado, por exemplo, myproject.
  • DESTINATION_RESOURCE_FLAG: a sinalização que especifica o tipo de recurso de serviço gerenciado pelo Google.

    Para as opções disponíveis, consulte:

    • --destination-gke-master-cluster
    • --destination-cloud-sql-instance

    Para obter mais informações, consulte a referência gcloud network-management connectivity-tests create.

  • DESTINATION_ENDPOINT: o URI do endpoint de destino.; por exemplo, projects/myproject/locations/us-central1/clusters/cluster-1 para a sinalização --destination-gke-master-cluster.

  • DESTINATION_PORT: a porta do protocolo IP do destino. Esta opção é válida apenas para protocolos TCP ou UDP. O padrão é a porta 80.

  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

API

Use o método projects.locations.global.connectivityTests.create.

POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
{
  "source": {
    "cloudRunRevision": {
      "uri": "CLOUD_RUN_REVISION",
      },
  },
    "destination": {
      "DESTINATION_RESOURCE_FIELD": "DESTINATION_ENDPOINT",
      "port": DESTINATION_PORT,
    },
    "protocol": "PROTOCOL",
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da função de origem do Cloud Run.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • CLOUD_RUN_REVISION: o URI da revisão de origem do Cloud Run, por exemplo, projects/myproject/locations/us-central1/revisions/cloudrun-revision.
  • DESTINATION_RESOURCE_FIELD: o campo que especifica o tipo de recurso de serviço gerenciado pelo Google.

    Para as opções disponíveis, consulte:

    • gkeMasterCluster
    • cloudSqlInstance

    Para mais informações, consulte a referência do endpoint.

  • DESTINATION_ENDPOINT: o URI do endpoint de destino, por exemplo, projects/myproject/locations/us-central1/clusters/cluster-1 para o campo gkeMasterCluster.

  • DESTINATION_PORT: a porta do protocolo IP do destino. Esta opção é válida apenas para protocolos TCP ou UDP. O padrão é a porta 80.

  • PROTOCOL: os protocolos de rede com suporte dos conectores de acesso VPC sem servidor (TCP ou UDP).

Como testar de uma rede VPC para uma rede que não seja do Google Cloud

Para testar a partir de uma rede VPC para uma rede que não seja do Google Cloud, siga estas etapas:

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, selecione Endereço IP e insira um endereço IP.
    1. Se a rede VPC estiver em outro projeto, selecione Este é um endereço IP usado no Google Cloud. Em seguida, no campo Endereço IP de origem ou projeto de serviço, selecione o projeto em que a rede está localizada.
    2. Se o endereço IP particular estiver fora do espaço de endereço RFC 1918, marque a caixa Confirmo que o endpoint de origem está em um intervalo fora do espaço de endereço RFC 1918, e selecione a rede de origem que contém o endereço IP.
  6. Em Destino, selecione Endereço IP e insira um endereço IP externo.
  7. Desmarque Este é um endereço IP usado no Google Cloud.
  8. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  9. Clique em Criar.
  10. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Insira o comando a seguir para testar entre endereços IP internos e externos. Substitua variáveis para as opções de comando pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --source-network=SOURCE_NETWORK \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK: o URI da rede VPC em que o endereço IP de origem está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

API

Este exemplo testa a capacidade de executar ping do endereço IP de origem para o endereço IP de destino.

Use o método projects.locations.global.connectivityTests.create.

  POST https://reachability.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
  {
    "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "network": "SOURCE_NETWORK"
    },
    "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "port": "DESTINATION_PORT",
    },
      "protocol": "PROTOCOL".
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK: o URI da rede VPC em que o endereço IP de origem está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Python

O código de exemplo a seguir cria um teste entre dois endereços IP. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

test_input = {
  "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "projectId": "SOURCE_IP_PROJECT_ID"
  },
  "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "port": "DESTINATION_PORT",
  },
  "protocol": "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_IP_PROJECT_ID: o ID do projeto para o endereço IP de origem.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

O exemplo a seguir cria um teste entre dois endereços IP.

test_input = {
    "source": {
        "ipAddress": "SOURCE_IP_ADDRESS",
        "networkType": "GCP_NETWORK"
    },
    "destination": {
        "ipAddress": "DESTINATION_IP_ADDRESS",
        "port": "DESTINATION_PORT",
    },
    "protocol": "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
  parent="projects/PROJECT_ID/locations/global",
  testId="TEST_ID",
  body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK_TYPE: o tipo de rede em que a origem está localizada. Neste caso, use o valor de GCP_NETWORK.
  • DESTINATION_IP_ADDRESS: o endereço IP do destino.
  • DESTINATION_PORT: o número da porta TCP ou UDP de destino. Esta opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Testar de um spoke VPC com outro spoke VPC conectado ao mesmo hub do Network Connectivity Center

Para testar em um spoke VPC em um hub do Network Connectivity Center para outro spoke VPC conectado ao mesmo hub, siga estas etapas.

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, selecione Endereço IP e insira o endereço IP da rede VPC spoke de origem.
  6. Em Destino, selecione Endereço IP e, em seguida, insira o endereço IP em outra rede VPC spoke em que você está testando.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.
  8. Clique em Criar.
  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Digite o comando a seguir para testar entre dois spokes. Substitua variáveis para as opções de comando pelos valores da rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --source-network=SOURCE_NETWORK \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade;
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK: o URI da rede VPC em que o endereço IP de origem está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_IP_ADDRESS: o endereço IP de destino em outra rede VPC spoke em que você está testando.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

API

Este exemplo testa a capacidade de executar ping do endereço IP de origem para o endereço IP de destino.

Use o método projects.locations.global.connectivityTests.create.

  POST https://reachability.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
  {
    "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "network": "SOURCE_NETWORK"
    },
    "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "port": "DESTINATION_PORT",
    },
      "protocol": "PROTOCOL".
  }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem;
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK: o URI da rede VPC em que o endereço IP de origem está localizado (por exemplo, projects/myproject/global/networks/default).
  • DESTINATION_IP_ADDRESS: o endereço IP de destino em outra rede VPC spoke em que você está testando.
  • DESTINATION_PORT: o número da porta TCP ou UDP de destino. Esta opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Python

O código de exemplo a seguir cria um teste entre dois endereços IP. Para mais informações, consulte o método create na biblioteca de cliente das APIs do Google para Python.

test_input = {
  "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "projectId": "SOURCE_IP_PROJECT_ID"
  },
  "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "port": "DESTINATION_PORT",
  },
  "protocol": "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_IP_PROJECT_ID: o ID do projeto para o endereço IP de origem;
  • DESTINATION_IP_ADDRESS: o endereço IP de destino em outra rede VPC spoke em que você está testando.
  • DESTINATION_PORT: o número da porta TCP ou UDP de destino. Esta opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

O exemplo a seguir cria um teste entre dois endereços IP.

test_input = {
    "source": {
        "ipAddress": "SOURCE_IP_ADDRESS",
        "networkType": "GCP_NETWORK"
    },
    "destination": {
        "ipAddress": "DESTINATION_IP_ADDRESS",
        "port": "DESTINATION_PORT",
    },
    "protocol": "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
  parent="projects/PROJECT_ID/locations/global",
  testId="TEST_ID",
  body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK_TYPE: o tipo de rede em que a origem está localizada. Neste caso, use o valor de GCP_NETWORK.
  • DESTINATION_IP_ADDRESS: o endereço IP da VM de destino.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Testar de uma VM com uma rede que não seja do Google Cloud

Este teste analisa a conectividade da VM de origem para um local de borda da rede do Google.

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:

    1. No menu Endpoint de origem, selecione Instância de VM.
    2. No menu Instância da VM de origem, selecione a instância específica.
    3. No menu Interface de rede de origem, selecione a interface de rede.

      Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM que identifique exclusivamente o local de origem.

    4. Opcional: selecione o Endereço IP de origem na lista. O padrão é o endereço IP da instância da VM de origem.

  6. Em Destino, faça o seguinte:

    1. Na lista Endpoint de destino, selecione Endereço IP.
    2. Digite um Endereço IP de destino externo.
    3. Desmarque Este é um endereço IP usado no Google Cloud.
  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.

  8. Clique em Criar.

  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Para testar entre uma VM e um endereço IP externo, insira o comando a seguir: Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-instance=SOURCE_INSTANCE \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-port=DESTINATION_PORT \
    --protocol=PROTOCOL

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

API

O exemplo de teste a seguir determina se a configuração de rede atual permite que a VM instance1 dê um ping no endereço IP de destino.

Use o método projects.locations.global.connectivityTests.create.

 POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
   {
     "source": {
       "instance": "SOURCE_INSTANCE",
       "ipAddress": "SOURCE_IP_ADDRESS",
     },
    "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "port": "DESTINATION_PORT",
     },
     "protocol": "PROTOCOL",
   }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Python

O código de exemplo a seguir cria um teste entre uma instância de VM e um endereço IP externo. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

test_input = {
  "source": {
      "instance":
          "SOURCE_INSTANCE",
      "ipAddress":
          "SOURCE_IP_ADDRESS",
      "projectId":
          "SOURCE_INSTANCE_PROJECT_ID"
  },
  "destination": {
      "ipAddress": "DESTINATION_IP_ADDRESS",
      "port": "DESTINATION_PORT",
  },
  "protocol":
      "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • SOURCE_INSTANCE_PROJECT_ID: o ID do projeto da VM de origem.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo ao qual você está testando.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Testar de uma VM ou de um endereço IP para um balanceador de carga

Nesta seção, descrevemos como testar a conectividade de uma VM ou um endereço IP com um balanceador de carga do Google Cloud.

A análise de configuração dos Testes de conectividade é compatível com o rastreamento de pacotes simulados para todos os tipos de balanceadores de carga do Google Cloud. O caminho de trace para um balanceador de carga de aplicativo externo também se aplica a balanceadores de carga de rede de proxy externos. Para mais informações, consulte Visão geral do Cloud Load Balancing.

Você pode testar a conectividade com estas opções:

Testar de uma VM para um balanceador de carga

Esta seção analisa a conectividade da VM de origem com um balanceador de carga.

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:

    1. No menu Endpoint de origem, selecione Instância de VM.
    2. No menu Instância da VM de origem, selecione a instância específica.
    3. No menu Interface de rede de origem, selecione a interface de rede.

      Se a instância da VM tiver várias interfaces de rede, selecione uma interface de rede da VM que identifique exclusivamente o local de origem.

    4. Opcional: selecione o Endereço IP de origem na lista. O padrão é o endereço IP da instância da VM de origem.

  6. Em Destino, faça o seguinte:

    1. No menu Endpoint de destino, selecione Balanceador de carga.
    2. No menu Balanceador de carga de destino, selecione o balanceador de carga.

      Se o endpoint de destino estiver em um projeto diferente do atual, selecione O endpoint está em um projeto diferente de "PROJECT_NAME". Em seguida, no campo Projeto de endpoint de destino, selecione o projeto em que o endpoint está localizado.

    3. Selecione a Regra de encaminhamento de destino.

  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.

  8. Clique em Criar.

  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Para testar entre uma VM e um balanceador de carga, insira o comando a seguir.

gcloud network-management connectivity-tests create NAME \
    --source-instance=SOURCE_INSTANCE \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --protocol=PROTOCOL \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-port=DESTINATION_PORT \

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo que você está testando.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.

API

Use o método projects.locations.global.connectivityTests.create.

 POST https: //networkmanagement.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
   {
     "source": {
       "instance": "SOURCE_INSTANCE",
       "ipAddress": "SOURCE_IP_ADDRESS",
     },
    "destination": {
      "forwardingRule": "DESTINATION_FORWARDING_RULE",
      "port": "DESTINATION_PORT",
     },
     "protocol": "PROTOCOL",
   }'

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.
  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • DESTINATION_FORWARDING_RULE: a regra de encaminhamento de destino que representa o endpoint.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Python

O código de exemplo a seguir cria um teste entre uma instância de VM e um endpoint do balanceador de carga. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

test_input = {
  "source": {
      "instance":
          "SOURCE_INSTANCE",
      "ipAddress":
          "SOURCE_IP_ADDRESS",
      "projectId":
          "SOURCE_INSTANCE_PROJECT_ID"
  },
  "destination": {
      "forwardingRule": "DESTINATION_FORWARDING_RULE",
      "port": "DESTINATION_PORT",
  },
  "protocol":
      "PROTOCOL",
}

request = api.projects().locations().global_().connectivityTests().create(
    parent="projects/PROJECT_ID/locations/global",
    testId="TEST_ID",
    body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_INSTANCE: o URI da VM de origem (por exemplo, projects/myproject/zones/us-east1-b/instances/instance-1)
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • SOURCE_INSTANCE_PROJECT_ID: o ID do projeto da VM de origem.
  • DESTINATION_FORWARDING_RULE: a regra de encaminhamento de destino que representa o endpoint.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Testar de um endereço IP para um balanceador de carga

Console

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione Criar teste de conectividade.
  3. No campo Nome do teste, insira um nome para o teste.
  4. Na lista Protocolo, selecione um protocolo.
  5. Em Origem, faça o seguinte:
    1. Na lista Endpoint de origem, selecione Endereço IP.
    2. No campo Endereço IP de origem, digite o endereço IP de origem.
      1. Se a rede VPC estiver em outro projeto, selecione Este é um endereço IP usado no Google Cloud. Em seguida, no campo Endereço IP de origem ou projeto de serviço, selecione o projeto em que a rede está localizada.
      2. Se o endereço IP estiver fora do espaço de endereço RFC 1918, marque a caixa de seleção Confirmo que o endpoint de origem reside em um intervalo fora do espaço de endereço RFC 1918. Em seguida, na lista Rede de origem, selecione a rede que contém o endereço IP de origem.
  6. Em Destino, faça o seguinte:

    1. No menu Endpoint de destino, selecione Balanceador de carga.
    2. No menu Balanceador de carga de destino, selecione o endpoint do balanceador de carga.

      Se o endpoint de destino estiver em um projeto diferente do atual, selecione O endpoint está em um projeto diferente de "PROJECT_NAME". Em seguida, no campo Projeto de endpoint de destino, selecione o projeto em que o endpoint está localizado.

    3. Selecione a Regra de encaminhamento de destino.

  7. No campo Porta de destino, insira uma porta de destino para o destino especificado.

  8. Clique em Criar.

  9. Quando o teste terminar, a página principal Connectivity Tests será carregada e mostrará uma lista que contém este e outros testes. Continue para Ver os resultados do teste.

gcloud

Use o comando gcloud network-management connectivity-tests create. Substitua os valores da amostra pelos valores da sua rede VPC.

gcloud network-management connectivity-tests create NAME \
    --source-project=SOURCE_PROJECT \
    --source-ip-address=SOURCE_IP_ADDRESS \
    --protocol=PROTOCOL \
    --destination-ip-address=DESTINATION_IP_ADDRESS \
    --destination-port=DESTINATION_PORT \

Substitua:

  • NAME: o nome do teste de conectividade.
  • SOURCE_PROJECT: o ID do projeto do endpoint de origem.
  • SOURCE_IP_ADDRESS: o endereço IP da instância da VM de origem que está sendo testada. O endereço IP precisa ser um dos endereços IP da instância da VM de origem
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • DESTINATION_IP_ADDRESS: o endereço IP de destino externo em que você está testando.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.

Se o endpoint for usado para acessar serviços ou serviços gerenciados em outra rede VPC, especifique o DESTINATION_NETWORK porque o endpoint tem um endereço IP interno.

API

Este exemplo testa a capacidade de dar um ping do endereço IP de origem em um endpoint do balanceador de carga.

Use o método projects.locations.global.connectivityTests.create.

Ao especificar um endereço IP de origem que é externo fora do Google Cloud, você precisa especificar um networkType de NON_GCP_NETWORK. Substitua os valores no comando a seguir pelos valores da sua rede do Google Cloud.

  POST https://reachability.googleapis.com/v1/projects/PROJECT_ID/locations/global/connectivityTests?testId=TEST_ID'
  {
    "source": {
      "ipAddress": "SOURCE_IP_ADDRESS",
      "networkType": "NON_GCP_NETWORK",
    },
    "destination": {
      "forwardingRule": "DESTINATION_FORWARDING_RULE",
      "port": "DESTINATION_PORT",
    },
    "protocol": "PROTOCOL",
  }'

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • DESTINATION_FORWARDING_RULE: a regra de encaminhamento de destino que representa o endpoint.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.

Se o endpoint for usado para acessar serviços publicados, você precisará especificar DESTINATION_NETWORK porque o endpoint tem um endereço IP interno.

Python

O código de exemplo a seguir cria um teste entre um endereço IP para um endpoint do balanceador de carga. Para mais informações, consulte create na biblioteca de cliente da API do Google para Python.

Ao especificar um endereço IP de origem que é externo fora do Google Cloud, você precisa especificar um networkType de NON_GCP_NETWORK.

test_input = {
    "source": {
        "ipAddress": "SOURCE_IP_ADDRESS",
        "networkType": "NON_GCP_NETWORK"
    },
    "destination": {
        "forwardingRule": "DESTINATION_FORWARDING_RULE",
        "port": "DESTINATION_PORT",
        "projectId": "DESTINATION_IP_PROJECT_ID"
    },
    "protocol": "PROTOCOL",
}

  request = api.projects().locations().global_().connectivityTests().create(
  parent="projects/PROJECT_ID/locations/global",
  testId="TEST_ID",
  body=test_input)

print(json.dumps(request.execute(), indent=4))

Substitua:

  • SOURCE_IP_ADDRESS: o endereço IP de origem do teste.
  • SOURCE_NETWORK_TYPE: o tipo de rede em que a origem está localizada. Neste caso, use o valor de NON_GCP_NETWORK.
  • DESTINATION_FORWARDING_RULE: a regra de encaminhamento de destino que representa o endpoint.
  • DESTINATION_PORT: a porta do protocolo IP do destino. Essa opção é válida apenas para protocolos TCP ou UDP.
  • DESTINATION_IP_PROJECT_ID: o ID do projeto para o endereço IP de destino.
  • PROTOCOL: um protocolo compatível para testes de conectividade. O protocolo padrão é TCP.
  • PROJECT_ID: o ID do projeto em que você está criando o teste.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Se o endpoint for usado para acessar serviços publicados, você precisará especificar DESTINATION_NETWORK porque o endpoint tem um endereço IP interno.

Não é necessário confirmar se o endereço IP está no Google Cloud ou se os endpoints ou endpoints de origem e destino estão fora do espaço de endereço RFC 1918. Esses parâmetros são selecionados automaticamente com base nos endereços IP de origem e destino.

Como testar de uma rede que não seja do Google Cloud para uma rede VPC

Esse procedimento é o mesmo de Como testar entre endereços IP particulares em uma rede VPC, exceto nas etapas a seguir. Use este procedimento para o console do Google Cloud, a Google Cloud CLI, exemplos de API e exemplos do Python.

  1. Se o endereço de origem não estiver localizado no Google Cloud, mas não for da rede de mesmo nível (local), especifique um endereço IP externo.
  2. Se o endereço de origem for da sua rede de mesmo nível (local), será necessário selecionar Outra rede que não seja do Google Cloud.

Como testar de uma rede que não é do Google Cloud para uma rede que não é do Google Cloud

Esse procedimento é o mesmo de Como testar entre endereços IP particulares em uma rede VPC, exceto nas etapas a seguir. Use este procedimento para o console do Google Cloud, a Google Cloud CLI, exemplos de API e exemplos do Python.

  1. Especifique endereços IP externos para o endereço IP de origem e o endereço IP de destino.
  2. No Console do Google Cloud, desmarque Este é um endereço IP usado no Google Cloud.

Ver os resultados dos testes

Nesta seção, você verá como visualizar os resultados de um teste de conectividade.

Console

É possível ver um teste de várias páginas diferentes.

Na página principal do Connectivity Tests

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Na coluna Detalhes do resultado, escolha um teste e clique em Visualizar.
  3. O painel de informações para o teste é exibido. É possível visualizar o resultado geral e os cards de resultado de cada recurso do Google Cloud no caminho do teste. É possível clicar em um link para a página de detalhes de alguns recursos do Google Cloud, como instâncias de VM ou rotas. Se o teste contiver vários traces, será possível selecionar um na lista Resultado do trace.

    Se o teste estiver qualificado para análise de plano de dados em tempo real, você pode ver as métricas de perda de pacote e latência.

  4. Para expandir ou fechar um card de resultados, clique na seta à direita do card.

  5. Para interpretar os resultados do teste, consulte Estados de análise da configuração.

  6. Para fechar o painel de informações, no canto superior direito da página, clique em Ocultar painel de informações.

Na página de detalhes do teste de conectividade

Como alternativa, na página principal do console do Google Cloud, clique no nome de um teste e veja os resultados na página Detalhes do teste de conectividade.

Na página de detalhes da interface de rede

Também é possível ver os resultados da página Detalhes da interface de rede para uma interface de rede de uma instância de VM do Compute Engine. Nesta página, listamos apenas os testes que usam a interface de rede atual como origem ou destino.

Para ver os resultados, selecione Visualizar na coluna Detalhes do resultado ou clique no nome do teste.

gcloud

Para visualizar os resultados de um teste, digite o seguinte comando. Use o ID do teste que você quer ver.

gcloud network-management connectivity-tests describe NAME

Substitua NAME pelo nome do teste de conectividade.

API

Use o método projects.locations.global.connectivityTests.get para visualizar os resultados de um teste.

  GET https://networkmanagement.googleapis.com/v1/{name=projects/PROJECT_ID/locations/global/connectivityTests/TEST_ID}

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Python

O código de exemplo a seguir imprime os resultados de um teste. Para mais informações, consulte get na biblioteca de cliente da API do Google para Python.

project_id = "PROJECT_ID"
test_id= "TEST_ID"
request = api.projects().locations().global_().connectivityTests().get(
      name='projects/%s/locations/global/connectivityTests/%s' %
      (project_id, test_id))
print(json.dumps(request.execute(), indent=4))

Substitua:

  • PROJECT_ID: o ID do projeto em que o teste foi criado.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Executar novamente um ou mais testes

Convém executar novamente um teste de conectividade se fizer alterações na configuração dos recursos do Google Cloud no caminho do teste e desejar ver resultados da última configuração de rede. É possível executar novamente um ou mais testes ao mesmo tempo.

Um teste de conectividade é baseado em um instantâneo da configuração de rede no momento da execução. Executar novamente um teste substitui os resultados anteriores. Se você quer preservar resultados mais antigos, crie um novo teste.

Para verificar o status da operação de teste rerun durante a execução, consulte Verificar uma operação de teste em execução.

Console

Na página principal do Connectivity Tests

  1. No console do Google Cloud, acesse a página Testes de conectividade.

    Acesse Testes de conectividade

  2. Selecione um ou mais testes na lista "Testes de conectividade" disponível.
  3. Clique em Executar novamente.

Na página de detalhes do Connectivity Tests

  1. Na página principal Connectivity Tests anterior, clique no nome de um teste.
  2. Na parte superior da página Detalhes do teste de conectividade, clique em Executar novamente .

Na página de detalhes da interface de rede

  1. No console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar instâncias de VM

  2. Se ainda não estiver selecionado, selecione o projeto que contém a instância em que você quer executar novamente um teste.
  3. Clique na instância que você quer usar para executar novamente um teste.
  4. Em Interfaces de rede, selecione a interface que você quer usar para executar novamente um teste.
  5. Em Análise de rede, clique em Testes de conectividade.
  6. Selecione um ou mais testes na lista "Testes de conectividade" disponível.
  7. Clique em Executar novamente.

gcloud

Para executar novamente um teste de conectividade, insira o seguinte comando. Use o ID de teste que você quer executar novamente.

gcloud network-management connectivity-tests rerun NAME

Substitua NAME pelo nome do teste de conectividade.

API

Quando a API de gerenciamento de rede cria um recurso connectivityTests, ele retém esse recurso de teste até você excluí-lo. Por esse motivo, você pode executar novamente os testes.

Se você não quer criar testes persistentes, use a API para criar um teste e excluí-lo após visualizar o resultado do teste.

Use o método projects.locations.global.connectivityTests.rerun para executar novamente um teste.

  POST https://networkmanagement.googleapis.com/v1/{name=projects/*/locations/global/connectivityTests/*}:rerun
    {
      "name": {projects/PROJECT_ID/connectivityTests/{TEST_ID}}
    }

Substitua:

  • PROJECT_ID: o ID do projeto da VM de origem.
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

Python

O código de exemplo a seguir executa um teste novamente. Para mais informações, consulte rerun na biblioteca de cliente da API do Google para Python.

project_id = "PROJECT_ID"
test_id = "TEST_ID"
request = api.projects().locations().global_().connectivityTests().rerun(name='projects/%s/locations/global/connectivityTests/%s' % (project_id, test_id))
print(json.dumps(request.execute(), indent=4))

Substitua os seguintes valores:

  • PROJECT_ID: o ID do projeto em que o teste foi criado;
  • TEST_ID: o ID do objeto do Connectivity Tests (teste) que você está executando.

A seguir