29 Módulos do Ceph Manager #
A arquitetura do Ceph Manager (consulte o Seção 1.2.3, “Nós e daemons do Ceph” para ver uma breve introdução) permite estender a funcionalidade dele por meio de módulos, como “dashboard” (consulte o Parte I, “Ceph Dashboard”), “prometheus” (consulte o Capítulo 16, Monitoramento e alerta) ou “balancer”.
Para listar todos os módulos disponíveis, execute:
cephuser@adm > ceph mgr module ls
{
        "enabled_modules": [
                "restful",
                "status"
        ],
        "disabled_modules": [
                "dashboard"
        ]
}Para habilitar ou desabilitar um módulo específico, execute:
cephuser@adm > ceph mgr module enable MODULE-NAMEPor exemplo:
cephuser@adm > ceph mgr module disable dashboardPara listar os serviços que os módulos habilitados oferecem, execute:
cephuser@adm > ceph mgr services
{
        "dashboard": "http://myserver.com:7789/",
        "restful": "https://myserver.com:8789/"
}29.1 Balanceador #
   O módulo balanceador otimiza a distribuição do grupo de posicionamento (PG, placement group) entre os OSDs para uma implantação mais equilibrada. Embora o módulo esteja ativado por padrão, ele está inativo. Ele suporta estes dois modos: crush-compat e upmap.
  
Para ver o status e as informações de configuração atuais do balanceador, execute:
cephuser@adm > ceph balancer status29.1.1 O modo “crush-compat” #
    No modo “crush-compat”, o balanceador ajusta os conjuntos de reweight dos OSDs para obter uma melhor distribuição dos dados. Ele move os PGs entre os OSDs, causando temporariamente um estado de cluster HEALTH_WARN resultante dos PGs deslocados.
   
Embora o “crush-compat” seja o modo padrão, recomendamos ativá-lo explicitamente:
cephuser@adm > ceph balancer mode crush-compat29.1.2 Planejando e executando o balanceamento de dados #
Usando o módulo balanceador, você pode criar um plano para balanceamento de dados. Em seguida, você pode executar o plano manualmente ou permitir que o balanceador equilibre os PGs continuamente.
A decisão de executar o balanceador no modo manual ou automático depende de vários fatores, como desequilíbrio dos dados atuais, tamanho do cluster, contagem de PGs ou atividade de E/S. Recomendamos criar um plano inicial e executá-lo durante um momento de carga baixa de E/S no cluster. A razão para isso é que o desequilíbrio inicial provavelmente será considerável, e é uma boa prática manter um baixo impacto nos clientes. Após uma execução manual inicial, considere ativar o modo automático e monitorar o tráfego de redistribuição sob carga normal de E/S. As melhorias na distribuição de PGs precisam ser ponderadas em relação ao tráfego de redistribuição causado pelo balanceador.
Durante o processo de balanceamento, o módulo balanceador limita os movimentos de PG para que apenas uma fração configurável de PGs seja movida. O padrão é 5%, e você pode ajustar a fração para 9%, por exemplo, executando o seguinte comando:
cephuser@adm > ceph config set mgr target_max_misplaced_ratio .09Para criar e executar um plano de balanceamento, siga estas etapas:
- Confira a pontuação atual do cluster: - cephuser@adm >ceph balancer eval
- Crie um plano. Por exemplo, "great_plan": - cephuser@adm >ceph balancer optimize great_plan
- Veja que mudanças o “great_plan” fará: - cephuser@adm >ceph balancer show great_plan
- Confira a possível pontuação do cluster se você decidir aplicar o “great_plan”: - cephuser@adm >ceph balancer eval great_plan
- Execute o “great_plan” apenas uma vez: - cephuser@adm >ceph balancer execute great_plan
- Observe o balanceamento do cluster com o comando - ceph -s. Se você estiver satisfeito com o resultado, ative o balanceamento automático:- cephuser@adm >ceph balancer on- Posteriormente, se você decidir desativar o balanceamento automático, execute: - cephuser@adm >ceph balancer off
Você pode ativar o balanceamento automático sem executar um plano inicial. Neste caso, espere uma redistribuição possivelmente longa dos grupos de posicionamento.
29.2 Habilitando o módulo de telemetria #
O plug-in de telemetria envia os dados anônimos do projeto do Ceph sobre o cluster no qual o plug-in está sendo executado.
Esse componente (aceitação) contém contadores e estatísticas sobre como o cluster foi implantado, a versão do Ceph, a distribuição dos hosts e outros parâmetros que ajudam o projeto a obter uma melhor compreensão da forma como o Ceph é usado. Ele não contém dados confidenciais, como nomes de pool, nomes de objeto, conteúdo de objeto ou nomes de host.
O objetivo do módulo de telemetria é fornecer um loop de feedback automatizado para os desenvolvedores para ajudar a quantificar as taxas de adoção, o monitoramento ou apontar elementos que precisam ser mais bem explicados ou validados durante a configuração para evitar resultados indesejáveis.
O módulo de telemetria exige que os nós do Ceph Manager consigam transmitir dados por HTTPS para os servidores de upstream. Verifique se os firewalls corporativos permitem essa ação.
- Para habilitar o módulo de telemetria: - cephuser@adm >ceph mgr module enable telemetryNota- Esse comando apenas permite que você veja seus dados localmente. Esse comando não compartilha seus dados com a comunidade do Ceph. 
- Para permitir que o módulo de telemetria comece a compartilhar dados: - cephuser@adm >ceph telemetry on
- Para desabilitar o compartilhamento de dados de telemetria: - cephuser@adm >ceph telemetry off
- Para gerar um relatório JSON que pode ser impresso: - cephuser@adm >ceph telemetry show
- Para adicionar um contato e uma descrição ao relatório: - cephuser@adm >ceph config set mgr mgr/telemetry/contact John Doe john.doe@example.com- cephuser@adm >ceph config set mgr mgr/telemetry/description 'My first Ceph cluster'
- Por padrão, o módulo compila e envia um novo relatório a cada 24 horas. Para ajustar esse intervalo: - cephuser@adm >ceph config set mgr mgr/telemetry/interval HOURS