Gerenciamento de cargas de trabalho do Kubernetes no dispositivo Azure Stack Edge Pro

APLICA-SE A:Yes for Pro GPU SKUAzure Stack Edge Pro - GPUYes for Pro 2 SKUAzure Stack Edge Pro 2Yes for Pro R SKUAzure Stack Edge Pro R Azure Stack Edge Mini RYes for Mini R SKU

No dispositivo Azure Stack Edge Pro, um cluster do Kubernetes é criado quando uma função de computação é configurada. Depois que o cluster do Kubernetes é criado, os aplicativos em contêineres podem ser implantados no cluster do Kubernetes em Pods. Existem diferentes maneiras de implantar cargas de trabalho no cluster do Kubernetes.

Este artigo descreve os vários métodos que podem ser usados para implantar cargas de trabalho no dispositivo Azure Stack Edge Pro.

Tipos de cargas de trabalho

Os dois tipos comuns de cargas de trabalho que podem ser implantados no dispositivo Azure Stack Edge Pro são aplicativos sem estado ou aplicativos com estado.

  • Os aplicativos sem estado não preservam seu estado e não salvam dados no armazenamento persistente. Todos os dados de usuário e de sessão permanecem com o cliente. Alguns exemplos de aplicativos sem estado incluem front-ends da Web como o Nginx, entre outros aplicativos Web.

    É possível criar uma implantação do Kubernetes para implantar um aplicativo sem estado no cluster.

  • Os aplicativos com estado requerem que seu estado seja salvo. Os aplicativos com estado usam armazenamento persistente, como volumes persistentes, para salvar dados para uso pelo servidor ou por outros usuários. Exemplos de aplicativos com estado incluem bancos de dados como o SQL do Azure no Edge e o MongoDB.

    É possível criar uma implantação do Kubernetes para implantar um aplicativo com estado.

Fluxo de implantação

Para implantar aplicativos em um dispositivo Azure Stack Edge Pro, siga estas etapas:

  1. Configurar acesso: primeiro, use o runspace do PowerShell para criar um usuário e um namespace e conceder acesso de usuário a esse namespace.
  2. Configurar armazenamento: em seguida, use o recurso Azure Stack Edge no portal do Azure para criar volumes persistentes usando o provisionamento estático ou dinâmico para os aplicativos com estado que serão implantados.
  3. Configurar rede: finalmente, use os serviços para expor os aplicativos externamente e dentro do cluster do Kubernetes.

Tipos de implantação

Há três maneiras principais de implantar as cargas de trabalho. Cada uma dessas metodologias de implantação permite que você se conecte a um namespace distinto no dispositivo e, em seguida, implante aplicativos com ou sem estado.

Kubernetes workload deployment

  • Implantação local: essa implantação ocorre por meio da ferramenta de acesso de linha de comando, como kubectl, que permite implantar arquivos do Kubernetes yamls. Acesse o cluster do Kubernetes no Azure Stack Edge Pro por meio de um arquivo kubeconfig. Para obter mais informações, acesse Acessar um cluster do Kubernetes pelo kubectl.

  • Implantação do IoT Edge: isso ocorre por meio do IoT Edge, que é conectado ao Hub IoT do Azure. Conecte-se ao cluster do Kubernetes no dispositivo Azure Stack Edge Pro pelo namespace iotedge. Os agentes de IoT Edge implantados nesse namespace são responsáveis pela conectividade com o Azure. Aplique a configuração IoT Edge deployment.json usando o CI/CD do Azure DevOps. O gerenciamento do namespace e do IoT Edge é feito por meio do operador de nuvem.

  • Implantação do Kubernetes habilitada para o Azure Arc: o Kubernetes habilitado para Azure Arc é uma ferramenta de gerenciamento híbrido que permitirá a implantação de aplicativos nos clusters do Kubernetes. Conecte-se ao cluster do Kubernetes no dispositivo Azure Stack Edge Pro pelo namespace azure-arc namespace. Os agentes implantados nesse namespace são responsáveis pela conectividade ao Azure. Aplique a configuração de implantação usando o gerenciamento de configuração baseado em GitOps.

    O Kubernetes habilitado para o Azure Arc também permitirá o uso do Azure Monitor para contêineres a fim de exibir e monitorar o cluster. Para obter mais informações, acesse O que é o Kubernetes habilitado para o Azure Arc?.

    A partir de março de 2021, o Kubernetes habilitado para o Azure Arc estará disponível para os usuários, sendo que se aplicam encargos de uso padrão. Como cliente valioso de versão prévia, o Kubernetes habilitado para o Azure Arc estará disponível, sem custos, para o(s) dispositivo(s) do Azure Stack Edge. Para obter a oferta de versão prévia, crie uma Solicitação de suporte:

    1. Em Tipo de problema, selecione Cobrança.
    2. Em Assinatura, selecione sua assinatura.
    3. Em Serviço, selecione Meus serviçose, em seguida, selecione Azure Stack Edge.
    4. Em Recurso, selecione o nome do recurso.
    5. Em Resumo, digite uma descrição do problema.
    6. Em Tipo de problema, selecione Encargos inesperados.
    7. Em Subtipo de problema, selecione Ajude-me a entender os encargos da minha avaliação gratuita.

Escolha o tipo de implantação

Ao implantar aplicativos, considere as seguintes informações:

  • Tipos únicos ou múltiplos: é possível escolher uma única opção de implantação ou uma combinação de opções de implantação diferentes.
  • Nuvem versus local: dependendo de seus aplicativos, você pode escolher a implantação local via kubectl ou a implantação na nuvem via IoT Edge e Azure Arc.
    • Ao escolher uma implantação local, você estará restrito à rede na qual o dispositivo Azure Stack Edge Pro está implantado.
    • Caso tenha um agente de nuvem que possa ser implantado, é necessário implantar seu operador de nuvem e usar o gerenciamento de nuvem.
  • IoT vs. Azure Arc: a escolha da implantação também depende da intenção do cenário de produto. Caso esteja implantando aplicativos ou contêineres com integração mais profunda com o IoT ou o ecossistema IoT, selecione IoT Edge para implantar seus aplicativos. Caso tenha implantações Kubernetes existentes, o Azure Arc será a escolha preferida.

Próximas etapas

Para implantar localmente um aplicativo pelo kubectl, consulte:

Para implantar um aplicativo pelo IoT Edge, consulte:

Para implantar um aplicativo por meio do Azure Arc, consulte: