MicroStrategy ONE

Errores de permiso

Esta sección proporciona información para la solución de problemas relacionados con errores de permisos en un entorno Linux.

Límite de valor "agradable" incorrecto

Para mejorar el rendimiento bajo cargas elevadas de CPU, Intelligence Server prioriza la ejecución de trabajos en los que el tiempo es crítico, como la ejecución del panel interactivo, sobre las solicitudes en segundo plano, como las descargas inteligentes. Para lograr tal priorización del trabajo mecanismo, los subprocesos que ejecutan trabajos interactivos pueden ocupar una mayor cantidad de tiempo de CPU. De manera equivalente, a los subprocesos para solicitudes en segundo plano se les asigna una porción de tiempo de CPU más pequeña.

En el sistema operativo Linux, el tamaño del fragmento de CPU de un subproceso está controlado por su nice valor, que tiene un relación inversa con el tiempo de CPU (y prioridad). Para ejecutar cada trabajo o solicitud entrante con la prioridad correcta, Intelligence Server selecciona uno o más subprocesos de un grupo, asigna dinámicamente los subprocesos con una prioridad correcta. nice valor para ejecutar el trabajo o solicitud y luego restablece el nice valor al valor predeterminado de 0, antes de devolver los hilos al grupo. Esta dinámica nice asignación de valor, especialmente para restablecer 0 después de aumentar el valor agradable (despriorización) de los subprocesos de las solicitudes en segundo plano, se requiere la configuración de un nivel de usuario límite para nice.

Para aliviar la complejidad de la implementación, el MicroStrategy El instalador configura automáticamente el nice valor, siempre y cuando fuera ejecutado por un root usuario. De lo contrario, si el instalador lo ejecuta un usuario noroot usuario, el nice El límite no se puede configurar y se muestran los siguientes mensajes.

  • El MicroStrategy El instalador mostrará cualquiera de los siguientes mensajes al final del proceso de instalación.

  • Se muestra un mensaje similar en la salida estándar cuando el instalador se ejecuta desde la línea de comandos. Por otro lado, si el instalador se ejecuta en modo silencioso, se agregan las siguientes entradas al archivo instalar.log archivo.

    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
  • A pesar del mensaje de error anterior, Intelligence Server aún se puede iniciar una vez completada la instalación. Para verificar lo incorrecto nice límites cuando Intelligence Server se está ejecutando, abra el DSSErrors.log archivo y busque las siguientes 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 solucionar el problema, debe configurar el máximo nice límite, que se puede comprobar utilizando el ulimit -e comando, hasta alcanzar el valor correcto de 20, o superior, se devuelve. Para configurar y comprobar el nice límite, consulte los siguientes pasos:

  1. Detenga Intelligence Server si se está ejecutando.
  2. Usar el privilegio de superusuario (por ejemplo, con sudo comando), cree un nuevo archivo de configuración. MicroStrategy recomienda que utilices el nombre mstr-priority.conf bajo la /etc/security/limits.d carpeta.
  3. Agregue las siguientes entradas al archivo de configuración:

    Copiar
    mstr  hard  nice  0
    mstr  soft  nice  0
  4. Guarde el archivo de configuración.
  5. Reinicie su sesión existente para aplicar los nuevos límites. Simplemente puede desconectarse y volver a conectarse a la nueva sesión cuando usa SSH. Al usar VNC, puede reiniciar el servicio, como usar un systemctl restart vncserver@:1.service comando y luego vuelva a conectarse a la sesión. En ambos casos, asegúrese mstr El usuario se utiliza para volver a conectarse.
  6. Verifique la configuración ejecutando ulimit -e y confirme que el valor devuelto es 20, o mas alto.
  7. Reinicie el Intelligence Server.
  8. Comprobar el DSSErrors.log para verificar que no haya ningún mensaje de error relacionado con el nice límite y la priorización de trabajos está habilitada.

Los ajustes descritos anteriormente modifican sólo el máximo nice valor para el mstr usuario y no debe afectar a otros usuarios. Debe tener en cuenta los siguientes dos escenarios especiales:

  • Debes reemplazar mstr con el nombre de usuario que ejecutará Intelligence Server en los pasos anteriores. Por defecto, el MicroStrategy El instalador crea un mstr usuario para este propósito, pero puede elegir otro usuario durante o después de la instalación.
  • Al ejecutar Intelligence Server a través de una sesión VNC que se inició usando systemd, es posible que el paso 6 no devuelva el valor correcto, 20, debido a esto problema conocido de Linux. Para solucionar este problema, agregue la siguiente configuración a /etc/systemd/user.conf y /etc/systemd/system.conf:

    Copiar
    DefaultLimitNICE=20

    Para aplicar la configuración, ejecute systemctl daemon-reexec y reinicie su sesión de VNC, como por ejemplo usando un systemctl restart vncserver@:1.service dominio. Alternativamente, puede reiniciar su máquina.

  • Su máquina Linux puede tener configuraciones de límite adicionales a nivel de usuario o de sistema que impiden ulimit -e de devolver el valor correcto de 20, o mas alto. En este caso, revise la configuración de límites disponible para su distribución de Linux específica.