El servidor de Minecraft Beta 1.6.6 provee una configuración básica muy fácil de editar que permite especificar diferentes características del servidor, como por ejemplo el puerto por donde escucha el servicio, si se usaran animales o monstruos y si los jugadores pueden matarse unos a otros.
El archivo de configuración se puede encontrar en el directorio donde se ejecuto el juego bajo el nombre server.properties en el caso de nuestro servidor antes instalado la ruta completa del archivo es :
/home/minecraft/server/server.properties
La configuración que encontramos después de la instalación es :
level-name=world
allow-nether=true
view-distance=10
spawn-monsters=true
online-mode=true
spawn-animals=true
max-players=20
server-ip=
pvp=true
level-seed=
server-port=25565
allow-flight=false
white-list=false
Como recomendacion para nuestro servidor de no utilizaremos monstruos para que no perturben nuestra actividad, permitiremos que cualquier usuario no registrado pueda acceder a nuestro servidor (no recomendable en un servidor publico) y adicionaremos la opcion motd que permite especificar un mensaje de bienvenida a los usuarios :
spawn-monsters=false
online-mode=false
motd=Bienvenidos al servidor Minecraft Beta 1.6.6 de Prueba
Configuracion :
level-name (Valores de true, false)
Nombre del nivel que se utilizara, este es el nombre de la carpeta que se utilizara como mundo en el servidor el cual se puede redirigir a un directorio con una copia anterior del mundo
allow-nether (Valores de true, false)
Permitir viajar a un mundo inferior a través de portales en una especie de limbo donde se pueden encontrar otras caracteristicas del juego.
view-distance (Valores de 3 a 15)
Distancia a la que el servidor manda informacion al usuario
spawn-monsters (Valores de true, false)
Permite usar o no monstruos en el juego, en nuestro caso no los usaremos para que no molesten mientras estamos probando
online-mode (Valores de true, false)
Especifica si se utilizar la base de datos del sitio de minecraft.net para autenticar a los usuarios, se debe tener cuidado con esta opcion la cual al estar desactivada permite el acceso de cualquier usuario al mundo, por tal motivo no es recomendable para servidores publicos
spawn-animals(Valores de true, false)
Permite que se creen animales dentro del mundo
max-players (Valores de 0 a 255)
Numero de jugadores máximo dentro del mundo, no se cuentan los administradores. Se debe tener la cantidad de RAM que se tiene para calcular este numero, por ejemplo si se tienen 512MB se recomienda 2 usuarios, 1024MB se recomiendan 6
server-ip
IP del servidor cuando se utiliza en un servidor con varias direcciones y solo se quiere prestar por una sola. Se recomienda dejar en blanco para que se pueda acceder desde cualquier parte
pvp (Valores de true, false)
Permite especificar si un usuario puede atacar y afectar a otro usuario causándole la muerte
level-seed (Cadena)
Cadena alfanumérica que se utiliza para generar un mundo si este no existe, esto sirve para generar mundos diferentes al borrar o cambiar el nombre del nivel y permitir al servidor generar un mundo nuevo con esta semilla
server-port (Valores de 1 a 65535)
Puerto del servidor, muy util cambiarlo cuando se esta detras de un firewall que no deja acceder al puerto por defecto
allow-flight (Valores de true, false)
Permite que los usuarios puedan volar dentro del mundo, muy útil para poder tomar imágenes desde el cielo
white-list (Valores de true, false)
Permite especificar que se utilizara una lista con los nombres de usuario que pueden acceder a nuestro servidor
motd (Cadena)
Mensaje que se visualizara al acceder al servidor
Como se habia anunciado por parte del equipo de desarrollo de Glassfish en Oracle, la version 3.1 vio la luz en el mes de febrero de 2011, el ultimo día de ese mes, llegando con gran alboroto por parte de la comunidad en torno a este servidor de aplicaciones Java que al parecer ha comenzado a tomar mucha fuerza tanto a nivel de desarrolladores como de empresarios..
La version 3.1 de Glassfish se centra en la creación de clusters, alto desempeño y la administración centralizada, bajo estos tópicos podemos encontrar caracteristicas como infraestructuras básicas para la creación de clusters, reconfiguracion dinámica, sincronizacion, seguridad, nodos administrados via ssh, interface de linea de comandos CLI, emplazamiento, manejo de recursos, servicios de transacciones, monitoreo de servicios RESTful, versionamiento de aplicaciones, balanceadores de carga.
Pasos de Instalación :
Abrir una terminal o conectarse remotamente como administradores del servidor
Instalar una versión de Java si no se tiene :
Instalar JDK de Oracle
echo deb http://archive.canonical.com maverick partner | sudo tee /etc/apt/sources.list.d/java.list
sudo apt-get update
sudo apt-get install sun-java6-jdk
El pasado 11 de Enero de 2011 se anuncio el nuevo derrotero que se seguirá en el desarrollo de las próximas versiones de Glassfish, se han generado algunos cambios haciendo que la version final de Glassfish 3.1 este estipulada para el mes de febrero de este año y la version 3.2 este para el cuarto cuarto de 2011, osea a finales de este año.
La version 3.1 de Glassfish se centra en la creación de clusters, alto desempeño y la administración centralizada, bajo estos tópicos podemos encontrar caracteristicas como infraestructuras básicas para la creación de clusters, reconfiguracion dinámica, sincronizacion, seguridad, nodos administrados via ssh, interface de linea de comandos CLI, emplazamiento, manejo de recursos, servicios de transacciones, monitoreo de servicios RESTful, versionamiento de aplicaciones, balanceadores de carga.
Aunque la version final no ha salido todavía al mercado podemos comenzar a realizar pruebas con las versiones de prueba lo que llamariamos versiones Beta, para este caso utilizaremos la version 3.1 build 37 del 11 de Enero de 2011
Pasos de Instalación :
Abrir una terminal o conectarse remotamente como administradores del servidor
Instalar una versión de Java si no se tiene :
Instalar JDK de Oracle
echo deb http://archive.canonical.com maverick partner | sudo tee /etc/apt/sources.list.d/java.list
sudo apt-get update
sudo apt-get install sun-java6-jdk
Teniendo en cuenta las características del Servidor de Desarrolla a utilizar en Pulsar Project que fueron brevemente descritas en anteriores entradas (Pulsar Project : Servidor Desarrollo) se procedió a realizar la instalación básica del servidor que cumpliera con la mayoría de estas.
Seleccionar el tipo de sistema operativo Linux ya l version Ubuntu
Se puede dejar los 512 MB de memoria RAM (se recomienda aumentarlo a 1024)
Crear un disco virtual con la información por defecto (8 GB de espacio)
Finalizar la creación de la maquina virtual
Cambios en la Configuración Inicial :
Presionar el botón Settings
Habilitar el PAE/NX en la sección Processor de System
Ir a Settings -> Storage
Remover el disco duro del arbol de dispositivos, seleccionarlo y utilizar el boton con el menos
Remover el controlador SATA dando click sobre el Storage Controller ya que este no se utilizara
Adicionar el disco duro como IDE haciendo click sobre el controlador y adicionando un nuevo disco
Montar CD de instalación :
Seleccionar en la pantalla el CD Empty
Adicionar el archivo iso al manejador de medios virtuales
Enlazarlo al CD
Iniciar la Maquina
Instalación de Ubuntu Server
Seleccionar el idioma
Presionar la tecla F4 y seleccionar minimal virtual machine
Seleccionar la opción Install Ubuntu Server
Seleccionar el idioma de instalación
Seleccionar el Pais
Detectar la distribución del teclado
Suministrar el nombre del servidor : pulsarproject
Configurar la zona horaria
Particionar el disco utilizando la opción guiada
Se realiza la instalación base del sistema
Suministrar información del usuario
Nombre de usuario : pulsar
Clave : pulsar2010
No encriptar directorio home
No realizar actualizaciones automáticas
Seleccionar el Software a Instalar :
Basic Ubuntu Server
LAMP Server
Mail Server
OpenSSH Server
Suministrar la clave de administrador de MySQL
Configurar servidor de correo como Internet Site con el nombre pulsarproject
Instalar el GRUB
Terminar la instalación
Reiniciar (Recuerde quitar el archivo ISO como archivo del CD)
La imagen de disco creado por VirtualBox es de 845 MB para esta maquina virtual.
Esta guía cubre los pasos de una forma breve y sencilla, para mayor información acerca de la instalación del servidor de desarrollo se realizo un vídeo el cual contiene imágenes de todos los pasos realizados durante la instalación.
El servidor de desarrollo para el Pulsar Project esta destinado como plataforma para el desarrollo de las herramientas y aplicaciones para el apoyo a la educación en los mundos virtuales, este debe contar con el software necesario para permitir el desarrollo, así como tambien para realizar pruebas de las mismas, por este motivo el servidor debe contar con las siguientes caracteristicas :
Poderse mover de una maquina a otra para no depender de una maquina o una única instalación
Servir de linea base para la documentación de instalación y configuración de servicios
Permitir volver a versiones anteriores del estado del servidor
Facilitar el proceso de pruebas de las herramientas desarrolladas, permitiendo el cambio de configuraciones y componentes instalados
Permitir a otros usuarios la descarga desde Internet del servidor para que estos prueben las herramientas desarrolladas
Ser muy liviano para ejecutarse en maquinas con pocos recursos
Tener un tamaño pequeño para permitir la descarga rápida desde Internet o su copia entre maquinas
Ser software libre lo que permita su utilización sin requerimientos de licencia por parte de los usuarios.
Al analizar todas las características del servidor se tomaron las siguientes decisiones :
Crear un maquina virtual lo cual permite mover y ejecutar la maquina virtual en diferentes computadores de una forma fácil y rápida, como también permite volver a estados previamente almacenados y puede ser distribuida para que otros usuarios la puedan utilizar,
Instalar en la maquina virtual con un Servidor Linux para lo cual se selecciono la plataforma Ubuntu Server 10.04 gracias a la gran experiencia que se tiene en el uso de esta plataforma y a que provee todas las herramientas necesarias para desarrollar el proyecto.
Realizar una instalación mínima de maquina virtual la cual permite crear una maquina virtual que ocupa poco espacio en disco gracias a que solo instala los componentes necesarios para su ejecucion, ademas de tener un núcleo diseñado especialmente para ejecutarse en ambientes virtualizados.
Se selecciono VirtualBox como plataforma de virtualizacion por su fácil, rápida y liviana instalación, ademas de ser multiplataforma lo que permite utilizar cualquier computadora como potencial servidor de pruebas.
En cuanto a la plataforma de desarrollo el servidor debe contar con los siguientes servicios y plataformas de desarrollo :
Servidor Web para la publicación de la aplicación web de soporte a las herramientas de los mundos virtuales y aplicaciones de terceros que se comunicaran con las herramientas en los mundos virtuales.
Servidor de base de datos para la aplicación web y las aplicaciones de terceros.
Servidor de correo para permitir el envió local de mensajes entre aplicaciones.
Se han seleccionado las siguientes herramientas básicas para comenzar el desarrollo del proyecto, las cuales cumplen con las características necesarias para el desarrollo de proyecto.
Servidor de Terminal Segura OpenSSH, el cual permite realizar conexiones seguras para la administración remota del servidor y el envió de archivos.
Servidor de Base de Datos MySQL muy popular en el mundo del software libre y el cual utilizan muchas de las herramientas a utilizar dentro del proyecto.
Servidor Web Apache2 con soporte para PHP, el cual permite desarrollar e instalar aplicaciones muy populares en el mundo del software libre.
Servidor de Correo Postfix para el envío y recepción de correo.
Hasta el momento se han seleccionado las herramientas tecnológicas que responden en su mayoría a herramientas de software libre que pueden ser usadas y modificadas, así como también herramientas sencillas de manejar y ampliamente utilizadas en el mundo del desarrollo de software.