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á.
Implantação de um aplicativo ASP.NET Core 2.0 no Amazon ECS (EC2)
Esta seção descreve como usar oPublicar contêiner noAWSAssistente, fornecido como parte do Toolkit for Visual Studio, para implantar um aplicativo ASP.NET Core 2.0 em contêineres direcionados para Linux por meio do Amazon ECS usando o tipo de execução do EC2. Como um aplicativo web é destinado a funcionar continuamente, ele será implantado como um serviço.
Antes de publicar o contêiner
Antes de usar oPublicar contêiner noAWSPara implantar seu aplicativo ASP.NET Core 2.0:
-
Especificar seuAWScredenciaiseObter configuração com o Amazon ECS.
-
Instale o Docker
. Existem algumas opções de instalação diferentes, incluindo o Docker para Windows . -
Crie um cluster do Amazon ECS de acordo com as necessidades de seu aplicativo web. São necessárias apenas algumas etapas.
-
No Visual Studio, crie (ou abra) um projeto para um aplicativo ASP.NET Core 2.0 em contêineres direcionados para Linux.
Acessar o Publish Container to (AWSfeiticeiro
Para implantar um aplicativo ASP.NET Core 2.0 em contêineres direcionados para Linux, clique com o botão direito do mouse no projeto no Solution Explorer e selecionePublicar contêiner noAWS.
Você também pode selecionarPublicar contêiner noAWSNo menu Build (Compilar) do Visual Studio.
Publicar contêiner noAWSFeiticeiro
Perfil de conta a usar — selecione o perfil de conta a ser usado.
Região — escolha uma região de implantação. O perfil e a região são usados para configurar os recursos do ambiente de implantação e selecionar o registro padrão do Docker.
Configuração — selecione a configuração da compilação para a imagem do Docker.
Repositório do Docker — escolha um repositório existente do Docker ou digite o nome de um novo repositório e ele será criado. Este é o repositório para onde a imagem do contêiner de compilação é enviada.
Tag — selecione uma tag existente ou digite o nome de uma nova tag. As tags podem rastrear detalhes importantes, como versão, opções ou outros elementos exclusivos da configuração de contêineres do Docker.
Implantação — selecione Service on an ECS Cluster (Serviço em um cluster do ECS). Use esta opção de implantação para aplicativos de execução prolongada (como um aplicativo web ASP.NET Core 2.0).
Salvar configurações noaws-docker-tools-defaults.json
e configure o projeto para implantação de linha de comando- Marque essa opção se você deseja ter flexibilidade para implantar pela linha de comando. Use dotnet ecs deploy
a partir do diretório do projeto para implantar e para dotnet ecs publish
o contêiner.
Página de configuração da execução
Cluster do ECS — selecione o cluster que executará a imagem do Docker. Você podeCriar um cluster do ECSUsar oAWSConsole de gerenciamento.
Tipo de execução — escolha EC2. Para usar o tipo de execução Fargate, consulte Implantar de um aplicativo ASP.NET Core 2.0 no Amazon ECS (Fargate).
Página de configuração do serviço
Serviço — selecione um dos serviços na caixa suspensa para implantar seu contêiner em um serviço existente. Ou escolha Create New (Criar novo) para criar um novo serviço. Os nomes de serviço devem ser exclusivos em um cluster, mas é possível ter serviços nomeados similarmente em vários clusters de uma ou várias regiões.
Número de tarefas — o número de tarefas a implantar e manter em execução em seu cluster. Cada tarefa é uma instância do seu contêiner.
Porcentagem de integridade mínima — a porcentagem de tarefas que precisam permanecer em estado RUNNING
durante uma implantação, arredondada para cima e para o valor inteiro mais próximo.
Porcentagem máxima — a porcentagem de tarefas que são permitidas no estado RUNNING
ou PENDING
durante uma implantação, arredondada para baixo e para o valor inteiro mais próximo.
Modelos de posicionamento — selecione um modelo de posicionamento de tarefas.
Quando você inicia uma tarefa em um cluster, o Amazon ECS precisa determinar onde posicionar a tarefa com base nos requisitos especificados na definição da tarefa, como CPU e memória. Do mesmo modo, quando você reduz proporcionalmente a contagem de tarefas, o Amazon ECS deve determinar que tarefas serão concluídas.
O modelo de posicionamento controla como as tarefas são executadas em um cluster:
-
AZ Balanced Spread (Distribuição balanceada de AZ) – Distribua tarefas por zonas de disponibilidade e entre instâncias de contêiner na zona de disponibilidade.
-
AZ Balanced BinPack (BinPack balanceado de AZ) – Distribua tarefas por zonas de disponibilidade e entre instâncias de contêiner com a menor memória disponível.
-
BinPack – distribua tarefas com base na menor quantidade disponível de CPU ou memória.
-
One Task Per Host (Uma tarefa por host) – Posicione, no máximo, uma tarefa do serviço em cada instância de contêiner.
Para obter mais informações, consulte Posicionamento de tarefas no Amazon ECS.
Página do application load balancer
Configurar Application Load Balancer — marque para configurar um Application Load Balancer.
Selecionar função do IAM para o serviço — selecione uma função existente ou escolha Create New (Criar nova) e uma nova função será criada.
Load balancer — selecione um load balancer existente ou escolha Create New (Criar novo) e digite o nome do novo load balancer.
Porta de ouvinte — selecione uma porta de ouvinte ou escolha Create New (Criar nova) e digite um número de porta. O padrão, a porta 80
, é adequado para a maioria dos aplicativos web.
Grupo de destino — por padrão, o load balancer envia solicitações para destinos registrados usando a porta e o protocolo especificados por você para o grupo de destino. Você pode substituir essa porta ao registrar cada destino no grupo de destino.
Padrão do caminho — o load balancer usará o roteamento com base no caminho. Aceite o padrão /
ou forneça um padrão diferente. O padrão do caminho diferencia maiúsculas de minúsculas, pode ter até 128 caracteres e conter um conjunto de caracteres selecionados.
Caminho de verificação de integridade — o caminho de ping que é usado como destino para as verificações de integridade. Por padrão, é /
, e é adequado para a maioria dos aplicativos web. Insira um caminho diferente, se necessário. Se o caminho inserido for inválido, a verificação de integridade falhará e será considerada não íntegra.
Se você implantar vários serviços, e cada serviço for implantado em um caminho ou local diferente, você poderá precisar de caminhos de verificação personalizados.
Página de definição de tarefas do ECS
Definição de tarefa — selecione uma definição de tarefa existente ou escolha Create New (Criar nova) e digite o nome da nova definição de tarefa.
Contêiner — selecione um contêiner existente ou escolha Create New (Criar novo) e digite o nome do novo contêiner.
Memória (MiB) — forneça valores para o Limite flexível ou Limite rígido, ou ambos.
O limite flexível (em MiB) de memória a ser reservado para o contêiner. O Docker tenta manter a memória do contêiner abaixo do limite flexível. O contêiner poderá consumir mais memória, até o limite rígido especificado pelo parâmetro de memória (se aplicável), ou toda a memória disponível na instância do contêiner, o que ocorrer primeiro.
O limite rígido (em MiB) de memória a ser apresentado ao contêiner. Caso tente exceder a memória especificada aqui, o contêiner será excluído.
Função de tarefa- Selecione uma função de tarefa para uma função do IAM que permita que a permissão do contêiner chame oAWSAs APIs especificadas nas políticas associadas em seu nome. Esta é a forma como as credenciais são passadas para o seu aplicativo. ConsulteComo especificarAWSCredenciais de segurança para seu aplicativo.
Mapeamento de porta — adicione, modifique ou exclua os mapeamentos de portas para o contêiner. Se um load balancer estiver ativo, a porta do host será definida por padrão como 0 e a atribuição de portas será dinâmica.
Variáveis do ambiente — adicione, modifique ou exclua as variáveis de ambiente do contêiner.
Quando estiver satisfeito com a configuração, clique em Publish (Publicar) para iniciar o processo de implantação.
Publicar contêiner noAWS
Os eventos são exibidos durante a implantação. O assistente é fechado automaticamente quando a conclusão é bem-sucedida. Você pode substituir isso desmarcando a caixa na parte inferior da página.
Você pode encontrar o URL de suas novas instâncias noAWSExplorador. Expanda o Amazon ECS e os clusters e, em seguida, clique no seu cluster.