

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Conceitos básicos do AWS PrivateLink
<a name="getting-started"></a>

Este tutorial demonstra como enviar uma solicitação de uma instância do EC2 em uma sub-rede privada para o Amazon CloudWatch usando o AWS PrivateLink.

O diagrama a seguir fornece uma visão geral desse cenário. Para se conectar do seu computador à instância na sub-rede privada, primeiro é necessário conectar a um host bastion em uma sub-rede pública. Tanto o host bastion quanto a instância devem usar o mesmo par de chaves. Como o arquivo `.pem` da chave privada está no seu computador, e não no host bastion, você usará o encaminhamento de chaves SSH. Em seguida, você poderá conectar à instância desde o host bastion sem especificar o arquivo `.pem` no comando **ssh**. Depois de configurar um endpoint da VPC para o CloudWatch, o tráfego da instância destinada ao CloudWatch é resolvido para a interface de rede do endpoint e, em seguida, enviado para o CloudWatch usando o endpoint da VPC.

![\[Uma instância em uma sub-rede privada acessa o CloudWatch usando um endpoint da VPC.\]](http://docs.aws.amazon.com/pt_br/vpc/latest/privatelink/images/getting-started.png)


Para fins de teste, é possível usar uma única zona de disponibilidade. Em um ambiente de produção, recomendamos usar pelo menos duas zonas de disponibilidade para garantir baixa latência e alta disponibilidade.

**Topics**
+ [Etapa 1: criar uma VPC com sub-redes](#create-vpc-subnets)
+ [Etapa 2: iniciar as instâncias](#launch-instances)
+ [Etapa 3: testar o acesso ao CloudWatch](#test-cloudwatch-access)
+ [Etapa 4: criar um endpoint da VPC para acessar o CloudWatch](#create-vpc-endpoint-cloudwatch)
+ [Etapa 5: testar o endpoint da VPC](#test-vpc-endpoint)
+ [Etapa 6: limpar](#clean-up)

## Etapa 1: criar uma VPC com sub-redes
<a name="create-vpc-subnets"></a>

Use o procedimento a seguir para criar uma VPC com uma sub-rede pública e uma sub-rede privada.

**Como criar a VPC**

1. Abra o console da Amazon VPC, em [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Escolha **Criar VPC**.

1. Em **Resources to create** (Recursos a serem criados), escolha **VPC and more** (VPC e mais).

1. Em **Name tag auto-generation** (Geração automática de tags de nome), insira um nome para a VPC.

1. Para configurar as sub-redes, faça o seguinte:

   1. Em **Number of Availability Zones** (Número de zonas de disponibilidade), escolha **1** ou **2** dependendo das suas necessidades.

   1. Em **Number of public subnets** (Número de sub-redes públicas), verifique se você tem uma sub-rede pública por zona de disponibilidade.

   1. Em **Number of private subnets** (Número de sub-redes privadas), verifique se você tem uma sub-rede privada por zona de disponibilidade.

1. Escolha **Criar VPC**.

## Etapa 2: iniciar as instâncias
<a name="launch-instances"></a>

Usando a VPC criada na etapa anterior, inicie o host bastion na sub-rede pública e a instância na sub-rede privada.

**Pré-requisitos**
+ Crie um par de chaves usando o formato **.pem**. É necessário escolher esse par de chaves ao iniciar o host bastion e a instância.
+ Crie um grupo de segurança para o host bastion que permita o tráfego SSH de entrada do bloco CIDR para seu computador.
+ Crie um grupo de segurança para a instância que permita o tráfego SSH de entrada do grupo de segurança para o host bastion.
+ Crie um perfil da instância do IAM e anexe a política **CloudWatchReadOnlyAccess**.

**Para iniciar o host bastion**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Escolha **Iniciar instância**.

1. Em **Name** (Nome), insira um nome para o host bastion.

1. Mantenha os valores padrão de imagem e tipo de instância.

1. Em **Key pair** (Par de chaves), selecione seu par de chaves.

1. Em **Network settings** (Configurações de rede), faça o seguinte:

   1. Em **VPC**, escolha sua VPC.

   1. Em **Subnet** (Sub-rede), escolha a sub-rede pública.

   1. Em **Auto-assign public IP** (Atribuir IP público automaticamente), selecione **Enable** (Habilitar).

   1. Em **Firewall**, escolha **Select existing security group** (Selecionar grupo de segurança existente) e, em seguida, escolha o grupo de segurança para o host bastion.

1. Escolha **Iniciar instância**.

**Para iniciar a instância**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Escolha **Iniciar instância**.

1. Em **Name** (Nome), insira um nome para a instância.

1. Mantenha os valores padrão de imagem e tipo de instância.

1. Em **Key pair** (Par de chaves), selecione seu par de chaves.

1. Em **Network settings** (Configurações de rede), faça o seguinte:

   1. Em **VPC**, escolha sua VPC.

   1. Em **Subnet** (Sub-rede), escolha a sub-rede privada.

   1. Em **Auto-assign public IP** (Atribuir IP público automaticamente), selecione **Disable** (Desabilitar).

   1. Em **Firewall**, escolha **Select existing security group** (Selecionar grupo de segurança existente) e, em seguida, escolha o grupo de segurança para a instância.

1. Expanda **Advanced details** (Detalhes avançados). Em **IAM instance profile** (Perfil de instância do IAM), escolha o perfil de instância do IAM.

1. Escolha **Iniciar instância**.

## Etapa 3: testar o acesso ao CloudWatch
<a name="test-cloudwatch-access"></a>

Use o seguinte procedimento para confirmar que a instância não consegue acessar o CloudWatch. Você fará isso usando um comando AWS CLI somente de leitura para o CloudWatch.

**Para testar o acesso ao CloudWatch**

1. Em seu computador, adicione o par de chaves ao agente SSH usando o comando a seguir, em que *key.pem* é o nome do arquivo .pem.

   ```
   ssh-add ./key.pem
   ```

   Se você receber um erro informando que as permissões do seu par de chaves estão muito abertas, execute o comando a seguir e repita o comando anterior.

   ```
   chmod 400 ./key.pem
   ```

1. Conecte ao host bastion do seu computador. É necessário especificar a opção `-A`, o nome de usuário da instância (por exemplo, `ec2-user`) e o endereço IP público do host bastion.

   ```
   ssh -A ec2-user@bastion-public-ip-address
   ```

1. Connect à instância desde o host bastion. Você deve especificar o nome de usuário da instância (por exemplo,`ec2-user`) e o endereço IP privado da instância.

   ```
   ssh ec2-user@instance-private-ip-address
   ```

1. Execute o comando [list-metrics](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/list-metrics.html) do CloudWatch na instância conforme mostrado a seguir. Para a opção `--region`, especifique a região em que você a VPC foi criada.

   ```
   aws cloudwatch list-metrics --namespace AWS/EC2 --region us-east-1
   ```

1. Após alguns minutos, o tempo limite do comando é excedido. Isso demonstra que você não pode acessar o CloudWatch pela instância com a configuração atual da VPC.

   ```
   Connect timeout on endpoint URL: https://monitoring.us-east-1.amazonaws.com/
   ```

1. Permaneça conectado à sua instância Depois de criar o endpoint da VPC, você tentará este comando **list-metrics** novamente.

## Etapa 4: criar um endpoint da VPC para acessar o CloudWatch
<a name="create-vpc-endpoint-cloudwatch"></a>

Use o seguinte procedimento para criar um endpoint da VPC que se conecta ao CloudWatch.

**Pré-requisito**  
Crie um grupo de segurança para o endpoint da VPC que permita o tráfego para o CloudWatch. Por exemplo, adicione uma regra que permita o tráfego de HTTPS do bloco CIDR da VPC.

**Para criar um endpoint da VPC para o CloudWatch.**

1. Abra o console da Amazon VPC, em [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. No painel de navegação, escolha **Endpoints**.

1. Escolha **Criar endpoint**.

1. Em **Name tag** (Etiqueta de nome), insira um nome para o endpoint.

1. Em **Service category** (Categoria de serviço), escolha **Serviços da AWS**.

1. Em **Service** (Serviço), selecione **com.amazonaws.*region*.monitoring**.

1. Em **VPC**, selecione sua VPC.

1. Em **Subnets** (Sub-redes), selecione a zona de disponibilidade e, em seguida, selecione a sub-rede privada.

1. Em **Security group** (Grupo de segurança), selecione o grupos de segurança para o endpoint da VPC.

1. Em **Policy** (Política), selecione **Full access** (Acesso total) para permitir todas as operações de todas as entidades principais em todos os recursos no endpoint da VPC.

1. (Opcional) Para adicionar uma tag, escolha **Adicionar nova tag** e insira a chave e o valor da tag.

1. Escolha **Criar endpoint**. O status inicial é **Pending** (Pendente). Antes de passar para a próxima etapa, aguarde até que o status se torne **Available** (Disponível). Isso pode levar alguns minutos.

## Etapa 5: testar o endpoint da VPC
<a name="test-vpc-endpoint"></a>

Verifique se o endpoint da VPC está enviando solicitações da sua instância para o CloudWatch.

**Para testar o endpoint da VPC**  
Execute o seguinte comando na sua instância. Para a opção `--region`, especifique a região em que o endpoint da VPC foi criado.

```
aws cloudwatch list-metrics --namespace AWS/EC2 --region us-east-1
```

Se você receber uma resposta, mesmo uma resposta com resultados vazios, estará conectado ao CloudWatch usando o AWS PrivateLink.

Se você receber um erro `UnauthorizedOperation`, certifique-se de que a instância tenha um perfil do IAM que permita acesso ao CloudWatch.

Se a solicitação atingir o tempo limite, verifique o seguinte:
+ O grupo de segurança do endpoint permite tráfego para o CloudWatch.
+ A opção `--region` especifica a região na qual você criou o endpoint da VPC.

## Etapa 6: limpar
<a name="clean-up"></a>

Se o host bastion e a instância criados durante este tutorial não forem mais necessários, você poderá encerrá-los.

**Para encerrar as instâncias**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, escolha **Instances (Instâncias)**.

1. Selecione ambas as instâncias de teste e escolha **Instance state** (Estado da instância) e **Terminate instance** (Encerrar instância).

1. Quando a confirmação for solicitada, escolha **Terminate** (Encerrar).

Caso não precise mais do endpoint da VPC, você poderá excluí-lo.

**Para excluir o endpoint da VPC**

1. Abra o console da Amazon VPC, em [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. No painel de navegação, escolha **Endpoints**.

1. Selecione o endpoint da VPC.

1. Escolha **Actions** (Ações), **Delete VPC endpoints** (Excluir endpoints da VPC).

1. Quando a confirmação for solicitada, insira **delete** e escolha **Excluir**.