SINTESIS SISTEMAS DISTRIBUIDOS

download SINTESIS SISTEMAS DISTRIBUIDOS

of 10

description

RESUMEN GENERAL DE LA MATERIA DE SISTEMAS DISTRIBUIDOS

Transcript of SINTESIS SISTEMAS DISTRIBUIDOS

INSTITUTO TECNOLOGICO DE TAPACHULA.

MATERIA:SISTEMAS DISTRIBUIDOS

MAESTRO:RAUL MONZON.

ALUMNO:FELIPE DE JESUS MENDEZ GARCIA.

Miercoles 27 de Mayo del 2015.

TEMARIO5.- APLICACIN DISTRIBUIDA EN AMBIENTES GRFICOS.35.1- Accesos A Recursos Distribuidos.35.2- Procedimientos Remotos RMI35.3- Clientes y Servidores RMI45.4.- Desarrollo de Aplicaciones Cliente Servidor distribuidas que hagan uso de RMI.46.- USOS Y TEMDENCIAS DE LOS SISTEMAS DISTRIBUIDOS.56.1.- Administracin de Sistemas Distribuidos.56.1.1 Instalacin y Configuracin.56.1.2.- Estndares de Administracin en Sistemas Distribuidos.5

INTRODUCCION.

Sistemas distribuidos incluye las actividades como: manejo de la versin y distribucin del software, monitoreo de la utilizacin de los recursos y el mantenimiento del sistema de seguridad, entre otros.Los administradores de sistemas distribuidos se ocupan de monitorear continuamente al sistema y se deben de asegurar de su disponibilidad. Para una buena administracin, se debe de poder identificar las reas que estn teniendo problemas as como de la rpida recuperacin de fallas que se puedan presentar. La informacin que se obtiene mediante el monitoreo sirve a los administradores para anticipar situaciones crticas. La prevencin de estas situaciones ayuda a que los problemas no crezcan para que no afecten a los usuarios del sistema.

5.- APLICACIN DISTRIBUIDA EN AMBIENTES GRFICOS.5.1- Accesos A Recursos Distribuidos.

De esta forma se hace posible manejar problemas que presentan un alto costo computacional o de memoria - como la modelacin de la estructura espacial de protenas o el procesamiento de datos recolectados por radio telescopios empleando un grupo de ordenadores conectados en red de forma que se integren en una arquitectura virtual capaz de distribuir tareas a travs de una plataforma paralela. Permiten realizar tareas de clculo que involucren grandes cantidades de datos fragmentado estos en conjuntos ms pequeos; adems brindan la capacidad para ejecutar muchas ms instrucciones por unidad de tiempo que los ordenadores corrientes, empleando un modelo de procesos que pueden ser llevados en paralelo.

Un sistema distribuido puede verse de manera abstracta como un conjunto de gestores de recursos y un conjunto de programas que usan los recursos. Los usuarios de los recursos se comunican con los gestores de los recursos para acceder a los recursos compartidos del sistema. Esta perspectiva nos lleva a dos modelos de sistemas distribuidos: el modelo cliente-servidor y el modelo basado en objetos.

5.2- Procedimientos Remotos RMIProcedimientos Remotos

RMI ("Remote Method Invocation") y algunas alternativas como CORBA y COM son mecanismos para invocar o ejecutar procedimientos remotos en computadoras servidores distribuidos.

Procedimientos Remotos? Para qu?

La gran mayora de los sistemas empresariales hoy en da requieren de esta funcionalidad, esto se debe tanto a distancias geogrficas como a requerimientos de cmputo, ya que sera iluso pensar que las necesidades de cmputo de TODA una empresa fueran satisfechas por una sola computadora y/o servidor.

5.3- Clientes y Servidores RMILa arquitectura RMI puede verse cmo un modelo de cuatro capas:La primera capa es la de aplicacin y corresponde a la implementacin real de las aplicaciones cliente-servidor. Aqu tiene lugar las llamadas a alto nivel para acceder y exportar objetos remotos.La capa 2 es la capa proxy, o capa stub-skeleton. Esta capa es la que interacta directamente con la capa de aplicacin. Todas las llamadas a objetos remotos y acciones junto con sus parmetros y retorno de objetos tienen lugar en esta capa.La capa 3 es la de referencia remota, y es responsable del manejo de la parte semntica de las invocaciones remotas. Tambin es responsable de la gestin de la replicacin de objetos y realizacin de tareas especficas de la implementacin con los objetos remotos, como el establecimiento de las persistencias semnticas y estrategias adecuadas para la recuperacin de conexiones perdidas.La capa 4 es la de transporte. Es la responsable de realizar las conexiones necesarias y manejo del transporte de los datos de una mquina a otra.Toda aplicacin RMI consta de dos partes: Servidores RMI: Crea objetos remotos, crea referencias para hacerlos accesibles y espera a que el cliente los invoque. Clientes RMI: Obtiene una referencia a objetos remotos en el servidor, y los invoca.5.4.- Desarrollo de Aplicaciones Cliente Servidor distribuidas que hagan uso de RMI.Un ejemplo concreto, los pasos seguidos para elaborar una aplicacin con objetos distribuidos RMI. Esta aplicacin ejemplo proporcionar un servicio que acepta peticiones de tareas concretas especificadas por parte de los clientes. Es decir, cada cliente puede especificar la tarea que desea que el servidor le realice, utilizando para ello el paso de objetos serializados.

En primer lugar se escribe la interfaz remota del servidor, que en este caso se llamar ejecutor. Se implementa la interfaz remota. La clase que la implementa debe heredar de RemoteServer y lo habitual es hacerlo heredando de UnicastRemoteObject. Se generan los archivos stub y skeleton a partir de la clase que implementa la interfaz remota. Se inicia el servicio de registro RMI, rmiregistry. Un host que quiera exportar referencias remotas a sus mtodos de modo que los stubs puedan acceder a ellos, debe estar ejecutando un servidor de registro RMI. Se inicia un proceso servidor y se registra en el rmiregistry. Una vez compilada y ejecutada, queda registrada. Se escribe la clase cliente, se compila la clase cliente, Se inicia un proceso cliente.

6.- USOS Y TEMDENCIAS DE LOS SISTEMAS DISTRIBUIDOS.

6.1.- Administracin de Sistemas Distribuidos.Los administradores de sistemas distribuidos se ocupan de monitorear continuamente al sistema y se deben de asegurar de su disponibilidad. Para una buena administracin, se debe de poder identificar las reas que estn teniendo problemas as como de la rpida recuperacin de fallas que se puedan presentar. La informacin que se obtiene mediante el monitoreo sirve a los administradores para anticipar situaciones crticas. La prevencin de estas situaciones ayuda a que los problemas no crezcan para que no afecten a los usuarios del sistema.6.1.1 Instalacin y Configuracin.

Configuracin del dispositivo de arranque en la BIOS Creacin de las particiones en el disco duro Creacin del sistema de ficheros Seleccin de paquetes Configuracin. Instalacin y configuracin de aplicaciones.6.1.2.- Estndares de Administracin en Sistemas Distribuidos.Se ocupan de:1. Canalizar las comunicaciones entre los objetos locales y los remotos.2. Empaquetar los parmetros que el cliente pasa al mtodo remoto y el resultado que el mtodo devuelve al cliente.3. Localizar al objeto remoto a partir de una referencia.6.3.- Instalacin de ClusterCmo configuro mis mquinas para el cluster?Se debe tener instalada alguna de las distribuciones de Linux en las mquinas, en mi caso tengo Ubuntu 8.04 y tener configurada una conexin de red entre las computadoras, para este ejemplo estoy usando un switch; las IP deben ser fijastanto en el administrador como en los nodos, para ello se da click derecho en conexin de red cableada, entrar a la configuracin manual he introducir la contrasea del administrador, en las propiedades de eth0 desactivar el modo itinerante y modificar la IP .CLUSTER EN LINUX.Instalacin de paquetesDesde el Gestor de Paquetes Synaptic se instalan los siguientes paquetes en la terminal Administrador y de la misma forma en los nodos: mysql-server-5.0 mysql-client-5.0 mysql-adminSistema -> Administracin -> Gestor de Paquetes SynapticMarcar los paquetes para instalarlos:Mediante comandos:-> sudo apt-get install ms el nombre del paquete-> sudo apt-get install mysql-server-5.0

En la instalacin de este paquete se solicita introducir una contrasea para el usuario root de MySQL:Configuracin del nodo AdministradorDebe crearse un fichero que se llame ndb_mgmd.cnf en la direccin /etc/mysql, usando el editor de texto gedit o cual sea que usen:-> sudo gedit /etc/mysql/ndb_mgmd.cnf

Dicho archivo debe llenarse con lo siguiente:[NDBD DEFAULT]NoOfReplicas=2DataMemory=80M # cantidad de memoriaIndexMemory=18M # cantidad de memoria#Configuracion del Cluster[MYSQLD DEFAULT][NDB_MGMD DEFAULT][TCP DEFAULT]#En esta seccin vamos a configurar el nodo administrativo del cluster[NDB_MGMD]HostName=192.168.1.6#IP del nodo administrativo[NDBD]#Seccin de los nodos de almacenamiento#IP del primer nodoHostName=192.168.1.7DataDir=/var/lib/mysql-clusterBackupDataDir=/var/lib/mysql-cluster/backupDataMemory=128M[NDBD]#IP del segundo nodoHostName=192.168.1.8DataDir=/var/lib/mysql-clusterBackupDataDir=/var/lib/mysql-cluster/backup DataMemory=128M#Por cada nodo debemos de incluir un [MYSQLD][MYSQLD][MYSQLD]De la misma manera editar el archivo my.cnf (fichero de configuracin que ya existe) y comentar la lnea bind-address:-> sudo gedit /etc/mysql/my.cnfse guarda cada cambio realizado en los ficheros.Configuracin del nodo de almacenamientoDe igual forma se configura el nodo de almacenamiento abriendo el mismo archivo:-> sudo gedit /etc/mysql/my.cnfuna vez que se haya abierto el archivo se busca la etiqueta[mysqld]y bajo ella escribir lo siguiente, que ser la cedena de coneccin al motor de MySQL:ndbclusterndb-connectstring=192.168.1.50 #IP del nodo administradordentro del mismo archivo ubicar la lneabind-address = 127.0.0.1 y comentarlaagregndoleal inicio un #casi al final del archivo se encuentra la etiqueta[MYSQL_CLUSTER], descomentarla y sustituir la IP por default por la IP del administrador en la cadena de conexin.hay que crear una carpeta donde se guarde toda la informacin del cluster y cambiarle el usuario y propietario a MySQL, usando los respectivos comandos para cada instruccin:-> sudo mkdir /var/lib/mysql-cluster/backup-> sudo chown mysql:mysql /var/lib/mysql-cluster

Reinicio de demoniosUna vez configurados todos los nodos se deben reiniciar los demonios en cada nodo empezando por el administrador:-> sudo /etc/init.d/mysql-ndb-mgm restartEn los nodos de almacenamiento se deben reiniciar dos demonios:-> sudo /etc/init.d/mysql restart-> sudo /etc/init.d/mysql-ndb restartAhora que estn ya configurados los nodos de almacenamiento en el nodo administradorrevisar que la conexin entre ellos exista, para esto el administrador debe ejecutar los siguientes comandos:-> ndb_mgm-> show;Comprobacin del MySQL ClusterPara acceder a MySQL se necesita el siguiente comando:-> sudo mysql -u root -pen el nodo administrador verificar las bases de datos existentes y crear una, para esta comprobacin se crea una base de datos llamada ITT:-> show databases;-> create database ITT;de igual manera en cada nodo de almacenamiento acceder a MySQL y crear una base de datos con el mismo nombre.En el primer nodo de almacenamiento verificar la base de datos que se cre para comprobar que no tiene tablas an y crearle una, para el ejemplo se llama informatica_alumnos:-> use ITT;-> show tables;-> create table informatica_alumnos (matricula int (4), nombre varchar (20)) engine=ndbcluster;en el segundo nodo de almacenamiento checar que se haya cumplido la replica e insertar un registro en la tabla:-> show tables;-> insert into informatica_alumnos values (0001, Gustavo);-> select * from informatica_alumnos;Verificar que el registro se visualice tambin en el primer nodo e ingresar un nuevo registro:-> select * from informatica_alumnos;-> insert into informatica_alumnos values (2, Teresa);Finalmente comprobar que ese ltimo registro se haya actualizado en el segundo nodo:-> select * from informatica_alumnos;Con esto queda demostrado que el MySQL Cluster funciona correctamente.Nota: si por alguna razn no queda a la primera y tienen que desinstalar los paquetes para volver a configurar, es recomendable que formateen, en mi caso tuve que recurrir a eso con dos nodos, porque ni con lneas de comando me ha funcionado.-> sudo apt-get remove nombre del paquete-> sudo apt-get purgue nombre del paquete-> sudo apt-get clean nombre del paqueteSe est borrando el paquete, los archivos de configuracin y borrando del disco los archivos descargados para la instalacin; de esta forma queda listo para volver a instalar los paquetes.10