Introduction
Este documento descreve como configurar o limite para fragmentação do banco de dados de Saldo (DB).
Prerequisites
Requirements
A Cisco recomenda que você tenha conhecimento destes tópicos:
- Linux
- Cisco Policy Suite (CPS)
- MongoDB
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software e hardware:
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Informações de Apoio
Dois padrões de aplicativos causam um aumento na fragmentação, no crescimento de documentos e na remoção de documentos. As duas operações são normais no nível MongoDB. A melhor maneira de desfragmentar é sincronizar novamente os dados entre os membros da réplica. No entanto, ainda há um alarme de fragmentação.
- Os valores de limite de porcentagem de fragmentação são configurados no arquivo /etc/collectd.d/dbMonitorList.cfg (presente em Máquinas virtuais do sessionmgr) para todos os bancos de dados. O valor de limite padrão para todos os bancos de dados é configurado como 40%. O valor limite de fragmentação padrão pode ser alterado conforme necessário. Para obter mais informações, consulte a seção Configurar porcentagem do limite de fragmentação do banco de dados personalizado no Guia de operações do CPS.
- Além disso, verifique a porcentagem de fragmentação atual dos membros primários de session_cache, sk_cache, diâmetro e SPR (Subscriber Profile Repository) Banco de dados com o comando diagnostics.sh —get_frag_status.
- O diagnostics.sh —get_frag_status suporta cálculo de porcentagem de fragmentação de session_cache, sk_cache, diâmetro e bancos de dados SPR.
- O diagnostics.sh — get_frag_status, como diagnostics.sh — get_session_shard_health, é suportado pelo usuário raiz somente para configurações de alta disponibilidade (HA) e redundante geoquímico (GR) com vários clusters.
Etapas
Pré-verificação
Note: Todos os comandos são executados do cluman.
Obtenha o limite atual de Fragmentação de Banco de Dados de Saldo, que é usado na etapa de verificação.
# for host in $(hosts-all.sh | grep 'sessionmgr'); do echo check in progress on $host; ssh $host "cat /etc/collectd.d/dbMonitorList.cfg | grep balance"; done
Aplicar a alteração
Adicione esta entrada em /var/qps/config/deploy/csv/Configuration.csv com o valor limite (altere 50 para o valor necessário, por exemplo, 60 no nível de fragmentação normal).
balance_mgmt,50,
echo -e "\nbalance_mgmt,50," >> /var/qps/config/deploy/csv/Configuration.csv
[root@cps194cluman ]# echo -e "\nbalance_mgmt,50," >> /var/qps/config/deploy/csv/Configuration.csv
[root@cps194cluman ]# grep balance_mgmt Configuration.csv
balance_mgmt,50,
Importar as alterações do csv
/var/qps/install/current/scripts/import/import_deploy.sh
[root@cps194cluman csv]# /var/qps/install/current/scripts/import/import_deploy.sh
Filenames to be processed are listed here.
AdditionalHosts.csv Configuration.csv DBConfigServer.csv Definitions.csv Hosts.csv ReplicationSets.csv SessionCache.csv VLANs.csv VMSpecification.csv SecureConfig.csv VipProxyConfiguration.csv DSCPConfig.csv CriticalFiles.csv
Warning: The first build is not processed. We process only the list of files mentioned.
Warning: old files are not processed. We process only list of files mentioned.
The CSV files in /var/qps/config/deploy/csv are converted to json files in /var/qps/config/deploy/json..
build the hosts file to /var/www/html/hosts...
build the /etc/hosts file from the json configuation... /etc/hosts is backed to /etc/hosts.back
Rotate backup '/etc/hosts.back' to '/etc/hosts.back.0'
Backed up '/etc/hosts' to '/etc/hosts.back'
‘/etc/hosts’ -> ‘/etc/hosts.back’
Redis by default disabled -DenableQueueSystem=false in /etc/broadhop/qns.conf
Removing feature configs moved to core
Removing ws feature from pb and pcrf feature file
Building /etc/broadhop...
Copying to /var/qps/images/etc.tar.gz...
Creating MD5 Checksum...
Generating /etc/broadhop/servers.all
Rebuilding facts for: 'installer' (aka 'installer')
Creating md5sum for hosts file to validate later
Rebuilding facts for: 'casant01-ps01' (aka 'qns01')
Rebuilding facts for: 'casant01-pd02' (aka 'lb02')
Rebuilding facts for: 'casant01-sessionmgr01' (aka 'sessionmgr01')
Rebuilding facts for: 'casant01-sessionmgr02' (aka 'sessionmgr02')
Rebuilding facts for: 'casant01-oam01' (aka 'pcrfclient01')
Rebuilding facts for: 'casant01-ps02' (aka 'qns02')
Rebuilding facts for: 'casant01-pd01' (aka 'lb01')
Rebuilding facts for: 'casant01-oam02' (aka 'pcrfclient02')
Copying /etc/puppet to /var/qps/images/puppet.tar.gz...
Creating MD5 Checksum...
[root@cps194cluman csv]#
Crie imagens atualizadas da máquina virtual
# /var/qps/bin/build/build_all.sh
Atualizar o limite em máquinas virtuais do sessionmgr
# /var/qps/install/current/scripts/upgrade/reinit.sh
Verificação
Verifique se o limite foi alterado para a fragmentação de BD de Saldo para o valor configurado.
# for host in $(hosts-all.sh | grep 'sessionmgr'); do echo check in progress on $host; ssh $host "cat /etc/collectd.d/dbMonitorList.cfg | grep balance"; done
Verifique se o script de geração de alarme contém o limite atualizado.
# for host in $(hosts-all.sh | grep 'sessionmgr'); do echo checking in $host; ssh $host "cat /var/log/broadhop//scripts/gen-frag-trap.log | grep DEBUG | tail -5"; done
Note: Teste isso em um laboratório antes de tentar a configuração da produção.