Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Operações e alertas de auto-scaling

Esta página aborda as operações de auto-scaling: análise da atividade de auto-scaling, configuração de alertas de auto-scaling, aprimoramento do auto-scaling com campos efetivos e obtenção de suporte para o auto-scaling.

Você pode visualizar o feed de atividades para revisar os eventos de cada projeto do Atlas. Quando ocorre qualquer evento de dimensionamento automático, o Atlas registra o evento no projeto Activity Feed.

O Atlas usa os seguintes eventos de dimensionamento automático de auditoria.

Cada evento de dimensionamento automático no Feed de atividades inclui informações detalhadas sobre o que acionou a ação de dimensionamento, incluindo:

  • A métrica específica que acionou o evento de dimensionamento automático (como utilização da CPU, uso de memória ou espaço em disco).

  • O valor limite que foi excedido.

  • Se o dimensionamento foi acionado por dimensionamento automático reativo (em resposta ao uso atual de recursos) ou dimensionamento automático preditivo (em antecipação à demanda projetada).

Para visualizar ou baixar somente eventos de dimensionamento automático:

No Atlas, acesse a página Project Activity Feed.

  1. Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Na barra lateral, clique em Activity Feed abaixo do cabeçalho Security.

    A página Feed de atividades do projeto é exibida.

1

No Activity Feed, clique no menu Filter by event(s) e marque Atlas.

2

Na caixa de pesquisa acima da lista, comece a inserir auto-scaling.

No lado direito do menu, todos os eventos de dimensionamento automático são exibidos. Desmarque as opções que você não deseja ver. A lista de feeds é atualizada automaticamente com cada alteração que você faz.

Importante

No início de agosto 2024, o Atlas substituiu e-mails de notificação de dimensionamento automático legados por eventos de dimensionamento automático configuráveis. Por padrão, o Atlas continua a enviar todas as notificações de alerta aos proprietários do projeto. Você pode personalizar sua distribuição de alertas com dimensionamento automático para alterar os destinatários do alerta ou um método de distribuição.

As atividades de auto-scaling são um subconjunto de alertas do Atlas . Cada vez que o Atlas aciona qualquer um dos eventos de dimensionamento automático, você recebe alertas padrão do Atlas .

Você pode desativar ou alterar a configuração do alerta para alguns ou todos os eventos de escalonamento automático no nível do projeto.

Importante

Os alertas de dimensionamento automático são válidos para todos os clusters de um projeto. Você não pode definir o escopo de alertas para clusters específicos. As notificações de alerta identificam qual cluster acionou o evento por nome e ID do cluster.

Para modificar uma configuração de alerta, na seção Category, selecione Atlas Auto Scaling e, em seguida, selecione Condition/Metric na lista. Você pode então modificar as funções dos destinatários dos alertas, alterar um método de notificação, como e-mail ou SMS, e adicionar um notificador, como o Slack. Para saber mais, consulte Configurar um alerta de escalonamento automático.

Observação

Este recurso só se aplica a clusters dedicados no nível M10 e superiores, e não é suportado para clusters Flex.

Quando o dimensionamento automático é ativado em um cluster, o Atlas ajusta automaticamente os tamanhos das instâncias e a capacidade de armazenamento com base na carga de trabalho.

Se você usar MongoDB e HashiCorp Terraform para o dimensionamento da instância do cluster e as configurações de armazenamento, poderá especificar campos efetivos para um subconjunto de valores de dimensionamento do cluster. Recomendamos essa abordagem, desta forma:

  • Os atributos de especificação permanecem exatamente como você definiu na configuração do Terraform.

  • Os valores padrão e auto-scaled estão disponíveis separadamente em especificações efetivas (por exemplo, effectiveElectableSpecs), e nenhum desvio de recursos ocorre quando o Atlas dimensiona automaticamente seu cluster.

  • Sua configuração permanece limpa e representa sua intenção, enquanto especificações eficazes mostram a Realidade do que o Atlas provisionou.

Os campos efetivos ignoram apenas as alterações em campos gerenciados por tipos específicos de dimensionamento automático. A tabela a seguir detalha os campos ignorados quando os campos efetivos e tipos específicos de dimensionamento automático estão habilitados:

Tipo de dimensionamento automático habilitado
especificações
Campos ignorados
Tipo de nó

Computação ou armazenamento

electableSpecs

instanceSize, diskSizeGB , diskIOPS

Computação ou armazenamento

readOnlySpecs

instanceSize, diskSizeGB , diskIOPS

Análise

analyticsSpecs

instanceSize

Você não pode usar campos efetivos para nós de pesquisa.

Para ativar campos efetivos, inclua o seguinte cabeçalho na solicitação de API:

--header "Use-Effective-Instance-Fields: true"

Defina o argumento use_effective_fields como true em sua definição de recurso para o cluster, conforme mostrado no exemplo a seguir:

resource "mongodbatlas_advanced_cluster" "this" {
project_id = mongodbatlas_project.this.id
name = var.cluster_name
cluster_type = var.cluster_type
use_effective_fields = true
replication_specs = var.replication_specs
tags = var.tags
}

Para aprender mais, consulte Exemplo de módulo de campos eficazes.

Importante

Se você não habilitar campos efetivos, deverá configurar manualmente um bloco lifecycle.ignore_changes para evitar o desvio de recursos quando o dimensionamento automático ocorrer. Não recomendamos esta abordagem . Para aprender mais, consulte dimensionamento automático na documentação do Terraform.

No geral, o comportamento dos campos efetivos se enquadra em um dos três cenários:

Os campos específicos armazenam sua última configuração de nó, enquanto os campos efetivos mostram os valores após o último evento de dimensionamento automático. Clique para ver um exemplo de código deste cenário.

Observação

Recomendamos ativar campos efetivos como uma prática recomendada.

{
"replicationSpecs": [
{
"regionConfigs": [
{
"analyticsAutoScaling": {
"compute": {
"maxInstanceSize": "M30",
"minInstanceSize": "M10",
"enabled": true,
"scaleDownEnabled": true
},
"diskGB": {
"enabled": true
}
},
"autoScaling": {
"compute": {
"maxInstanceSize": "M30",
"minInstanceSize": "M10",
"enabled": true,
"scaleDownEnabled": true
},
"diskGB": {
"enabled": true
}
},
"effectiveAnalyticsSpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 0
},
"effectiveElectableSpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 3
},
"effectiveReadOnlySpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 0
},
"electableSpecs": {
"instanceSize": "M20",
"diskSizeGB": 50.0,
"nodeCount": 3
},
"priority": 7,
"providerName": "AWS",
"regionName": "US_EAST_1"
}
],
"zoneId": "6924a70c67695449ba5625ce",
"zoneName": "Zone 1"
}
]
}

Os campos específicos armazenam sua configuração do último nó, enquanto os campos efetivos mostram os valores que o Atlas armazena internamente. Clique para ver um exemplo de código deste cenário.

Observação

Recomendamos ativar campos efetivos como uma prática recomendada.

{
"replicationSpecs": [
{
"regionConfigs": [
{
"effectiveAnalyticsSpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 0
},
"effectiveElectableSpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 3
},
"effectiveReadOnlySpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 0
},
"electableSpecs": {
"instanceSize": "M30",
"diskSizeGB": 100.0,
"nodeCount": 3
},
"priority": 7,
"providerName": "AWS",
"regionName": "US_EAST_1"
}
],
"zoneId": "6924a70c67695449ba5625ce",
"zoneName": "Zone 1"
}
]
}

Os valores de campo efetivos sempre correspondem exatamente aos definidos nas especificações correspondentes. Clique para ver um exemplo de código deste cenário.

Importante

Se você não habilitar campos efetivos, deverá configurar manualmente um bloco lifecycle.ignore_changes para evitar o desvio de recursos quando o dimensionamento automático ocorrer. Não recomendamos esta abordagem . Para aprender mais, consulte dimensionamento automático na documentação do Terraform.

{
"replicationSpecs": [
{
"regionConfigs": [
{
"analyticsAutoScaling": {
"compute": {
"maxInstanceSize": "M30",
"minInstanceSize": "M10",
"enabled": true,
"scaleDownEnabled": true
},
"diskGB": {
"enabled": true
}
},
"autoScaling": {
"compute": {
"maxInstanceSize": "M30",
"minInstanceSize": "M10",
"enabled": true,
"scaleDownEnabled": true
},
"diskGB": {
"enabled": true
}
},
"effectiveAnalyticsSpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 0
},
"effectiveElectableSpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 3
},
"effectiveReadOnlySpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 0
},
"analyticsSpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 0
},
"electableSpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 3
},
"readOnlySpecs": {
"instanceSize": "M30",
"diskIOPS": 3000,
"diskSizeGB": 100.0,
"ebsVolumeType": "STANDARD",
"nodeCount": 0
},
"priority": 7,
"providerName": "AWS",
"regionName": "US_EAST_1"
}
],
"zoneId": "6924a70c67695449ba5625ce",
"zoneName": "Zone 1"
}
]
}

Se você ativar campos efetivos, o Atlas validará qualquer nova faixa de auto-scaling em relação ao tamanho atual da instância efetiva do cluster. O Atlas rejeita uma solicitação que define uma faixa que não contém o tamanho da instância efetiva atual. Esse comportamento se aplica a nós operacionais e nós de analítica que usam o auto-scaling.

A solicitação falha com um erro de validação em qualquer um desses casos:

  • O novo tamanho mínimo da instância é maior do que o tamanho efetivo da instância.

  • O novo tamanho máximo da instância é menor que o tamanho efetivo da instância.

Se a nova faixa ainda contiver o tamanho efetivo atual da instância, você poderá alterar os limites em uma única solicitação.

Se o tamanho efetivo atual da instância estiver fora da nova faixa, use o procedimento a seguir para movê-lo para a nova faixa antes de alterar os limites. Se você atualizar o tamanho da instância na mesma solicitação que a alteração da faixa, o Atlas não aplicará o novo tamanho da instância enquanto o dimensionamento automático estiver habilitado com campos efetivos, portanto, a solicitação ainda falha.

1

Defina compute.enabled como false.

2

Defina instanceSize como o valor de destino e, em seguida, envie a solicitação.

3

Defina compute.enabled como true.

4

Defina minInstanceSize e maxInstanceSize para os novos limites e, em seguida, envie a solicitação.

Para ajustar o intervalo de auto-scaling com Terraform, consulte Ajustar o intervalo de auto-scaling com use_quality_fields na documentação do provedor de Terraform.

Se você tiver alguma dúvida, entre em contato com o suporte.