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á.
Atualizar um serviço usando o console
Você pode atualizar um serviço do Amazon ECS usando o console do Amazon ECS. A configuração atual de serviço já está preenchida automaticamente. Você pode atualizar a definição da tarefa, a contagem de tarefas desejada, a estratégia do provedor de capacidade, a versão da plataforma e a configuração de implantação, ou qualquer combinação delas.
Para obter informações sobre como atualizar a configuração de implantação azul/verde, consulte. Atualizando uma configuração de implantação azul/verde usando o console
Considere o seguinte ao usar o novo console:
-
Você deve usar o AWS Command Line Interface para atualizar um serviço que usa qualquer um dos seguintes parâmetros:
-
Implantações azuis/verdes
-
Descoberta de serviço: você só pode visualizar sua configuração de descoberta de serviço.
-
Política de rastreamento com uma métrica personalizada
-
Atualização de serviço: você não pode atualizar a configuração de rede
awsvpc
e o período de carência da verificação de integridade.
Para obter informações sobre como atualizar um serviço usando oAWS CLI, consulte update-service na AWS Command Line Interface Referência.
-
-
Se você alterar as portas usadas por contêineres em uma definição de tarefa, talvez seja necessário atualizar os grupos de segurança da instância de contêiner para que funcionem com as portas atualizadas.
-
O Amazon ECS não atualiza automaticamente os grupos de segurança associados aos balanceadores de carga do Elastic Load Balancing ou às instâncias de contêiner do Amazon ECS.
-
Se seu serviço usa um balanceador de carga, a configuração do balanceador de carga definida para seu serviço quando ele foi criado não pode ser alterada usando o console. Em vez disso, você pode usar o SDK AWS CLI ou para modificar a configuração do balanceador de carga. Para obter informações sobre como modificar a configuração, consulte UpdateServicea Referência da API do Amazon Elastic Container Service.
-
Se você atualizar a definição da tarefa para o serviço, o nome do contêiner e a porta do contêiner especificados na configuração do balanceador de carga deverão permanecer na definição da tarefa.
É possível atualizar um serviço existente para alterar alguns dos parâmetros de configuração do serviço, como o número de tarefas mantidas por um serviço ou a definição de tarefa usada pelas tarefas ou, se as tarefas estiverem usando o tipo de inicialização do Fargate, será possível alterar a versão da plataforma usada pelo serviço. Não é possível atualizar um serviço que usa uma versão da plataforma Linux para usar uma versão da plataforma Windows e vice-versa. Se você tiver um aplicativo que precisa de mais capacidade, é possível expandir seu serviço. Se você tiver capacidade não utilizada para reduzir, é possível reduzir o número de tarefas desejadas no serviço e liberar recursos.
Se quiser usar uma imagem de contêiner atualizada para suas tarefas, você poderá criar uma revisão de definição de tarefa com essa imagem e implantá-la no serviço usando a opção Forçar nova implantação no console.
O programador de serviço usa os parâmetros de porcentagem íntegros mínimos e máximos (na configuração de implantação para o serviço) para determinar a estratégia de implantação.
Se um serviço estiver usando o tipo de implantação de atualização contínua (ECS
), a porcentagem de integridade mínima representa um limite menor no número de tarefas em um serviço que devem permanecer no estado RUNNING
durante uma implantação, como uma porcentagem do número desejado de tarefas (arredondado para cima, para o número inteiro mais próximo). O parâmetro também se aplica enquanto qualquer instância de contêiner estiver no estado DRAINING
se o serviço contiver tarefas usando o tipo de inicialização do EC2. Use esse parâmetro para implantar sem usar capacidade adicional de cluster. Por exemplo, se o serviço tiver um número desejado de quatro tarefas e uma porcentagem de integridade mínima de 50%, o programador poderá interromper duas tarefas existentes para liberar a capacidade do cluster antes de iniciar duas novas tarefas. As tarefas para serviços que não usam um load balancer serão consideradas íntegras se estiverem no estado RUNNING
. As tarefas para serviços que usam um load balancer são consideradas íntegras se estiverem com o status RUNNING
e forem relatadas como íntegras pelo load balancer. O valor padrão da porcentagem mínima de integridade é 100%.
Se um serviço estiver usando o tipo de implantação de atualização contínua (ECS
), o parâmetro porcentagem máxima representa um limite superior no número permitido de tarefas em um serviço no estado PENDING
, RUNNING
ou STOPPING
durante uma implantação, como uma porcentagem do número desejado de tarefas (arredondado para baixo, para o menor número inteiro mais próximo). O parâmetro também se aplica enquanto qualquer instância de contêiner estiver no estado DRAINING
se o serviço contiver tarefas usando o tipo de inicialização do EC2. Use esse parâmetro para definir o tamanho do lote de implantação. Por exemplo, se o serviço tiver um número desejado de quatro tarefas e um valor máximo de porcentagem de 200%, o programador poderá iniciar quatro tarefas novas antes de interromper as quatro tarefas mais antigas. Isso ocorre desde que os recursos de cluster necessários para isso estejam disponíveis. O valor padrão da porcentagem máxima é 200%.
Quando o programador de serviço substitui uma tarefa durante uma atualização, o serviço primeiro eliminará a tarefa do load balancer (se usado) e esperará as conexões se dissiparem. Em seguida, o equivalente de docker stop será enviado para os contêineres executados na tarefa. Isso resulta em um sinal SIGTERM
e um tempo limite de 30 segundos, após o qual SIGKILL
é enviado, e os contêineres são interrompidos à força. Se o contêiner administra o sinal SIGTERM
com tranquilidade e sai dentro de 30 segundos após recebê-lo, nenhum sinal SIGKILL
é enviado. O programador de serviço inicia e interrompe tarefas conforme definidas por suas configurações de porcentagem íntegras mínimas e máximas.
O agendador de serviços também substitui tarefas consideradas não íntegras após uma falha na verificação de integridade do contêiner ou na verificação de integridade do grupo-alvo do balanceador de carga. Essa substituição depende dos parâmetros maximumPercent
desiredCount
de definição do serviço. Se uma tarefa for marcada como não íntegra, o agendador de serviços iniciará primeiro uma tarefa de substituição. Se a tarefa de substituição tiver um status de integridade deHEALTHY
, o agendador de serviços interromperá a tarefa não íntegra. Se a tarefa de substituição tiver um status de integridade deUNHEALTHY
, o agendador interromperá a tarefa de substituição não íntegra ou a tarefa não íntegra existente para que a contagem total de tarefas seja igual. desiredCount
Se o maximumPercent
parâmetro limitar o agendador de iniciar uma tarefa de substituição primeiro, o agendador interromperá aleatoriamente uma tarefa não íntegra, uma de cada vez, para liberar capacidade e, em seguida, iniciará uma tarefa de substituição. O processo de iniciar e parar continua até que todas as tarefas não saudáveis sejam substituídas por tarefas saudáveis. Depois que todas as tarefas não íntegras forem substituídas e somente as tarefas íntegras estiverem em execução, se a contagem total de tarefas exceder adesiredCount
, as tarefas íntegras serão interrompidas aleatoriamente até que a contagem total de tarefas seja igualdesiredCount
. Para obter mais informações sobre maximumPercent
edesiredCount
, consulte Parâmetros de definição de serviço.
nota
Esse comportamento não se aplica às tarefas executadas e mantidas por serviços que usam o tipo de implantação de atualização contínua. Durante uma atualização contínua, o agendador de serviços primeiro interrompe as tarefas não íntegras e, em seguida, inicia as tarefas de substituição.
Importante
Se você alterar as portas usadas por contêineres em uma definição de tarefa, talvez seja necessário atualizar os grupos de segurança da instância do contêiner para que funcionem com as portas atualizadas.
Se você atualizar a definição de tarefa para o serviço, o contêiner e a porta de contêiner especificados quando o serviço foi criado deverão permanecer na definição da tarefa.
O Amazon ECS não atualiza automaticamente os grupos de segurança associados aos balanceadores de carga do Elastic Load Balancing ou às instâncias de contêiner do Amazon ECS.
Para atualizar um serviço (console do Amazon ECS)
Abra o console em https://console.aws.amazon.com/ecs/v2
. -
Na página Clusters, selecione o cluster.
-
Na página Cluster overview (Visão geral do cluster), selecione o serviço e escolha Update (Atualizar).
-
Para que seu serviço inicie uma nova implantação, selecione Force new deployment (Forçar nova implantação).
-
Em Definição da tarefa, escolha a família e a revisão da definição da tarefa.
Importante
O console valida se a família de definição de tarefa e a revisão selecionadas são compatíveis com a configuração de computação definida. Se você receber um aviso, verifique a compatibilidade da definição de tarefa e a configuração de computação selecionadas.
-
Em Tarefas desejadas, insira o número de tarefas que você deseja executar para o serviço.
-
Em Min running tasks (Mínimo de tarefas em execução), insira o limite inferior do número de tarefas do serviço que devem permanecer no estado
RUNNING
durante uma implantação, como uma porcentagem do número desejado de tarefas (arredondado para o número inteiro superior mais próximo). Para obter mais informações, consulte Configuração da implantação. -
Em Max running tasks (Máximo de tarefas em execução), insira o limite superior do número de tarefas do serviço que devem permanecer no estado
RUNNING
ouPENDING
durante uma implantação, como uma porcentagem do número desejado de tarefas (arredondado para o número inteiro inferior mais próximo). -
Para configurar como o Amazon ECS detectará e lidará com falhas de implantação, expanda Deployment failure detection(Detecção de falhas de implantação) e escolha suas opções.
-
Para interromper uma implantação quando as tarefas não podem ser iniciadas, selecione Use the Amazon ECS deployment circuit breaker) (Usar o disjuntor de implantação do Amazon ECS.
Para que o software reverta automaticamente a implantação para o último estado de implantação concluído quando o disjuntor de implantação definir a implantação para um estado de falha, selecione Rollback on failure (Reverter em caso de falha).
-
Para interromper uma implantação com base nas métricas do aplicativo, selecione Usar CloudWatch alarmes. Em seguida, em nomes de CloudWatch alarmes, escolha os alarmes. Para criar um novo alarme, escolha Create new alarm (Criar novo alarme).
Para que o software reverta automaticamente a implantação para o último estado de implantação concluída quando um CloudWatch alarme define a implantação para um estado de falha, selecione Reverter em caso de falha.
-
-
Para alterar as opções de computação, expanda Deployment options (Opções de implantação), Compute configuration, (Configuração de computação) e faça o seguinte:
-
Para serviços no AWS Fargate, em Platform version (Versão da plataforma), escolha a nova versão.
-
Para serviços que usam uma estratégia de provedor de capacidade, para uma estratégia de provedor de capacidade, faça o seguinte:
-
Para adicionar um provedor de capacidade adicional, escolha Adicionar mais. Em seguida, para Provedor de capacidade, escolha o provedor de capacidade.
-
Para remover um provedor de capacidade, à direita do provedor de capacidade, escolha Remover.
Um serviço que usa um provedor de capacidade do grupo do Auto Scaling não pode ser atualizado para usar um provedor de capacidade do Fargate e vice-versa.
-
-
-
(Opcional) Para configurar o escalonamento automático do serviço, expanda o escalonamento automático do serviço e especifique os parâmetros a seguir.
-
Para usar a escalabilidade automática do serviço, selecione Service auto scaling (Escalabilidade automática do serviço).
-
Em Minimum number of tasks (Número mínimo de tarefas), insira o limite inferior do número de tarefas para o Auto Scaling do serviço usar. A contagem desejada não será inferior a essa contagem.
-
Em Maximum number of tasks (Número máximo de tarefas), insira o limite superior do número de tarefas para o Auto Scaling do serviço usar. A contagem desejada não ultrapassará essa contagem.
-
Escolha o tipo de política. Em Service auto scaling, escolha uma das seguintes opções.
Para usar esse tipo de política... Fazer isso... Monitoramento do objetivo
-
Em Scaling policy type (Tipo de política de escalabilidade), escolha Target tracking (Rastreamento de destino).
-
Em Policy name (Nome da política), insira o nome da política.
-
Para a métrica de serviço do ECS, selecione uma das métricas a seguir.
-
Utilização da ServiceAverageCPU ECS: utilização média da CPU do serviço.
-
ECS ServiceAverageMemoryUtilization: utilização média da memória do serviço.
-
ALB RequestCountPerTarget: Número de solicitações concluídas por destino em um grupo-alvo do Application Load Balancer.
-
-
Em Target value (Valor de destino), insira o valor que o serviço manterá para a métrica selecionada.
-
Para o período de espera de expansão, insira o tempo em segundos após uma atividade de expansão em que nenhuma outra redução de escala ocorra.
-
Para o período de recarga de escalonamento, insira o tempo em segundos após uma atividade de expansão em que nenhuma outra entrada de escala ocorra.
-
Para impedir que a política realize uma atividade de redução da escala na horizontal, selecione Turn off scale-in (Desativar a redução da escala na horizontal).
Escalonamento por etapas -
Em Scaling policy type (Tipo de política de escalabilidade), escolha Step scaling (Escalabilidade em etapas).
-
Em Nome da política, insira o nome da política.
-
Em Alarm name (Nome do alarme), insira um nome exclusivo para o alarme.
-
Para a métrica de serviço do Amazon ECS, escolha a métrica a ser usada para o alarme.
-
Em Estatística, escolha a estatística de alarme.
-
Em Período, escolha o período para o alarme.
-
Em Condição de alarme, escolha como comparar a métrica selecionada com o limite definido.
-
Em Limite para comparar métricas e período de avaliação para iniciar o alarme, insira o limite usado para o alarme e por quanto tempo avaliar o limite.
-
Em Ações de escalonamento, faça o seguinte:
-
Em Ação, selecione se deseja adicionar, subtrair ou definir uma contagem específica desejada para seu serviço.
-
Se você optar por adicionar ou subtrair tarefas, em Valor, insira o número de tarefas (ou porcentagem de tarefas existentes) a serem adicionadas ou subtraídas quando a ação de escalonamento for iniciada. Se você optar por definir a contagem desejada, insira o número de tarefas. Em Tipo, selecione se o Valor é um valor inteiro ou percentual da contagem desejada existente.
-
Em Limite inferior e Limite superior, insira o limite inferior e o limite superior do seu ajuste de escala de etapas.
-
(Opcional) Adicione outras opções de dimensionamento. Escolha Adicionar nova opção de dimensionamento e repita as etapas da ação de Dimensionamento.
-
-
-
-
(Opcional) Para usar o Service Connect, selecione Turn on Service Connect (Ativar o Service Connect) e especifique o seguinte:
-
Em Service Connect configuration (Configuração do Service Connect), especifique o modo cliente.
-
Se seu serviço executa uma aplicação cliente de rede que só precisa se conectar a outros serviços no namespace, escolha Client side only (Somente no lado do cliente).
-
Se seu serviço executa uma aplicação de rede ou de serviço Web e precisa fornecer endpoints para esse serviço e se conectar a outros serviços no namespace, escolha Client and server (Cliente e servidor).
-
Para usar um namespace que não seja o namespace padrão do cluster, em Namespace, escolha o namespace do serviço.
-
-
(Opcional) Para ajudar a identificar o serviço, expanda a seção Tags (Etiquetas) e configure suas etiquetas.
-
[Adicionar uma tag] Selecione Add tag (Adicionar tag) e faça o seguinte:
-
Em Key (Chave), insira o nome da chave.
-
Em Value (Valor), insira o valor da chave.
-
-
[Remover uma tag] Ao lado da tag, escolha Remove tag (Remover tag).
-
-
Escolha Atualizar.