As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Configurações personalizadas do agente Express do MSK (acesso de leitura/gravação)
Você pode atualizar as configurações do read/write broker usando o recurso de configuração de atualização do Amazon MSK ou usando a API do Apache Kafka. AlterConfig As configurações do agente do Apache Kafka são estáticas ou dinâmicas. As configurações estáticas exigem a reinicialização do agente para que a configuração seja aplicada, enquanto as configurações dinâmicas não precisam da reinicialização do agente. Para obter mais informações sobre propriedades de configuração e modos de atualização, consulte Atualização das configurações do agente.
Tópicos
Configurações estáticas em agentes Express do MSK
É possível usar o Amazon MSK para criar uma configuração personalizada do MSK na qual você define as propriedades a seguir. O Amazon MSK define e gerencia todas as outras propriedades que você não configurou. Você pode criar e atualizar arquivos de configuração estáticos no console do MSK ou por meio do comando de configurações.
| Propriedade | Description | Valor padrão |
|---|---|---|
|
allow.everyone.if.no.acl.found |
Se você quiser definir essa propriedade como false, primeiro certifique-se de definir o Apache Kafka ACLs para seu cluster. Se você definir essa propriedade como false e não definir primeiro o Apache Kafka ACLs, perderá o acesso ao cluster. Caso isso ocorra, é possível atualizar novamente a configuração e definir essa propriedade como verdadeira para recuperar o acesso ao cluster. |
true |
|
auto.create.topics.enable |
Habilita a criação automática de um tópico no servidor. |
false |
| compression.type |
Especifica o tipo de compactação final de um determinado tópico. Essa configuração aceita os codecs de compactação padrão: gzip, snappy, lz4, zstd. Essa configuração também aceita |
Padrão do Apache Kafka |
|
connections.max.idle.ms |
O tempo limite de conexões ociosas em milissegundos. Os threads do processador de soquete do servidor fecham as conexões que estiverem ociosas há mais tempo que o que o valor definido para essa propriedade. |
Padrão do Apache Kafka |
|
delete.topic.enable |
Habilita a operação de exclusão de tópico. Se desativar essa configuração, você não poderá excluir um tópico por meio da ferramenta de administração. |
Padrão do Apache Kafka |
|
group.initial.rebalance.delay.ms |
O período que o coordenador do grupo espera que mais consumidores de dados ingressem em um novo grupo antes de executar a primeira operação de rebalanceamento. Um atraso mais longo significa potencialmente menos rebalanceamentos, mas aumenta o tempo até o início do processamento. |
Padrão do Apache Kafka |
|
group.max.session.timeout.ms |
Tempo limite máximo de sessão para consumidores registrados. Tempos limite mais longos permitem que os consumidores tenham mais tempo para processar mensagens entre pulsações ao custo de mais tempo para detectar falhas. |
Padrão do Apache Kafka |
|
leader.imbalance.per.broker.percentage |
A proporção de desequilíbrio de líder permitida por agente. O controlador aciona um balanceamento de líder caso ele ultrapasse esse valor por agente. Esse valor é especificado em porcentagem. |
Padrão do Apache Kafka |
| log.cleanup.policy | A política de limpeza padrão para segmentos além da janela de retenção. Uma lista de políticas válidas separadas por vírgulas. As políticas válidas são delete e compact. Para clusters habilitados para armazenamento em camadas, a política válida é somente delete. |
Padrão do Apache Kafka |
| log.message.timestamp.after.max.ms |
A diferença de data e hora permitida entre o timestamp da mensagem e o timestamp do agente. O carimbo de data e hora da mensagem pode ser posterior ou igual ao carimbo do agente, com a diferença máxima permitida determinada pelo valor definido nessa configuração. Se for |
86400000 (24 * 60 * 60 * 1000 ms, ou seja, 1 dia) |
| log.message.timestamp.before.max.ms |
A diferença de data e hora permitida entre os carimbos de data e hora do agente e da mensagem. O carimbo de data e hora da mensagem pode ser anterior ou igual ao carimbo do agente, com a diferença máxima permitida determinada pelo valor definido nessa configuração. Se for |
86400000 (24 * 60 * 60 * 1000 ms, ou seja, 1 dia) |
| log.message.timestamp.type | Especifica se o carimbo de data/hora na mensagem é o horário de criação da mensagem ou da adição no log. Os valores permitidos são CreateTime e LogAppendTime. |
Padrão do Apache Kafka |
| log.retention.bytes | Tamanho máximo do log antes de ser excluído. | Padrão do Apache Kafka |
| log.retention.ms | Número de milissegundos para manter um arquivo de log antes de excluí-lo. | Padrão do Apache Kafka |
| max.connections.per.ip | O número máximo de conexões permitido para cada endereço IP. Pode ser definido como 0 se houver substituições configuradas usando a propriedade max.connections.per.ip.overrides. Novas conexões do endereço IP serão descartadas se o limite for atingido. |
Padrão do Apache Kafka |
|
max.incremental.fetch.session.cache.slots |
Número máximo de sessões de busca incrementais mantidas. |
Padrão do Apache Kafka |
| message.max.bytes |
O maior tamanho de lote de registros que o Kafka permite. Se você aumentar esse valor e houver consumidores anteriores à versão 0.10.2, também será necessário aumentar o tamanho de busca dos consumidores para que eles possam buscar lotes de registros desse tamanho. O formato de mensagem mais recente sempre agrupa as mensagens em lotes visando eficiência. As versões anteriores de formato de mensagem não agrupam em lotes os registros não compactados, e, nesse caso, esse limite é aplicável somente a um único registro. É possível definir esse valor por tópico com a configuração |
Padrão do Apache Kafka |
|
num.partitions |
Número padrão de partições de log por tópico. |
1 |
|
offsets.retention.minutes |
Depois que um grupo de consumidores perde todos os consumidores (isto é, torna-se vazio), seus deslocamentos são mantidos durante esse período de retenção antes de serem descartados. Para consumidores autônomos (ou seja, que usam atribuição manual), os deslocamentos expiram depois da última confirmação somada a esse período de retenção. |
Padrão do Apache Kafka |
|
replica.fetch.max.bytes |
O número de bytes de mensagens para tentar buscar para cada partição. Esse não é um máximo absoluto. Se o primeiro lote de registros na primeira partição não vazia da busca for maior que esse valor, o lote de registros será retornado para garantir o progresso. As propriedades message.max.bytes (configuração do agente) ou max.message.bytes (configuração do tópico) definem o tamanho máximo do lote de registros aceito pelo agente. |
Padrão do Apache Kafka |
|
replica.selector.class |
O nome da classe totalmente qualificado que implementa. ReplicaSelector O agente usa esse valor para encontrar a réplica de leitura preferencial. Se quiser permitir que os clientes busquem na réplica mais próxima, defina essa propriedade como |
Padrão do Apache Kafka |
|
socket.receive.buffer.bytes |
O buffer SO_RCVBUF dos soquetes do servidor de soquetes. Se o valor for -1, o sistema operacional padrão será usado. |
102400 |
|
socket.request.max.bytes |
Número máximo de bytes em uma solicitação de soquete. |
104857600 |
|
socket.send.buffer.bytes |
O buffer SO_SNDBUF dos soquetes do servidor de soquetes. Se o valor for -1, o sistema operacional padrão será usado. |
102400 |
|
transaction.max.timeout.ms |
Tempo limite máximo para transações. Se o tempo de transação solicitado de um cliente exceder esse valor, o corretor retornará um erro em InitProducerIdRequest. Isso impede que um cliente use um tempo limite muito grande e pode impedir que os consumidores leiam os tópicos incluídos na transação. |
Padrão do Apache Kafka |
|
transactional.id.expiration.ms |
O tempo em milissegundos que o coordenador da transação deve aguardar para receber qualquer atualização do status da transação atual antes que o coordenador expire sua ID transacional. Essa configuração também influencia a expiração do ID do produtor porque faz com que IDs o produtor expire quando esse tempo decorre após a última gravação com o ID do produtor fornecido. O produtor IDs pode expirar mais cedo se a última gravação do ID do produtor for excluída devido às configurações de retenção do tópico. O valor mínimo para essa propriedade é de 1 milissegundo. |
Padrão do Apache Kafka |
Configurações dinâmicas em agentes Express
Você pode usar a AlterConfig API Apache Kafka ou a ferramenta Kafka-configs.sh para editar as seguintes configurações dinâmicas. O Amazon MSK define e gerencia todas as outras propriedades que você não configurou. Você pode definir dinamicamente as propriedades de configuração em nível de cluster e de agente que não exigem a reinicialização do agente.
| Propriedade | Description | Valor padrão |
|---|---|---|
|
advertised.listeners |
Receptores a serem publicados para os clientes usarem, se forem diferentes da propriedade de configuração E diferente de Essa propriedade é definida em um nível por agente. |
nulo |
|
compression.type |
O tipo de compactação final de um determinado tópico. Você pode definir essa propriedade para os codecs de compactação padrão ( |
Padrão do Apache Kafka |
| log.cleaner.delete.retention.ms | A duração do período de retenção de marcadores de exclusão a excluir em tópicos de logs compactados. Essa configuração também fornece um limite no tempo em que um consumidor deve concluir uma leitura se começar do deslocamento 0 para garantir que obtenha um instantâneo válido do estágio final. Caso contrário, os marcadores de exclusão a excluir podem ser coletados antes que concluam a digitalização. | 86400000 (24 * 60 * 60 * 1000 ms, ou seja, 1 dia), Padrão do Apache Kafka |
| log.cleaner.min.compaction.lag.ms | O tempo mínimo que uma mensagem permanecerá descompactada no log. Essa configuração é aplicável somente para logs que estejam compactados. | 0, Padrão do Apache Kafka |
| log.cleaner.max.compaction.lag.ms | O tempo máximo que uma mensagem permanecerá inelegível para compactação no log. Essa configuração é aplicável somente para logs que estejam compactados. Essa configuração estaria limitada a um intervalo de [7 dias, Long.Max]. | 9223372036854775807, Padrão do Apache Kafka |
|
log.cleanup.policy |
A política de limpeza padrão para segmentos além da janela de retenção. Uma lista de políticas válidas separadas por vírgulas. As políticas válidas são |
Padrão do Apache Kafka |
|
log.message.timestamp.after.max.ms |
A diferença de data e hora permitida entre o timestamp da mensagem e o timestamp do agente. O carimbo de data e hora da mensagem pode ser posterior ou igual ao carimbo do agente, com a diferença máxima permitida determinada pelo valor definido nessa configuração. Se for |
86400000 (24 * 60 * 60 * 1000 ms, ou seja, 1 dia) |
|
log.message.timestamp.before.max.ms |
A diferença de data e hora permitida entre os carimbos de data e hora do agente e da mensagem. O carimbo de data e hora da mensagem pode ser anterior ou igual ao carimbo do agente, com a diferença máxima permitida determinada pelo valor definido nessa configuração. Se for |
86400000 (24 * 60 * 60 * 1000 ms, ou seja, 1 dia) |
|
log.message.timestamp.type |
Especifica se o carimbo de data/hora na mensagem é o horário de criação da mensagem ou da adição no log. Os valores permitidos são |
Padrão do Apache Kafka |
|
log.retention.bytes |
Tamanho máximo do log antes de ser excluído. |
Padrão do Apache Kafka |
|
log.retention.ms |
Número de milissegundos para manter um arquivo de log antes de excluí-lo. |
Padrão do Apache Kafka |
|
max.connection.creation.rate |
A taxa máxima de criação de conexão permitida no agente a qualquer momento. |
Padrão do Apache Kafka |
|
max.connections |
O número máximo de conexões permitido no agente a qualquer momento. Esse limite é aplicado além de quaisquer limites por IP configurados usando |
Padrão do Apache Kafka |
|
max.connections.per.ip |
O número máximo de conexões permitido para cada endereço IP. Pode ser definido como |
Padrão do Apache Kafka |
|
max.connections.per.ip.overrides |
Uma lista separada por vírgula de nomes por IP ou host substitui o número máximo padrão de conexões. Um exemplo de valor é |
Padrão do Apache Kafka |
|
message.max.bytes |
O maior tamanho de lote de registros que o Kafka permite. Se você aumentar esse valor e houver consumidores anteriores à versão 0.10.2, também será necessário aumentar o tamanho de busca dos consumidores para que eles possam buscar lotes de registros desse tamanho. O formato de mensagem mais recente sempre agrupa as mensagens em lotes visando eficiência. As versões anteriores de formato de mensagem não agrupam em lotes os registros não compactados, e, nesse caso, esse limite é aplicável somente a um único registro. É possível definir esse valor por tópico com a configuração |
Padrão do Apache Kafka |
|
producer.id.expiration.ms |
O tempo em ms que um líder de partição de tópico esperará antes de expirar o produtor IDs. IDs O produtor não expirará enquanto uma transação associada a ele ainda estiver em andamento. Observe que o produtor IDs pode expirar mais cedo se a última gravação do ID do produtor for excluída devido às configurações de retenção do tópico. Definir esse valor igual ou maior que |
Padrão do Apache Kafka |
Configurações em nível de tópico em agentes Express
Você pode usar os comandos do Apache Kafka para definir ou modificar propriedades de configuração em nível de tópico para tópicos novos e existentes. Se você não puder fornecer nenhuma configuração em nível de tópico, o Amazon MSK usará o agente padrão. Assim como nas configurações em nível de agente, o Amazon MSK protege algumas das propriedades de configuração em nível de tópico contra alterações. Os exemplos incluem fator de replicação min.insync.replicas e unclean.leader.election.enable. Se você tentar criar um tópico com um valor de fator de replicação diferente de 3, por padrão o Amazon MSK criará o tópico com um fator de replicação de 3. Para obter mais informações sobre as propriedades de configuração no nível de tópico e exemplos sobre como defini-las, consulte Configurações no nível de tópico
| Propriedade | Description |
|---|---|
|
cleanup.policy |
Essa configuração designa a política de retenção a ser usada em segmentos de log. A política de “exclusão” (que é a padrão) descartará segmentos antigos quando seu tempo de retenção ou limite de tamanho for atingido. A política “compacta” permitirá a compactação de logs retendo o valor mais recente de cada chave. Também é possível especificar ambas as políticas em uma lista separada por virgulas (por exemplo, “excluir, compactar”). Nesse caso, os segmentos antigos serão descartados de acordo com a configuração de tamanho e tempo de retenção, enquanto os segmentos retidos serão compactados. A compactação em agentes Express é acionada depois que os dados em uma partição atingem 256 MB. |
|
compression.type |
Especifica o tipo de compactação final de um determinado tópico. Essa configuração aceita os codecs de compressão padrão ( |
| delete.retention.ms |
A duração do período de retenção de marcadores de exclusão a excluir em tópicos de logs compactados. Essa configuração também fornece um limite no tempo em que um consumidor deve concluir uma leitura se começar do deslocamento 0 para garantir que obtenha um instantâneo válido do estágio final. Caso contrário, os marcadores de exclusão a excluir podem ser coletados antes que concluam a digitalização. O valor padrão para essa configuração é 86400000 (24 * 60 * 60 * 1000 ms, ou seja, 1 dia), Padrão do Apache Kafka |
|
max.message.bytes |
O maior tamanho de lote de logs permitido pelo Kafka (após a compactação, se a compactação estiver ativada). Se ele for aumentado e houver consumidores mais antigos que |
|
message.timestamp.after.max.ms |
Essa configuração define a diferença permitida entre os carimbos de data e hora da mensagem e do agente. O carimbo de data e hora da mensagem pode ser posterior ou igual ao carimbo do agente, com a diferença máxima permitida determinada pelo valor definido nessa configuração. Se for |
|
message.timestamp.before.max.ms |
Essa configuração define a diferença de data e hora permitida entre os carimbos de data e hora do agente e da mensagem. O carimbo de data e hora da mensagem pode ser anterior ou igual ao carimbo do agente, com a diferença máxima permitida determinada pelo valor definido nessa configuração. Se for |
|
message.timestamp.type |
Especifica se o carimbo de data e hora da mensagem é a hora da criação da mensagem ou a hora do acréscimo no log. O valor pode ser |
| min.compaction.lag.ms |
O tempo mínimo que uma mensagem permanecerá descompactada no log. Essa configuração é aplicável somente para logs que estejam compactados. O valor padrão para essa configuração é 0, Padrão do Apache Kafka |
| max.compaction.lag.ms |
O tempo máximo que uma mensagem permanecerá inelegível para compactação no log. Essa configuração é aplicável somente para logs que estejam compactados. Essa configuração estaria limitada a um intervalo de [7 dias, Long.Max]. O valor padrão para essa configuração é 9223372036854775807, Padrão do Apache Kafka. |
|
retention.bytes |
Essa configuração controla o tamanho máximo que uma partição (que consiste em segmentos de log) pode crescer antes de descartarmos segmentos de log antigos para liberar espaço se estivermos usando a política de retenção de “exclusão”. Por padrão, não há limite de tamanho, apenas um limite de tempo. Como esse limite é imposto no nível da partição, multiplique-o pelo número de partições para calcular a retenção do tópico em bytes. Além disso, |
|
retention.ms |
Essa configuração controla o tempo máximo de retenção de um log antes de descartarmos segmentos de log antigos para liberar espaço se estivermos usando a política de retenção de “exclusão”. Representa um SLA sobre a rapidez com que os consumidores devem ler seus dados. Se estiver definido como |