Simplificando la administración de servidores y dispositivos
Core-Admin proporciona una solución software para conectar todos sus servidores y sistemas utilizando un agente software (el agente Core-Admin). Una vez estas conexiones son establecidas, basadas en el protocolo BEEP (http://www.beepcore.org), el servidor de Core-Admin es capaz de permitir a los clientes Core-Admin invocar servicios disponibles en los agentes Core-Admin.
Core-Admin proporciona una plataforma que conecta sus servidores y sistemas a un servidor central el cual los pone a disposición de los usuarios autenticados mediante una única credencial.
Esto proporciona varias ventajas sobre las herramientas tradicionales:
- No necesita tener un panel por cada servidor o dispositivo.
- Como consecuencia, no necesita disponer de distintos usuarios en cada plataforma lo que se convierte en una pesadilla cuando quiere actualizar o borrar usuarios de estos equipos.
Protocolo BEEP para la conexión servidor-agente y cliente-servidor
Sacando ventaja del protocolo BEEP (http://www.beepcore.org), el agente core-admin se conecta con el servidor central estableciendo una sesión BEEP. Esta conexión es usada por el servidor central para crear canales independientes que a su vez son usados para invocar servicios y/o notificar eventos encontrados en los agentes.
Todo esto permite a los agentes proporcionar acceso, pasando a través del servidor central, a los usuarios de Core-Admin sin tener que exponer un puerto abierto ejecutando con un usuario con altos privilegios.
Al mismo tiempo, los clientes web de Core-Admin utilizan una única conexión BEEP (BEEP o BEEP sobre WebSocket) con el servidor sobre la que se crean canales independientes para interactuar con distintos servidores finales al mismo tiempo.
Core-Admin no necesita crear una conexión completa por cada operación sino que reusa canales paralelos sobre una única sesión BEEP (conexión), esto hace que Core-Admin sea realmente eficiente, permitiendo que un servidor modesto sea capaz de gestionar un centenar de servidores.
Diseño centralizado para hacer cosas interesantes
Debido al diseño de Core-Admin, es posible simplificar operaciones y sacar mayor rendimiento a sus equipos. Por ejemplo, es realmente útil para:
- Añadir/borrar usuarios de todo el sistema o hacer un seguimiento de sus operaciones de manera centralizada.
- Es posible darle acceso a un usuario existente a recursos en distintas máquinas con una vista unificada. Por ejemplo, a medida que nuevos servidores de correo son añadidos a su Core-Admin y se crean más dominios sobre los mismos, es muy sencillo permitir a un usuario gestionar un dominio sin importar en que servidor se encuentra realmente.
Herramientas open source y proyectos ASPL que han sido usados en Core-Admin
Las siguientes herramientas, librerías y productos están licenciados bajo licencias OpenSource y fueron usadas para el desarrollo de Core-Admin. La siguiente lista es software desarrollado por ASPL:
Vortex Library
En el núcleo de Core-Admin encontramos Vortex Library, nuestra implementación open source del protocolo BEEP. Nos proporciona para Core-Admin una comunicación paralela, bidireccional, altamente interactiva con soporte para canales, autenticación SASL y cifrado de seguridad TLS para las sesiones.
Servidor Turbulence
Nuestro servidor BEEP construido sobre Vortex Library y usado para implementar el servidor central de Core-Admin. Proporciona gran cantidad de características para el lado servidor para desplegar y configurar aplicaciones BEEP.
jsVortex
Nuestra implementación Javascript del protocolo BEEP con soporte para WebSocket. Nos permite convertir fácilmente cualquier navegador en un cliente BEEP.
Axl Library
Nuestra implementación Open Source del estándar XML 1.0. Cuenta con un procesamiento realmente rápido y una huella de memoria muy baja. Axl Library ha sido usado para gestionar muchos de los aspectos de la configuración a lo largo de la plataforma.
noPoll toolkit
Nuestra implementación Open Source del protocolo WebSocket posee un diseño que permite una fácil integración con proyectos existentes. Es usando para proporcionar soporte de WebSocket para Turbulence, de manera que este pueda ser alcanzado mediante BEEP o BEEP sobre WebSocket.
ext-Dns Toolkit
Nuestro toolkit de desarrollo de servidores DNS open source. ext-Dns es una herramienta extremadamente poderosa que permite realizar acciones personalizadas a nivel de resolución. Está siendo utilizando por nuestra herramienta de gestión de acceso a internet (IAM).
Otros proyectos open source utilizados por Core-Admin
¿Por donde comenzar? Hay varios proyectos sobre los cuales Core-Admin ha sido construido y no es posible mencionarlos a todos ellos. En este caso, a continuación están los más relevantes y aquellos que han sido usados directamente por Core-Admin.
Dojotoolkit: toolkit RIA profesional
Dojotoolkit (http://www.dojotoolkit.org) es una librería Javascript profesional que le permitirá crear aplicaciones para internet áltamente interactivas. Core-Admin está usando Dojo para crear la interfaz de cliente web. Puede verlo en funcionamiento en la siguiente sección: Core-Admin en acción.
El lenguaje Python: scripting potente
Python ha sido utilizado como lenguaje principal para el servidor central de Core-Admin y para todo el código que ejecuta en el agente Core-Admin. Nos ha proporcionado la potencia y flexibilidad que necesitábamos para desarrollar rápidamente un producto serio y con calidad comercial. Puede ver más detalles sobre sobre Python en: http://www.python.org.