Instalación de Totara
  • 26 Apr 2022
  • 7 Minutos para leer

Instalación de Totara


Elegir un entorno

La información sobre el entorno compatible siempre se puede encontrar en el código en el archivo readme.md. También se puede encontrar en la documentación de requisitos  del servidor delsistema.

Recomendamos encarecidamente que todos los sitios de producción sigan nuestros entornos recomendados cuando sea posible.

Los sitios de producción deben instalarse desde cero en lugar de clonarse desde una copia de seguridad de la base de datos de otro sitio.
Puede leer más en los documentos de nuestra póliza.

Preparación de su entorno

Sistema Operativo

Si tiene la intención de usar Totara en varios idiomas de usuario, debe asegurarse de que el servidor se haya configurado correctamente con las ubicaciones correctas. Esto es importante para garantizar que los datos de fechas, números y moneda se muestren correctamente para el idioma seleccionado por el usuario. Consulte la documentación del desarrollador para obtener más información sobre las ubicaciones del servidor.

Asegúrese de que su servidor haya sido asegurado adecuadamente para un entorno de producción. Consulte al proveedor de su sistema operativo para obtener información sobre cómo lograr esto de la mejor manera.

Base de datos

Totara admite varias bases de datos diferentes. Seleccionar una base de datos es un paso de vital importancia para configurar su instalación de Totara. No podemos decirle cuál elegir, ni cuál es mejor que el resto. Cómo pretende usar y escalar su base de datos, y su conocimiento de ella tendrá un mayor impacto que la mayoría de los otros factores.

Si no está seguro de cuál elegir, le recomendamos PostgreSQL, ya que ofrece un buen rendimiento listo para usar sin necesidad de ajustarlo.

MySQL

Si desea usar MySQL, le recomendamos que use MySQL 8 o superior, debido a su soporte mejorado para contenido multilingüe en Totara. 

Le recomendamos encarecidamente que utilice una recopilación sensible a mayúsculas y minúsculas y acentuadas (que MySQL no admite). También recomendamos un conjunto de caracteres compatible con 4 bytes (utf8mb4) para garantizar la compatibilidad total con caracteres como emojis.

MySQL debe estar usando el formato de archivo Barracuda. Para crear su base de datos:

CREATE DATABASE {dbname} DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs;

Por seguridad, le recomendamos que utilice un usuario de base de datos dedicado que solo tenga acceso a la base de datos de Totara.

MariaDB

No hay ninguna recopilación sensible al acento y sensible a mayúsculas y minúsculas disponible para MariaDB. Si es probable que esto sea un problema para usted, le recomendamos que considere MySQL 8 o superior.

MySQL debe estar usando el formato de archivo Barracuda. Para crear su base de datos:

CREATE DATABASE {dbname} DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

Por seguridad, le recomendamos que utilice un usuario de base de datos dedicado que solo tenga acceso a la base de datos de Totara.

PostgreSQL

Para crear su base de datos:

createdb -E utf8 {dbname}

Por seguridad, le recomendamos que utilice un usuario de base de datos dedicado que solo tenga acceso a la base de datos de Totara.

Si está ejecutando PostgreSQL 14 o superior, la enable_memoize configuración debe estar desactivada.

MSSQL

Si está instalando Totara como administrador de sistemas, el usuario de la base de datos debe tener permiso para modificar la configuración del servidor:

ALTER SETTINGS(SERVER)

La búsqueda de texto completo debe estar habilitada; consulte Búsqueda de texto completo en MSSQL Server [LINK]. 

Por seguridad, le recomendamos que utilice un usuario de base de datos dedicado que tenga acceso solo a la base de datos de Totara. Como alternativa, puede instalar Totara como usuario no administrador de sistemas utilizando el siguiente SQL:

-- First create a new user, change username and password to match your requirements

CREATE LOGIN testuser

    WITH PASSWORD = 'TestUser1';

GO

 

-- Now make sure this user can install the site, ALTER SETTINGS permissions is needed for this

USE master;

 

GRANT ALTER SETTINGS TO testuser;

 

-- For the database (substitute with the database name of your choice)

-- create a login for the user and make sure he has the permissions needed

USE totara_13;

 

CREATE USER testuser FOR LOGIN testuser;

 

-- Make sure the user can create tables, read and write data

ALTER ROLE db_ddladmin ADD MEMBER testuser;

ALTER ROLE db_datareader ADD MEMBER testuser;

ALTER ROLE db_datawriter ADD MEMBER testuser;

 

-- Create a custom role

CREATE ROLE db_totara;

 

-- This is needed to view any definition created by Totara

GRANT VIEW DEFINITION TO db_totara;

 

ALTER ROLE db_totara ADD MEMBER testuser;

 

GO

Después de instalar Totara, el siguiente SQL garantizará que Totara sea completamente utilizable sin privilegios de administrador de sistemas:

-- Take away the ALTER SETTINGS permission, it's not needed anymore

USE master;

 

REVOKE ALTER SETTINGS TO testuser;

 

USE totara_13;

 

-- Make sure the user role has access to Totara's custom stored procedures

GRANT EXECUTE ON dbo.GROUP_CONCAT_D TO db_totara;

GRANT EXECUTE ON dbo.GROUP_CONCAT_S TO db_totara;

GRANT EXECUTE ON dbo.GROUP_CONCAT_DS TO db_totara;

GRANT EXECUTE ON dbo.GROUP_CONCAT TO db_totara;

 

GO

Servidor web

Totara es una aplicación basada en la web y depende de un servidor web para operar. Totara es oficialmente compatible cuando se ejecuta a través de Apache, IIS y Nginx.

El código fuente de Totara contiene un directorio de servidor. El servidor web debe configurarse para servir a este directorio y a sus elementos secundarios únicamente.

La estructura de la base de código cambió entre Totara 12 y Totara 13. Es importante que su servidor web sirva únicamente al directorio del servidor. Es un problema de seguridad si su servidor web está configurado para servir al directorio de código fuente de nivel superior, ya que eso expone más información de la prevista.

Al configurar el servidor web, le recomendamos que lo endurezca siguiendo las mejores prácticas para el servidor web elegido. Los siguientes puntos pueden servir como guía para las mejores prácticas de Totara para los sitios de producción:

  • Deshabilitar listados de directorios
  • Desactivar el servicio de los siguientes directorios:
    • /servidor/**/pruebas/
    • /servidor/**/mod/
    • /servidor/**/yui/
    • /servidor/**/plantillas/
    • /servidor/**/clases/
  • Deshabilitar el servicio de los siguientes tipos de archivos:
    • /servidor/*/.txt
    • /servidor/*/.md
    • /servidor/*/.xml
    • Todos los archivos que comienzan con "."
  • Asegúrese de que los errores se escriban en una ubicación de archivo de registro conocida. Si experimenta algún problema y busca asistencia, a menudo le pedirán que verifique los registros de errores del servidor web.

Si está utilizando Apache + mod_php, CGI o PHP-FPM y tiene la intención de utilizar la aplicación Totara Mobile, deberá agregar adicionalmente la siguiente directiva a su entrada de VirtualHost para el sitio a fin de que Apache apruebe correctamente los encabezados de autenticación requeridos por la aplicación móvil:

SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
Si utiliza Apache + mod_php, CGI o PHP-FPM, le recomendamos que agregue las siguientes directivas a su entrada Apache VirtualHost para asegurarse de que estos encabezados se conserven:
SetEnvIf Content-Type "(.*)" HTTP_CONTENT_TYPE=$1
SetEnvIf Accept "(.*)" HTTP_ACCEPT=$1
La información sobre el entorno de PHP requerido se puede encontrar en la página de requisitos del sistema del servidor.

Directorio de datos

Totara requiere acceso a un directorio de datos en el que almacenar datos de usuarios, archivos de caché, archivos temporales, etc. El usuario del servidor web debe poder leer y escribir este directorio.

En un entorno de escala horizontal, todos los servidores web deben tener acceso al directorio de datos. Debe ser compartida por ellos.

Instalación de Totara

Obtener el código

El código Totara está disponible para los socios de Alliance y se puede descargar utilizando los comandos a continuación.

Para acceder al código, deberá agregar su clave pública ssh a nuestro servidor git. Si necesita ayuda con esto, presente un ticket en el servicio de asistencia.

Para el código principal de Totara:

git clone ssh://git@code.totaralms.com/totara-txp.git

Para el código de la aplicación Totara Mobile:

git clone ssh://git@code.totaralms.com/totara-mobile.git

Instalación de CLI

Recomendamos enfáticamente que la instalación y la actualización se completen a través de la interfaz de la línea de comandos.

Este comando debe ejecutarse como usuario web (en este caso www-data):

sudo -u www-data php server/admin/cli/install_database.php --agree-license --adminpass=mypassword123

Hay una serie de otros argumentos opcionales que se pueden proporcionar para minimizar la configuración posterior a la instalación:

--lang=CODE           Installation and default site language. Default is en.

--adminuser=USERNAME  Username for the admin account. Default is admin.

--adminemail=STRING   Email address for the totara admin account.

--fullname=STRING     Name of the site

--shortname=STRING    Name of the site

Una vez finalizada la instalación de la CLI, puede ir a la página de inicio del sitio e iniciar sesión con las credenciales de administrador para una configuración adicional.

Instalación web

La instalación web se puede realizar navegando hasta el wwwroot que se estableció en el archivo config.php y siguiendo las instrucciones en pantalla. 

Configuración esencial

A continuación se muestra un ejemplo de un archivo config.php mínimo que debe estar presente en la carpeta de nivel superior. Hay mucha configuración opcional que se puede agregar; consulte el archivo config.example.php en la carpeta de nivel superior.

<?php

$CFG = new stdClass();

$CFG->wwwroot = 'http://mytotara.com';

$CFG->dirroot = '/var/www/totara/htdocs/server';

$CFG->dataroot = '/var/sitedata/totara';

$CFG->directorypermissions = 00777; // try 02777 on a server in Safe Mode

 

$CFG->dbhost = 'localhost';

$CFG->dbtype = 'pgsql';

$CFG->dbuser = 'dbuser';

$CFG->dbpass = 'dbpass';

$CFG->dbname = 'totaradb';

 

$CFG->prefix = 'ttr_';

 

$CFG->forceflavour = 'learn_engage';

Las siguientes opciones están disponibles para la configuración de forceflavour, dependiendo de la combinación de productos que utilizará el sitio:

  • aprender
  • involucrarse
  • realizar
  • learn_perform
  • learn_engage
  • perform_engage
  • learn_perform_engage

Además, si desea usar sabores, puede encontrar más información sobre esto en nuestra guía para socios para usar sabores.

Próximos pasos

© Copyright 2022 Totara Learning Solutions. All rights reserved.


¿Te resultó útil este artículo?

First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.