Configurar um endpoint privado para um cluster dedicado
Nesta página
Observação
Esta funcionalidade não está disponível para clusters M0
gratuitos e clusters M2
e M5
. Para saber mais sobre quais funcionalidades não estão disponíveis, consulte } Limites do Atlas M0 (cluster gratuito), M2 e M5 .
Siga estas etapas para permitir que um cliente se conecte a um agrupamento dedicado do Atlas utilizando endpoints privados.
Para saber mais sobre como usar pontos de extremidade privados com o Atlas, consulte Saiba mais sobre pontos de extremidade privados no Atlas.
Acesso necessário
Para configurar um endpoint privado para um cluster dedicado, você deve ter acesso Organization Owner
ou Project Owner
ao projeto.
Pré-requisitos, considerações e limitações
Para saber os pré-requisitos, as considerações e as limitações da configuração de um endpoint privado, consulte os seguintes recursos:
Siga estas etapas
Para configurar o AWS PrivateLink pelo Atlas CLI, instale o Atlas CLI e conecte-se pelo Atlas CLI. Em seguida, conclua as seguintes etapas:
Crie o serviço de endpoint privado no Atlas.
Execute o comando do Atlas CLI para iniciar a configuração do AWS PrivateLink no Atlas. O Atlas representa esses recursos na forma de um serviço de endpoints privados. Garanta que o valor de
--region
corresponda à região onde você implementou seu cluster:atlas privateEndpoints aws create [options] Para saber mais sobre a sintaxe do comando e parâmetros, consulte a documentação do Atlas CLI para atlas privateEndpoints aws create.
Se você tiver um cluster multirregional ou multinuvem e não habilita endpoints privados regionalizados, você deve provisionar um endpoint para cada fornecedor e região.
Observe a ID do serviço de endpoints privados na resposta. Neste exemplo, a ID é
6344ac8f51b94c6356527881
.Private endpoint '6344ac8f51b94c6356527881' created.
Recupere o nome do serviço de endpoint privado.
Observação
Pode levar algum tempo para o Atlas provisionar o endpoint privado. Aguarde 1 a 2 minutos antes de concluir este passo.
Execute o comando da Atlas CLI para descrever os endpoints privados utilizando seu ID:
atlas privateEndpoints aws describe <privateEndpointId> [options] Para saber mais sobre a sintaxe do comando e parâmetros, consulte a documentação do Atlas CLI para atlas privateEndpoints aws describe.
Observe o valor para
ENDPOINT SERVICE
na resposta, que mostra o nome do serviço de endpoints privados associado a este endpoint privado. Neste exemplo, o nome do serviço de endpoint écom.amazonaws.vpce.us-east-1.vpce-svc-0705499aae25ac77c
:ID ENDPOINT SERVICE STATUS ERROR 6344ac8f51b94c6356527881 com.amazonaws.vpce.us-east-1.vpce-svc-0705499aae25ac77c AVAILABLE Se o valor do
STATUS
forINITIATING
, aguarde mais 1-2 minutos para o Atlas provisionar o endpoint privado. Em seguida, tente esta etapa novamente.
Crie o ponto de conexão da interface na AWS.
Execute o comando na CLI da AWS, substituindo os seguintes espaços reservados pelos seus valores:
Espaço reservadoDescrição{VPC-ID}String exclusiva que identifica o emparelhamento VPC da AWS. Encontre esse valor no dashboard da VPC em sua conta da AWS .{REGION}região AWS em que seu cluster reside.{SUBNET-IDS}String exclusiva que identifica as sub-redes que sua AWS VPC usa. Encontre esses valores no painel Subnet da sua conta AWS .
Importante
Você deve especificar pelo menos uma sub-rede. Caso contrário, a AWS não provisionará um ponto de conexão da interface à sua VPC. Um ponto de conexão da interface é necessário para que os clientes em sua VPC enviem tráfego para os endpoints privados.
{SERVICE-NAME}String exclusiva que identifica o serviço de endpoint privado que você recuperou anteriormente.aws ec2 create-vpc-endpoint --vpc-id {VPC-ID} \ --region {REGION} --service-name {SERVICE-NAME} \ --vpc-endpoint-type Interface --subnet-ids {SUBNET-IDS} Para saber mais sobre a AWS CLI, consulte Criação de um endpoint de interface.
Observe o valor na resposta do campo
VpcEndpointId
. Esta é uma string alfanumérica 22caracteres que identifica seu endpoint privado. Você também pode encontrar esse valor no Amazon Web Services VPC dashboard da Endpoints > VPC ID do em.
Atualize o endpoint privado com o ID do endpoint privado VPC.
Execute o comando Atlas CLI para fornecer as informações do ponto de conexão da interface ao Atlas usando o ID de serviço do endpoint Atlas e o ID do endpoint VPC. Neste exemplo, você definiria os seguintes parâmetros:
ParâmetroTipoValor de exemploendpointServiceId
Argument6344ac8f51b94c6356527881
privateEndpointId
Opçãovpce-00713b5e644e830a3
atlas privateEndpoints aws interfaces create <endpointServiceId> [options] Para saber mais sobre os parâmetros e a sintaxe de comando, consulte a documentação do Atlas CLI para criação de interfaces AWS do Atlas privateEndpoints.
Configure os grupos de segurança dos seus recursos para enviar e receber tráfego do ponto de conexão da interface.
Para cada recurso que precisa se conectar ao Atlas cluster usando o AWS PrivateLink, o grupo de segurança do recurso deve permitir o tráfego de saída para os endereços IP privados do ponto de conexão da interface em todas as portas.
Consulte Adicionar regras a um grupo de segurança para maiores informações.
Crie um grupo de segurança para o ponto de conexão da interface, permitindo que os recursos tenham acesso a ela.
Este grupo de segurança deve permitir o tráfego de entrada em todas as portas de cada recurso que precisa se conectar aos seus Atlas clusters utilizando o AWS PrivateLink:
No console do Amazon Web Services , navegue até VPC Dashboard.
Clique em Security Groups e, em seguida, clique em Create security group.
Use o assistente para criar um grupo de segurança. Certifique-se de selecionar sua VPC na lista VPC.
Selecione o grupo de segurança que você acabou de criar e clique na aba Inbound Rules.
Clique em Edit Rules.
Adicione regras para liberar todo o tráfego de entrada de cada recurso na VPC que você deseja conectar ao seu Atlas cluster.
Clique em Save Rules.
Clique em Endpoints e, em seguida, clique no endpoint da sua VPC.
Clique na aba Security Groups e, em seguida, clique em Edit Security Groups.
Adicione o grupo de segurança que você acabou de criar e clique em Save.
Para saber mais sobre os grupos de segurança da VPC, consulte a documentação da AWS.
Verifique a disponibilidade dos endpoints privados.
Você pode se conectar ao cluster usando o endpoint privado do AWS PrivateLink depois que o Atlas terminar de configurar todos os recursos e o ponto de extremidade privado se tornar disponível.
Para verificar se o endpoint privado da AWS está disponível:
Execute o comando Atlas CLI para descrever o ponto de conexão da interface usando seu ID. Neste exemplo, você definiria os seguintes parâmetros:
ParâmetroTipoValor de exemplointerfaceEndpointId
Argumentvpce-00713b5e644e830a3
endpointServiceId
Opção6344ac8f51b94c6356527881
atlas privateEndpoints aws interfaces describe <interfaceEndpointId> [options] Para saber mais sobre a sintaxe e os parâmetros do comando, consulte a documentação do Atlas CLI para atlas privateEndpoints aws interfaces describe.
Confirme se o valor do campo
STATUS
sejaAVAILABLE
como mostrado no seguinte exemplo:ID STATUS ERROR vpce-00713b5e644e830a3 AVAILABLE
Para configurar o AWS PrivateLink através da IU do Atlas:
No Atlas, váGo para a Network Access página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Network Access sob o título Security.
A página Acesso à rede é exibida.
Configure o ponto de extremidade privado.
Insira os seguintes detalhes sobre AWS VPC:
Your VPC IDIdentificador único do emparelhamento AWS VPC. Encontre esse valor no dashboard do VPC em sua conta AWS.Your Subnet IDsIdentificadores únicos das sub-redes usados por AWS VPC.
Encontre esses valores no dashboard do Subnet em sua conta AWS.
IMPORTANTE: você deve especificar pelo menos uma sub-rede. Caso contrário, Amazon Web Services não provisionará um ponto de extremidade da interface à sua VPC. Um ponto de conexão da ponto de extremidade da interface é necessário para que os clientes em sua VPC enviem tráfego para os endpoints privados.
Copie o comando exibido na caixa de diálogo e execute-o usando a AWS CLI.
Observação
Você não pode copiar o comando até que o Atlas finalize a criação de recursos VPC em segundo plano.
Consulte Criar um ponto de extremidade de interface para executar essa tarefa usando a CLI do AWS.
Clique em Next.
Configure os grupos de segurança dos seus recursos para enviar e receber tráfego do ponto de conexão da interface.
Para cada recurso que precisa se conectar ao Atlas cluster usando o AWS PrivateLink, o grupo de segurança do recurso deve permitir o tráfego de saída para os endereços IP privados do ponto de conexão da interface em todas as portas.
Consulte Adicionar regras a um grupo de segurança para maiores informações.
Crie um grupo de segurança para o ponto de conexão da interface, permitindo que os recursos tenham acesso a ela.
Este grupo de segurança deve permitir o tráfego de entrada em todas as portas de cada recurso que precisa se conectar aos seus Atlas clusters utilizando o AWS PrivateLink:
No console do Amazon Web Services , navegue até VPC Dashboard.
Clique em Security Groups e, em seguida, clique em Create security group.
Use o assistente para criar um grupo de segurança. Certifique-se de selecionar sua VPC na lista VPC.
Selecione o grupo de segurança que você acabou de criar e clique na aba Inbound Rules.
Clique em Edit Rules.
Adicione regras para liberar todo o tráfego de entrada de cada recurso na VPC que você deseja conectar ao seu Atlas cluster.
Clique em Save Rules.
Clique em Endpoints e, em seguida, clique no endpoint da sua VPC.
Clique na aba Security Groups e, em seguida, clique em Edit Security Groups.
Adicione o grupo de segurança que você acabou de criar e clique em Save.
Para saber mais sobre os grupos de segurança da VPC, consulte a documentação da AWS.
No Atlas, váGo para a Network Access página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Network Access sob o título Security.
A página Acesso à rede é exibida.
Verifique se o ponto de extremidade privado está disponível.
Você pode se conectar a um cluster do Atlas usando o ponto de extremidade privado do AWS PrivateLink quando todos os recursos estiverem configurados e o ponto de extremidade privado estiver disponível.
Para verificar se o endpoint privado do AWS PrivateLink está disponível:
Na aba Private Endpoint, selecione um tipo de cluster e verifique os seguintes status para a região que contém o cluster que você deseja conectar ao usar o AWS PrivateLink:
Atlas Endpoint Service Status | Disponível |
Endpoint Status | Disponível |
Para saber mais sobre os possíveis valores de status, consulte Solução de problemas de conexão de pontos de extremidade privados.
Caso não encontre esses status, consulte Solução de problemas de conexão de pontos de extremidade privados para obter mais informações.
Para configurar o AWS PrivateLink pela Atlas CLI, instale a Atlas CLI e conecte-se pela Atlas CLI. Em seguida, conclua as seguintes etapas:
Crie o serviço de endpoint privado no Atlas.
Execute o comando Atlas CLI para criar um ponto de extremidade privado e um serviço de ponto de extremidade privado no Atlas. Garanta que o valor de
--region
corresponda à região onde você implementou seu cluster:atlas privateEndpoints azure create [options] Para saber mais sobre a sintaxe de comando e parâmetros, consulte a documentação do Atlas CLI sobre atlas privateEndpoints azure create.
Se você tiver um cluster multirregional ou multinuvem e não habilita endpoints privados regionalizados, você deve provisionar um endpoint para cada fornecedor e região.
Observe a ID do serviço de endpoints privados na resposta. Neste exemplo, a ID é
6344ac8f51b94c6356527881
.Private endpoint '6344ac8f51b94c6356527881' created.
Recupere o nome do serviço de endpoint privado.
Observação
Pode levar algum tempo para o Atlas provisionar o endpoint privado. Aguarde 1 a 2 minutos antes de concluir este passo.
Execute o comando Atlas CLI para descrever o ponto de extremidade privado usando seu ID de serviço:
atlas privateEndpoints azure describe <privateEndpointId> [options] Para saber mais sobre a sintaxe de comando e parâmetros, consulte a documentação do Atlas CLI sobre atlas privateEndpoints azure describe.
Observe o valor de
ENDPOINT SERVICE
na resposta, que mostra o nome do serviço do ponto de extremidade. Neste exemplo, o nome do serviço de ponto de extremidade épls_6344ac8f51b94c6356527881
:ID ENDPOINT SERVICE STATUS ERROR 6344ac8f51b94c6356527881 pls_6344ac8f51b94c6356527881 AVAILABLE Se o valor do
STATUS
forINITIATING
, aguarde mais 1-2 minutos para o Atlas provisionar o endpoint privado. Em seguida, tente esta etapa novamente.
Crie o ponto de extremidade no Azure.
Execute o comando
az network private-endpoint create
na CLI do Azure, substituindo os seguintes espaços reservados pelos seus valores:Espaço reservadoDescrição{RESOURCE-GROUP-NAME}Nome do grupo de recursos do Azure que contém a VNet que você deseja usar para se conectar ao Atlas. Esse valor está na página Resource Group Properties no seu dashboard do Azure.{VIRTUAL-NETWORK-NAME}Nome da VNet que você deseja usar para se conectar ao Atlas. Esse valor está na página Virtual Network no seu dashboard do Azure.{SUBNET-NAME}Nome da sub-rede na sua VNet do Azure. Esse valor está na página Virtual Network Subnets no seu dashboard do Azure.{PRIVATE-ENDPOINT-NAME}Etiqueta legível para humanos que identifica o ponto de extremidade privado no seu grupo de recursos do Azure.{SUBSCRIPTION-ID}String exclusiva que identifica sua assinatura no Azure. Esse valor está na página Subscriptions no Azure.{RESOURCE-GROUP-ID}String exclusiva que identifica seu grupo de recursos Azure no Atlas. Você pode encontrar esse valor na guia Private Endpoint na página Network Access na interface do usuário do Atlas.
Esse valor começa com
rg_
e contém uma combinação de letras e números, que se assemelha arg_65c66a56a3a43...
.{ENDPOINT-SERVICE-NAME}String exclusiva que identifica o serviço de ponto de extremidade. Esse é o nome do serviço de ponto de extremidade retornado em uma etapa anterior.az network private-endpoint create --resource-group {RESOURCE-GROUP-NAME} --name {PRIVATE-ENDPOINT-NAME} --vnet-name {VIRTUAL-NETWORK-NAME} --subnet {SUBNET-NAME} --private-connection-resource-id /subscriptions/{SUBSCRIPTION-ID}/resourceGroups/{RESOURCE-GROUP-ID}/providers/Microsoft.Network/privateLinkServices/{ENDPOINT-SERVICE-NAME} --connection-name {ENDPOINT-SERVICE-NAME} --manual-request true Para saber mais sobre a CLI do Azure, consulte Criar um ponto de extremidade privado usando a CLI do Azure.
Copie e salve os seguintes valores:
Resource IDString exclusiva que identifica o ponto de extremidade privado na sua VNet do Azure. Encontre este valor de uma das seguintes maneiras:
Use o dashboard do Azure para recuperar esse valor. A página Properties do seu endpoint privado no dashboard do Azure exibe essa propriedade no campo Resource ID.
Use a saída do comando a seguir, que retorna o valor destacado no campo
id
:1 azure network private-endpoint create 1 { 2 "customDnsConfigs": [], 3 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 4 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink", 5 "location": "eastus2", 6 "manualPrivateLinkServiceConnections": [ 7 { 8 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 9 "groupIds": null, 10 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink/manualPrivateLinkServiceConnections/pls_5f860388d432510d5a6e1a3e", 11 "name": "pls_5f860388d432510d5a6e1a3e", 12 "privateLinkServiceConnectionState": { 13 "actionsRequired": "None", 14 "description": "Connection deleted by service provider", 15 "status": "Disconnected" 16 }, 17 "privateLinkServiceId": "pls_5f860388d432510d5a6e1a3e.00000000-0000-0000-0000-000000000000.eastus2.privatelinkservice", 18 "provisioningState": "Succeeded", 19 "requestMessage": null, 20 "resourceGroup": "privatelink", 21 "type": "Microsoft.Network/privateEndpoints/manualPrivateLinkServiceConnections" 22 } 23 ], 24 "name": "privatelink", 25 "networkInterfaces": [ 26 { 27 "dnsSettings": null, 28 "dscpConfiguration": null, 29 "enableAcceleratedNetworking": null, 30 "enableIpForwarding": null, 31 "etag": null, 32 "hostedWorkloads": null, 33 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000", 34 "ipConfigurations": null, 35 "location": null, 36 "macAddress": null, 37 "name": null, 38 "networkSecurityGroup": null, 39 "primary": null, 40 "privateEndpoint": null, 41 "provisioningState": null, 42 "resourceGroup": "privatelink", 43 "resourceGuid": null, 44 "tags": null, 45 "tapConfigurations": null, 46 "type": null, 47 "virtualMachine": null 48 } 49 ], 50 "privateLinkServiceConnections": [], 51 "provisioningState": "Succeeded", 52 "resourceGroup": "privatelink", 53 "subnet": { 54 "addressPrefix": null, 55 "addressPrefixes": null, 56 "delegations": null, 57 "etag": null, 58 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/virtualNetworks/privatelink/subnets/privatelink", 59 "ipAllocations": null, 60 "ipConfigurationProfiles": null, 61 "ipConfigurations": null, 62 "name": null, 63 "natGateway": null, 64 "networkSecurityGroup": null, 65 "privateEndpointNetworkPolicies": null, 66 "privateEndpoints": null, 67 "privateLinkServiceNetworkPolicies": null, 68 "provisioningState": null, 69 "purpose": null, 70 "resourceGroup": "privatelink", 71 "resourceNavigationLinks": null, 72 "routeTable": null, 73 "serviceAssociationLinks": null, 74 "serviceEndpointPolicies": null, 75 "serviceEndpoints": null 76 }, 77 "tags": null, 78 "type": "Microsoft.Network/privateEndpoints" 79 } Você também pode retornar esse valor usando o comando azure network private-endpoint list CLI.
Private IPEndereço IP privado da interface de rede de pontos de extremidade privados que você criou em sua VNet do Azure. Encontre este valor de uma das seguintes maneiras:
Use o dashboard do Azure para recuperar esse valor. A página Overview do seu endpoint privado no dashboard do Azure exibe essa propriedade no campo Private IP.
Use a CLI do Azure para recuperar este valor:
Use a saída do seguinte comando, que retorna o ID da interface de rede no campo
networkInterfaces.id
destacado:1 azure network private-endpoint create 1 { 2 "customDnsConfigs": [], 3 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 4 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink", 5 "location": "eastus2", 6 "manualPrivateLinkServiceConnections": [ 7 { 8 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 9 "groupIds": null, 10 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink/manualPrivateLinkServiceConnections/pls_5f860388d432510d5a6e1a3e", 11 "name": "pls_5f860388d432510d5a6e1a3e", 12 "privateLinkServiceConnectionState": { 13 "actionsRequired": "None", 14 "description": "Connection deleted by service provider", 15 "status": "Disconnected" 16 }, 17 "privateLinkServiceId": "pls_5f860388d432510d5a6e1a3e.00000000-0000-0000-0000-000000000000.eastus2.privatelinkservice", 18 "provisioningState": "Succeeded", 19 "requestMessage": null, 20 "resourceGroup": "privatelink", 21 "type": "Microsoft.Network/privateEndpoints/manualPrivateLinkServiceConnections" 22 } 23 ], 24 "name": "privatelink", 25 "networkInterfaces": [ 26 { 27 "dnsSettings": null, 28 "dscpConfiguration": null, 29 "enableAcceleratedNetworking": null, 30 "enableIpForwarding": null, 31 "etag": null, 32 "hostedWorkloads": null, 33 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000", 34 "ipConfigurations": null, 35 "location": null, 36 "macAddress": null, 37 "name": null, 38 "networkSecurityGroup": null, 39 "primary": null, 40 "privateEndpoint": null, 41 "provisioningState": null, 42 "resourceGroup": "privatelink", 43 "resourceGuid": null, 44 "tags": null, 45 "tapConfigurations": null, 46 "type": null, 47 "virtualMachine": null 48 } 49 ], 50 "privateLinkServiceConnections": [], 51 "provisioningState": "Succeeded", 52 "resourceGroup": "privatelink", 53 "subnet": { 54 "addressPrefix": null, 55 "addressPrefixes": null, 56 "delegations": null, 57 "etag": null, 58 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/virtualNetworks/privatelink/subnets/privatelink", 59 "ipAllocations": null, 60 "ipConfigurationProfiles": null, 61 "ipConfigurations": null, 62 "name": null, 63 "natGateway": null, 64 "networkSecurityGroup": null, 65 "privateEndpointNetworkPolicies": null, 66 "privateEndpoints": null, 67 "privateLinkServiceNetworkPolicies": null, 68 "provisioningState": null, 69 "purpose": null, 70 "resourceGroup": "privatelink", 71 "resourceNavigationLinks": null, 72 "routeTable": null, 73 "serviceAssociationLinks": null, 74 "serviceEndpointPolicies": null, 75 "serviceEndpoints": null 76 }, 77 "tags": null, 78 "type": "Microsoft.Network/privateEndpoints" 79 } Execute o az network nic show --id {networkInterface.id} da CLI do Azure com o valor do campo
networkInterfaces.id
para recuperar oipConfigurations.privateIPAddress
para a interface de rede de ponto de extremidade privado. O valor desse campo é seu Private IP. A entrada e a saída devem ser semelhantes ao seguinte. Observe o valor destacado do campo Private Endpoint IP Address.1 az network nic show --id /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000 1 { 2 "dnsSettings": { 3 "appliedDnsServers": [], 4 "dnsServers": [], 5 "internalDnsNameLabel": null, 6 "internalDomainNameSuffix": "<>.cx.internal.cloudapp.net", 7 "internalFqdn": null 8 }, 9 "dscpConfiguration": null, 10 "enableAcceleratedNetworking": false, 11 "enableIpForwarding": false, 12 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 13 "hostedWorkloads": [], 14 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000", 15 "ipConfigurations": [ 16 { 17 "applicationGatewayBackendAddressPools": null, 18 "applicationSecurityGroups": null, 19 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 20 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000/ipConfigurations/privateEndpointIpConfig", 21 "loadBalancerBackendAddressPools": null, 22 "loadBalancerInboundNatRules": null, 23 "name": "privateEndpointIpConfig", 24 "primary": true, 25 "privateIpAddress": "10.0.0.4", 26 "privateIpAddressVersion": "IPv4", 27 "privateIpAllocationMethod": "Dynamic", 28 "privateLinkConnectionProperties": { 29 "fqdns": [], 30 "groupId": "", 31 "requiredMemberName": "" 32 }, 33 "provisioningState": "Succeeded", 34 "publicIpAddress": null, 35 "resourceGroup": "privatelink", 36 "subnet": { 37 "addressPrefix": null, 38 "addressPrefixes": null, 39 "delegations": null, 40 "etag": null, 41 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/virtualNetworks/privatelink/subnets/privatelink", 42 "ipAllocations": null, 43 "ipConfigurationProfiles": null, 44 "ipConfigurations": null, 45 "name": null, 46 "natGateway": null, 47 "networkSecurityGroup": null, 48 "privateEndpointNetworkPolicies": null, 49 "privateEndpoints": null, 50 "privateLinkServiceNetworkPolicies": null, 51 "provisioningState": null, 52 "purpose": null, 53 "resourceGroup": "privatelink", 54 "resourceNavigationLinks": null, 55 "routeTable": null, 56 "serviceAssociationLinks": null, 57 "serviceEndpointPolicies": null, 58 "serviceEndpoints": null 59 }, 60 "type": "Microsoft.Network/networkInterfaces/ipConfigurations", 61 "virtualNetworkTaps": null 62 } 63 ], 64 "location": "eastus2", 65 "macAddress": "", 66 "name": "privatelink.nic.00000000-0000-0000-0000-000000000000", 67 "networkSecurityGroup": null, 68 "primary": null, 69 "privateEndpoint": { 70 "customDnsConfigs": null, 71 "etag": null, 72 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink", 73 "location": null, 74 "manualPrivateLinkServiceConnections": null, 75 "name": null, 76 "networkInterfaces": null, 77 "privateLinkServiceConnections": null, 78 "provisioningState": null, 79 "resourceGroup": "privatelink", 80 "subnet": null, 81 "tags": null, 82 "type": null 83 }, 84 "provisioningState": "Succeeded", 85 "resourceGroup": "privatelink", 86 "resourceGuid": "00000000-0000-0000-0000-000000000000", 87 "tags": null, 88 "tapConfigurations": [], 89 "type": "Microsoft.Network/networkInterfaces", 90 "virtualMachine": null 91 }
Atualize seu ponto de extremidade privado com o ID do recurso e o IP privado.
Execute o comando Atlas CLI para criar um ponto de conexão de interface no Atlas usando o ID de serviço do ponto de extremidade do Atlas, o ID do recurso do Azure e o IP privado do Azure. Neste exemplo, você definiria os seguintes parâmetros:
ParâmetroTipoValor de exemploendpointServiceId
Argument6344ac8f51b94c6356527881
privateEndpointId
Opção/subscriptions/4e133d35-e734-4385-a565-c0945567ae346/
resourceGroups/rg_95847a959b876e255dbb9b33_dfragd7w/
providers/Microsoft.Network/privateEndpoints/
test-endpoint
privateEndpointIpAddress
Opção10.0.0.4
atlas privateEndpoints azure interfaces create <endpointServiceId> [options] Para saber mais sobre a sintaxe de comando e os parâmetros, consulte a documentação do Atlas CLI sobre atlas privateEndpoints azure interfaces create.
Observe a ID do ponto de extremidade da interface do ponto de extremidade privado na resposta. Neste exemplo, o ID é
/subscriptions/
4e133d35-e734-4385-a565-c0945567ae346/resourceGroups/
rg_95847a959b876e255dbb9b33_dfragd7w/providers/
Microsoft.Network/privateEndpoints/cli-test
.Interface endpoint '/subscriptions/4e133d35-e734-4385-a565-c0945567ae346/resourceGroups/rg_95847a959b876e255dbb9b33_dfragd7w/providers/Microsoft.Network/privateEndpoints/cli-test' created.
Verifique a disponibilidade dos endpoints privados.
Você pode se conectar ao cluster usando o ponto de extremidade privado do Azure Private Link depois que o Atlas terminar de configurar todos os recursos e o ponto de extremidade privado ficar disponível.
Para verificar se o ponto de extremidade privado do Azure está disponível:
Execute o comando Atlas CLI para descrever o ponto de conexão da interface usando seu ID e o ID do ponto de conexão da interface que você recuperou na etapa anterior. Neste exemplo, você definiria os seguintes parâmetros:
ParâmetroTipoValor de exemploprivateEndpointResourceId
Argument/subscriptions/4e133d35-e734-4385-a565-c0945567ae346/
resourceGroups/rg_95847a959b876e255dbb9b33_dfragd7w/
providers/Microsoft.Network/privateEndpoints/cli-test
endpointServiceId
Opção6344ac8f51b94c6356527881
atlas privateEndpoints azure interfaces describe <privateEndpointResourceId> [options] Para saber mais sobre a sintaxe e os parâmetros do comando, consulte a documentação da CLI do Atlas sobre atlas privateEndpoints azure interfaces describe.
Confirme se o valor do campo
STATUS
sejaAVAILABLE
como mostrado no seguinte exemplo:ID STATUS ERROR pls_6344ac8f51b94c6356527881 AVAILABLE
Para configurar o Azure Private Link através da IU do Atlas:
No Atlas, váGo para a Network Access página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Network Access sob o título Security.
A página Acesso à rede é exibida.
Configure o ponto de extremidade privado.
Insira os seguintes detalhes sobre sua VNet do Azure:
Resource Group NameO nome do grupo de recursos que contém a VNet que você deseja utilizar para conectar ao Atlas. Encontre esse valor na página Resource Group Properties em seu dashboard do Azure.Virtual Network NameO nome da VNet que você deseja usar para se conectar ao Atlas. Encontre esse valor na página Virtual Network em seu dashboard do Azure.Subnet NameO nome da sub-rede em sua VNet do Azure. Encontre esse valor na página Virtual Network Subnets em seu dashboard do Azure.Insira um nome exclusivo para seu ponto de extremidade privado no campo Private Endpoint Name .
Crie o ponto de extremidade privado em sua VNet copiando o comando
az network private-endpoint create
que a caixa de diálogo exibe e executando-o usando a CLI do Azure.Observação
Você não pode copiar o comando até que o Atlas finalize a criação de recursos VNet em segundo plano.
Para obter mais informações sobre este comando, consulte a documentação do Azure.
Você poderá receber um erro como o seguinte ao criar o endpoint privado:
ServiceError: code: LinkedAuthorizationFailed - , The client has permission to perform action 'Microsoft.Network/privateLinkServices/PrivateEndpointConnectionsApproval/action' on scope '/subscriptions/<subscription-id>/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink', however the current tenant '<tenant-id>' is not authorized to access linked subscription '<tenant-id>'. Se você receber esse erro, deverá adicionar o parâmetro
--manual-request true
ao comando da CLI do Azure que você usou para criar o ponto de extremidade privado e, em seguida, executar o comando novamente.Clique em Next.
Finalize a conexão do ponto de extremidade privado.
Insira os seguintes detalhes sobre seu ponto de extremidade privado:
Private Endpoint Resource IDO identificador exclusivo do ponto de extremidade privado que você criou na sua VNet do Azure. Encontre este valor de uma das seguintes maneiras:
A página Properties do seu endpoint privado no dashboard do Azure exibe essa propriedade no campo Resource ID.
A saída do comando a seguir que você executou anteriormente para criar o ponto de extremidade privado retorna o valor destacado no campo id:
1 azure network private-endpoint create 1 { 2 "customDnsConfigs": [], 3 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 4 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink", 5 "location": "eastus2", 6 "manualPrivateLinkServiceConnections": [ 7 { 8 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 9 "groupIds": null, 10 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink/manualPrivateLinkServiceConnections/pls_5f860388d432510d5a6e1a3e", 11 "name": "pls_5f860388d432510d5a6e1a3e", 12 "privateLinkServiceConnectionState": { 13 "actionsRequired": "None", 14 "description": "Connection deleted by service provider", 15 "status": "Disconnected" 16 }, 17 "privateLinkServiceId": "pls_5f860388d432510d5a6e1a3e.00000000-0000-0000-0000-000000000000.eastus2.privatelinkservice", 18 "provisioningState": "Succeeded", 19 "requestMessage": null, 20 "resourceGroup": "privatelink", 21 "type": "Microsoft.Network/privateEndpoints/manualPrivateLinkServiceConnections" 22 } 23 ], 24 "name": "privatelink", 25 "networkInterfaces": [ 26 { 27 "dnsSettings": null, 28 "dscpConfiguration": null, 29 "enableAcceleratedNetworking": null, 30 "enableIpForwarding": null, 31 "etag": null, 32 "hostedWorkloads": null, 33 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000", 34 "ipConfigurations": null, 35 "location": null, 36 "macAddress": null, 37 "name": null, 38 "networkSecurityGroup": null, 39 "primary": null, 40 "privateEndpoint": null, 41 "provisioningState": null, 42 "resourceGroup": "privatelink", 43 "resourceGuid": null, 44 "tags": null, 45 "tapConfigurations": null, 46 "type": null, 47 "virtualMachine": null 48 } 49 ], 50 "privateLinkServiceConnections": [], 51 "provisioningState": "Succeeded", 52 "resourceGroup": "privatelink", 53 "subnet": { 54 "addressPrefix": null, 55 "addressPrefixes": null, 56 "delegations": null, 57 "etag": null, 58 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/virtualNetworks/privatelink/subnets/privatelink", 59 "ipAllocations": null, 60 "ipConfigurationProfiles": null, 61 "ipConfigurations": null, 62 "name": null, 63 "natGateway": null, 64 "networkSecurityGroup": null, 65 "privateEndpointNetworkPolicies": null, 66 "privateEndpoints": null, 67 "privateLinkServiceNetworkPolicies": null, 68 "provisioningState": null, 69 "purpose": null, 70 "resourceGroup": "privatelink", 71 "resourceNavigationLinks": null, 72 "routeTable": null, 73 "serviceAssociationLinks": null, 74 "serviceEndpointPolicies": null, 75 "serviceEndpoints": null 76 }, 77 "tags": null, 78 "type": "Microsoft.Network/privateEndpoints" 79 }
Private Endpoint IP AddressO endereço IP privado da interface de rede de ponto de extremidade privada que você criou em sua VNet do Azure. Encontre este valor de uma das seguintes maneiras:
Use o dashboard do Azure para recuperar esse valor. A página Overview do seu endpoint privado no dashboard do Azure exibe essa propriedade no campo Private IP.
Use a CLI do Azure para recuperar este valor:
A saída do comando a seguir, que você executou anteriormente para criar o ponto de extremidade privado, inclui a ID da interface de rede no campo networkInterfaces.id destacado:
1 azure network private-endpoint create 1 { 2 "customDnsConfigs": [], 3 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 4 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink", 5 "location": "eastus2", 6 "manualPrivateLinkServiceConnections": [ 7 { 8 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 9 "groupIds": null, 10 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink/manualPrivateLinkServiceConnections/pls_5f860388d432510d5a6e1a3e", 11 "name": "pls_5f860388d432510d5a6e1a3e", 12 "privateLinkServiceConnectionState": { 13 "actionsRequired": "None", 14 "description": "Connection deleted by service provider", 15 "status": "Disconnected" 16 }, 17 "privateLinkServiceId": "pls_5f860388d432510d5a6e1a3e.00000000-0000-0000-0000-000000000000.eastus2.privatelinkservice", 18 "provisioningState": "Succeeded", 19 "requestMessage": null, 20 "resourceGroup": "privatelink", 21 "type": "Microsoft.Network/privateEndpoints/manualPrivateLinkServiceConnections" 22 } 23 ], 24 "name": "privatelink", 25 "networkInterfaces": [ 26 { 27 "dnsSettings": null, 28 "dscpConfiguration": null, 29 "enableAcceleratedNetworking": null, 30 "enableIpForwarding": null, 31 "etag": null, 32 "hostedWorkloads": null, 33 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000", 34 "ipConfigurations": null, 35 "location": null, 36 "macAddress": null, 37 "name": null, 38 "networkSecurityGroup": null, 39 "primary": null, 40 "privateEndpoint": null, 41 "provisioningState": null, 42 "resourceGroup": "privatelink", 43 "resourceGuid": null, 44 "tags": null, 45 "tapConfigurations": null, 46 "type": null, 47 "virtualMachine": null 48 } 49 ], 50 "privateLinkServiceConnections": [], 51 "provisioningState": "Succeeded", 52 "resourceGroup": "privatelink", 53 "subnet": { 54 "addressPrefix": null, 55 "addressPrefixes": null, 56 "delegations": null, 57 "etag": null, 58 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/virtualNetworks/privatelink/subnets/privatelink", 59 "ipAllocations": null, 60 "ipConfigurationProfiles": null, 61 "ipConfigurations": null, 62 "name": null, 63 "natGateway": null, 64 "networkSecurityGroup": null, 65 "privateEndpointNetworkPolicies": null, 66 "privateEndpoints": null, 67 "privateLinkServiceNetworkPolicies": null, 68 "provisioningState": null, 69 "purpose": null, 70 "resourceGroup": "privatelink", 71 "resourceNavigationLinks": null, 72 "routeTable": null, 73 "serviceAssociationLinks": null, 74 "serviceEndpointPolicies": null, 75 "serviceEndpoints": null 76 }, 77 "tags": null, 78 "type": "Microsoft.Network/privateEndpoints" 79 } Execute o az network nic show --id {networkInterface.id} O comando Azure CLI com o valor do campo networkInterfaces.id para recuperar o campo ipConfigurations.privateIPAddress para a interface de rede do endpoint privado. O valor deste campo é seu Private Endpoint IP Address. A entrada e a saída devem ser semelhantes ao seguinte. Observe o valor destacado do campo Private Endpoint IP Address.
1 az network nic show --id /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000 1 { 2 "dnsSettings": { 3 "appliedDnsServers": [], 4 "dnsServers": [], 5 "internalDnsNameLabel": null, 6 "internalDomainNameSuffix": "<>.cx.internal.cloudapp.net", 7 "internalFqdn": null 8 }, 9 "dscpConfiguration": null, 10 "enableAcceleratedNetworking": false, 11 "enableIpForwarding": false, 12 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 13 "hostedWorkloads": [], 14 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000", 15 "ipConfigurations": [ 16 { 17 "applicationGatewayBackendAddressPools": null, 18 "applicationSecurityGroups": null, 19 "etag": "W/\"00000000-0000-0000-0000-000000000000\"", 20 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/networkInterfaces/privatelink.nic.00000000-0000-0000-0000-000000000000/ipConfigurations/privateEndpointIpConfig", 21 "loadBalancerBackendAddressPools": null, 22 "loadBalancerInboundNatRules": null, 23 "name": "privateEndpointIpConfig", 24 "primary": true, 25 "privateIpAddress": "10.0.0.4", 26 "privateIpAddressVersion": "IPv4", 27 "privateIpAllocationMethod": "Dynamic", 28 "privateLinkConnectionProperties": { 29 "fqdns": [], 30 "groupId": "", 31 "requiredMemberName": "" 32 }, 33 "provisioningState": "Succeeded", 34 "publicIpAddress": null, 35 "resourceGroup": "privatelink", 36 "subnet": { 37 "addressPrefix": null, 38 "addressPrefixes": null, 39 "delegations": null, 40 "etag": null, 41 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/virtualNetworks/privatelink/subnets/privatelink", 42 "ipAllocations": null, 43 "ipConfigurationProfiles": null, 44 "ipConfigurations": null, 45 "name": null, 46 "natGateway": null, 47 "networkSecurityGroup": null, 48 "privateEndpointNetworkPolicies": null, 49 "privateEndpoints": null, 50 "privateLinkServiceNetworkPolicies": null, 51 "provisioningState": null, 52 "purpose": null, 53 "resourceGroup": "privatelink", 54 "resourceNavigationLinks": null, 55 "routeTable": null, 56 "serviceAssociationLinks": null, 57 "serviceEndpointPolicies": null, 58 "serviceEndpoints": null 59 }, 60 "type": "Microsoft.Network/networkInterfaces/ipConfigurations", 61 "virtualNetworkTaps": null 62 } 63 ], 64 "location": "eastus2", 65 "macAddress": "", 66 "name": "privatelink.nic.00000000-0000-0000-0000-000000000000", 67 "networkSecurityGroup": null, 68 "primary": null, 69 "privateEndpoint": { 70 "customDnsConfigs": null, 71 "etag": null, 72 "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/privatelink/providers/Microsoft.Network/privateEndpoints/privatelink", 73 "location": null, 74 "manualPrivateLinkServiceConnections": null, 75 "name": null, 76 "networkInterfaces": null, 77 "privateLinkServiceConnections": null, 78 "provisioningState": null, 79 "resourceGroup": "privatelink", 80 "subnet": null, 81 "tags": null, 82 "type": null 83 }, 84 "provisioningState": "Succeeded", 85 "resourceGroup": "privatelink", 86 "resourceGuid": "00000000-0000-0000-0000-000000000000", 87 "tags": null, 88 "tapConfigurations": [], 89 "type": "Microsoft.Network/networkInterfaces", 90 "virtualMachine": null 91 }
Insira uma descrição opcional para o ponto de extremidade.
Clique em Create.
No Atlas, váGo para a Network Access página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Network Access sob o título Security.
A página Acesso à rede é exibida.
Verifique se o ponto de extremidade privado está disponível.
Você pode se conectar a um cluster do Atlas usando o ponto de extremidade privado do Azure Private Link quando todos os recursos estiverem configurados e o ponto de extremidade privado estiver disponível.
Para verificar se o ponto de extremidade privado do Azure Private Link está disponível:
Na aba Private Endpoint, selecione um tipo de cluster e verifique os seguintes status para a região que contém o cluster que deseja conectar ao utilizar o Azure Private Link:
Atlas Endpoint Service Status | Disponível |
Endpoint Status | Disponível |
Para saber mais sobre os possíveis valores de status, consulte Solução de problemas de conexão de pontos de extremidade privados.
Caso não encontre esses status, consulte Solução de problemas de conexão de pontos de extremidade privados para obter mais informações.
Para configurar o GCP Private Service Connect no Google Cloud por meio do Atlas CLI, instale o Atlas CLI e conecte-se a partir do Atlas CLI. Em seguida, conclua as seguintes etapas:
Crie o ponto final privado no Atlas.
Execute o comando Atlas CLI para criar um endpoint privado no Atlas. Garanta que o valor de
--region
corresponda à região onde você implementou seu cluster:atlas privateEndpoints gcp create [options] Para saber mais sobre a sintaxe do comando e parâmetros, consulte a documentação do Atlas CLI para atlas privateEndpoints gcp create.
Se você tiver um cluster multirregional ou multinuvem e não habilita endpoints privados regionalizados, você deve provisionar um endpoint para cada fornecedor e região.
Observe o ID do endpoint privado na resposta. Neste exemplo, o ID é
6344ac8f51b94c6356527881
.Private endpoint '6344ac8f51b94c6356527881' created.
Aguarde até que o endpoint privado esteja disponível.
Observação
Pode levar algum tempo para o Atlas provisionar o endpoint privado. Aguarde 1 a 2 minutos antes de concluir este passo.
Execute o comando da Atlas CLI para descrever os endpoints privados utilizando seu ID:
atlas privateEndpoints gcp describe <privateEndpointId> [options]
Para saber mais sobre a sintaxe e os parâmetros do comando, consulte a documentação do Atlas CLI para atlas privateEndpoints gcp describe.
A seguir, é mostrado um exemplo de saída:
ID GROUP NAME REGION STATUS ERROR 6344ac8f51b94c6356527881 N/A CENTRAL_US AVAILABLE
Se o valor do STATUS
for INITIATING
, aguarde mais 1-2 minutos para o Atlas provisionar o endpoint privado. Em seguida, tente esta etapa novamente.
Crie o endpoint no GCP.
Crie um arquivo de scrip shell chamado
setup_psc.sh
.Copie e cole o código a seguir no arquivo
setup_psc.sh
, substituindo os seguintes espaços reservados pelos seus valores:Espaço reservadoDescrição{GCP-PROJECT-ID}String exclusiva que identifica seu projeto do Google Cloud no Google Cloud.{ATLAS-GCP-PROJECT-ID}String exclusiva que identifica o projeto do Google Cloud no qual o Atlas implanta seus recursos.{ENDPOINT}String exclusiva que identifica seu endpoint privado. Esse é o prefixo de todas as regras de encaminhamento que você criar.{REGION}Região do Google Cloud em que seu cluster reside.{SUBNET}Ao criar endpoints do Private Service Connect, você especifica uma sub-rede em sua rede VPC. Você pode criar uma nova sub-rede para encapsular seus pontos de extremidade ou usar uma existente. Esta sub-rede precisa ter pelo menos 50 endereços IP não atribuídos.{VPC-name}Nome da VNet que você deseja usar para se conectar ao Atlas. Você pode encontrar esse valor na página VPC Network no seu dashboard do Google Cloud.{GROUP-ID}Cadeia hexadecimal exclusiva de 24 caracteres que identifica seu projeto no Atlas.!/bin/bash gcloud config set project {GCP-PROJECT-ID} for i in {0..49} do gcloud compute addresses create {ENDPOINT}-ip-$i --region={REGION} --subnet={SUBNET} done for i in {0..49} do if [ $(gcloud compute addresses describe {ENDPOINT}-ip-$i --region={REGION} --format="value(status)") != "RESERVED" ]; then echo "{ENDPOINT}-ip-$i is not RESERVED"; exit 1; fi done for i in {0..49} do gcloud compute forwarding-rules create {ENDPOINT}-$i --region={REGION} --network={VPC-NAME} --address={ENDPOINT}-ip-$i --target-service-attachment=projects/{ATLAS-GCP-PROJECT-ID}/regions/{REGION}/serviceAttachments/sa-{REGION}-{GROUP-ID}-$i done Execute o arquivo de shell
sh setup_psc.sh Created [https://www.googleapis.com/compute/v1/projects/<PROJECT-ID>/regions/<REGION>/addresses/-ip-0]., Created [https://www.googleapis.com/compute/v1/projects/<PROJECT-ID>/regions/<REGION>/addresses/-ip-1]., ... Created [https://www.googleapis.com/compute/v1/projects/<PROJECT-ID>/regions/<REGION>/addresses/-ip-49]., Created [https://www.googleapis.com/compute/v1/projects/<PROJECT-ID>/regions/<REGION>/forwardingRules/-ip-0]., Created [https://www.googleapis.com/compute/v1/projects/<PROJECT-ID>/regions/<REGION>/forwardingRules/-ip-1]., ... Created [https://www.googleapis.com/compute/v1/projects/<PROJECT-ID>/regions/<REGION>/forwardingRules/-ip-49]. Execute o comando a seguir para gerar uma lista dos seus endereços de encaminhamento do Google Cloud e armazená-los em um arquivo chamado
atlasEndpoints.txt
, substituindo os seguintes espaços reservados da etapa anterior:Espaço reservadoDescrição{REGION}Região do Google Cloud em que seu cluster reside.{ENDPOINT}String exclusiva que identifica seu endpoint privado. Esse é o prefixo de todas as regras de encaminhamento que você criar.gcloud compute forwarding-rules list --regions={REGION} --format="csv(name,IPAddress)" --filter="name:({ENDPOINT}*)" > atlasEndpoints.txt
Atualize o formato do atlasEndpoints.txt
arquivo.
Execute o seguinte comando para reformatar o conteúdo de atlasEndpoints.txt
:
sed -i '' '1d' atlasEndpoints.txt tr -s ',' '@' <atlasEndpoints.txt>atlasEndpoints2.txt tr -s '\n' ',' <atlasEndpoints2.txt>atlasEndpoints.txt sed -i '' '$ s/.$//' atlasEndpoints.txt rm atlasEndpoints2.txt
Observação
Você usa o conteúdo de atlasEndpoints.txt
na próxima etapa como o valor para o parâmetro endpoint
.
Atualize o endpoint privado com o ID do endpoint privado VPC.
Execute o comando Atlas CLI para criar um ponto de conexão de interface no Atlas usando o ID do endpoint do Atlas e o ID do endpoint VPC. Neste exemplo, você definiria os seguintes parâmetros:
ParâmetroTipoValor de exemploendpointGroupId
Argumenttester-1
endpointServiceId
Opção6344ac8f51b94c6356527881
gcpProjectId
Opçãoatlascli-private-endpoints
endpoint
Opçãotester-1@10.142.0.1,tester-2@10.142.0.2, ... , tester-49@10.142.0.49, tester-50@10.142.0.50
O
...
representa 46 outros endpoints no meio.Para adicionar uma nova interface para um ponto de extremidade privado do Google Cloud usando a CLI do Atlas, execute o seguinte comando:
atlas privateEndpoints gcp interfaces create <endpointGroupId> [options] Para saber mais sobre a sintaxe de comando e os parâmetros, consulte a documentação do Atlas CLI sobre atlas privateEndpoints gcp interfaces create.
Verifique a disponibilidade dos endpoints privados.
Você pode se conectar ao cluster usando o endpoint privado do GCP Private Service Connect depois que o Atlas terminar de configurar todos os recursos e o endpoint privado ficar disponível.
Para verificar se o endpoint privado do Google Cloud está disponível:
Execute o comando Atlas CLI para descrever o ponto de conexão da interface usando seu ID. Neste exemplo, você usaria os seguintes parâmetros da etapa anterior:
ParâmetroTipoValor de exemploid
Argumenttester-1
endpointServiceId
Opção6344ac8f51b94c6356527881
Para retornar a interface de endpoint privada da Google Cloud Platform que você especifica. usando o Atlas CLI, execute o seguinte comando:
atlas privateEndpoints gcp interfaces describe <id> [options] Para saber mais sobre a sintaxe e os parâmetros do comando, consulte a documentação do Atlas CLI para descrição das interfaces doAtlas privateEndpoints GCP .
Confirme se o valor do campo
STATUS
sejaAVAILABLE
como mostrado no seguinte exemplo:ENDPOINT STATUS DELETE REQUESTED tester-1 AVAILABLE false Se o valor de
STATUS
forVERIFIED
, aguarde 1-2 minutos para que o Atlas disponibilizar seu endpoint privado.
Para configurar o GCP Private Service Connect no Google Cloud pela IU do Atlas:
No Atlas, váGo para a Network Access página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Network Access sob o título Security.
A página Acesso à rede é exibida.
Configure o ponto de extremidade privado.
Insira os seguintes detalhes sobre sua VPC do Google Cloud:
Google Cloud Project IDO ID exclusivo para seu projeto. Encontre esse valor na página Dashboard na sua Google Cloud Platform.VPC NameO nome da VPC que você deseja usar para se conectar ao Atlas. Encontre esse valor na VPC Networks página do painel do Google Cloud.Subnet NameO nome da sub-rede na sua VPC do Google Cloud. Encontre esse valor na VPC Networks página do painel do Google Cloud.Insira um nome exclusivo para seu endpoint privado no campo Private Service Connect Endpoint Prefix. Esse será o prefixo de todos os endpoints criados e o nome do grupo de endpoints. Clique em Next.
Crie as regras de encaminhamento na sua VPC do Google Cloud baixando o shell script e executando-o usando a CLI gcloud. Isso produzirá um arquivo JSON contendo uma lista de endereços IP e nomes de endpoints que você precisará na próxima etapa. Clique em Next.
Clique em Upload JSON File para selecionar e fazer upload do arquivo JSON gerado.
Clique em Create Private Endpoint.
No Atlas, váGo para a Network Access página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Network Access sob o título Security.
A página Acesso à rede é exibida.
Verifique se o ponto de extremidade privado está disponível.
Você pode se conectar a um cluster do Atlas usando o ponto de extremidade privado do GCP Private Service Connect quando todos os recursos estiverem configurados e o ponto de extremidade privado estiver disponível.
Para verificar se o ponto de extremidade privado do GCP Private Service Connect está disponível:
Na aba Private Endpoint, verifique os seguintes status para a região que contém o cluster que deseja conectar ao utilizar o GCP Private Service Connect:
Atlas Endpoint Service Status | Disponível |
Endpoint Status | Disponível |
Para saber mais sobre os possíveis valores de status, consulte Solução de problemas de conexão de pontos de extremidade privados.
Caso não encontre esses status, consulte Solução de problemas de conexão de pontos de extremidade privados para obter mais informações.