Os agentes de replicação são fundamentais para o Adobe Experience Manager (AEM), pois o mecanismo é usado para:
As solicitações são enfileiradas para o agente apropriado para processamento.
Os dados do usuário (usuários, grupos de usuários e perfis de usuário) não são replicados entre as instâncias de autor e publicação.
Para várias instâncias de publicação, os dados do usuário são distribuídos pelo Sling quando User Synchronization está ativado.
A replicação para uma instância de publicação ou dispatcher ocorre em várias etapas:
o autor solicita que certos conteúdos sejam publicados (ativados); isso pode ser iniciado por uma solicitação manual ou por acionadores automáticos pré-configurados.
a solicitação é passada para o agente de replicação padrão apropriado; um ambiente pode ter vários agentes padrão que sempre serão selecionados para tais ações.
o agente de replicação "compacta" o conteúdo e o coloca na fila de replicação.
na guia Sites , o indicador de status colorido é definido para as páginas individuais.
o conteúdo é removido da fila e transportado para o ambiente de publicação usando o protocolo configurado; geralmente, isso é HTTP.
um servlet no ambiente de publicação recebe a solicitação e publica o conteúdo recebido; o servlet padrão é https://localhost:4503/bin/receive
.
vários ambientes de criação e publicação podem ser configurados.
Alguns recursos permitem que os usuários insiram dados em uma instância de publicação.
Em alguns casos, um tipo de replicação conhecido como replicação inversa é necessário para retornar esses dados ao ambiente do autor, de onde são redistribuídos para outros ambientes de publicação. Devido a considerações de segurança, qualquer tráfego do ambiente de publicação para o autor deve ser rigorosamente controlado.
A replicação inversa usa um agente no ambiente de publicação que faz referência ao ambiente do autor. Esse agente coloca os dados em uma caixa de saída. Essa caixa de saída corresponde aos ouvintes de replicação no ambiente do autor. Os listeners pesquisam as caixas de saída para coletar os dados inseridos e depois distribuí-los conforme necessário. Isso garante que o ambiente do autor controle todo o tráfego.
Em outros casos, como para recursos do Communities (por exemplo, fóruns, blogs, comentários e revisões), a quantidade de conteúdo gerado pelo usuário (UGC) que está sendo inserida no ambiente de publicação é difícil de sincronizar com eficiência entre instâncias AEM usando replicação.
AEM Communities nunca usa replicação para UGC. Em vez disso, a implantação do Communities requer um armazenamento comum para UGC (consulte Community Content Storage).
O site we-retail incluído em uma instalação padrão de AEM pode ser usado para ilustrar a replicação.
Para seguir este exemplo e usar os agentes de replicação padrão, você precisa Instalar AEM com:
4502
4503
Ativado por padrão :
Eficazmente desativado por padrão (a partir do AEM 6.1) :
Para verificar o status do agente ou da fila, use o console Ferramentas.
Consulte Monitorando seus agentes de replicação.
<pi>
Essa replicação é acionada do ambiente de criação pelo:
Agente padrão (publicação)
Esse agente replica o conteúdo na instância de publicação padrão.
Os detalhes disso (configuração e logs) podem ser acessados no console Ferramentas do ambiente do autor; ou:
https://localhost:4502/etc/replication/agents.author/publish.html
.
Os seguintes agentes estão disponíveis em uma instalação padrão de AEM:
🔗
Agente padrãoUsado para replicar do autor para publicar.
Liberação do Dispatcher
Isso é usado para gerenciar o cache do Dispatcher. Consulte Invalidar o cache do Dispatcher do ambiente de criação e Invalidar o cache do Dispatcher de uma instância de publicação para obter mais informações.
Reverse
ReplicationUsed for replicating from publish to author. A replicação inversa não é usada para recursos do Communities, como fóruns, blogs e comentários. Ela é efetivamente desativada, pois a caixa de saída não está ativada. O uso da replicação inversa exigiria configuração personalizada.
Agente estático
Este é um "Agente que armazena uma representação estática de um nó no sistema de arquivos".
Por exemplo, com as configurações padrão, as páginas de conteúdo e os ativos dam são armazenados em /tmp
, como HTML ou no formato de ativo apropriado. Consulte as guias Settings
e Rules
para obter a configuração.
Isso foi solicitado para que, quando a página for solicitada diretamente do servidor de aplicativos, o conteúdo possa ser visualizado. Este é um agente especializado e (provavelmente) não será necessário para a maioria das instâncias.
Ao configurar um agente de replicação no console Ferramentas , quatro guias estão disponíveis na caixa de diálogo:
Nome
Um nome exclusivo para o agente de replicação.
Descrição
Uma descrição da finalidade que esse agente de replicação servirá.
Ativado
Indica se o agente de replicação está ativado no momento.
Quando o agente for ativado a fila será exibida como:
Tipo de serialização
O tipo de serialização:
Tentar novamente o atraso
O atraso (tempo de espera em milissegundos) entre duas tentativas, caso um problema seja encontrado.
Padrão: 60000
ID de usuário agente
Dependendo do ambiente, o agente usará essa conta de usuário para:
Deixe este campo vazio para usar a conta de usuário do sistema (a conta definida no sling como o usuário administrador; por padrão, esse valor é admin
).
Para um agente no ambiente de autor, essa conta must tem acesso de leitura a todos os caminhos que você deseja replicar.
Para um agente no ambiente de publicação, essa conta deve ter o acesso de criação/gravação necessário para replicar o conteúdo.
Isso pode ser usado como um mecanismo para selecionar conteúdo específico para replicação.
Nível de registro
Especifica o nível de detalhes a serem usados para mensagens de log.
Error
: somente erros serão registradosInfo
: erros, avisos e outras mensagens informativas serão registradosDebug
: um alto nível de detalhes será usado nas mensagens, principalmente para fins de depuraçãoPadrão: Info
Use para replicação reversa
Indica se esse agente será usado para replicação inversa; retorna a entrada do usuário do ambiente de publicação para autor.
Atualização do alias
Selecionar essa opção ativa solicitações de invalidação de alias ou caminho personalizado para o Dispatcher. Além disso, consulte Configurando um Agente de Liberação do Dispatcher.
URI
Especifica o servlet de recebimento no local de destino. Em particular, você pode especificar o nome do host (ou alias) e o caminho do contexto para a instância do público alvo aqui.
Por exemplo:
https://localhost:4503/bin/receive
https://localhost:8000/dispatcher/invalidate.cache
O protocolo especificado aqui (HTTP ou HTTPS) determinará o método de transporte.
Para agentes de Liberação do Dispatcher, a propriedade URI será usada somente se você usar entradas virtualhost baseadas em caminho para diferenciar entre farms, use esse campo para direcionar o farm para invalidar. Por exemplo, o farm nº 1 tem um host virtual de www.mysite.com/path1/*
e o farm nº 2 tem um host virtual de www.mysite.com/path2/*
. Você pode usar um URL de /path1/invalidate.cache
para direcionar o primeiro farm e /path2/invalidate.cache
para direcionar o segundo farm.
Usuário
Nome de usuário da conta a ser usada para acessar o target.
Senha
Senha da conta a ser usada para acessar o target.
Domínio NTLM
Domínio para autenticação NTML.
Host NTLM
Host para autenticação NTML.
Ativar SSL relaxado
Ative se desejar que certificados SSL autocertificados sejam aceitos.
Permitir certificados expirados
Ative se desejar que certificados SSL expirados sejam aceitos.
As configurações a seguir são necessárias somente se um proxy for necessário:
Host do proxy
Nome do host do proxy usado para transporte.
Porta de proxy
Porta do proxy.
Usuário de proxy
Nome de usuário da conta a ser usada.
Senha do proxy
Senha da conta a ser usada.
Domínio do proxy NTLM
O domínio NTLM proxy.
Host do proxy NTLM
O domínio NTLM proxy.
Interface
Aqui você pode definir a interface do soquete para a qual vincular.
Isso define o endereço local a ser usado ao criar conexões. Se isso não for definido, o endereço padrão será usado. Isso é útil para especificar a interface a ser usada em sistemas com vários pontos ou em cluster.
Método HTTP
O método HTTP a ser usado.
Para um agente de Liberação do Dispatcher, isso é quase sempre GET e não deve ser alterado (POST seria outro valor possível).
Cabeçalhos de HTTP
Eles são usados para agentes de Liberação do Dispatcher e especificam elementos que devem ser liberados.
Para um agente de Liberação do Dispatcher, as três entradas padrão não devem precisar ser alteradas:
CQ-Action:{action}
CQ-Handle:{path}
CQ-Path:{path}
Elas são usadas, conforme apropriado, para indicar a ação a ser usada ao limpar o manípulo ou o caminho. Os subparâmetros são dinâmicos:
{action}
indica uma ação de replicação
{path}
indica um caminho
Eles são substituídos pelo caminho/ação relevante para a solicitação e, portanto, não precisam ser "codificados":
Se tiver instalado o AEM em um contexto diferente do contexto padrão recomendado, será necessário registrar o contexto nos Cabeçalhos HTTP. Por exemplo:
CQ-Handle:/<*yourContext*>{path}
Fechar conexão
Ative para fechar a conexão após cada solicitação.
Tempo limite de conexão
Tempo limite (em milissegundos) a ser aplicado ao tentar estabelecer uma conexão.
Tempo limite do soquete
Tempo limite (em milissegundos) a ser aplicado ao aguardar tráfego após estabelecer uma conexão.
Versão do protocolo
Versão do protocolo; por exemplo 1.0
para HTTP/1.0.
Essas configurações são usadas para definir acionadores para replicação automatizada:
Ignorar padrão
Se marcada, o agente é excluído da replicação padrão; isso significa que ele não será usado se um autor de conteúdo emitir uma ação de replicação.
Em modificação
Aqui, uma replicação por esse agente será acionada automaticamente quando uma página for modificada. Isso é usado principalmente para agentes de liberação do Dispatcher, mas também para replicação reversa.
Durante roll-out
Se marcada, o agente replicará automaticamente qualquer conteúdo marcado para distribuição quando for modificado.
Tempo de Ativação/Desativação atingido
Isso acionará a replicação automática (para ativar ou desativar uma página, conforme apropriado) quando ocorrerem as vezes ou horas de inatividade definidas para uma página. Isso é usado principalmente para agentes de liberação do Dispatcher.
No recebimento
Se marcada, o agente fará a replicação em cadeia sempre que receber eventos de replicação.
Sem atualização de status
Quando marcado, o agente não forçará uma atualização de status de replicação.
Sem controle de versão
Quando marcado, o agente não forçará o controle de versão de páginas ativadas.
Para obter informações sobre como conectar agentes de replicação à instância de publicação usando MSSL, consulte Replicando Usando SSL Mútuo.
Na guia Ferramentas no ambiente de criação, é possível configurar agentes de replicação que residem no ambiente de criação (Agentes no autor) ou no ambiente de publicação (Agentes no publish). Os procedimentos a seguir ilustram a configuração de um agente para o ambiente do autor, mas podem ser usados para ambos.
Quando um dispatcher lida com solicitações HTTP para instâncias de autor ou publicação, a solicitação HTTP do agente de replicação deve incluir o cabeçalho PATH. Além do procedimento a seguir, você deve adicionar o cabeçalho PATH à lista de dispatchers dos cabeçalhos do cliente. (Consulte /clientheaders (Cabeçalhos do Cliente).
Acesse a guia Ferramentas no AEM.
Clique em Replicação (painel esquerdo para abrir a pasta).
Clique duas vezes em Agents on author (no painel esquerdo ou direito).
Clique no nome do agente apropriado (que é um link) para mostrar informações detalhadas sobre esse agente.
Clique em Editar para abrir a caixa de diálogo de configuração:
Os valores fornecidos devem ser suficientes para uma instalação padrão. Se fizer alterações, clique em OK para salvá-las (consulte Agentes de Replicação - Parâmetros de Configuração para obter mais detalhes sobre os parâmetros individuais).
Uma instalação padrão de AEM especifica admin
como usuário para credenciais de transporte dentro dos agentes de replicação padrão.
Isso deve ser alterado para uma conta de usuário de replicação específica do site com os privilégios para replicar os caminhos necessários.
A replicação inversa é usada para gerar o conteúdo do usuário em uma instância de publicação de volta a uma instância do autor. Isso é comumente usado para recursos como pesquisas e formulários de registro.
Por motivos de segurança, a maioria das topologias de rede não permite conexões de a "Zona desmilitarizada" (uma subrede que expõe os serviços externos a uma rede não confiável, como a Internet).
Como o ambiente de publicação geralmente está no DMZ, para obter conteúdo de volta ao ambiente do autor, a conexão deve ser iniciada a partir da instância do autor. Isso é feito com:
Para AEM Communities, a replicação não é usada para o conteúdo gerado pelo usuário em uma instância de publicação. Consulte Armazenamento de conteúdo da comunidade.
Para fazer isso, você precisa:
Um agente de replicação inversa no ambiente de criação. Ele atua como o componente ativo para coletar informações da caixa de saída no ambiente de publicação:
Se quiser usar a replicação inversa, verifique se esse agente está ativado.
Um agente de replicação inversa no ambiente de publicação (uma caixa de saída) Esse é o elemento passivo, pois atua como uma "caixa de saída". A entrada do usuário é colocada aqui, de onde é coletada pelo agente no ambiente de criação.
Somente o conteúdo é replicado - os dados do usuário não são (usuários, grupos de usuários e perfis de usuário).
Para sincronizar os dados do usuário em várias instâncias de publicação, ative Sincronização do usuário.
Após a instalação, um agente padrão já está configurado para replicação de conteúdo em uma instância de publicação em execução na porta 4503 do host local.
Para configurar a replicação de conteúdo para uma instância de publicação adicional, você precisa criar e configurar um novo agente de replicação:
Abra a guia Ferramentas no AEM.
Selecione Replicação e Agentes no autor no painel esquerdo.
Selecione Novo….
Defina o Título e Nome, em seguida selecione Agente de Replicação.
Clique em Criar para criar o novo agente.
Clique duas vezes no novo item de agente para abrir o painel de configuração.
Clique em Editar - a caixa de diálogo Configurações do Agente será aberta - o Tipo de Serialização já está definido como Padrão, isso deve permanecer assim.
Na guia Settings:
Ativar Ativado.
Insira um Description.
Defina o Atraso de repetição para 60000
.
Deixe Serialization Type como Default
.
Na guia Transporte:
Insira o URI necessário para a nova instância de publicação; por exemplo,
https://localhost:4504/bin/receive
.
Insira a conta de usuário específica do site usada para replicação.
Você pode configurar outros parâmetros, conforme necessário.
Clique em OK para salvar as configurações.
Em seguida, você pode testar a operação atualizando e publicando uma página no ambiente de criação.
As atualizações serão exibidas em todas as instâncias de publicação configuradas como acima.
Se encontrar algum problema, você pode verificar os logs na instância do autor. Dependendo do nível de detalhes necessário, você também pode definir o Nível de Log como Debug
usando a caixa de diálogo Configurações do Agente como acima.
Isso pode ser combinado com o uso do Agent User Id para selecionar conteúdo diferente para replicação nos ambientes de publicação individuais. Para cada ambiente de publicação:
Os agentes padrão são incluídos na instalação. No entanto, determinada configuração ainda é necessária e o mesmo se aplica se você estiver definindo um novo agente:
Abra a guia Ferramentas no AEM.
Clique em Implantação.
Selecione Replication e Agents on publish.
Clique duas vezes no item Dispatcher Flush para abrir a visão geral.
Clique em Editar - a caixa de diálogo Configurações do Agente abrirá:
Na guia Settings:
Ativar Ativado.
Insira um Description.
Deixe o Tipo de serialização como Dispatcher Flush
, ou defina-o como tal se estiver criando um novo agente.
(opcional) Selecione Alias update para ativar solicitações de invalidação de alias ou caminho personalizado para o Dispatcher.
Na guia Transporte:
Insira o URI necessário para a nova instância de publicação; por exemplo,
https://localhost:80/dispatcher/invalidate.cache
.
Insira a conta de usuário específica do site usada para replicação.
Você pode configurar outros parâmetros, conforme necessário.
Para agentes de Liberação do Dispatcher, a propriedade URI será usada somente se você usar entradas virtualhost baseadas em caminho para diferenciar entre farms, use esse campo para direcionar o farm para invalidar. Por exemplo, o farm nº 1 tem um host virtual de www.mysite.com/path1/*
e o farm nº 2 tem um host virtual de www.mysite.com/path2/*
. Você pode usar um URL de /path1/invalidate.cache
para direcionar o primeiro farm e /path2/invalidate.cache
para direcionar o segundo farm.
Se tiver instalado AEM em um contexto diferente do contexto padrão recomendado, será necessário configurar o HTTP Headers na guia Extended.
Clique em OK para salvar as alterações.
Retorne à guia Tools, daqui você pode Ativar o agente Dispatcher Flush (Agentes em publicar).
O agente de replicação Dispatcher Flush não está ativo no autor. Você pode acessar a mesma página no ambiente de publicação usando o URI equivalente; por exemplo, https://localhost:4503/etc/replication/agents.publish/flush.html
.
O acesso às páginas usadas para configurar os agentes de replicação pode ser controlado usando permissões de página de usuário e/ou grupo no nó etc/replication
.
A configuração dessas permissões não afetará os usuários que replicam o conteúdo (por exemplo, do console Sites ou da opção de sidekick). A estrutura de replicação não usa a "sessão de usuário" do usuário atual para acessar agentes de replicação ao replicar páginas.
A criação de agentes de replicação só é compatível no local do repositório /etc/replication
. Isso é necessário para que as ACLs associadas sejam manipuladas adequadamente. A criação de um agente de replicação em outro local da árvore pode levar ao acesso não autorizado.
Vários parâmetros dos agentes de replicação podem ser configurados usando o CRXDE Lite.
Se você navegar até /etc/replication
, poderá ver os três nós a seguir:
agents.author
agents.publish
treeactivation
Os dois agents
contêm informações de configuração sobre o ambiente apropriado e só estão ativos quando esse ambiente está em execução. Por exemplo, agents.publish
só será usado no ambiente de publicação. A captura de tela a seguir mostra o agente de publicação no ambiente do autor, conforme incluído AEM WCM:
Para monitorar um agente de replicação:
Acesse a guia Ferramentas no AEM.
Clique em Replicação.
Clique duas vezes no link para agentes do ambiente apropriado (no painel esquerdo ou direito); por exemplo, Agentes no autor.
A janela resultante mostra uma visão geral de todos os agentes de replicação para o ambiente do autor, incluindo o target e o status.
Clique no nome do agente apropriado (que é um link) para mostrar informações detalhadas sobre esse agente:
Aqui você pode:
Veja se o agente está ativado.
Consulte o target de qualquer replicação.
Veja se a fila de replicação está ativa no momento (habilitada).
Veja se há algum item na fila.
Refreshor Clearto atualize a exibição de entradas da fila; isso ajuda você a ver os itens entrando e deixando a fila.
Exibir Logon para acessar o log de qualquer ação pelo agente de replicação.
Testar conexão com a instância de destino.
Forçar Repetição em qualquer item da fila, se necessário.
Não use o link "Testar conexão" para a Caixa de saída de replicação inversa em uma instância de publicação.
Se um teste de replicação for executado para uma fila da Caixa de saída, todos os itens mais antigos que a replicação de teste serão reprocessados com cada replicação inversa.
Se esses itens já existirem em uma fila, eles poderão ser encontrados com a seguinte consulta XPath JCR e deverão ser removidos.
/jcr:root/var/replication/outbox//*[@cq:repActionType='TEST']
A replicação em lote não replica páginas ou ativos individuais, mas aguarda o primeiro limite dos dois, com base no tempo ou no tamanho, para ser acionado.
Em seguida, ele compacta todos os itens de replicação em um pacote, que é replicado como um único arquivo para o editor.
O editor descompactará todos os itens, salvá-los e relatará ao autor.
http://serveraddress:serverport/siteadmin
http://serveraddress:serverport/etc/replication/agents.author/publish.html
Enable Batch Mode
- ativa ou desativa o modo de replicação em loteMax Wait Time
- Tempo máximo de espera até que uma solicitação em lote seja iniciada, em segundos. O padrão é 2 segundos.Trigger Size
- Inicia a replicação em lote quando esse limite de tamanhoPara obter detalhes sobre a solução de problemas, leia a página Solução de problemas de replicação.