Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tipos de virtualización. #71

Closed
JJ opened this issue Oct 5, 2014 · 48 comments
Closed

Tipos de virtualización. #71

JJ opened this issue Oct 5, 2014 · 48 comments

Comments

@JJ
Copy link
Owner

JJ commented Oct 5, 2014

¿Qué tipo de virtualización es la más adecuada para: alojar varios clientes en un sólo servidor, crear un sistema efiiciente de web + middleware + base de datos, un sistema de prueba de software e integración continua? Responder aquí y razonar.

@JJ JJ modified the milestone: Tema 1: Introducción Oct 5, 2014
@Samu92
Copy link

Samu92 commented Oct 6, 2014

Para alojar varios clientes en un sólo servidor en mi opinión la opción más adecuada es una virtualización a nivel de sistema operativo que permite que anfitrión y cliente usen el mismo sistema operativo pero con invitados aislados del anfitrión y entre sí.

@JJ
Copy link
Owner Author

JJ commented Oct 6, 2014

¿Y para el resto?

@Samu92
Copy link

Samu92 commented Oct 6, 2014

Para crear un sistema eficiente de web + middleware + base de datos optaría por una virtualización plena ya que visualiza todos los aspectos de un ordenador permitiéndonos tener un sistema eficiente y completo.

Para el sistema de prueba de software e integración continua no estoy muy seguro de que virtualización se aplicaría. El proceso de este sistema según he leído suele ser que cada cierto tiempo (horas) descarga las fuentes del software desde el control de versiones (por ejemplo CVS, Git, Subversion, Mercurial o Microsoft Visual SourceSafe) lo compila, ejecuta pruebas y genera informes. A ver si algún compañero me aclara un poco esta parte.

@yonatan24891
Copy link

Para alojar varios clientes en un servidor, utilizaría la virtualización plena o a nivel de sistema operativo, para poder aislar las cuentas de cada usuario.

Para crear un sistema eficiente de web + middleware + base de datos utilizaría la virtualización de aplicaciones para aislarlas del resto del SO.

Y para un sistema de prueba de software e integración continua utilizaría la virtualización de entornos de desarrollo para reproducir entornos de producción de la forma más fiel posible.

@miguelfabre
Copy link

Para el alojamiento de varios clientes en un solo servidor pienso que la mejor opción sería la "virtualización a nivel de sistema operativo" ya que permite que anfitrión y cliente usen el mismo sistema operativo pero con invitados aislados del anfitrión y entre sí. De esta forma, en caso de incidencia de alguno de los usuarios, contaremos con el mismo SO que éste, siendo más fácil la atención y resolución del problema.

Por otra parte, para crear un sistema eficiente web con middleware y BD, emplearía la "virtualización plena" ya que considero que se trata de una tarea muy pesada por lo que todos los recursos deben estar dedicados a dicha tarea.

Por último, un sistema de prueba de software e integración continua utilizaría la "virtualización de entornos de desarrollo" ya que consigue reproducir entornos de producción de la forma más fiel posible, pudiendo así testar fielmente nuestro software.

@iblancasa
Copy link

Aquí dejo mi análisis:

  • Alojar varios clientes en un sólo servidor: yo, de forma similar a mis compañeros, optaría por la virtualización a nivel de sistema operativo. Creo que este sistema aporta una facilidad bastante grande en la gestión de sistemas (el/los administrador/es pueden realizar actualizaciones y configuraciones abstrayendo a los usuarios de estas funciones).
  • Crear un sistema eficiente de web + middleware + base de datos: yo también optaría por una virtualización completa. La creación de un sistema web con base de datos nos podría llevar a pensar en tener una virtualización en la que no necesitemos tocar cosas a nivel de sistema operativo (por ejemplo, PaS). Pero, al necesitar que sea eficiente (puede llevarnos a querer realizar modificaciones en parámetros a nivel kernel, por ejemplo, para adaptar el software a nuestras necesidades) y acceso al middleware, esta es la opción más "viable".
  • Un sistema de prueba de software e integración continua: es claro que la virtualización de entornos de desarrollo es la opción más adecuada por que son sistemas que están pensados para este tipo de actividades.

@juanfranrv
Copy link

1- Para alojar varios clientes en un sólo servidor, coincido con mis compañeros, y usaría la virtualización a nivel de sistema operativo, debido a que permite que solamente el anfitrión y el cliente usen el mismo sistema operativo pero con invitados aislados del anfitrión y entre sí. De esta forma, se puede mejorar el rendimiento porque hay un solo sistema operativo encargándose de los avisos de hardware, aunque también presenta alguna desventaja como por ejemplo,que cada invitado debe utilizar el mismo sistema operativo que utiliza el host.

2- La virtualización que usaría para crear un sistema eficiente de web+middleware+base de datos sería la virtualización plena ya que nos permitiría virtualizar todos los aspectos de un ordenador para poder ejecutar sistemas operativos y otros programas sin modificar.

3- Por último,la virtualización más adecuada para un sistema de prueba de software e integración continua, obviamente, es la virtualización de entornos de desarrollo ya que nos permite reproducir de la forma más fiable posible entornos de producción.

@JCristobal
Copy link

  • Para alojar varios clientes en un sólo servidor usaría la virtualización a nivel de sistema operativo ya que podría separar a los clientes, con uno o varios administradores con distintos privilegios que los demas, gestionando mejor así el sistema
  • Crear un sistema efiiciente de web + middleware + base de datos: lo ideal sería una virtualización plena, ya que lo virtualiza todo y nos permite ejecutar los SO y varios programas, además de poder gestionar el middleware
  • Sistema de prueba de software e integración continua: usaremos la virtualización de entornos de desarrollo, ya que es como mejor reproducimos entornos de producción, podemos probar una aplicación en diferentes versiones con una sola orden, o usar diferentes aplicaciones para probar con diferentes lenguajes.

@FranciscoPorcel
Copy link

  • Para alojar varios clientes en un sólo servidor considero que la mejor opción sería la "virtualización a nivel de sistema operativo", ya que tanto anfitrión como cliente tendrían el mismo sistema operativo, lo que facilitaría en gran medida la comunicación y las actualizaciones y eliminaría posibles conflictos.
  • Para crear un sistema eficiente de web + middleware + BD creo que la mejor opción sería optar por una "virtualización plena", ya que son muchos los recursos necesarios para crear este entorno eficiente, por lo que necesitaremos todos los recursos posibles.
  • Para un sistema de prueba de software e integración considero que la mejor virtualización es la de "Entornos de desarrollo". De esa forma se podrá analizar el software en un entorno lo más cercano posible a la realidad por lo que el desarrollo podrá ser mucho más eficiente.

@julioxus
Copy link

  • Para alojar varios clientes en un servidor: Sería más adecuada la virtualización a nivel de sistema operativo porque permite al administrador realizar la tarea de administración (actualizaciones, mantenimiento, instalación de servicios...) del sistema operativo, mientras que el resto de clientes no se tienen que preocupar por eso, centrándose en el uso concreto que quieran darle.
  • Para crear un sistema eficiente de web + middleware + base de datos: Lo más adecuado sería la virtualización plena, ya que en este caso hay que instalar el software necesario, sus diversos módulos, y quizás nos interese hacer modificaciones en el kernel para aumentar su eficiencia.
  • Para un sistema de prueba de software e integración: En este caso la virtualización de entornos de desarrollo sería lo ideal porque podremos estar cambiando de entorno de desarrollo de una manera muy rápida y sencilla, lo que nos permitirá realizar un gran número de pruebas para probar la robustez del software que estemos desarrollando.

@ghost
Copy link

ghost commented Oct 13, 2014

-Alojar varios clientes en un solo servidor: virtualización a nivel de SO permitiendo que anfitrión y cliente usen el mismo sistema operativo con invitados aislados del anfitrión entre si.
-Sistema eficiente de web+middleware+base datos: virtualización plena permitiendo así virtualizar todos los aspectos del ordenador.
-Sistema de prueba de software e integración continua: virtualización de entornos de desarrollo, permitiendo así reproducir el entorno de producción.

@JAntonioMarin
Copy link

1.Varios clientes en un solo servidor: Para este usaría un entorno de virtualización a nivel se sistema operativo, ya que tendría al servidor como anfitrión y a los clientes aislados en los contenedores
2.Crear un sistema eficiente de web + middleware + base de datos: un sistema de virtualización plena ya que tiene estructuras de control llamadas hipervisores para controlar los diferentes aspectos de web y base de datos
3.Un sistema de prueba de software e integración continua: dado que es un sistema de prueba simplemente debe usarse una virtualización de entornos de desarrollo para así probar las diferentes versiones y por tanto así tenemos cubierta una integración continua.

@ramako
Copy link

ramako commented Oct 14, 2014

Para varios clientes en un servidor se usa virtualizacion a nivel de sistema operativo, como usan los VPS. La ventaja es
que varios usuarios pueden usar el servidor pero a su vez están aislados entre si. La desventaja es que todos los clientes han de usar el mismo SO (el del host).

Para un sistema eficiente de web, middleware y base de datos usaria la virtualización plena o a nivel de sistema operativo, creo
que ambas opciones son igual de viables, algo interesante de probar seria la jaula de BSD:http://en.wikipedia.org/wiki/FreeBSD_jail

Para un sistema de prueba de software e integración continua obviamente seria la virtualizacion de entornos de desarrollo, puesto
que nos permite probar nuestro software con diferentes versiones de una formafacil.

@edupg1
Copy link

edupg1 commented Oct 14, 2014

-Para alojar varios clientes en un servidor: utilizaría la virtualización a nivel de sistema operativo, debido a que pueden aislar las cuentas invitadas instaladas en el mismo. El sistema no se sobrecarga, debido a que cada usuario no ejecuta un sistema operativo completamente instalado.
Solo hay un sistema operativo que se encargue de los avisos del hardware, mejorando el rendimiento.
-Para crear un sistema eficiente de web + middleware + base de datos: utilizaría la virtualización completa, debido a que virtualiza un sistema completo y otros programas sin necesidad de modificar.
-Y para un sistema de prueba de software e integración continua: utilizaría la virtualización de entornos de desarrollo porque podemos reproducir entornos de producción de forma más rápida y sencilla.

@ppruiz
Copy link

ppruiz commented Oct 15, 2014

-A la hora de alojar varios clientes en un servidor en mi opinión es mejor utilizar virtualización a nivel de sistema operativo, una aproximación a la virtualización en la cual la capa de virtualización se ejecuta como una aplicación en el sistema operativo y el kernel del SO se ejecuta sobre el nodo de hardware con varias máquinas virtuales, instaladas sobre él.

-Para crear un sistema eficiente de web+middleware+base de datos, que virtualiza todos los aspectos de un ordenador para poder ejecutar sistemas operativos y otros programas sin modificar.

-Para un sistema de prueba de software e integración contínua, ya que reproduce entornos de producción de la forma más fiel posible, incluyendo las versiones de intérpretes y librerías usadas en el entorno de producción.

@rafaroc
Copy link

rafaroc commented Oct 15, 2014

-Para alojar varios clientes en un solo servidor eligiria la virtualizacion a nivel de sistema operativo permite que anfitrión y cliente usen el mismo sistema operativo pero con invitados aislados del anfitrión y entre sí, ademas facilita que el/los administradores gestionen el equipo y los diferentes clientes.
-Para un sistema eficiente de web + middleware + base de datos optaria por una visualizacion plena ya que permite virtualizar todos los recursos y aprovechar su maximo rendimiento.
-Para un sistema de prueba de software e integracion continua usaria la virtualizacion de entornos de desarrollo para probar en las diferentes versiones de forma mas rapida.

@JArandaIzquierdo
Copy link

  • Para alojar varios clientes en un servidor, la opción mas adecuada seria la virtualizacion a nivel de sistema operativo. El administrador o administradores pueden administrar el sistema operativo, dejando que los demás usuarios solo se encarguen de usarlo.
  • Para crear un sistema eficiente de web + middleware + base de datos, utilizaría una virtualizacion plena ya que con ella tendríamos un sistema completo y mas eficiente para encargarnos de todas las tareas.
  • Para un sistema de prueba de software e integración continua utilizaría la virtualizacion de entornos de desarrollo. Este tipo de virtualizacion nos permite probar nuestro software de la manera mas similar a un sistema real.

@Jesux11
Copy link

Jesux11 commented Oct 15, 2014

  • Alojamiento de varios cliente en el servidor: para mi la opción correcta es utilizar virtualización a nivel de sistema operativo ya que permite que anfitrión y cliente usen el mismo sistema operativo pero como invitados aislados del anfitrión. Una de las ventajas que posee es que los administradores pueden realizar tareas sin entorpecer a los usuarios.
  • Para crear un sistema eficiente de web+middleware+base de datos utilizaría virtualización plena ya que virtualiza todos los aspectos de un ordenador para poder ejecutar sistemas operativos y otros programas sin modificar.
  • Para un sistema de prueba de software e integración continua utilizaría virtualización de entornos de desarrollo, este tipo de virtualización nos permite llevar a cabo pruebas sobre el software lo más fieles posible a la realidad.

@josecsh
Copy link

josecsh commented Oct 15, 2014

Para alojar varios clientes en un solo servidor, la mejor opción según mi opinion es la virtualización a nivel de sistema operativo, debido a que permite maximizar los esfuerzos de administración del hardware, software y centro de datos. También permite mejorar la administración del sistema operativo por parte del administrador o administradores, dejando estas labores al margen de los usuarios, mejorando así su experiencia al usarlo.

Para crear un sistema eficiente de web + middleware + base de datos yo optaría por una virtualización de aplicaciones, puesto que puedo empaquetar desde el navegador todo lo referente al sistema web, middleware o base de datos, aislando el sistema operativo.

Para un sistema de prueba de software e integración continua usaría la virtualización de entornos de desarrollo, ya que permite reproducir entornos de producción de manera más fiable.

@VictorCoronas
Copy link

-Si queremos alojar varios clientes en un servidor, utilizaría la virtualización a nivel de sistema operativo, ya que esta nos permite aislar las cuentas de cada usuario por separado, nos permite a la vez que el anfitrión y el cliente usen el mismo sistema operativo pero aislandose entre si y por último el administrados de sistema puede gestionar todo.

-Para la creación de un sistema eficiente de web + middleware + base de datos, elegiría una virtualización plena, ya que nos permite virtualizar todo el sistema por completo, para la ejecución tanto de sistemas operativos, así como cualquier tipo de aplicación.

-Para un sistema de prueba de software e integracion continua, yo usaria la virtualizacion de entornos de desarrollo para probar en las diferentes versiones de forma más rápida, ya que consigue reproducir cada entorno de producción de la forma parecída posible.

@jorgeles
Copy link

  • Al igual que el resto pienso que para alojar varios clientes en un servidor, lo mas adecuado sería la utilización de una virtualización a nivel de sistema operativo. De esta manera el administrador solo se encarga de las tareas de administración dejando al resto de los usuarios fuera de esta labor y centrandose en el uso que le quieran dar.
  • Para crear un sistema eficiente de web + middleware + base de datos, utilizaría una virtualización plena ya que de esta manera tendríamos un sistema mas potente que nos permitiría poder realizar las tareas de una manera mas rápida y eficiente.
  • Para un sistema de prueba de software e integración continua utilizaría la virtualización de entornos de desarrollo, de esta manera podríamos probar en diferentes versiones de una manera rápida y fácil.

@DavidGSola
Copy link

  • Alojar varios clientes en un sólo servidor: utilizaría una virtualización a nivel de SO con el fin de que cada cliente se encuentre aislado del resto.
  • Crear un sistema eficiente web + middleware + bd: yo no utilizaría una virtualización plena ya que consume muchos recursos y la eficiencia se reduciría drasticamente. Utilizaría una virtualización a nivel de aplicación.
  • Sistema de pruebas software e integración continua: utilizaría una virtualización de entornos de desarrollo pudiendo reproducir fielmente el entorno de producción.

@mortega87
Copy link

  • El tipo de virtualización más adecuado para alojar varios clientes en un servidor pienso que sería virtualización a nivel de sistema operativo. Clientes y servidores utilizan el mismo sistema operativo, pero de forma independiente, y el administrador del sistema anfitrión es el encargado de configurar como van a utilizar los clientes su sistema operativo.
  • Para crear un sistema eficiente de web + middleware + base de datos pienso que lo más adecuado sería una virtualización plena, ya que con este tipo de virtualización se puede ejecutar tanto sistema operativo como otros programas sin modificar y son controlados a través de hipervisores.
  • Para un sistema de prueba de software e integración continua lo más adecuado sería la virtualización de entornos de desarrollo ya que se trata de reproducir entornos de producción de la forma más fiel posible y permite probar una aplicación en diferentes versiones con una sola orden.

@togacharls
Copy link

Alojar varios clientes en un sólo servidor: A nivel de Sistema Operativo, ya que permite que los todos invitados posean cuentas totalmente independientes unas de otras y, como han comentado mis compañeros, al utilizar el mismo sistema operativo que el anfitrión, éstos pueden despreocuparse de las actualizaciones y demás tareas de administración, las cuales serían llevadas por el administrador.

Crear un sistema eficiente de web + middleware + base de datos: Al igual que DavidGSola, utilizaría una virtualización a nivel de aplicación, dado que considero esencial reducir al máximo el uso de los recursos y, en el caso de una virtualización plena o de sistema operativo, es necesario consumir gran cantidad de recursos.

Sistema de prueba de software e integración continua: Virtualización de entornos para así poder probar el comportamiento del software generado en los distintos entornos que se deseen probar.

@jmrosell
Copy link

  • Para alojar varios clientes en un sólo servidor utilizaría virualización a nivel de sistema operativo, ya que como el anfitrión y el cliente utilizan el mismo sistema operativo, la comunicación entre ambos es mucho más fácil.
  • Para crear un sistema eficiente de web + middleware + base de datos utilizaría una virtualización de aplicaciones, debido a que una base de datos consume muchos recursos y si se quiere que sea eficiente lo mejor es utilizar una virtualización a nivel de aplicación.
  • Para un sistema de prueba de software e integración continua utilizaría una virtualización de entornos de desarrollo para reproducir los entornos de desarrollo fielmente.

@camtes
Copy link

camtes commented Oct 19, 2014

  • Para alojar varios clientes en un sólo servidor tal y como han comentado mis compañeros, usaría virtualización a nivel de sistema operativo, ya que el administrador tiene control total de todos los usuarios creados y define como pueden utilizar el sistema operativo.
  • Para la creación de un sistema eficiente de web + middleware + base de datos, elegiría una virtualización de aplicación, debido a que la base de datos consume demasiados recursos y en el caso de la virtualización plena, el rendimiento bajaría.
  • Para el sistema de pruebas de software e integración continua, lo más adecuado para mi, sería la virtualización de entornos de desarrollo, puesto que podemos crear entornos de producción para probar nuestra aplicación.

@marquina91
Copy link

  1. Para alojar varios clientes en un sólo servidor utilizaría la Virtualización plena, que nos ofrece ofrecen un aislamiento completo, opciones de elección del sistema operativo y los clientes obtendrían la sensación de un computador independiente.
  2. Para crear un sistema eficiente de web + middleware + base de datos utilizaría la Virtualización de aplicaciones, así las tendremos aisladas del resto del sistema operativo (y se ejecutarán en cualquier sistema operativo).
  3. Para un sistema de prueba de software e integración continua utilizaría la Virtualización de entornos de desarrollo, ya que al reproducir entornos de producción de la forma más fiel posible podremos probar nuestro software de una forma muy real(pudiendo probar además nuestro software en diferentes versiones).

@osquiya
Copy link

osquiya commented Oct 20, 2014

-Para alojar varios clientes en un sólo servidor: utilizaría la virtualización a nivel de sistema operativo ya que permite una implementación de clientes y administrador usando un mismo entorno hardware.
-Para crear un sistema eficiente de web + middleware + base de datos: utilizaría la virtualización plena ya que permite adaptar todos los aspectos del ordenador para utilizar programas y sistemas operativos sin necesidad de hacer cambios, lo que permite que sea eficiente.
-Para un sistema de prueba de software e integración continua: utilizaría una virtualización de entornos de desarrollo, ya que esta pensada para proporcionarnos un entorno de pruebas y producción para desarrollar nuestros programas de forma más fácil y sencilla dado que incluye versiones y librerías utilizadas para ese entorno.

@danigrz
Copy link

danigrz commented Oct 20, 2014

-En primer caso usaria la virtualizacion a nivel de sistema operativo, coincidiendo con mis compañeros, por las ventajas que esto permite en la gestion de cuentas de usuarios

-Para el sistema eficiente de middleware+web+BD usaria la virtualizacion de aplicaciones, ya que solo habria que configurar las aplicaciones necesarias y evitamos con esto más complicaciones que si tuvieramos que virtualizar el sistema operativo completo y configurarlo a nuestro requisito

-Para un sistema de prueba de software e integración continua, usaria una virtualizacion de entornos de desarrollo ya que vamos a realizar pruebas de software y este tipo de virtualizacion esta diseñado para este aspecto

@Crixo24
Copy link

Crixo24 commented Oct 20, 2014

  • Como la mayoría de mis compañeros, para alojar varios clientes en un mismo servidor, la virtualización sería a nivel de sistema operativo. De esta forma, cada cliente es completamente independiente del resto.
  • Para un sistema eficiente de web + middleware + base de datos, la virtualización sería plena. De esta forma, el sistema resultante será más potente y facilitará la ejecución de todas las apliaciones.
  • Por último, para un sistema de prueba de software e integración continua, sería una virtualización de entornos de desarrollo ya que esta tipo de virtualización está especialmente preparado para esta tarea.

@Georgevik
Copy link

  1. Alojar varios clientes en un sólo servidor. Utilizaria un sistema de virtualizacion a nivel de sistema operativo para que cada cliente pudiese realizar sus tareas independientemente del número de clientes alojados en el servidor, ya que estos se encuentran aislados unos de otros.
  2. Crear un sistema eficiente de web + middleware + base de datos. Utilizaría un sistema de virtualización pleno porque me permitirá virtualizar un sistema completo. Gracias a los programas de control se abarcarían las necesidades de crear un sistema web, middleware y una base de datos.
  3. Sistema de prueba de software de integración continua. La virtualización de entornos de desarrollo nos permitiría abordar el supuesto sistema, ya que nos facilita la labor de verificación de una aplicación en distintas versiones con una sola orden, así como, reescribirlo en diferentes lenguajes.

@juanruiztorres661
Copy link

  • Para alojar varios clientes en un sólo servidor, la virtualización plena pienso que es la opción más adecuada ya que podría darse el caso de que un cliente quiera utilizar un sistema operativo diferente al de otro. Sin tener en cuenta ese caso tambien podría ser una opción utilizar virtualización a nivel de sistema operativo en el que cada cliente estaría aislado del resto.
  • Para crear un sistema eficiente de web + middleware + base de datos la virtualización de aplicaciones es la más adecuada, quedando el software aislado del sistema operativo del anfitrión y no malgastando recursos en una virtualización plena de un sistema operativo. Aunque dependiendo de la eficiencia que se quiera lograr podría plantearse utilizar paravirtualización y junto con el necesario sistema operativo modificado se lograría que los invitados hablen directamente con el hardware del host quedando tambien aislado el sistema operativo del anfitrión.
  • Para un sistema de prueba de software e integración continua se necesita un "réplica" de la máquina de producción para que el servidor de integración pueda desplegar en ella y por ello creo que lo más adecuado es una virtualización de entornos de desarrollo.

@eleion
Copy link

eleion commented Oct 20, 2014

  • Alojamiento de varios clientes en un servidor:
    Optaría por la virtualización a nivel de sistema operativo ya que con esta opción la capa de virtualización se ejecuta como una aplicación en el sistema operativo. De este modo el núcleo del sistema operativo se ejecuta sobre el nodo de hardware con varias máquinas virtuales invitadas aisladas puesto que están instaladas sobre el mismo. De esta manera no hay sobrecarga alguna asociada con tener a cada huésped ejecutando un sistema operativo totalmente instalado. Mejorando así el rendimiento.
  • Sistema web + middleware + BD:
    Escogería la virtualización completa, esta opción no necesita de modificaciones en el sistema operativo host. Se vale de traducción binaria combinando con la ejecución directa. El sistema opertavido se desacopla en su totalidad del hardware que hay por debajo.
  • Prueba de software e integración continua:
    Elegiría la virtualización por entornos de desarrollo ya que nos permite reproducir entornos lo más similar que puede. Se pueden realizar distintas ejecuciones de multiples aplicaciones en distintos lenguajes.

@ivanortegaalba
Copy link

  • Para alojar varios clientes en un servidor : La más adecuada sería la virtualización a nivel de SO ya que permite tener un administrador para ofrecer al resto un SO actualizado y libre de fallos, pudiendo gestionar tambien las cuentas de usuario, y personalizar los entornos a los usuarios.
  • Para crear un sistema eficiente de web + middleware + base de datos : Usaríamos la virtualización de aplicaciones, que nos permitirá mejorar el rendimiento frente a la virtualización plena, y poder aislar del SO las aplicaciones y el entorno web.
  • Para un sistema de prueba de software e integración : Está se ve más claro, ya que la virtualización de entornos de desarrollo nos permitirá cambiar de forma rapida y sencilla el entorno, para poder testear el software en distintos entornos y versiones.

@JMailloH
Copy link

Alojamiento de varios clientes en un solo servidor: La más adecuada es la virtualización de sistema operativo. Con ella el administrador tiene un control total de los usuarios, permitiendo y denegando las operaciones y permisos que pueden realizar para definir qué tipo de usuarios son.

Creación de un sistema eficiente de web + middleware + base de datos: La más adecuada es la virtualización completa. De esta manera podremos modificar características del kernel para ganar en eficiencia, algo fundamental en un sistema web con base de datos.

Sistema de prueba de software e integración continua: La virtualización de entornos de desarrollo es la opción más adecuada por permitirnos reproducir de forma precisa los distintos entornos. Esta virtualización está orienta al propósito que se desea.

@enpi
Copy link

enpi commented Oct 21, 2014

Tenemos 3 diferentes escenarios:

  1. Varios clientes en un solo servidor.
  • Partiendo de la idea de que el cliente no tiene que encargarse de realizar configuraciones y administrar el sistema, lo más adecuado sería una virtualización a nivel de sistema operativo. De esta forma dispondremos de una serie de usuarios invitados, que estarán aislados del anfitrión, aunque limitados respecto a las decisiones que tome el administrador.
  1. Sistema eficiente web + middleware + base de datos.
  • Si estamos interesados en disponer de forma aislada de todo el sistema, podiendo adaptar en función de las prestaciones necesarias cada recurso del ordenador se recomendaría la virtualización plena. Sin embargo, aún limitando prestaciones, si estamos interesados en la mayor compatibilidad posible sería recomendable una virtualización a nivel de aplicaciones, puesto que una vez aislado cualquier usuario podrá lanzar nuestra aplicación independientemente de que esté instalada en su sistema.
    Al tratarse de una aplicación web donde el objetivo es llegar al mayor número de usuarios, optaria finalmente por la virtualización a nivel de aplicaciones.
  1. Sistema de prueba de software e integración continua.
  • Dado que querremos disponer de entornos de producción simulados para poder realizar pruebas sobre el software en desarrollo, lo más recomendado en este caso sería una virtualización de entornos de desarollo.

@silt99
Copy link

silt99 commented Oct 21, 2014

  1. Alojar varios clientes en un sólo servidor: Aquí coincido con lo que ha comentado la mayoría y usaría la virtualización a nivel de sistema operativo.

Por un lado, esta permite que los clientes compartan el mismo sistema, de forma que el administrador solo tiene que realizar las tareas de mantenimiento y actualización de un SO.

Por otro lado, esta virtualización permite tener a los usuarios aislados unos de otros, de forma que las actividades de un usuario no puedan potencialmente afectar a otros.
2. Crear un sistema eficiente de web + middleware + base de datos: Dado que la eficiencia es importante y dado que estamos ya condicionados al uso de un middleware, debemos de elegir la mejor plataforma para el sistema. Es por esto que creo que lo mejor es usar la virtualización plena:

Por un lado, nos permite adecuar los recursos para ejecutar el sistema en el entorno donde funcione mejor.

Por otro lado, respecto a otro tipo de virtualizaciones, sería más eficiente. Si bien, si se puede montar el sistema en un SO que este adaptado para la paravirtualización, la paravirtualización sería mejor alternativa, ya que permitiría ejecutar algunas instrucciones fuera del entorno virtualizado, aumentando la eficiencia.
3. Un sistema de prueba de software e integración continua: Usaría la virtualización de entornos de desarrollo, ya que esta permitiría que los test se realizasen en una reproducción del entorno donde luego se va a implantar el software, pudiendo obtener así datos más significativos y detectar errores debidos a una mala implantación en el entorno.

@antorof
Copy link

antorof commented Oct 22, 2014

  • Alojamiento de varios clientes en un servidor: Utilizaría una virtualización a nivel de sistema operativo para que los clientes compartieran el SO a la vez que cada uno estuviera aislado de los demás.
  • Sistema web + middleware + BD: En este caso utilizaría una virtualización plena para separar este sistema completamente del resto.
  • Sistema de prueba de software e integración continua: Para este supuesto elegiría una virtualización de entornos de desarrollo para reproducir de la manera más precisa posible entornos concretos.

@franexposito
Copy link

Virtualización para alojar varios clientes
Debido a las necesidades que se requieren para este tipo de uso y como ya han comentado mis compañeros yo me decidiría por una virtualización a nivel de sistema operativo puesto que el administrador obtiene el control total de todos los usuarios creados y define como pueden utilizar el SO.

Virtualización para crear un sistema efiiciente de web + middleware + base de datos
Para la creación de un sistema eficiente de web + middleware + base de datos, optaría por una virtualización plena ya que de esta manera mejoramos la disponibilidad, el rendimiento y la utilización de los recursos

Virtualización para sistema de prueba de software e integración continua
En este caso no tengo ninguna duda, escogería una virtualización de entornos de desarrollo ya que podemos reproducir entornos concretos para el desarrollo de aplicaciones.

@Ariacus
Copy link

Ariacus commented Oct 22, 2014

Alojar varios clientes en un sólo servidor.

Para esto como todos los demás, usaría la virtualización basada en contenedores, ya que usando esta no tendremos la sobrecarga asociada a tener a cada huésped ejecutando un sistema operativo completamente instalado.
Aparte de que mejoraria el rendimiento porque hay un solo sistema operativo encargándose de los avisos de hardware

Crear un sistema efiiciente de web + middleware + base de datos

En este caso, creo que lo mas facil seria una virtualizacion plena, para poder virtualizar todos los aspectos y mejorar el rendimiento.

Sistema de prueba de software e integración continua.

Obviamente y como opinan el resto de mis compañeros, la mejor opción sería una virtualización de entornos de desarrollo ya que de esta forma podremos tener las mismas condiciones que en un entorno de producción y poder ejectuar las pruebas de una forma realista.

@alvaromm
Copy link

  • Alojar varios clientes en un sólo servidor: para este caso tan común usaría virtualización a nivel de SO. De hecho, es la técnica que usan los llamados VPS, ya que permite que los usuarios accedan al servidor con la sensación de que disponen de sus recursos de forma íntegra.
  • Crear un sistema eficiente de web + middleware + base de datos: como se ha comentado anteriormente, en este caso usaría una virtualización plena, ya que uno de los requisitos del sistema es la eficiencia. Además, queda descartada la virtualización a nivel de SO debido a que no podemos arriesgarnos a que otros usuarios nos agoten sin recursos.
  • Sistema de software e integración continua: coincido con el resto y diría que lo más adecuado es una virtualización de entorno de desarrollo, debido a las ventajas que esta técnica presenta (como la posibilidad de probar una aplicación en diferentes versiones).

@robermorji
Copy link

Para alojar varios clientes en un mismo servidor utilizaría una virtualización a nvel de SO, ya que posibilita el control de todos los usuarios por parte de un administrador posibilitando que todos los usuarios compartan recursos.

Para la creación de un sistema eficiente web + middleware + base de datos elijo una virtualización plena ya que con esto consigo sistema operativo “huésped” para ejecutar de forma aislada web, middleware y base de datos.

Para sistema de software e integración continua eligiria virtualización para entornos de desarrollo ya que podríamos probar el software en distintos entornos para la mejora del desarrollo de la aplicación.

@ghost
Copy link

ghost commented Oct 24, 2014

Alojar varios clientes en un servidor:
Nos interesa la utilización de virtualización a nivel de S.O., ya que con ella tenemos al alcance las herramientas para proporcionar facilidades a la hora de gestionar y administrar dicho SO de cara a hacer más sencillo el abanico de usos específicos de los usuarios (clientes).

Crear un sistema eficiente web, middleware y base de datos:
Lo mejor será decantarnos por una virtualización plena. Pretendemos maximizar la eficiencia, para lo cual es importante disponer de recursos exclusivos por usuario.

Sistema de prueba de software e integración:
La virtualización de entornos de desarrollo va a ajustarse adecuadamente a nuestras necesidades, permitiéndonos probar y testear en distintos entornos de desarrollo sin complicaciones. A mayor número de entornos y facilidad de trabajo con los mismos, mayor es el número de test y más concretas sus características. Ello trae consigo la fiabilidad (robustez) deseada.

@JJ JJ mentioned this issue Oct 26, 2014
@mwlmc
Copy link

mwlmc commented Oct 26, 2014

*Alojar varios clientes:
Utilizaria una virtualizacion a nivel de sistema operativo por el gran poder de aislamiento entre la parte anfitrion y las diferentes cuentas de cada usuario.Toda las cuenta estaran aisladas unas de otras con la particuliaridad de que la cuenta anfitrion tendran acceso a la administracion de la misma cuenta.

*Para un sistema eficiente de web + middleware + base de datos:
Utilizaria una virtualizacion plena por que necesitariamos muchos recursos y este tipo de virtualizacion nos facilita dichos recuercos para dedicalos a procesos de carga muy pesada.

*Un sistema de prueba se software e integracion continua:
Utilizaria una vitualizacion de entornos por que nos facilita reproducir entornos de la forma mas fiel posible y realizando algunos testeos sobre nuestro sistema.

@hcarreras
Copy link

alojar varios clientes en un sólo servidor: Virtualización de sistema operativo. De esta forma tenemos la ventaja de que los clientes comparten el SO, haciendo que todo sea mas mantenible. Por otro lado, los clientes están aislados entre si y del servidor, lo que hace que sea más seguro.
crear un sistema eficiente de web + middleware + base de datos: Como lo que se busca es eficiencia, lo mejor sería una virtualización plena. Ya que es la que obtiene mayor rendimiento.
un sistema de prueba de software e integración continua: virtualización de entornos de desarrollo. Ya que reproduce fielmente el entorno de producción.

@santiagopuerta
Copy link

  • Para alojar a varios clientes en un sólo servidor, creo que lo más adecuado es la virtualización a nivel de sistema operativo, porque solo el administrador administraría el sistema evitando a los usuarios esa tarea.
  • Para crear un sistema eficiente de web + middleware + base de datos, creo que lo correcto sería una virtualización plena, puesto que con ella tendríamos todos los aspectos de un ordenador para poder ejecutar otros programas sin modificar.
  • Para un sistema de prueba de software e integración continua, claramente usaría la virtualización de entornos de desarrollo, ya que se reproduciría el entorno de producción de la forma más real.

@JA-Gonz
Copy link

JA-Gonz commented Oct 28, 2014

-Para varios clientes en un sólo servidor: Usaría una virtualización a nivel de SO, ya que cada usuario comparte el mismo sistema (el servidor), pero todos quedan independientes los unos de los otros, por lo que no hay problemas de seguridad y los cleintes tendrán la sensación final de que tienen un sistema dedicado

-Para crear sistema eficiente web + middleware + bd: Usaría una virtualización total. Primero, tomaría una imagen del sistema operativo y programas exclusivamente necesarios, y haría una imagen de instalación. Esa instalación la pondría en una máquina virtual, ya que así el servidor queda montado rápidamente (y repuesto en caso de pérdidas de datos, ya que tenemos la imagen de instalación). Utilizar una virtualización a nivel de aplicación necesitaría ejecutar "los emuladores" (como WINE), por lo que tenemos corriendo el SO + emulador + aplicación, gastando más recursos.

Para crear un sistema de pruebas software e integración: Yo pondría un sistema de virtualización de entornos de desarrollo, ya que será el que más representa la realidad mientras estamos haciendo los programas / scripts, y tendremos (en teoría) menos problemas a la hora de pasarlo a producción.

@sergiogvz
Copy link

  • Alojar varios clientes en un mismo servidor: Para ello, utilizaría una virtualización a nivel de sistema operativo, ya que, de esta manera, los clientes podrán acceder al sistema, quedando de manera independiente unos de otros y dando la sensación de que cada uno posee su sistema.
  • Sistema eficiente de web+middleware+base de datos: Lo más adecuado de usar sería una virtualización plena, ya que dicho sistema requiere todos los recursos de la máquina, y es la manera más propia de crear un sistema eficiente.
  • Sistema de prueba de software e integración continua: Usaría una virtualización de entornos de desarrollo que está centrado principalemente en objetivos relacionados con el desarrollo de software como el de pruebas, permitiendo la ejecución de diferentes versiones del mismo software.

@JJ JJ closed this as completed Nov 20, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests