Tabla de contenidos
- ¿Que es MxSIG?
- Requerimientos
- Instalación
- Consideraciones
- Cambios importantes en MXSIG 2.1
- Modulos de software libre que utiliza
- Servicios estandarizados que provee
- Funcionalidades
- Ventajas
- Licencias
¿Que es MxSIG?
Plataforma de código abierto para la web desarrollada para implementar soluciones geomáticas que facilitan el uso, integración, interpretación, publicación y análisis de la información geográfica y estadística. Está desarrollada utilizando módulos robustos de software de código libre.
Requerimientos
Usando como base una tecnología que segrega los procesos (Docker), MxSIG se puede configurar de diferentes formas, y plataformas, de modo que pueden ejecutarse de manera independiente a través de contenedores que ofrecen modelos de implementación basado en Imágenes.
Se requiere instalar, cumplir las siguientes requerimientos será suficiente.
| Hardware | Recomendado |
|---|---|
| Memoria RAM | 4 GB |
| Memoria SWAP | 2 GB |
| Disco duro | 30 GB |
| Procesador | Quad core |
Estos son requerimientos básicos para la instalación de MxSIG, si en lo particular el usuario requiere más recursos son a su propia consideración.
Instalación
MxSIG se puede configurar de diferentes formas y en diferentes plataformas.
1.- La primera opción es ejecutar el script mxsig-started.sh o en Windows ejecutar el archivo mxsig-started.bat los cuales ya tiene las rutas de instalación preestablecidas.
Nota.- Si se va a utilizar esta forma de instalación es importante mencionar que el script usa una utilería llamada unzip que en la mayoría de distribuciones Linux suele estar preinstalada, en caso contrario basta con instalarlo usando el gestor de paquetes correspondiente a tu distribución. Para Windows se puede instalar la versión de línea de comandos de unzip o usar una herramienta gráfica que soporte archivos ZIP, como WinRAR, 7-Zip, o PeaZip
Este archivo en sistemas Linux o Mac, debe de tener permisos de ejecución.- chmod +x mxsig-started.sh
2.- La segunda opción permite modificar las rutas y establecer el lugar donde se instalaran los paquetes del proyecto mediante el uso de variables de ambiente .env y personalizar el volumen donde se crearán y con el comando docker compose up -d --build para esto es necesario realizar la descarga de los recursos de manera manual y colocarlos en la ruta requerida
- Archivos para mapserver
- Archivos para tomcat (solr-config)
- War de MdmServices y subir mediante administrador de tomcat (se deja para cuestiones de respaldo no se recomienda seguir utilizando)
- Jar de MdmServices
- Archivos shapes
Variables de ambiente
MxSIG necesita la configuración de variables de ambiente para que este funcione correctamente en un archivo .env, y dependiendo de su sistema y ambiente es la configuración de cada una. A continuación, se muestra un ejemplo y la referencia a ellas.
| Variable | Descripción |
|---|---|
| DIR_MXSIG_DATA | Ubicación de cliente de MxSIG para contenedor de apache, cliente ubicado en la url de git mdm-client |
| DIR_MXSIG_INDICES_SOLR | Ruta de archivos de configuración para contenedor de tomcat del war de mdmSearchEngine |
| DIR_MXSIG_DATA_MAP_LOGS | Ruta donde se guardaran los logs relacionados con el contenedor de mapserver |
| DIR_MXSIG_DATA_MAPS | Ruta de maps para el contenedor de mapserver |
Ejemplo archivo .env
Windows
DIR_MXSIG_DATA=C:\mxsig_data\mxsig-client
DIR_MXSIG_DATA_MAP_LOGS=C:\mxsig_data\logs\maps
DIR_MXSIG_DATA_MAPS=C:\mxsig_data\mxsig-servicios\mapserver\map
DIR_MXSIG_INDICES_SOLR=C:\mxsig_data\mxsig-servicios\tomcat\solr-config
Linux
DIR_MXSIG_DATA=/usr/local/mxsig_data/mxsig-client
DIR_MXSIG_DATA_MAP_LOGS=/usr/local/mxsig_data/logs/maps
DIR_MXSIG_DATA_MAPS=/usr/local/mxsig_data/mxsig-servicios/mapserver/map
DIR_MXSIG_INDICES_SOLR=/usr/local/mxsig_data/mxsig-servicios/tomcat/solr-config
Cambios importantes en MXSIG 2.1
La versión 2.1 incorpora una actualización mayor de la plataforma, incluyendo cambios tecnológicos y arquitectónicos que impactan directamente la administración, personalización y despliegue de ambientes existentes.
Actualizaciones tecnológicas
- Java 21 (Eclipse Temurin 21.0.4)
- Apache Tomcat 9
- jQuery 3.7.1
- Actualización de librerías y frameworks base
Cambio arquitectónico principal
El servicio mdmservices fue migrado de Spring Framework a Spring Boot.
A partir de esta versión:
- mdmservices ya no se despliega como archivo WAR.
- mdmservices ya no se ejecuta dentro de Tomcat.
- mdmservices ahora se ejecuta como servicio independiente mediante un archivo JAR.
- Se incorpora un nuevo contenedor Docker denominado mxsig-mdmservices.
Este cambio modifica el procedimiento de personalización, despliegue y actualización de la plataforma.
Impacto para administradores de ambientes existentes
Antes de actualizar una instalación existente es importante considerar:
- Los procedimientos de despliegue cambian.
- Las personalizaciones realizadas sobre mdmservices.war deben migrarse.
- La estructura Docker Compose fue modificada.
- Se agregan nuevos contenedores al ecosistema.
- Se recomienda utilizar Git para administrar personalizaciones y futuras actualizaciones.
No seguir estas recomendaciones puede provocar la pérdida de configuraciones personalizadas durante la migración.
Migración y nuevas consideraciones
Cambio de ubicación de archivos XML
Versiones anteriores:
mdmservices.war
- WEB-INF/classes/config/xml
Versión 2.1:
mdmservices.jar
- BOOT-INF/classes/config/xml
Los archivos de configuración continúan siendo:
- AliasData.xml
- Servers.xml
- mdm6.xml
El procedimiento de edición es el mismo; únicamente cambia la estructura interna del paquete.
Acceder al cliente de MxSIG
Una vez que el proceso ha finalizado de manera correcta, es posible acceder al cliente de MxSIG por medio de un navegador web; colocando la ip, dominio del servidor o de manera local.
Puertos del MxSIG
| Contenedor | Puerto |
|---|---|
| mxsig/mxsig-apache | 81 |
| mxsig/mxsig-haproxy | 80 |
| mxsig/mxsig-tomcat | 8080 |
| mxsig/mxsig-mapserver7 | 9000 |
| mxsig/mxsig-db | 5432 |
| mxsig/mxsig-mdmservices | 8087 |
Nota.- Si es necesario cambiar la forma en que se exponen los puertos, deberá modificar el archivo docker-compose.yml, solamente en donde se expone el contenedor. Ejemplo.
contenedor de tomcat
- ports:
- "8084:80"
Consideraciones
Importante
Si se viene de una versión anterior de MxSIG, para poder implementar esta nueva versión se debe de tener en consideración lo siguiente.
-
Al querer usar información de versiones anteriores de MxSIG, no será posible un cambio transparente, por las diferencias en las versiones de volumenes y contenedores de MxSIG-DB. Por tanto, si se quiere traer información, es necesario realizar un back-up de la base de datos y restaurarla en el nuevo volumen del contenedor.
-
De igual forma, es necesario sustituir el mdm-client; sea en la carpeta clientes o en la elegida por el usuario, ajustada en el archivo .env.
-
Del mismo modo que el mdm-cliente, se debe realizar lo propio con los mapas, indiferentemente que sea en la carpeta mapserver o en el archivo .env.
-
A menos que tenga la intención de eliminar la base de datos y comenzar de nuevo cuando ejecute su proyecto de MxSIG, tenga cuidado al ejecutar comandos como docker system prune o docker volume prune; Independientemente de si utiliza un parámetro externo los volúmenes de su base de datos no persistirán más allá del inicio
Contenedores de MxSIG
Para mas información sobre la personalización de contenedores sobre cada uno de ellos visitar docker hub.
Modulos de software libre que utiliza
Librerías de soporte MxSIG
- PostgreSQL
- PostGIS
- MapServer
- OpenLayers
- jQuery
Lenguaje de desarrollo
- HTML5 (JavaScript y CSS)
- Java
Servicios estandarizados que provee
- Web Map Service (WMS)
- Web Map Tile Service (WMTS)
- Representational State Transfer (REST)
Funcionalidades
- Buscador
- Medir área
- Medir distancia
- Digitalizar
- Análisis
- Importar/Exportar kml
- Cruces de información
- Leyenda
- Identificar
- Área de control de escala y desplazamiento
- Acercar
- Alejar
- Mapa completo
- Mapa de referencia
- Acceso y control de las capas de información
- Capas de información
- Acceso a capas activas
- Línea de tiempo
- Mapa base
- Descarga de vista
- Imprimir
Ventajas
- Software de código abierto
- Obtención de domicilio geográfico
- Facilidad para el desarrollo de visualizadores de información estadística y geográfica
- Accesibilidad
- Experiencia
- Escalabilidad
- Interoperabilidad
Licencias
MxSIG Derechos Reservados INEGI
MxSIG es un software gratuito, el Usuario es libre de distribuirlo o/y modificarlo según los términos de “GNU Lesser General Public License”, licencia publicada por “Free Software Foundation. MxSIG es distribuido con el interés de fomentar el uso y aprovechamiento de la información geográfica y estadística, pero SIN GARANTÍA ALGUNA; ni siquiera la garantía implícita de COMERCIALIZACIÓN o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Vea la Licencia “GNU Lesser General Public License” para más detalles.


