Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Os Aplicativos de Contêiner do Azure fornecem APIs com tecnologia Distributed Application Runtime (Dapr) que ajudam você a escrever e implementar microsserviços simples, portáteis, resilientes e seguros. O Dapr trabalha em conjunto com os Aplicativos de Contêiner do Azure como uma camada de abstração para fornecer uma plataforma escalonável e de baixa manutenção. Os Aplicativos de Contêiner do Azure oferecem uma seleção de APIs, componentes e recursos totalmente gerenciados de Dapr, voltados especificamente para cenários de microsserviços. Basta habilitar e configurar o Dapr como de costume em seu ambiente de aplicativo de contêiner.
Observação
Encontre atualizações e comunicados de versão para Dapr nos Aplicativos de Contêiner do Azure no GitHub.
Como as APIs de microsserviços funcionam com seu aplicativo de contêiner
Configure as APIs de microsserviços para o seu ambiente de aplicativos em contêineres com um aplicativo de contêiner habilitado para Dapr, um componente Dapr configurado para a sua solução e um sidecar Dapr que invoca a comunicação entre eles. O diagrama a seguir demonstra esses conceitos básicos, usando a API pub/sub como exemplo.
Rótulo | Configurações do Dapr | Descrição |
---|---|---|
1 | Aplicativos de Contêiner com o Dapr habilitado | O Dapr está habilitado no nível do aplicativo de contêiner definindo um conjunto de argumentos do Dapr. Esses valores se aplicam a todas as revisões de um determinado aplicativo de contêiner durante a execução no modo de várias revisões. |
2 | Dapr | As APIs do Dapr totalmente gerenciadas são expostas a cada aplicativo de contêiner por meio de um sidecar do Dapr. As APIs do Dapr podem ser invocadas do seu aplicativo de contêiner por meio de HTTP ou gRPC. O sidecar do Dapr é executado na porta HTTP 3500 e na porta gRPC 50001. |
3 | Configuração dos componentes do Dapr | O Dapr usa um design modular em que a funcionalidade é entregue como um componente. Os componentes do Dapr podem ser compartilhados por vários aplicativos de contêiner. Os identificadores de aplicativo Dapr fornecidos na matriz de escopos determinam quais aplicativos de contêiner habilitados para Dapr carregam um determinado componente em runtime. |
Controle de versão
Em vez de seguir um agendamento de lançamento fixo, o Dapr nos Aplicativos de Contêiner do Azure lança novos recursos e funcionalidades com base na priorização e estabilidade dos binários da Dapr. Saiba mais sobre as versões do Dapr em Aplicativos de Contêiner do Azure.
As versões Dapr nos Aplicativos de Contêiner do Azure incluem:
- Um prefixo semântico de controle de versão, como
1.13.6
, que indica compatibilidade com as APIs de versão de runtime do Dapr do OSS correspondentes e ferramentas relacionadas, como SDKs, CLI etc. - Um sufixo
-msft.<number>
, que indica a incorporação de personalizações específicas do Azure para maior segurança e preparação de produção.
O formato de versão completo para Dapr nos Aplicativos de Contêiner do Azure pode ser semelhante a 1.13.6-msft.1
.
Observação
O sufixo <number>
pode nem sempre ser incrementado sequencialmente. Por exemplo, a versão 1.13.6-msft.3
pode ignorar 1.13.6-msft.2
.
APIs, componentes e ferramentas Dapr compatíveis
APIs gerenciadas
Os Aplicativos de Contêiner do Azure oferecem APIs Dapr gerenciadas e geralmente disponíveis (APIs de bloco de construção e APIs operacionais). Essas APIs são totalmente gerenciadas e suportadas para uso em ambientes de produção.
Para saber mais sobre o uso de APIs e recursos alfa do Dapr, veja as Perguntas frequentes do Dapr.
APIs de bloco de construção
API de bloco de construção | Situação | Descrição |
---|---|---|
Invocação de serviço a serviço | Assembleia Geral | Descubra serviços e execute chamadas de serviço a serviço confiáveis e diretas com autenticação e criptografia mTLS automáticas. Veja as limitações conhecidas para a invocação do serviço Dapr nos Aplicativos de Contêiner do Azure. |
Gerenciamento de estado | Assembleia Geral | Fornece recursos de gerenciamento de estado para transações e operações CRUD. |
Pub/sub | Assembleia Geral | Permite que aplicativos de contêineres de editores e assinantes intercomunem por meio de um agente de mensagens intermediário. Também é possível criar assinaturas declarativas para um tópico usando um arquivo JSON de componente externo. Saiba mais sobre a API de pub/sub declarativa. |
Associações | Assembleia Geral | Disparar seus aplicativos com base em eventos |
Atores | Assembleia Geral | Os atores Dapr são unidades de trabalho controladas por mensagens, de thread único, projetadas para dimensionar rapidamente. Por exemplo, em situações de carga de trabalho intensa. |
Segredos | Assembleia Geral | Acesse segredos do código do aplicativo ou referencie valores seguros em seus componentes do Dapr. |
de Configuração do | Assembleia Geral | Recupere e assine itens de configuração de aplicativos para armazenamentos de configuração com suporte. |
APIs operacionais
API operacional | Situação | Descrição |
---|---|---|
Integridade | Assembleia Geral | Investigações de verificação de integridade que monitoram a prontidão ou atividade do Dapr e a prontidão de inicialização dos SDKs. A API de integridade só está disponível para HTTP. |
Metadados | Assembleia Geral | Retorna informações sobre o sidecar, permitindo a descoberta em runtime. |
SDKs Compatíveis
Os pacotes de SDK de cliente mais recentes da Dapr são compatíveis com os Aplicativos de Contêiner do Azure. Você pode usar SDKs de Dapr com qualquer uma das APIs GA Dapr de runtime v1.12 com suporte.
Observação
Atualmente, os pacotes de extensões de servidor, ator e SDK de fluxo de trabalho do Dapr não são compatíveis com os Aplicativos de Contêiner do Azure. Saiba mais sobre todos os pacotes do Dapr SDK.
Componentes do Dapr
Componentes de Camada 1 versus Camada 2
Há suporte para um subconjunto de componentes Dapr. Dentro desse subconjunto, os componentes do Dapr são divididos em duas categorias de suporte: Camada 1 ou Camada 2.
- Componentes de camada 1: componentes estáveis que recebem investigação imediata em cenários críticos (segurança ou regressão grave). Caso contrário, a Microsoft colabora com o software livre para resolver em um hotfix ou na próxima versão regular.
- Componentes de camada 2: componentes que são investigados com prioridade menor, pois não estão em estado estável ou estão com um provedor de terceiros.
Componentes da camada 1
API (Interface de Programação de Aplicativos) | Componente | Tipo |
---|---|---|
Gerenciamento de estado | Azure Cosmos DB (banco de dados distribuído da Azure) Armazenamento de Blobs do Azure v1 Armazenamento de Tabelas do Azure Microsoft SQL Server |
state.azure.cosmosdb state.azure.blobstorage state.azure.tablestorage state.sqlserver |
Publicar e assinar | Filas do Barramento de Serviço do Azure Tópicos do Barramento de Serviço do Azure Hubs de eventos do Azure |
pubsub.azure.servicebus.queues pubsub.azure.servicebus.topics pubsub.azure.eventhubs |
Associação | Filas de Armazenamento do Azure Filas do Barramento de Serviço do Azure Armazenamento do Blobs do Azure Hubs de eventos do Azure |
bindings.azure.storagequeues bindings.azure.servicebusqueues bindings.azure.blobstorage bindings.azure.eventhubs |
Gerenciamento de segredos | Cofre de Chave do Azure | secretstores.azure.keyvault |
Componentes da camada 2
API (Interface de Programação de Aplicativos) | Componente | Tipo |
---|---|---|
Gerenciamento de estado | PostgreSQL MySQL e MariaDB Redis |
state.postgresql state.mysql state.redis |
Publicar e assinar | Apache Kafka Fluxos do Redis |
pubsub.kafka pubsub.redis |
Associação | Grade de Eventos do Azure Azure Cosmos DB (banco de dados distribuído da Azure) Apache Kafka PostgreSQL Redis Cron |
bindings.azure.eventgrid bindings.azure.cosmosdb bindings.kafka bindings.postgresql bindings.redis bindings.cron |
Configuração | PostgreSQL Redis |
configuration.postgresql configuration.redis |
Saiba mais sobre como usar os componentes Dapr com suporte nos Aplicativos de Contêiner do Azure.
Ferramentas
Os Aplicativos de Contêiner do Azure garantem compatibilidade com ferramentas de código aberto Dapr, como SDKs e CLI.
Limitações
- Especificação de configuração do Dapr: todos os recursos que exigem o uso da especificação de configuração do Dapr.
- Quaisquer anotações de sidecar do Dapr não listadas no guia de habilitação do Dapr
- Suporte a APIs e componentes: somente as APIs e os componentes do Dapr listados como GA, Camada 1 ou Camada 2 nesse artigo têm suporte nos Aplicativos de Contêiner do Azure.
- Lembretes de ator: exija um minReplicas de 1+ para garantir que os lembretes sempre estarão ativos e sejam disparados corretamente.
- Trabalhos: não há suporte para trabalhos no Dapr.
Próximas etapas
- Implantar o Dapr usando:
- Habilitar o Dapr em um aplicativo de contêiner existente.