MicroStrategy ONE

Erros de permissão

Esta seção fornece informações de solução de problemas sobre erros de permissão em um ambiente Linux.

Limite de valor "legal" incorreto

Para melhorar o desempenho sob altas cargas de CPU, o Intelligence Server prioriza a execução de trabalhos de tempo crítico, como a execução de painéis interativos, em vez de solicitações em segundo plano, como Smart Downloads. Para conseguir tal priorização de trabalho mecanismo, os threads que executam trabalhos interativos podem ocupar uma parte maior do tempo de CPU. De forma equivalente, os threads para solicitações em segundo plano são atribuídos a um período menor de tempo de CPU.

No sistema operacional Linux, o tamanho do bloco de CPU de um thread é controlado por seu nice valor, que tem relação inversa ao tempo de CPU (e prioridade). Para executar cada tarefa ou solicitação recebida com a prioridade correta, o Intelligence Server seleciona um ou mais threads de um pool, atribui dinamicamente aos threads uma prioridade correta. nice valor para executar o trabalho ou solicitação e, em seguida, redefine o nice valor para o valor padrão de 0, antes de retornar os threads de volta ao pool. Esta dinâmica nice atribuição de valor, especialmente para redefinir para 0 após aumentar o valor agradável (despriorização) dos threads das solicitações em segundo plano, requer a configuração de um nível de usuário limite para nice.

Para facilitar a complexidade da implantação, o MicroStrategy instalador configura automaticamente o nice valor, desde que tenha sido executado por um root do utilizador. Caso contrário, se o instalador for executado por um usuário nãoroot usuário, o nice limite não pode ser configurado e as seguintes mensagens são exibidas.

  • O MicroStrategy O instalador exibirá qualquer uma das seguintes mensagens abaixo no final do processo de instalação.

  • Uma mensagem semelhante é exibida na saída padrão quando o instalador é executado na linha de comando. Por outro lado, se o instalador for executado no modo silencioso, as seguintes entradas serão adicionadas ao arquivo instalar.log arquivo.

    Copiar
    3 Jun 2020, 11:35:27 AM:SEVERE: Failed to set MicroStrategy Intelligence priority process settings 
    3 Jun 2020, 11:35:27 AM:SEVERE: Priority process settings for MicroStrategy Intelligence doesn't meet the requirements
    3 Jun 2020, 11:35:27 AM:SEVERE: Root privileges are required to configure the nice limit to 0 or lower
  • Apesar da mensagem de erro acima, o Intelligence Server ainda pode ser iniciado após a conclusão da instalação. Para verificar o incorreto nice limites quando o Intelligence Server estiver em execução, abra o DSSErrors.log arquivo e procure pelas seguintes entradas:

    Copiar
      ... [Kernel][Error] ... The maximum scheduling priority ("nice") returned by "ulimit - e" has a value of %1. It does not satisfy the job prioritization feature's requirement that expects a value of 20 or higher. Please refer to the man page of "ulimit".
    Copiar
     ... [Kernel][Info] ... The job prioritization feature is disabled.

Para corrigir o problema, você deve configurar o máximo nice limite, que pode ser verificado usando o ulimit -e comando, até que o valor correto de 20, ou superior, é retornado. Para configurar e verificar o nice limite, consulte as seguintes etapas:

  1. Pare o Intelligence Server se ele estiver em execução.
  2. Usando o privilégio de superusuário (por exemplo, com sudo comando), crie um novo arquivo de configuração. MicroStrategy recomenda que você use o nome mstr-priority.conf debaixo de /etc/security/limits.d pasta.
  3. Adicione as seguintes entradas ao arquivo de configuração:

    Copiar
    mstr  hard  nice  0
    mstr  soft  nice  0
  4. Salve o arquivo de configuração.
  5. Reinicie sua sessão existente para aplicar os novos limites. Você pode simplesmente desconectar-se e reconectar-se à nova sessão ao usar SSH. Ao usar o VNC, você pode reiniciar o serviço, como usar um systemctl restart vncserver@:1.service comando e reconecte-se à sessão. Em ambos os casos, certifique-se mstr o usuário é usado para reconectar.
  6. Verifique a configuração executando ulimit -e e confirme se o valor retornado é 20, ou mais alto.
  7. Reinicie o Intelligence Server.
  8. Verifica a DSSErrors.log para verificar se não há nenhuma mensagem de erro referente ao nice limite e a priorização do trabalho está habilitada.

As configurações descritas acima modificam apenas o máximo nice valor para o mstr usuário e não deve afetar outros usuários. Você deve estar ciente dos dois cenários especiais a seguir:

  • Você deve substituir mstr pelo nome de usuário que executará o Intelligence Server nas etapas acima. Por padrão, o MicroStrategy instalador cria um mstr usuário para esta finalidade, mas você pode escolher outro usuário durante ou após a instalação.
  • Ao executar o Intelligence Server por meio de uma sessão VNC iniciada usando systemd, a etapa 6 pode não retornar o valor correto, 20, devido a isso problema conhecido do Linux. Para resolver esse problema, adicione a seguinte configuração a /etc/systemd/user.conf e /etc/systemd/system.conf:

    Copiar
    DefaultLimitNICE=20

    Para aplicar a configuração, execute systemctl daemon-reexec e reinicie sua sessão VNC, como usando um systemctl restart vncserver@:1.service comando. Alternativamente, você pode reiniciar sua máquina.

  • Sua máquina Linux pode ter configurações adicionais de limite no nível do usuário ou do sistema que impedem ulimit -e de retornar o valor correto de 20, ou mais alto. Nesse caso, revise as configurações de limite disponíveis para sua distribuição Linux específica.