

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á.

# Usar o deslocamento de tráfego linear
<a name="deployment-guardrails-blue-green-linear"></a>

O deslocamento de tráfego linear permite que você transfira gradualmente o tráfego de sua frota antiga (frota azul) para sua nova frota (frota verde). Com deslocamento de tráfego linear, você pode deslocar o tráfego em várias etapas, minimizando a chance de uma interrupção no seu endpoint. Essa opção blue/green de implantação oferece o controle mais granular sobre a mudança de tráfego.

Você pode escolher o número de instâncias ou a porcentagem da capacidade da frota verde a ser ativada durante cada etapa. Cada etapa linear deve estar apenas entre 10 e 50% da capacidade da frota verde. Para cada etapa, há um período de cozimento durante o qual seus CloudWatch alarmes pré-especificados da Amazon monitoram as métricas da frota verde. Quando o período de baking termina e nenhum alarme dispara, a porção ativa da sua frota verde continua recebendo tráfego e uma nova etapa começa. Se qualquer alarme for disparado durante o período de baking, o tráfego do endpoint irá se reverter para sua frota azul.

O diagrama a seguir mostra como o deslocamento de tráfego linear roteia o tráfego para as frotas azul e verde.

![Uma mudança em três etapas e bem-sucedida do tráfego linear da frota anterior para a nova frota.](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/deployment-guardrails-blue-green-linear.png)


Depois que a SageMaker IA provisiona a nova frota, a primeira parte da frota verde é ativada e recebe tráfego. SageMaker A IA desativa a porção do mesmo tamanho da frota azul e o período de cozimento começa. Se qualquer alarme for disparado, todo o tráfego do endpoint irá se reverter para sua frota azul. Se o período de baking terminar, a próxima etapa será iniciada. Outra parte da frota verde é ativada e recebe tráfego, parte da frota azul é desativada e outro período de baking começa. O mesmo processo se repete até que a frota azul seja totalmente desativada e a frota verde esteja totalmente ativa e recebendo todo o tráfego. Se um alarme disparar a qualquer momento, a SageMaker IA encerra o processo de mudança e 100% do tráfego volta para a frota azul.

## Pré-requisitos
<a name="deployment-guardrails-blue-green-linear-prereqs"></a>

Antes de configurar uma implantação com mudança linear de tráfego, você deve criar CloudWatch alarmes para monitorar as métricas do seu endpoint. Os alarmes ficam ativos durante o período de baking e, se algum alarme disparar, todo o tráfego do endpoint será revertido para a frota azul. Para saber como configurar CloudWatch alarmes em um endpoint, consulte a página de pré-requisitos. [Auto-Rollback Configuração e monitoramento](deployment-guardrails-configuration.md) Para saber mais sobre CloudWatch alarmes, consulte Como [usar CloudWatch alarmes da Amazon no Guia CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) *do usuário da Amazon*.

## Configurar o deslocamento de tráfego linear
<a name="deployment-guardrails-blue-green-linear-configure"></a>

Quando estiver pronto para a implantação e configurar os CloudWatch alarmes para o endpoint, você poderá usar a [UpdateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateEndpoint.html)API Amazon SageMaker AI ou o comando [update-endpoint](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/update-endpoint.html) no para iniciar a AWS CLI implantação.

**Topics**
+ [Como atualizar um endpoint (API)](#deployment-guardrails-blue-green-linear-configure-api-update)
+ [Como atualizar um endpoint com uma política de blue/green atualização (API) existente](#deployment-guardrails-blue-green-linear-configure-api-existing)
+ [Como atualizar um endpoint (CLI)](#deployment-guardrails-blue-green-canary-configure-cli-update)

### Como atualizar um endpoint (API)
<a name="deployment-guardrails-blue-green-linear-configure-api-update"></a>

O exemplo a seguir da [UpdateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateEndpoint.html)API mostra como você pode atualizar um endpoint com mudanças lineares de tráfego.

```
import boto3
client = boto3.client("sagemaker")

response = client.update_endpoint(
    EndpointName="{{<your-endpoint-name>}}",
    EndpointConfigName="{{<your-config-name>}}",
    DeploymentConfig={
        "BlueGreenUpdatePolicy": {
            "TrafficRoutingConfiguration": {
                "Type": "LINEAR",
                "LinearStepSize": {
                    "Type": "CAPACITY_PERCENT",
                    "Value": 20
                },
                "WaitIntervalInSeconds": 300
            },
            "TerminationWaitInSeconds": 300,
            "MaximumExecutionTimeoutInSeconds": 3600
        },
        "AutoRollbackConfiguration": {
            "Alarms": [
                {
                    "AlarmName": "{{<your-cw-alarm>}}"
                }
            ]
        }
    }
)
```

Para configurar a opção de deslocamento de tráfego linear, faça o seguinte:
+ Em `EndpointName`, use o nome do endpoint existente que você deseja atualizar.
+ Em `EndpointConfigName`, use o nome da configuração de endpoint que deseja usar.
+ Em `DeploymentConfig` e `BlueGreenUpdatePolicy`, no `TrafficRoutingConfiguration`, defina o parâmetro `Type` como `LINEAR`. Isso especifica que a implantação usa o modo de deslocamento de tráfego linear.
+ No campo `LinearStepSize` você pode alterar o tamanho das etapas modificando os parâmetros `Type` e `Value`. Para`Type`, use `CAPACITY_PERCENT`, ou seja, a porcentagem de sua frota verde que você deseja usar como tamanho da etapa e, em seguida, defina `Value` como `20`. Neste exemplo, você ativa 20% da capacidade da frota verde para cada etapa de deslocamento de tráfego. Observe que, ao personalizar o tamanho da etapa linear, você deve usar apenas etapas que representem 10% a 50% da capacidade da frota verde.
+ Para `WaitIntervalInSeconds`, use `300`. O parâmetro diz à SageMaker IA que aguarde o tempo especificado (em segundos) entre cada mudança de tráfego. Esse intervalo é a duração do período de baking entre cada etapa linear. No exemplo anterior, a SageMaker IA espera por 5 minutos entre cada turno de tráfego.
+ Para `TerminationWaitInSeconds`, use `300`. Esse parâmetro faz com que a SageMaker IA aguarde o tempo especificado (em segundos) depois que sua frota verde estiver totalmente ativa antes de encerrar as instâncias na frota azul. Neste exemplo, a SageMaker IA espera 5 minutos após o período final de cozimento antes de encerrar a frota azul.
+ Para `MaximumExecutionTimeoutInSeconds`, use `3600`. Esse parâmetro define o tempo máximo em que a implantação pode ser executada antes de o tempo limite ser atingido. No exemplo anterior, sua implantação tem um limite de 1 hora para ser concluída.
+ Em`AutoRollbackConfiguration`, dentro do `Alarms` campo, você pode adicionar seus CloudWatch alarmes por nome. Crie uma entrada `AlarmName: {{<your-cw-alarm>}}` para cada alarme que você deseja usar.

### Como atualizar um endpoint com uma política de blue/green atualização (API) existente
<a name="deployment-guardrails-blue-green-linear-configure-api-existing"></a>

Ao usar a [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para criar um endpoint, você pode, opcionalmente, especificar uma configuração de implantação para reutilização em futuras atualizações de endpoint. Você pode usar as mesmas `DeploymentConfig` opções do exemplo de UpdateEndpoint API anterior. Não há mudanças no comportamento da CreateEndpoint API. Especificar a configuração de implantação não executa automaticamente uma blue/green atualização em seu endpoint.

A opção de usar uma configuração de implantação anterior acontece ao usar a [UpdateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateEndpoint.html)API para atualizar seu endpoint. Ao atualizar seu endpoint, você pode usar a opção `RetainDeploymentConfig` para manter a configuração da implantação especificada ao criar o endpoint.

Ao chamar a [UpdateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateEndpoint.html)API, `RetainDeploymentConfig` defina como `True` para manter as `DeploymentConfig` opções da configuração original do endpoint.

```
response = client.update_endpoint(
    EndpointName="{{<your-endpoint-name>}}",
    EndpointConfigName="{{<your-config-name>}}",
    RetainDeploymentConfig=True
)
```

### Como atualizar um endpoint (CLI)
<a name="deployment-guardrails-blue-green-canary-configure-cli-update"></a>

Se você estiver usando o AWS CLI, o exemplo a seguir mostra como iniciar uma implantação blue/green linear usando o comando [update-endpoint](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/update-endpoint.html).

```
update-endpoint
--endpoint-name {{<your-endpoint-name>
}}--endpoint-config-name {{<your-config-name>}} 
--deployment-config '{"BlueGreenUpdatePolicy": {"TrafficRoutingConfiguration": {"Type": "LINEAR",
    "LinearStepSize": {"Type": "CAPACITY_PERCENT", "Value": 20}, "WaitIntervalInSeconds": 300},
    "TerminationWaitInSeconds": 300, "MaximumExecutionTimeoutInSeconds": 3600},
    "AutoRollbackConfiguration": {"Alarms": [{"AlarmName": "{{<your-alarm>}}"}]}'
```

Para configurar a opção de deslocamento de tráfego linear, faça o seguinte:
+ Em `endpoint-name`, use o nome do endpoint que você deseja atualizar.
+ Em `endpoint-config-name`, use o nome da configuração de endpoint que deseja usar.
+ Para`deployment-config`, use um objeto [BlueGreenUpdatePolicy](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_BlueGreenUpdatePolicy.html)JSON.

**nota**  
Se você preferir salvar seu objeto JSON em um arquivo, consulte [Geração de AWS CLI esqueleto e parâmetros de entrada](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-skeleton.html) no Guia do *AWS CLI usuário*.