Implantar um detetor de anomalias em instâncias de contentores de Azure

Saiba como implantar o detetor de anomalias de serviços cognitivos para instâncias de contentores Azure. Este procedimento demonstra a criação de um recurso de detetor de anomalias. Depois discutimos a retirada da imagem do contentor associado. Finalmente, destacamos a capacidade de exercer a orquestração dos dois a partir de um browser. A utilização de contentores pode desviar a atenção dos desenvolvedores da gestão das infraestruturas para, em vez disso, concentrarem-se no desenvolvimento de aplicações.

Pré-requisitos

  • Utilize uma assinatura Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
  • Instale o Azure CLI (az).
  • Docker motor e validar que o Docker CLI funciona numa janela de consola.

Criar um recurso de detetor de anomalias

  1. Inicie sessão no Portal do Azure.

  2. Selecione Criar recurso de detetor de anomalias.

  3. Introduza todas as definições necessárias:

    Definição Valor
    Nome Nome desejado (2-64 caracteres)
    Subscrição Selecione subscrição apropriada
    Localização Selecione qualquer localização próxima e disponível
    Escalão de Preço F0 - 10 chamadas por segundo, 20K Transações por mês.
    Ou:
    S0 - 80 chamadas por segundo
    Grupo de Recursos Selecione um grupo de recursos disponível
  4. Clique em Criar e aguarde a criação do recurso. Depois de criado, navegue para a página de recursos

  5. Recolha configurado endpoint e uma chave API:

    Teclas e separador Endpoint no portal Definição Valor
    Descrição geral Ponto final Copie o ponto final. Parece-se com https://<your-resource-name>.cognitiveservices.azure.com/
    Chaves Chave de API Copiar 1 das duas chaves. É uma corda de 32 caracteres alfanuméricos sem espaços ou traços, xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx .

Criar um recurso de instância de contentores Azure a partir do CLI Azure

O YAML abaixo define o recurso Azure Container Instance. Copie e cole o conteúdo num novo ficheiro, nomeado my-aci.yaml e substitua os valores comentados pelos seus próprios. Consulte o formato do modelo para yaML válido. Consulte os repositórios e imagens dos recipientes para ver os nomes de imagem disponíveis e o respetivo repositório. Para obter mais informações sobre a referência YAML para instâncias de contentores, consulte referência YAML: Instâncias do Contentor Azure.

apiVersion: 2018-10-01
location: # < Valid location >
name: # < Container Group name >
properties:
  imageRegistryCredentials: # This is only required if you are pulling a non-public image that requires authentication to access. For example Text Analytics for health.
  - server: containerpreview.azurecr.io
    username: # < The username for the preview container registry >
    password: # < The password for the preview container registry >
  containers:
  - name: # < Container name >
    properties:
      image: # < Repository/Image name >
      environmentVariables: # These env vars are required
        - name: eula
          value: accept
        - name: billing
          value: # < Service specific Endpoint URL >
        - name: apikey
          value: # < Service specific API key >
      resources:
        requests:
          cpu: 4 # Always refer to recommended minimal resources
          memoryInGb: 8 # Always refer to recommended minimal resources
      ports:
        - port: 5000
  osType: Linux
  volumes: # This node, is only required for container instances that pull their model in at runtime, such as LUIS.
  - name: aci-file-share
    azureFile:
      shareName: # < File share name >
      storageAccountName: # < Storage account name>
      storageAccountKey: # < Storage account key >
  restartPolicy: OnFailure
  ipAddress:
    type: Public
    ports:
    - protocol: tcp
      port: 5000
tags: null
type: Microsoft.ContainerInstance/containerGroups

Nota

Nem todos os locais têm a mesma disponibilidade de CPU e Memória. Consulte a tabela de localização e recursos para a listagem dos recursos disponíveis para contentores por local e so.

Vamos confiar no ficheiro YAML que criámos para o az container create comando. A partir do CLI Azure, execute o az container create comando substituindo o <resource-group> seu. Além disso, para assegurar valores dentro de uma implementação YAML consulte valores seguros.

az container create -g <resource-group> -f my-aci.yaml

A saída do comando é Running... se válida, após algum tempo a saída muda para uma cadeia JSON que representa o recurso ACI recém-criado. A imagem do recipiente é mais do que provável que não esteja disponível por um tempo, mas o recurso está agora implantado.

Dica

Preste muita atenção às localizações das ofertas do Serviço Cognitivo Azure de pré-visualização pública, uma vez que o YAML terá de ser ajustado em conformidade para corresponder à localização.

Validar que um contentor está a funcionar

Há várias formas de validar que o contentor está a funcionar. Localize o endereço IP externo e a porta exposta do recipiente em questão e abra o seu navegador web favorito. Utilize os urls de vários pedidos abaixo para validar o recipiente em funcionamento. O exemplo de pedido URLs listados abaixo são http://localhost:5000 , mas o seu recipiente específico pode variar. Tenha em mente que deve confiar no endereço IP externo do seu contentor e na porta exposta.

URL do Pedido Objetivo
http://localhost:5000/ O contentor fornece uma home page.
http://localhost:5000/ready Solicitado com GET, isto fornece uma verificação de que o recipiente está pronto para aceitar uma consulta contra o modelo. Este pedido pode ser utilizado para sondas kubernetes de prontidão e prontidão.
http://localhost:5000/status Também solicitado com GET, isto verifica se a chave api utilizada para iniciar o contentor é válida sem causar uma consulta de ponto final. Este pedido pode ser utilizado para sondas kubernetes de prontidão e prontidão.
http://localhost:5000/swagger O contentor fornece um conjunto completo de documentação para os pontos finais e uma funcionalidade Experimentar. Com esta funcionalidade, pode introduzir as suas definições num formulário HTML baseado na Web e fazer a consulta sem ter de escrever qualquer código. Após o retorno da consulta, é fornecido um comando CURL de exemplo para demonstrar os cabeçalhos HTTP e o formato corporal que é necessário.

Página inicial do contentor

Passos seguintes