Contenido
MODELOS DE COMPUTACION............................................................................................................ 2
TIPOS DE MODELOS DE COMPUTACION ........................................................................................ 2
VENTAJAS Y DESVENTAJAS DE SU APLICACIÓN ............................................................................. 3
COMPUTACION SOBRE CLUSTER, GRID Y CLOUD .......................................................................... 4
Beneficios de la tecnología clúster[editar]...................................................................... 4
Clasificación de los clústeres[editar] ................................................................................ 5
Componentes de un clúster[editar] ................................................................................... 5
Nodos[editar] ............................................................................................................................ 6
Característica básicas ..................................................................................................................... 7
Comparte recursos globales ....................................................................................................... 7
Seguridad .................................................................................................................................... 7
Balance de carga ......................................................................................................................... 7
Neutralidad de las distancias ..................................................................................................... 8
Cloud Computing. Estilo de computación donde las tecnologías de la información se
prestan como un servicio, estos servicios están localizados en los centros de
datos (Cloud o nubes), permitiendo a los usuarios el acceso a los servicios sin
necesidad de que el usuario tenga el conocimiento, la experiencia y la infraestructura
para poder mantener este servicio. ........................................................................................... 8
Definición ........................................................................................................................................ 8
Facilidades permitidas .................................................................................................................... 8
Comienzos ....................................................................................................................................... 8
Ventajas .......................................................................................................................................... 9
Desventajas..................................................................................................................................... 9
Tipos de Nubes ............................................................................................................................... 9
Comparaciones ............................................................................................................................... 9
TECNOLOGIAS DE VIRTUALIZACION DE CLUSTER Y DATACENTER .............................................. 10
APLICACIONES............................................................................................................................... 10
MODELOS DE COMPUTACION
Computación distribuida.- Modelo de Computación que se caracteriza por estar adaptado a la
ejecución de programas en sistemas distribuidos.
Sistema Distribuido. -
Sistema Informático compuesto por un conjunto de nodos de procesamiento(ordenadores) que se
encuentran ligados a través de una red que permite el intercambio de mensajes entre los mismos.
La computación distribuida (los sistemas distribuidos) se ha convertido en un elemento esencial en
la industria en las últimas décadas
Redes de Área Local
Internet
Aplicaciones Cliente/Servidor
¿Por qué la computación distribuida es tan popular?
TIPOS DE MODELOS DE COMPUTACION
En el contexto de Computación Distribuida se pueden distinguir los siguientes
paradigmas:
Grid Computing: Este paradigma propone el acceso de recursos deslocalizados de
diferentes tipo: cómputo, almacenamiento, instrumentos, etc.
El mismo se basa en la conformación de Organización Virtuales que comparten
recursos. El nombre proviene de una analogía con la Red de Energía Eléctrica (Power
Grid) ya que esta tecnología plantea el acceso a recursos computacionales en forma
similar a la energía obtenida enchufando un equipo a la red.
Existen dos conceptos que se están manejando indistintamente, pero que no son
exactamente equivalentes: computación Grid y computación distribuida. La
computación distribuida se refiere principalmente a la infraestructura donde se
manejan varios sistemas de infraestructura computacional conectados por una red,
que se administran de manera individual o no,[2]; mientras que la computación Grid
sigue la filosofía de que los recursos computacionales se comparten y administran
independientemente de la zona geográfica donde se ubiquen los equipos,
generalmente muy heterogéneos entre sí.[3]
High Performance Computing (HPC): En este paradigma se prima la ejecución lo
más rápido posible de las tareas. Conceptos tales como paralelización y
multiproceso entran dentro de este ámbito, y su aplicación directa es hacer que
cálculos que pueden durar semanas en un solo equipo se repartan entre varios,
dividiendo el trabajo a realizar.
High Throughput Computing (HTC): En este paradigma se prima la ejecución de la
mayor cantidad posible de tareas. Conceptos como gestión de colas y de recursos
son parte de este ámbito, y su aplicación directa pasa por la realización de la
mayor cantidad de trabajos a lo largo del tiempo.
La Tecnología Grid Computing incluye como casos particulares a la Computación de
Alto Rendimiento (HPC) y a la de Alta Disponibilidad (HTC). El paradigma de HTC
puede utilizarse con facilidad cuando se tiene una multitud de cálculos de tamaño
mediano / pequeño, y se quiere agilizar la gestión de todos ellos.
VENTAJAS Y DESVENTAJAS DE SU APLICACIÓN
Ventajas
Compartición de recursos
Cualquier recurso disponible en la red puede ser accedido por otros nodos
Ejemplos: Servidores de ficheros, Servidores de BD, Impresoras, etc.
Ahorro de costes
Los ordenadores son baratos, conectar ordenadores en red es barato ? Construir un sistema
distribuido es barato
Computación distribuida => se pueden compartir los recursos más caros
Ejemplos: Impresora a color, hardware específico, memoria, etc.
Escalabilidad Con computación monolítica, los recursos disponibles están limitados a los
presentes en un solo ordenador
Con computación distribuida, los recursos disponibles se pueden escalar introduciendo nuevos
nodos (ordenadores) en el sistema soporte
Tolerancia a fallos
Un recurso crítico puede ser replicado en varios nodos (distantes) de la red.
Ejemplo: Copias de seguidad (Backups)
Ventajas de la Comunicación
No es posible intercambiar información entre ordenadores distantes sin utilizar un modelo de
computación distribuida
DESVENTAJAS
El principal problema es el software, es el diseño, implantación y uso del software
distribuido, pues presenta numerosos inconvenientes.
Otro problema tiene que ver con las redes de comunicación. Por ejemplo: -Perdida de
mensajes, saturación en el tráfico, etc. Un problema que puede surgir al compartir
datos es la seguridad de los mismos.
En general se considera que las ventajas superan a las desventajas, si estas últimas
se administran seriamente.
COMPUTACION SOBRE CLUSTER, GRID Y CLOUD
Computacion sobre Cluster
¿Qué es un Cluster?
Un clúster es un tipo de procesamiento paralelo o distribuido. Sistema, que consiste en una
colección de interconectados computadoras independientes / completas trabajando
cooperativamente juntos como un recurso informático único e integrado.
Beneficios de la tecnología clúster[editar]
Las aplicaciones paralelas escalables requieren: buen rendimiento, baja latencia,
comunicaciones que dispongan de gran ancho de banda, redes escalables y acceso rápido a
archivos. Un clúster puede satisfacer estos requisitos usando los recursos que tiene asociados
a él.
La tecnología clúster permite a las organizaciones incrementar su capacidad de
procesamiento usando tecnología estándar, tanto en componentes de hardware como de
software que pueden adquirirse a un costo relativamente bajo de los clúster
Clasificación de los clústeres[editar]
El término clúster tiene diferentes connotaciones para diferentes grupos de personas. Los
tipos de clústeres, establecidos de acuerdo con el uso que se dé y los servicios que ofrecen,
determinan el significado del término para el grupo que lo utiliza. Los clústeres pueden
clasificarse según sus características:
HPCC (High Performance Computing Clusters: clústeres de alto rendimiento).
HA o HACC (High Availability Computing Clusters: clústeres de alta disponibilidad).
HT o HTCC (High Throughput Computing Clusters: clústeres de alta eficiencia).
Alto rendimiento: Son clústeres en los cuales se ejecutan tareas que requieren de gran
capacidad computacional, grandes cantidades de memoria, o ambos a la vez. El llevar a cabo
estas tareas puede comprometer los recursos del clúster por largos periodos de tiempo.
Alta disponibilidad: Son clústeres cuyo objetivo de diseño es el de proveer disponibilidad y
confiabilidad. Estos clústeres tratan de brindar la máxima disponibilidad de los servicios que
ofrecen. La confiabilidad se provee mediante software que detecta fallos y permite recuperarse
frente a los mismos, mientras que en hardware se evita tener un único punto de fallos.
Alta eficiencia: Son clústeres cuyo objetivo de diseño es el ejecutar la mayor cantidad de
tareas en el menor tiempo posible. Existe independencia de datos entre las tareas
individuales. El retardo entre los nodos del clúster no es considerado un gran problema.
Los clústeres pueden también clasificar en:
clústeres de IT comerciales (de alta disponibilidad y alta eficiencia) y
clústeres científicos (de alto rendimiento).
A pesar de las discrepancias a nivel de requisitos de las aplicaciones, muchas de las
características de las arquitecturas de hardware y software, que están por debajo de las
aplicaciones en todos estos clústeres, son las mismas. Más aún, un clúster de determinado
tipo, puede también presentar características de los otros.
Componentes de un clúster[editar]
En general, un clúster necesita de varios componentes de software y hardware para poder
funcionar:
nodos
almacenamiento
sistemas operativos
conexiones de red
middleware
protocolos de comunicación y servicios
aplicaciones
ambientes de programación paralela
Nodos[editar]
Pueden ser simples ordenadores, sistemas multiprocesador o estaciones de trabajo. En
informática, de forma muy general, un nodo es un punto de intersección o unión de varios
elementos que confluyen en el mismo lugar. Ahora bien, dentro de la informática la palabra
nodo puede referirse a conceptos diferentes según el ámbito en el que nos movamos:
En redes de computadoras cada una de las máquinas es un nodo, y si la red es Internet,
cada servidor constituye también un nodo.
En estructuras de datos dinámicas un nodo es un registro que contiene un dato de interés
y al menos un puntero para referenciar (apuntar) a otro nodo. Si la estructura tiene solo un
puntero, la única estructura que se puede construir con él es una lista, si el nodo tiene
más de un puntero ya se pueden construir estructuras más complejas como árboles o
grafos.
El clúster puede estar conformado por nodos dedicados o por nodos no dedicados.
En un clúster con nodos dedicados, los nodos no disponen de teclado, ratón ni monitor y su
uso está exclusivamente dedicado a realizar tareas relacionadas con el clúster. Mientras que,
en un clúster con nodos no dedicados, los nodos disponen de teclado, ratón y monitor y su
uso no está exclusivamente dedicado a realizar tareas relacionadas con el clúster, el clúster
hace uso de los ciclos de reloj que el usuario del computador no está utilizando para realizar
sus tareas.
Cabe aclarar que a la hora de diseñar un clúster, los nodos deben tener características
similares, es decir, deben guardar cierta similitud de arquitectura y sistemas operativos, ya que
si se conforma un clúster con nodos totalmente heterogéneos (existe una diferencia grande
entre capacidad de procesadores, memoria, disco duro) será ineficiente debido a que el
middleware delegará o asignará todos los procesos al nodo de mayor capacidad de cómputo y
solo distribuirá cuando este se encuentre saturado de procesos; por eso es recomendable
construir un grupo de ordenadores lo más similares posible.
Computacion GRID
Es la tecnología que permite a los dispositivos vincularse a través de una red para
compartir la potencia de cómputo o la capacidad de almacenar datos y aparecer,
operando como una sola y poderosa computadora. Mediante la combinación de sus
recursos las máquinas vinculadas en un sistema de computación grid pueden realizar
cómputos imposibles de ejecutar en una sola computadora.
La computación grid como noción ha existido por décadas, con la primera concepción
a principios de la década de los años 60, designándola como computadoras de tiempo
compartido, en los últimos cinco años que en los avances en procesamiento en las
computadoras, memoria y redes, han llegado a percibir los beneficios de esta
tecnología.
Con la diseminación de la Internet, las redes de banda ancha, y la aparición de
computadoras baratas y de alto rendimiento que utilizan estándares abiertos, el
concepto de la computación grid ha ganado actualmente una amplia aceptación.
Esta cooperación de computación permite a los usuarios corrientes realizar grandes
trabajos, tales como la modelación del sistema financiero global o la predicación
del cambio climático. Una máquina interconectada a un sistema tal, también es capaz
de acceder a una información que es demasiado voluminosa para que ella sola la
guarde. Un sistema de computación grid puede ser organizado para que funcione
como un servicio público, mediante el cual los recursos de computación están
disponibles con sólo un golpe de teclado.
Característica básicas
Comparte recursos globales.
Seguridad
Balance de carga.
Neutralidad de las distancias
Estándares abiertos.
Comparte recursos globales
Las computadoras en una red informática grid comparten los recursos de computo y
almacenamiento a través de organizaciones distribuidas geográficamente que tienen
diferentes dominios administrativos. Las computadoras individuales en una red avisan
cuando tienen capacidad de cómputo o de almacenamiento de datos disponibles y
entonces, utilizables por los dispositivos que necesitan de esos recursos.
Seguridad
La seguridad incluye cuatro aspectos interrelacionados: saber, acceso, autorización,
autentificación y contabilidad. Para el acceso los participantes especifican que
recursos (software, computadora o datos) pueden ser utilizados, por quién, a qué hora
y qué puede hacerse con ellos. El mecanismo de autorización se encarga de
chequear para comprobar si un trabajo que se solicita este conforme con las
relaciones de coparticipación establecidas. En el proceso de autentificación, se
verifica la identidad de un participante (proveedor de recursos o usuarios). Finalmente,
la contabilidad incluye la facturación por el uso; este aspecto ganará cada vez más en
importancia al pasar el grid de la fase experimental en los centros de investigación
académicos y científicos a un más alto uso por la sociedad en general. En la medida
en que los tecnólogos y los decisores de políticas traten de abordar estas
preocupaciones por la seguridad, los avances en la administración de la identidad
digital y la certificación de computadoras deben ser vistos como soluciones.
Balance de carga
Este se refiere a la necesidad de que un grid adjudique los recursos suficiente, lugar
de los humanos tratar de optimizar los recursos, miríadas de programas intermedios
permitirían a las máquinas negociar entre ellas, con algunas actuando como agentes
(informando sobre usuarios, datos y recursos) y otras como intermediarias (logrando
sobre el acceso y el pago por estos servicios) en el mercado de recursos de cómputo
y almacenamiento.
Neutralidad de las distancias
La neutralidad de las distancias se refiere a la capacidad de compartir recursos grid
desde lugares diversos y remotos con óptima eficiencia y sin demoras en el
procesamiento de los trabajos.
COMPUTACION SOBRE CLOUD
Cloud Computing. Estilo de computación donde las tecnologías de la información se
prestan como un servicio, estos servicios están localizados en los centros de
datos (Cloud o nubes), permitiendo a los usuarios el acceso a los servicios sin
necesidad de que el usuario tenga el conocimiento, la experiencia y la infraestructura
para poder mantener este servicio.
Definición
Tipo de computación donde todo lo que puede ofrecer un sistema informático se
ofrece como servicio, permitiendo que los usuarios puedan acceder a los servicios
disponibles en la nube sin conocimientos avanzados en la gestión de los recursos y
servicios que utilizan. Conocido como Computación en la Nube.
Facilidades permitidas
Es un paradigma en el que la información se almacena de manera permanente en
servidores que se encuentran conectados a Internet y se envía a cachés de clientes,
de manera temporal, lo cual permite, que la información visualizada se mantenga en
los servidores que prestan estos diferentes servicios, lo que incluye equipos de
escritorio, portátiles, móbiles, etc. La Computación en la Nube permite diversificar y
elevar el número de servicios sustentados en la red. Esto beneficia en gran parte a los
proveedores, que pueden brindar, de manera más rápida y eficiente, una mayor
cantidad de servicios, como para los usuarios que tienen la posibilidad de acceder a
ellos, de manera rápida, transparente y eficiente.
Comienzos
El término de computación en la nube comenzó en los ISP (Proveedores de Servicios
de Internet) de grandes compañias como Google, Amazon y otros que fueron
construyendo sus propias infraestructuras. Dentro de estos emergió una nueva
arquitectura: un sistema de recursos distribuidos horizontalmente, introducidos como
servicios virtuales de TI escalados masivamente y manejados como recursos
configurados y mancomunados de manera continua.
Ventajas
Integración probada de servicios Web.
Prestación de servicios de talla mundial.
No necesita instalar ningún tipo de hardware o software.
Implementación más rápida y con menos riesgos.
Gran capacidad de personalización.
Más opciones para los usuarios comerciales.
Actualizaciones automáticas que no afectan negativamente a los recursos de TI.
Contribuye al uso eficiente de la energía.
Desventajas
La centralización de las aplicaciones y el almacenamiento de los datos origina una
dependencia de los ISP (Proveedores de Servicios de Intenet)
La disponibilidad de las aplicaciones dependen de la disponibilidad de acceso a
internet.
Los datos "sensibles" del negocio no residen en las instalaciones de las empresas
por lo que podría generar un contexto de alta vulnerabilidad para la sustracción o
robo de información.
La confiabilidad de los servicios depende de la "salud" tecnológica y financiera de
los proveedores de servicios en nube.
La disponibilidad de servicios altamente especializados podría tardar meses o
incluso años para que sean factibles de ser desplegados en la red.
Seguridad. La información de la empresa debe recorrer diferentes nodos para
llegar a su destino, cada uno de ellos ( y sus canales) son un foco de inseguridad.
Escalabilidad a largo plazo. A medida que más usuarios empiecen a compartir la
infraestructura de la nube, la sobrecarga en los servidores de los proveedores
aumentará, si la empresa no posee un esquema de crecimiento óptimo puede
llevar a degradaciones en el servicio o jitter altos.
Tipos de Nubes
Las nubes públicas son manejadas por terceras partes, y los trabajos de
diferentes clientes pueden ser mezclados en los servidores.
Las nubes privadas son una buena opción para las compañías lidiando con
protección de datos y ediciones a nivel de servicio.
Las nubes híbridas combinan los modelos de nubes públicas y privadas.
Comparaciones
La computación en nube usualmente es confundida con la computación en grid (red)
(una forma de computación distribuida por la que "un súper computador virtual" está
compuesto de un conjunto ó cluster enlazado de ordenadores débilmente acoplados,
actuando en concierto para realizar tareas muy grandes)
TECNOLOGIAS DE VIRTUALIZACION DE CLUSTER Y DATACENTER
APLICACIONES
El desarrollo de los sistemas distribuidos han tomado cuerpo en función de los
avances de la tecnología informática y la baja de costos del equipamiento de las
últimas décadas.
Basados en sistemas seguros de comunicación y computadoras personales o
estaciones de trabajo cada vez más veloces, han madurado en su concepción y
desarrollo.
Por un lado con este soporte, arquitectura física y arquitectura de programación o
algorítmica, se desarrollan aplicaciones geográfica y administrativamente distribuidas.
Esto presenta el desafío de lograr el mejor aprovechamiento y rendimiento de todo el
sistema.[5]
Hay muchas áreas de aplicación donde el poder de cálculo de una computadora
simple es insuficiente para obtener los resultados deseados. Las computadoras
paralelas y distribuidas pueden producir resultados más rápidos.[6]
Sistemas Comerciales. Inicialmente fueron construidos con hardware dedicado y
entornos centralizados, son, por sus características de distribución geográfica y
necesidad de acceso a sistemas distintos, ideales para implementarse en
sistemas distribuidos. Requieren ciertas características de fiabilidad, seguridad y
protección. Algunos ejemplos son:
o Sistemas de reservas de líneas aéreas.
o Aplicaciones bancarias.
o Cajas y gestión de grandes almacenes.
Redes WAN. Debido al gran crecimiento de este tipo de redes (Internet), ha
tomado gran importancia el intercambio de información a través de la red. Por
ejemplo:
o Los servicios comunes que brinda Internet: Correo electrónico, servicio de
noticias, transferencia de archivos, la World Wide Web, etc.
o Aplicaciones Multimedia. Son las últimas incorporaciones a los sistemas
distribuidos. Estas aplicaciones imponen ciertas necesidades de hardware
para poder tener una velocidad y regularidad de transferencia de una gran
cantidad de datos. Los ejemplos de estos sistemas son:
o Videoconferencia.
o Televigilancia.
o Juegos multiusuarios.
o Enseñanza asistida por ordenador.
Áreas de la informática aplicada a los Sistemas Distribuidos.- En este punto se
tienen en cuenta toda la variedad de aplicaciones de los sistemas distribuidos,
pues su diseño involucra a muchas áreas, por ejemplo:
o Comunicaciones.
o Sistemas operativos distribuidos.
o Base de datos distribuidas.
o Servidores distribuidos de ficheros.
o Lenguajes de programación distribuidos.
o Sistemas de tolerancia de fallos.
La computación distribuida y computación de alto rendimiento (HPC, en sus siglas en
inglés) han sido estudiadas a nivel de investigación demostrando un gran potencial
para los entornos educativos y permitiendo abordar específicamente sus exigentes
requisitos no funcionales de forma relativamente fácil y asequible.