Uso de una interfaz gráfica en servidores SoftLayer

Conceptos y configuración

Con el enfoque profundo para desplegar sistemas a la nube, los arquitectos y técnicos frecuentemente deben habilitar un acceso a sistemas que operan fuera del sitio. Este artículo se enfoca en los conceptos, razonamiento y los pasos para configurar una interfaz gráfica del usuario para ejecutarse en un servidor IBM SoftLayer en la nube.

Gary Zeien, Principal Cloud Solutioning Architect, IBM

Gary ZeienGary es Arquitecto Principal de Soluciones en la Nube en el equipo global de la nube de IBM GTS, especializado en IBM SoftLayer. Es un arquitecto sénior experimentado y certificado por IBM que ha desempeñado muchas funciones durante su carrera. Ha sido desarrollador de sistemas que abarcan desde controladores de núcleo Linux hasta sistemas de viajes a gran escala y hasta Systems of Engagement. Con una extensa experiencia como consultor y arquitecto. Gary a dirigido esfuerzos de reingeniería de negocios, diseño de arquitectura de soluciones y soluciones IaaS en la nube. También le ha dado servicio a clientes dándole forma a arquitecturas de referencia, conformando a soluciones y resolviendo problemas técnicos de ventas.



25-02-2014

La nube, todos la usan. La mayoría de nosotros usa soluciones Saas ya sea que lo sepamos o no. Usted abre su navegador, captura una URL, inicia la sesión y ya está, usted está usando la nube. En algunas áreas de la nube, usted usa un PaaS. Una vez más, una de las formas más comunes para acceder a estos tipos de ambientes, como IBM Codename BlueMix, JazzHub, Heroku, u otros, es usar un navegador.

¿Pero qué le parecería acceder a un IaaS en la nube? Los proveedores de la nube como IBM SoftLayer proporcionan un enfoque con base en navegador para proporcionar una infraestructura a la que puede acceder para construir y ejecutar software. Sin embargo, después de que se suministra el servidor y se inicia ¿Cómo se accede a él? ¿Especialmente si usted quiere acceder a una interfaz gráfica de escritorio?

Si busca este tema, puede encontrar muchas opciones relacionadas, pero no una explicación clara, especialmente en lo que se refiere a AWS o SoftLayer.

Este artículo revisa los conceptos, las herramientas y los procesos para habilitar a sus usuarios del servidor IaaS para que tengan acceso a una GUI ejecutándose en un servidor en SoftLayer. Cubrimos estos puntos claves:

  1. Software de GUI de escritorio: Para servidores Linux ™ en la nube, si se necesita o se quiere una GUI de escritorio, lo debe agregar al servidor.
  2. Software de acceso remoto: Dado que se requiere una conexión remota de escritorio para acceder al GUI de escritorio, necesita instalar ese software.
  3. Consideración adicional: La posible implicación de ejecutar un ambiente gráfico de usuario desde un servidor con base en la nube en su configuración de nube.

No necesita magia para acceder a los servidores que operan en la nube IaaS. Puede usar las mismas herramientas y tecnologías en la nube que puede usar en las instalaciones de los centros de datos; que incluyen la antigua interfaz de línea de comando.

Interfaz a través de una línea de comando

Demos un rápido vistazo a acceder a los servidores de la nube por interfaces de línea de comando. Linux y Windows ® son dos tipos comunes de sistemas operativos que funcionan en la nube. Debido a que mucha gente usa y ya está familiarizada con la interfaz GUI para Windows, nos enfocamos en Linux y Telnet, o más específicamente, su implementación segura: SSH (Secure Shell). SSH es el enfoque más común para habilitar el acceso por línea de comando a un servidor Linux que opera en SoftLayer o en cualquier proveedor IaaS. La Figura 1 ilustra una visión arquitectónica de las piezas y cómo funcionan juntas. Los elementos claves de esta arquitectura son una llave segura a la nube, un programa que soporta SSH y una dirección IP del servidor de la nube. Eso es importante: no puede acceder a un servidor en la nube sin una dirección IP.

Figura 1. Diagrama de una interfaz Linux por línea de comando
An architectural diagram depicting accessing servers by command-line interfaces

¿Por qué es importante el acceso por línea de comando si su enfoque es habilitar el acceso GUI? Para establecer un servidor en la nube para dar soporte al acceso GUI, necesita usar una herramienta CLI como SSH.

¿No tiene GUI? Espere, cuando proporciona un servidor en la nube ¿no incluye una interfaz GUI? Usted puede descargar una imagen de instalación de Ubuntu Desktop y ejecutarla localmente en su VirtualBox, entonces ¿por qué no hay una interfaz GUI disponible en la nube? Sencillamente el hecho es que la mayoría de las instalaciones de SO IaaS en la nube empiezan con lo básico. Se empieza con la infraestructura básica del servidor y luego el usuario o el configurador personalizan el SO del servidor para ajustarse a las necesidades del usuario. Este proceso se puede hacer utilizando herramientas y técnicas disponibles que están disponibles en la comunidad de código abierto. El proceso se lleva dos pasos:

  1. Configurar un servidor para darle soporte a un ambiente GUI
  2. Acceder a esa GUI de manera remota

Configurar el servidor

Para servidores Windows en la nube, está el escritorio Windows estándar y el GUI es parte de Windows. Las cosas se ponen un poco más complejas cuando vemos a Linux. Según se dice hay ocho diferentes tipos de computadoras de escritorio Linux que varían de acuerdo con una variante de Linux y por el tipo de computadora de escritorio que está buscando.-->

Las computadoras de escritorio Linux están construidas típicamente en el ambiente X Window System que proporciona el marco básico para un ambiente GUI. X Window System se originó en MIT en la década de los ochenta y evolucionó a través de los años para ser el ambiente clave de emulación de Windows para UNIX y Linux. Las distintas computadoras de escritorio de Linux, como Gnome y KDE, usan el ambiente X Window System para crear una computadora de escritorio con capacidades específicas y una vista y sensación específicas. Típicamente, cuando instala estos escritorios, el software X Window System subyacente también se instala en el servidor como parte del paquete.

Instalar un ambiente de computadora de escritorio en un servidor de la nube se hace típicamente a través de una interfaz de línea de comando. Utilizando las herramientas SSH mencionadas anteriormente, usted puede ejecutar una herramienta de instalación que instale los paquetes. Cada variante de Linux típicamente proporciona una herramienta de instalación. Por ejemplo, Ubuntu tiene apt-get (abreviatura de Advanced Packaging Tool) que recupera automáticamente los paquetes de instalación de Internet e instala el software.

Ejemplo de Ubuntu para instalar Gnome: $ sudo apt-get install gnome

Este comando recupera e instala el ambiente de escritorio Gnome completo. Hay varias opciones para obtener más o menos de la computadora de escritorio (por ejemplo, no las herramientas LibreOffice), pero el proceso es esencialmente el mismo.

Una vez más, este comando instala el software del escritorio y X Window System. Todavía no termina. Usted todavía debe ejecutar algunas configuraciones específicas. Puede encontrar una visión general de estos pasos en la sección Cookbook de este artículo.

El trabajo no se termina aquí. El tener una ambiente de escritorio que esté instalado en un servidor de la nube está bien pero hay más que instalar.


Acceder a una GUI en la nube

Si usted accedió a un servidor localmente, digamos en una laptop o máquina virtual, usted ha terminado.

Sin embargo, dado que usted quiere acceder a la GUI a través de Internet, necesita instalar un servidor de conexión remota. Este software habilita el despliegue de y las interacciones con, un escritorio GUI que se ruteará sobre una red. (Otra vez, este concepto funciona para nubes públicas o privadas en un centro de datos). Para sistemas Linux, el software más común es. Hay versiones de VNC gratuitas y con costo. La elección de cuál usar depende de sus necesidades y requisitos organizacionales. Sin embargo, al final generalmente todos funcionan de la misma manera.

La Figura 2 ilustra los elementos claves de un ambiente VNC. Específicamente, hay un servidor y un cliente. El software del servidor es responsable de trabajar con el cliente para proporcionarle la experiencia de la computadora de escritorio al usuario.

Figura 2. Elementos claves de un ambiente VNC
An illustration showing the key elements of a VNC environment

Nota: El servidor VNC ejecuta una instancia en el escritorio para el usuario. Múltiples clientes interactúan con el mismo servidor. Se pueden iniciar diferentes instancias de un servidor VNC con una configuración de escritorio única. El cliente se puede conectar a diferentes escritorios, que se basan en una ID de escritorio, si se quiere.

El cliente puede ser una aplicación específica que usted inicia, tal como TightVNCViewer en Windows o las capacidades del VNC habilitadas de Safari en la Mac. De cualquier manera el cliente se conecta con el servidor, presenta el escritorio y envía las interacciones desde el teclado y el ratón de regreso al servidor. Como se ilustra en la Figura 3.

Figura 3. Acceder a servidores de la nube usando la GUI de Linux
An illustration depicting accessing cloud servers with Linux GUI

Instalar y configurar

Instalar y configurar el ambiente de la conexión remota del servidor sigue el mismo enfoque que se usa para instalar el software del escritorio. Primero, usted recupera e instala el software. Por ejemplo, en Ubuntu puede instalarvnc4server.

$sudo apt-get install vnc4server

Después de que instale el software, configura el servidor. VNC ejecuta una instancia del escritorio. Por lo tanto, usted necesita establecer los archivos de configuración VNC para decirle qué escritorio operar y la naturaleza única de este.

Por ejemplo, esta sección del archivo xstartup viene con vnc4server para proporcionar los detalles de cómo quiere usted que se vea el escritorio y cómo opere el escritorio, en este caso, gnome.

 [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey vncconfig -iconic & gnome-session -\\-session=ubuntu-2d &

Una perspectiva de SoftLayer IaaS

Como mencioné anteriormente, las imágenes del SO que se proporcionan automáticamente de manera típica por los proveedores de IaaS como IBM SoftLayer o AWS no vienen ya provistas de una GUI de escritorio o software de acceso remoto. Hay algunas cosas que considerar mientras usted aprovisiona sus servidores en la nube si está buscando soportar un ambiente GUI. Estas consideraciones pueden aumentar sus costos mensuales o por hora para el servidor en la nube así que necesita planear en conformidad.

Lo primero es que operar una instancia de la GUI toma recursos de cómputo en la forma de memoria y CPU, tal como lo hace en su laptop. Si usted hace un trabajo intensivo o tiene muchos usuarios que usan esta interfaz asegúrese de proporcionar el servidor con más RAM y un CPU correspondiente con un caché grande. Las especificaciones realmente dependen del número de usuarios que estén usando la GUI en un momento dado

Segundo, ejecutar una GUI sobre una red remota tiene implicaciones en el ancho de banda de la red. Una vez más, no son noticias excepcionales, pero algunas veces usted empieza a dar esto por sentado cuando aprovisiona una nube. Asegúrese de que la red que proporciona para su servidor o servidores esté configurada con suficiente ancho de banda de salida para soportar las actualizaciones gráficas de pantalla que se envían desde el servidor de la nube. Si no se proporciona el suficiente ancho de banda, usted puede encontrar que el rendimiento es inaceptable. También, los proveedores de la nube tienden a hacer cargos por el ancho de banda de salida, así que tener muchos usuarios que ejecutan una GUI desde la nube puede significar más cargos mensuales en su factura.

Finalmente, otra consideración que hay que cubrir es la necesidad de asegurar que sus firewalls estén configuradas adecuadamente. Usar una herramienta de acceso remoto como VNC requiere que ciertos puertos estén abiertos. Típicamente, estos puertos están en el rango de 5900-5910. Esta limitación no es única para la nube, pero es una consideración que hay que sopesar. Usted necesita asegurar que estos puertos estén abiertos en el firewall de su nube.


Único para SoftLayer

SoftLayer sí proporciona una red (VLAN) pública y privada para servidores. Si usted encuentra que sólo unos cuantos admins necesitan usar la GUI, puede querer dirigirlos a través de la red privada sobre un VLAN que elimina el cargo de red de salida. Ellos pueden encontrar que el rendimiento se reduce ya que esta red es típicamente una red enfocada en admin.

La función de Standard and Flex Image Templates de SoftLayer puede ser útil para configurar rápidamente los servidores con la configuración descrita anteriormente. Mientras usted puede usar guiones y Chef Recipes para ejecutar los pasos de configuración, usted también puede usar Image Templates de SoftLayer. Cuando configura exitosamente un servidor para tener la configuración de trabajo exacta que se requiere, puede tomar una instantánea de Image Template de ésta. SoftLayer guarda esta plantilla y entonces usted puede aprovisionar un nuevo servidor rápidamente con ella, usando el Portal SoftLayer o APIs. Resulta en una operación de un sólo paso con todo ya configurado Y operando.


Establecer y acceder al ambiente GUI: un Recetario

Esta es una visión general de los pasos a ejecutar. Los vínculos bajo Recursos proporcionan los detalles prácticos.

  1. Seleccionar su tipo de imagen del SO Linux, por ejemplo, RedHat, Ubuntu; el SO específico impacta los comandos específicos.
  2. Seleccionar la solución de escritorio Linux a usar.
  3. Seleccionar el software del servidor del escritorio remoto a usar.
  4. Establecer los usuarios asociados para soportar el ambiente GUI. Típicamente usted necesita tener un ‘vnc’ de usuario que opere el vncserver.
  5. Instalar el software del escritorio, por ejemplo sudo apt-get install gnome.
  6. Instalar el software del servidor del escritorio remoto, $sudo apt-get install vnc4server.
  7. Modificar los archivos de configuración, específicamente xstartup.
  8. Asegurar que el firewall en el ambiente del servidor soporte el Software de Remote Desltop para los puertos VNC: 5900-5910 deben estar abiertos.
  9. Reiniciar el servidor del escritorio remoto $ vncserver.

Conclusión

El usar servidores en la nube no significa que sus usuarios o administradores estén restringidos a aprender, o reaprender, los shells Linux y la interfaz de línea de comando (CLI). Poderoso como un CLI, todavía hay una opción para usar un ambiente de escritorio GUI. En algunos casos, esto también puede ser un requisito.

Las imágenes Linux que usted proporcione en proveedores IaaS, como SoftLayer, típicamente no tienen estos componentes previamente configurados. Sin embargo, las tecnologías no son únicas para la nube y usan herramientas que se han usado dentro de las soluciones internas del centro de datos en el pasado.

Entender estas tecnologías y las implicaciones de ejecutarlas en el ambiente de la nube es clave para tomar las decisiones IaaS apropiadas. Usted también puede encontrar que las herramientas de automatización como SoftLayer Image Templates y las APIs SoftLayer se pueden usar con otras herramientas DevOps para simplificar este proceso todavía más.

Recursos

Aprender

Obtener los productos y tecnologías

Comentar

  • Involucrarse en la comunidad developerWorks . Conectarse con otros usuarios de developerWorks mientras explora los blogs, foros, grupos y wikis definidos por desarrolladores.

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Cloud computing
ArticleID=966955
ArticleTitle=Uso de una interfaz gráfica en servidores SoftLayer
publish-date=02252014