O que é o Azure Container Instances?
Os contentores estão a tornar-se na forma preferida de empacotar, implementar e gerir aplicações na cloud. O Azure Container Instances é a forma mais rápida e simples de executar um contentor no Azure, sem que tenha de gerir máquinas virtuais e sem que tenha de adotar um serviço de nível superior.
O Azure Container Instances é uma ótima solução para qualquer cenário que possa funcionar em contentores isolados, incluindo aplicações simples, automatização de tarefas e tarefas de compilação. Em cenários nos quais precisa de orquestração de contentores completa, incluindo deteção de serviços em vários contentores, dimensionamento automático e atualizações coordenadas de aplicações, recomendamos o Serviço Kubernetes do Azure (AKS). Recomendamos ler as considerações e limitações e as perguntas frequentes para entender as práticas recomendadas ao implantar instâncias de contêiner.
Tempos de arranque rápidos
Os contentores oferecem benefícios de arranque significativos em relação às máquinas virtuais (VMs). Com o Azure Container Instances, pode iniciar contentores no Azure em segundos, sem ter de aprovisionar e gerir VMs.
Traga imagens de contêiner do Linux ou do Windows do Docker Hub, de um registro de contêiner privado do Azure ou de outro registro do docker baseado em nuvem. Visite as Perguntas frequentes para saber quais os registos suportados pela ACI. As Instâncias de Contêiner do Azure armazenam em cache várias imagens comuns do sistema operacional base, ajudando a acelerar a implantação de suas imagens de aplicativo personalizadas.
Acesso a contentores
As Instâncias de Contêiner do Azure permitem expor seus grupos de contêineres diretamente à Internet com um endereço IP e um FQDN (nome de domínio totalmente qualificado). Quando cria uma instância de contentor, pode especificar uma etiqueta de nome DNS personalizada para que a aplicação esteja acessível em customlabel.azureregion.azurecontainer.io.
As Instâncias de Contêiner do Azure também dão suporte à execução de um comando em um contêiner em execução, fornecendo um shell interativo para ajudar no desenvolvimento e solução de problemas de aplicativos. O acesso ocorre por HTTPS, usando TLS para proteger as conexões do cliente.
Importante
A partir de 13 de janeiro de 2020, as Instâncias de Contêiner do Azure exigem que todas as conexões seguras de servidores e aplicativos usem o TLS 1.2. O suporte para TLS 1.0 e 1.1 foi desativado.
Implantações compatíveis
Segurança ao nível do hipervisor
Historicamente, os contêineres ofereciam isolamento de dependência de aplicativos e governança de recursos, mas não eram suficientemente protegidos para uso multilocatário hostil. O Azure Container Instances garante que a sua aplicação está tão isolada num contentor como estaria numa VM.
Dados do cliente
O serviço de Instâncias de Contêiner do Azure não armazena dados do cliente. No entanto, ele armazena as IDs de assinatura da assinatura do Azure usada para criar recursos. O armazenamento de IDs de assinatura é necessário para garantir que seus grupos de contêineres continuem sendo executados conforme o esperado.
Tamanhos personalizados
Normalmente, os contentores são otimizados para executarem apenas uma única aplicação, mas as necessidades exatas de cada uma dessas aplicações podem ser bastante diferentes. O Azure Container Instances proporciona uma utilização ideal ao permitir especificações exatas de núcleos de CPU e memória. A faturação é ao segundo e consoante o que precisar, para que possa ajustar os gastos com base nas suas necessidades reais.
Para trabalhos de computação intensiva, como aprendizagem automática, as Instâncias de Contentor do Azure podem agendar contentores Linux para utilizar recursos de GPU NVIDIA Tesla (pré-visualização).
Armazenamento persistente
Para recuperar e persistir o estado com as Instâncias de Contêiner do Azure, oferecemos a montagem direta de compartilhamentos do Azure Files apoiados pelo Armazenamento do Azure.
Contentores de Linux e Windows
O Azure Container Instances permite agendar contentores do Windows e do Linux com a mesma API. Você pode especificar sua preferência de tipo de sistema operacional ao criar seus grupos de contêineres.
Alguns recursos estão atualmente restritos a contêineres Linux:
- Vários contentores por grupo de contentores
- Montagem de volume (Azure Files, emptyDir, GitRepo, secret)
- Métricas de uso de recursos com o Azure Monitor
- Recursos da GPU (visualização)
Para implantações de contêiner do Windows, use imagens baseadas em imagens base comuns do Windows.
Grupos coagendados
O Azure Container Instances suporta o agendamento de grupos de vários contentores que partilhem um computador anfitrião, a rede local, o armazenamento e o ciclo de vida. Desta forma, pode combinar o contentor da aplicação principal com outros contentores que têm um papel secundário, tais como sidecars de registo.
Implantação de rede virtual
As Instâncias de Contêiner do Azure permitem a implantação de instâncias de contêiner em uma rede virtual do Azure. Quando implantadas em uma sub-rede dentro de sua rede virtual, as instâncias de contêiner podem se comunicar com segurança com outros recursos na rede virtual, incluindo aqueles que estão no local (por meio de gateway VPN ou Rota Expressa).
Implantação de contêiner confidencial
Os contêineres confidenciais no ACI permitem que você execute contêineres em um ambiente de execução confiável (TEE) que fornece proteção de confidencialidade e integridade baseada em hardware para suas cargas de trabalho de contêiner. Contêineres confidenciais no ACI podem proteger os dados em uso e criptografar os dados que estão sendo processados na memória. Os contêineres confidenciais no ACI são suportados como uma SKU que você pode selecionar ao implantar sua carga de trabalho. Para obter mais informações, consulte Grupos de contêineres confidenciais.
Implantação de contêiner spot
Os contêineres ACI Spot permitem que os clientes executem cargas de trabalho interruptíveis e em contêineres na capacidade não utilizada do Azure a preços com desconto de até 70% em comparação com contêineres ACI de prioridade regular. Os contêineres spot da ACI podem ser antecipados quando o Azure encontra uma escassez de capacidade excedente e são adequados para cargas de trabalho sem requisitos de disponibilidade rigorosos. Os clientes são cobrados pela memória por segundo e pelo uso do núcleo. Para utilizar contêineres ACI Spot, você pode implantar sua carga de trabalho com um sinalizador de propriedade específico indicando que deseja usar grupos de contêineres Spot e aproveitar o modelo de preços com desconto. Para obter mais informações, consulte Grupos de contêineres spot.
Considerações
As credenciais do usuário passadas por meio da interface de linha de comando (CLI) são armazenadas como texto sem formatação no back-end. O armazenamento de credenciais em texto simples é um risco de segurança; A Microsoft aconselha os clientes a armazenar credenciais de usuário em variáveis de ambiente da CLI para garantir que elas sejam criptografadas/transformadas quando armazenadas no back-end.
Se o grupo de contêineres parar de funcionar, sugerimos tentar reiniciar o contêiner, verificar o código do aplicativo ou a configuração da rede local antes de abrir uma solicitação de suporte.
As imagens de contêiner não podem ser maiores que 15 GB, qualquer imagem acima desse tamanho pode causar um comportamento inesperado: Qual pode ser o tamanho da minha imagem de contêiner?
Algumas imagens base do Windows Server não são mais compatíveis com as Instâncias de Contêiner do Azure:
Que imagens do SO base do Windows são suportadas?
Se um grupo de contêineres for reiniciado, o IP do grupo de contêineres poderá ser alterado. Recomendamos que não use um endereço IP codificado no seu cenário. Se você precisar de um endereço IP público estático, use o Gateway de Aplicativo: Endereço IP estático para grupo de contêineres - Instâncias de Contêiner do Azure | Microsoft Learn
Há portas reservadas para a funcionalidade do serviço. Recomendamos que você não use essas portas porque usá-las leva a um comportamento inesperado: O serviço ACI reserva portas para a funcionalidade do serviço?
Se você estiver tendo problemas para implantar ou executar seu contêiner, primeiro verifique o Guia de Solução de Problemas para erros e problemas comuns
Seus grupos de contêineres podem reiniciar devido a eventos de manutenção da plataforma. Esses eventos de manutenção são feitos para garantir a melhoria contínua da infraestrutura subjacente: o contêiner teve uma reinicialização isolada sem entrada explícita do usuário
O ACI não permite operações privilegiadas de contêineres. Aconselhamos que você não dependa do uso do diretório raiz para o seu cenário
Próximos passos
Experimente implementar um contentor no Azure com um único comando através do nosso guia de início rápido: