Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
produccion [2018/08/28 14:09] – creado lmachucaproduccion [2020/06/02 22:51] (actual) lmachuca
Línea 1: Línea 1:
 +<note info>Para información del entorno del Servidor de Producción de Helpcom ver [[:Producción:]].
 +</note>
 +
 ======Producción (dev)====== ======Producción (dev)======
  
-Definición práctica de los requisitos de **Producción** para un servidor Helpcom. Este documento está orientado más que nada a desarrollar en plataformas Linux.+Definición práctica de los requisitos de **Producción** para un servidor Helpcom. Este documento está orientado más que nada a desarrollar en plataformas Linux y detalla aquellos aprovisionamientos de software **soportados oficialmente** por el Backend de Helpcom ([[user>lmachuca]]). Ver también [[Obtener Linux]] para ver las distribuciones de Linux soportadas.
  
 =====Servidores BDD===== =====Servidores BDD=====
  
-Para plataformas web basadas en PHP, las versiones de Producción (**oficialmente** soportadas) de motores de bases de datos en Debian son las siguientes:+Para plataformas de base de datos, las versiones de Producción (**oficialmente soportadas**) de motores de bases de datos en Debian son las siguientes:
  
 ^ Release    ^ MySQL  ^ MariaDB  ^ PostgreSQL   ^ SQLite   ^ MongoDB  ^ NoDB    |  ^ Release    ^ MySQL  ^ MariaDB  ^ PostgreSQL   ^ SQLite   ^ MongoDB  ^ NoDB    | 
-| Debian 7   | 5.5    | -- | | 2.8 | -- | +| Debian 7 (EOL 2016)  | 5.5    | -- | 9.4 | 2.8 | -- | 
-| Debian 8   | 5.5    | -- | | 3.14 | 2.4  | +| Debian 8 (EOL 2018)  | 5.5    | -- | 9.6 | 3.14 | 2.4  | 
-Debian 9 (Stable)  | --    | 10.1  | | 3.16 | 3.4 | +Debian 9 (Stable 2018-2019)  | --  | 10.1  | 9.6 | 3.16 | 3.4 | 
-Debian 10  | --     | 10.2  | | 3.24 | 3.4 | +Debian 10 (Stable 2020-2021) | --     | 10.2  | 10+/193 | 3.24 | 3.4 | 
-| Debian Experimental  |  5.7  | 10.3  |  | 3.24  | 3.4 | +| Debian Experimental  |  5.7  | 10.3  | 10+/193 | 3.24  | 3.4 | 
-| Ubuntu 14  | 5.5    | -- | | 3.8 | 2.4 | +| Ubuntu 14  | 5.5    | -- | 9.3 | 3.8 | 2.4 | 
-| Ubuntu 16  | 5.7    | 10.1 | | 3.11 | 2.6 | +| Ubuntu 16 (LTS)  | 5.7    | 10.1 | 9.5 | 3.11 | 2.6 | 
-^ Ubuntu 18 (LTS)  | 5.7  | 10.2  | | 3.22 | 3.6  |+^ Ubuntu 18 (LTS)  | 5.7  | 10.2  | 10+/190 | 3.22 | 3.6  
 +| Ubuntu 20 (LTS) | ???    | ??? | ??? | ??? | ??? |
  
  
 (Es posible instalar otras versiones desde repositorios externos, siempre y cuando quedemos exento del mantenimiento al no ser oficiales. -- [[user>lmachuca]] ) (Es posible instalar otras versiones desde repositorios externos, siempre y cuando quedemos exento del mantenimiento al no ser oficiales. -- [[user>lmachuca]] )
  
-Para productos que usan motor de **Crux**, entre otros, está en Helpcom solamente probado **hasta MySQL Server 5.5**. +MySQL < 5.5 no está soportado en ninguna rama oficial y de momento sólo es posible su instalación por medio de un [[https://wiki.ubuntu.com/DebootstrapChroot|debootstrap]]. 
 + 
 +Para productos que usan motor de **Crux**, entre otros, está en Helpcom solamente probado
 + 
 +  * Crux < 4.0 **hasta MySQL Server 5.5**
 +  * Crux 4.0 hasta 4.0.6: MySQL Server 5.5 y/o MariaDB >= 10.2. 
 +  * Crux 4.0.7 en adelante: MariaDB >= 10.2 y //potencialmente// MySQL 5.7 a < 8.0.
  
 Para Draco, las versiones de Debian y Ubuntu en Producción ya usan la API de SQLite más actualizada (>= 3.4). Para Draco, las versiones de Debian y Ubuntu en Producción ya usan la API de SQLite más actualizada (>= 3.4).
  
-Para servidores cliente de F.E., el requisito es más relajado ya que se han probado correctamente con MySQL 5.7.+Para equipos cliente de F.E., el requisito es más relajado ya que se han probado correctamente con MySQL 5.7; el único detalle es que el proceso de instalación es más largo.
  
-Este requisito implica que los servidores **Debian** para Linux Crux deben ser los siguientes:+Para el proyecto de **Orión**, el soporte de PostgreSQL soportado es 10.x, con planes de mover a 11.x.
  
-  * Debian 7 (MySQL 5.5) +Este requisito implica que los servidores **Debian** para Linux Crux deben ser los siguientes: Debian 8.x (:!: evaluar)Debian 9.x quitando MariaDB e instalando MySQL 5.7; Ubuntu 14Ubuntu 16 fijando la versión de MySQL.
-  * Debian 8 (MySQL 5.5) +
-  * Debian 9 (Stable) **sin** MariaDB y **con** repositorios de archivo instalados (MySQL-APT 5.5). +
-  * Ubuntu 14 (MySQL 5.5) +
-  * Ubuntu 16 **con** repositorios de archivo instalados (MySQL-APT 5.5).+
  
 <note info>**Ver** https://packages.debian.org/search?searchon=names&keywords=mysql-server para detalles del soporte. El motor de BDD por defecto para Debian 9 y superior es MariaDB >= 10.1.</note> <note info>**Ver** https://packages.debian.org/search?searchon=names&keywords=mysql-server para detalles del soporte. El motor de BDD por defecto para Debian 9 y superior es MariaDB >= 10.1.</note>
  
-<note warning> **Tarea para desarrollo**: programación y QA para habilitar Crux para **MySQL Server 5.7**. Tomar en consideración que cambiar el motor de BDD a una versión más actualizada (o a un motor diferente) implica también cambiar el conector ODBC y/o integrar otro modelo de conexión al software (por ejemplo, puente SSH).+<note warning> **Tarea**: programación (Desarrollo) y QA (Técnicos) para habilitar los siguientes productos para **MySQL Server >= 5.7 y/o MariaDB >= 10.1**. Tomar en consideración que cambiar el motor de BDD a una versión más actualizada (o a un motor diferente) implica también cambiar el conector ODBC y/o integrar otro modelo de conexión al software (por ejemplo, puente SSH). 
 + 
 +  * Crux 
 +  * Serviteca + Antlia 
 +  * Alerce (Trébol) 
 +  * Remuneraciones 
 +  * Contabilidad (en progreso - [[user>lmachuca]]) 
 </note> </note>
  
Línea 42: Línea 55:
  
 El servidor web por defecto para Debian es **Apache**. Alternativas son NGinx y Lighttpd. Los servidores centrales de **Helpcom** corren NGinx excepto donde se note lo contrario. El servidor web por defecto para Debian es **Apache**. Alternativas son NGinx y Lighttpd. Los servidores centrales de **Helpcom** corren NGinx excepto donde se note lo contrario.
 +
 +=====Programación=====
 +
 +Esta sección describe la disponibilidad de los lenguajes y motores oficialmente soportados por el Backend de Helpcom.
 +
 +====PHP====
 +
 +PHP < 7.0 se considera EOL y no tiene soporte oficial; PHP 5.6 tiene soporte comunitario hasta Septiembre de 2019 pero se considera también descontinuado. Sólo se ofrece soporte en hosting que ya tiene PHP 5.6 operativo (por ejemplo DreamHost).
  
 Para plataformas web basadas en PHP, las versiones de Producción de PHP en Debian son las siguientes: Para plataformas web basadas en PHP, las versiones de Producción de PHP en Debian son las siguientes:
  
-  * Debian 8: PHP 5.6.36 +  * Debian 9 (Stable): PHP 7.0.49 (Enero 2019) 
-  * Debian 9: PHP 7.0.49 +  * Debian 10: PHP 7.4.0 (Enero 2020) 
-  * Debian 10: PHP 7.1.30 +  * Debian **Unstable / Experimental**: PHP 7.4.0 
-  * :!: Debian **Unstable / Experimental**: PHP 7.2.62 +  * Ubuntu 16 (LTS): PHP 7.0.30
-  * Ubuntu 14: PHP 5.5.9 +  * Ubuntu 18 (LTS): PHP 7.2.60
-  * Ubuntu 16: PHP 7.0.30+  * Ubuntu 20 (LTS): PHP 7.3.0.
-  * Ubuntu 18 (LTS): PHP 7.2.4.+
  
 <note info>**Ver** https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=php para detalles del soporte. El backend de PHP por defecto para Debian Stable es PHP 7.0.</note> <note info>**Ver** https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=php para detalles del soporte. El backend de PHP por defecto para Debian Stable es PHP 7.0.</note>
  
-Para plataformas web basadas en Pythonlas versiones de Producción de Python en Debian son las siguientes:+El gestor de paquetes para PHP soportado por Debian es ''composer'' desde Debian 9 en adelante. Debian 9 (Stable) soporta Composer 1.2; Debian 10 soporta Composer 1.8. :!: **Nota**: por razones de seguridadinstalar Composer **como global** o con el usuario ''root'' por su página web oficial no será soportado por el Backend de Helpcom; sólo se soporta el instalador usado de manera local **por el usuario del proyecto** como se describe en https://getcomposer.org/doc/00-intro.md#locally . El nombre de ejecutable es ''composer-local''.
  
-(PENDIENTE)+====Python====
  
-=====Java===== +Python 2 se encuentra fuera de su periodo de soporte y se mantiene sólo por proyectos comunitariosA menos que sea estrictamente necesario por toma de requerimientoslos desarrollos en Python debieran empezar en Python ≥ 3.4.
-El motor de Java por defecto para plataformas Linux es **OpenJDK 9** / Icedtea 1.9, en general compatible con Java 9Los motores OpenJDK 8 y OpenJDK 10 también están disponibles dependiendo de la versión de Linux.+
  
-Debido a prohibiciones en la licencia**Oracle Java** no está disponible dentro de la paquetería para Debian o Ubuntu excepto por un repositorio externo. Las versiones empaquetadas son usualmente ''oracle-jdk-9u20'' en adelante.+Para plataformas basadas en Pythonlas versiones de Producción de Python en Debian son 2.7 y 3.4 (Debian 7, Debian 8) a 3.6 (Debian 8, Debian 9).
  
-<note>Por requisitos externos, la plataforma de **Facturación Electrónica** corre un entorno Oracle Java 7u21 (desahuciada). Es la única plataforma Helpcom a la que se debe permitir correr una versión de Java desahuciada hasta que se confirme la factibilidad de actualizar. Ver [[user>mrodriguez]] - [[user>ytorres]].+Los nombres de paquete a instalar en Debian son ''python-2.7-dev'' y ''python-3.4-dev''. [[f1:Python|Ver instalación y notas]]. 
 + 
 +Los paquetes locales de Python se mantienen con el gestor de paquetes ''pip'', y los paquetes se instalan **como el usuario del proyecto** vía el comando ''pip install --user'' (o ''pip3 install --user'' para Python 3). :!: Nota: Por razones de seguridad el Backend de Helpcom no dará soporte a paquetes instalados de manera global o con ''pip'' desde ''root''. [[f1:Python|Ver notas]]. 
 + 
 +El IDE recomendado en Debian para trabajar con Python es DrPython. 
 + 
 +====Java==== 
 + 
 +El motor de Java por defecto para plataformas Linux es **OpenJDK 9** / Icedtea 1.9, en general compatible con el //spec// de Java 9. Los motores OpenJDK 8 y OpenJDK 10 también están disponibles dependiendo de la versión de Linux.  
 + 
 +:!: Debido a prohibiciones en la licencia, **Oracle Java** no está disponible dentro de la paquetería para Debian o Ubuntu excepto por un repositorio externo. Las versiones empaquetadas son usualmente ''oracle-jdk-9u20'' en adelante. 
 + 
 +<note>Por requisitos externos, la plataforma de **Servidores de Facturación Electrónica** corre un entorno Oracle Java 7u21 (desahuciada). Es la única plataforma Helpcom a la que se debe permitir correr una versión de Java desahuciada hasta que se confirme la factibilidad de actualizar. Ver [[user>mrodriguez]] - [[user>ytorres]].
 </note> </note>
  
 Los siguientes son los JDK disponibles para Producción en las versiones de Debian / Ubuntu: Los siguientes son los JDK disponibles para Producción en las versiones de Debian / Ubuntu:
  
-  * Debian 7: OpenJDK 7u171 (descontinnuado). +  * Debian 7: OpenJDK 7u171 (descontinuado). 
-  * Debian 8: OpenJDK 8u181 (descontinuado), 8u171+  * Debian 8: OpenJDK 8u212 (Marzo 2019). 
-  * Debian 9 (Stable): OpenJDK 8u181, 9u181. +  * Debian 9 (Stable): OpenJDK 8u212, 9u181 (Marzo 2019)
-  * Debian 10 / Experimental: OpenJDK 8u181, 10u12.+  * Debian 10 / Experimental: OpenJDK 8u212<del>10u12</del> 11u2 (Marzo 2019).
   * Ubuntu 16: OpenJDK 8u162, 9u114.   * Ubuntu 16: OpenJDK 8u162, 9u114.
-  * Ubuntu 18 (LTS): OpenJDK 8u181, OpenJDK11u8.+  * Ubuntu 18 (LTS): OpenJDK 8u196, OpenJDK11u8
 + 
 +El nombre de paquete a instalar en Debian es ''openjdk-9-jdk'' en adelante. [[f1:Java|Ver notas de instalación]]. 
 + 
 +El entorno de desarrollo recomendado para trabajar en Debian es **Netbeans**. Otros entornos soportados en Debian son Eclipse y Codelite.
  
   * Seguir el estado de la paquetería en [[https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=openjdk|Debian]], [[https://packages.ubuntu.com/search?suite=all&section=all&arch=any&keywords=openjdk&searchon=names|Ubuntu]].   * Seguir el estado de la paquetería en [[https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=openjdk|Debian]], [[https://packages.ubuntu.com/search?suite=all&section=all&arch=any&keywords=openjdk&searchon=names|Ubuntu]].
 +
 +  * [[f1:Java|Java en Debian]].
 +
 +====Lua====
 +
 +[[wp>Lua]] es un lenguaje de programación orientado a tablas. La versión soportada en Debian **Stable** es 5.1 y en Debian **Testing** de 5.2 en adelante.
 +
 +El nombre de paquete a instalar en Debian es ''lua5.1'' en adelante.
 +
 +====C/C++====
 +
 +Para desarrollar en C/C++ en Debian existen dos ramas de desarrollo de librerías principales: ''libstdc'', que usa el toolkit de [[wp>GCC]], y ''libc++'' que usa el toolkit de [[wp>Clang]]. Cuál toolkit se va a usar depende del proyecto. El compilador por defecto en Debian **Stable** es GCC 6.x.
 +
 +El nombre de paquete a instalar en Debian es ''gcc'' para GCC, y ''clang'' + ''libc++'' para Clang.
 +
 +
  
 {{tag>Producción Desarrollo}} {{tag>Producción Desarrollo}}
  
produccion.1535465340.txt.gz · Última modificación: 2018/08/28 14:09 por lmachuca
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0