Download Instalación y configuración de clusters

Document related concepts
no text concepts found
Transcript
Instalación y
configuración de clusters
Ejemplo Sala IBM
Adrián Pousa
[email protected]
Consideraciones generales









Hardware.
Sistema operativo.
Lenguajes de programación.
Herramientas para programación distribuida
(Requerimientos de algunas herramientas).
Herramientas de squeduling y monitoreo.
Otros aspectos:
Creación de usuarios.
Directorios compartidos.
Servicios de red (dns, dhcp, firewall,NTP).
Consideraciones generales
Hardware

Homogéneo




Misma arquitectura.
Mismas características de componentes.
Facilidades: clonar, compartir configuraciones y
archivos.
Heterogéneo



Arquitectura (i386, x86_64, sparc, ppc etc.).
Distintas características de componentes.
Necesidad de recompilar archivos.
Consideraciones generales
Sistema operativo

Windows (poco usado)


Entorno grafico “pesado”.
Unix/Linux (mas usados)
Se pueden utilizar instalaciones básicas.
 Heterogeneidad en distribuciones (linux).

Consideraciones generales
Lenguajes de programación



C (Gcc - gnu, Icc - intel)
Fortran
JAVA (Gcj – gnu, Sun)
De acuerdo a las herramientas a utilizar:
 Mpi: C, Fortran.
 Pvm: C, Fortran.
 Rmi: Java.
Consideraciones generales
Herramientas de programación

Librerías para programación distribuida:
MPI
 PVM
(Requerimientos de rsh/ssh sin contraseña)


Java:


RMI
Sockets
(Requerimientos JDK, JRE)

Librerías matemáticas.



Blas (Basic Linear Algebra Subprogram)
Lapack (Linear Algebra Packcage)
MKL (Math Kernel Library - Intel)
Consideraciones generales
Squeduling y monitoreo

Las herramientas de squeduling son utiles
para gestionar las ejecuciones de varios
usuarios (Torque – Maui, SGE, Condor).

Monitoreo del estado del cluster (Ganglia).
Consideraciones generales
Usuarios

En algunos casos un mismo usuario debe
existir en cada equipo:
Mismo grupo (nombre y gid).
 Mismo nombre.
 Mismo uid.


Alternativas:
Crear en cada equipo (manual o automático).
 Centralizar (NIS, NIS+, LDAP).

Consideraciones generales
Directorios compartidos

NFS
Compartir configuraciones.
 Compartir aplicaciones.
 Compartir archivos varios:

fuentes.
 homes.
 binarios.
 Etc.

Consideraciones generales
Servicios de red




Útil configurar DNS para evitar modificar
archivos de hosts.
FIREWALL: Si el cluster va a tener acceso
desde/hacia el exterior (laboratorio remoto).
Direcciones de red, estáticas o dinámicas
(DHCP).
NTP.
Consideraciones generales
Soluciones

Configurar todas las herramientas suele ser
costoso, opciones:
Distribuciones de configuración automática
(facilita la tarea pero muchas veces no se sabe
como esta configurado, problema si se quiere
hacer algún cambio).
 Configurar cada herramienta manualmente
(complejo pero se tiene mayor control).

Consideraciones generales
Herramientas automáticas

Rocks cluster (www.rocksclusters.org)
Versión 5 basada en Centos.
 Frontend y varios nodos.
 Frontend con servicios: DNS, DHCP, MySQL,
NTP, HTTP.
 Instalación de nodos rápida (reinstalación).
 Concepto de roles.

Consideraciones generales
Herramientas automáticas
Consideraciones generales
Herramientas automáticas

Rocks cluster roles
Area 51: utilidades para analizar la integridad de
archivos y el kernel en el cluster.
 Bio: Bioinformática.
 Ganglia: Monitoreo del cluster.
 HPC: Herramientas para paralelizar.
 Sun Grid Engine (SGE): scheduler y colas.
 Xen: Virtualizacion.

Consideraciones generales
Herramientas automáticas

Otras:
OpenSCE (www.opensce.org)
 Oscar (oscar.openclustergroup.org)
 Warewulf (warewulf-cluster.org)
 xCAT (IBM)(www.xcat.org)
 Clustermatic(www.clustermatic.org)
 Clubmask(clubmask.sourceforge.net)
 Score(www.pccluster.org)

Sala IBM









Hardware 100% homogéneo.
Equipos que se utilizan de escritorio.
Uso de alumnos e investigadores.
MPI – Lenguaje C.
Algunos casos JAVA (RMI - Sockets).
Blas.
Laboratorio remoto.
Acceso desde y hacia el exterior.
Configuración manual, mayor control.
Sala IBM
Hardware y Sistema operativo



Hardware 100% homogéneo.
Sistema operativo Fedora 8.
Dos particiones:
Investigación.
 Cátedras.


Configuración:
Servidor.
 Clientes: un solo equipo y luego clonar.

Sala IBM
Lenguajes de programación

C (Gcc 4.1 y librerias provistas por Fedora).

JAVA (JDK 1.6 de www.sun.com).
Sala IBM
Herramientas

MPI:
Lam MPI versión 7.1.4: www.lam-mpi.org.
 Requiere acceso rsh entre todos los equipos.
 Se puede hacer vía ssh (copiar clave publica).
 Instalación y variables de ambiente.



JAVA(rmi)
Librerías matemáticas:

Blas
Sala IBM
Herramientas

MPI:

RSH:
Instalar rsh-server.
 En el home de cada usuario crear el archivo .rhosts
con los hosts que se les permite el acceso.
(permiso de lectura/escritura solo para el propietario)
 Fedora:


Habilitar los servicios rsh, rlogin y rexec en xinetd.
Sala IBM
Herramientas

MPI:

SSH sin contraseña:
Crear la variable de ambiente:
export LAM_RSH=“SSH”
Luego:
Suponer que el usuario UA de la maquina MA quiere
acceder por SSH sin contraseña a la maquina MB
como usuario UB.

Sala IBM
Herramientas

MPI:

SSH sin contraseña:

En la maquina MA ingresar como usuario UA y
ejecutar:
ua@ma# ssh-keygen –t rsa
Pide una contraseña hay que dejarla en blanco, luego deja dos
archivos en <ua home>/.ssh:

id_rsa (clave privada)

id_rsa.pub (clave publica)
Sala IBM
Herramientas

MPI:

SSH sin contraseña:
Copiar el archivo id_rsa.pub a la maquina MB.
 En la maquina MB, agregar el contenido del archivo
id_rsa.pub al archivo:

<ub home>/.ssh/authorized_keys
(solo permiso de lectura para el propietario )
Probar desde MA como usuario UA hacia MB con el
usuario UB y no debería pedir contraseña:
ua@ma# ssh ub@mb
Sala IBM
Herramientas

MPI:

Instalación y variables de ambiente:

Por defecto (no prefix).

Personalizada (fácil de cambiar versiones):

Configurar PATH para ubicar los binarios:
 General.
 Local a cada usuario.
Sala IBM
Herramientas

JAVA:
Fedora GCJ (gnu java).
 Instalación de Sun JDK 1.6.
 Configurar la variable JAVA_HOME para que
tome JAVA de Sun.

Sala IBM
Herramientas

Blas:
Instalación de rpm reubicándolos para
centralizarlo y no instalarlo en cada equipo:
blas-3.1.1-2.fc8.i386.rpm
blas-devel-3.1.1-2.fc8.i386.rpm
Sala IBM
Usuarios




Autenticación centralizada.
Anteriormente NIS.
Actualmente LDAP (Lightweight Directory
Access Protocol ).
OpenLDAP.
Sala IBM
Usuarios

LDAP (Lightweight Directory Access Protocol )



Protocolo que permite el acceso a un servicio de directorio
(aplicaciones que almacenan y organizan información, optimizado
para lecturas).
Almacena información de usuarios y grupos permitiendo
autenticación.
Es posible almacenar otra información:






Datos de contacto del usuario.
Ubicación de diversos recursos de la red.
Permisos.
Certificados.
Roles.
Etc…
Sala IBM
Usuarios

LDAP – Modelo de información

El directorio consiste en una o mas entradas
que pueden tener atributos, por ejemplo:
Dn: uid=Juan, ou=People, cd=info, cd=UNLP
Mail: [email protected]
Tel: 4432345


Cada entrada tiene un nombre distinguido único DN.
Pueden almacenarse varias entradas para ser guardadas
en el directorio en un archivo .ldif.
Sala IBM
Usuarios

LDAP – Modelo de nombres
Se organiza en forma de árbol.
 Cada nodo puede tener información a diferencia
de otras estructuras que tienen solo en hojas.

Sala IBM
Usuarios

LDAP – Modelo de nombres

Algunas entradas comunes:
Raíz
People
Group
Hosts
Sala IBM
Usuarios

LDAP (OpenLDAP)

Configuración:
Servidor.
 Clientes.

Otras alternativas a OpenLDAP:
Sun Java system Directory Server.
 Fedora Directory Server.

Sala IBM
Usuarios

LDAP (OpenLDAP) - Servidor:


Instalación via yum fedora.
Configurar el archivo slapd.conf.



Agregar el sufijo:
suffix “dc=server,dc=unlp,dc=edu,dc=ar”
Agregar el manager:
rootdn “cn=Manager,<sufijo>”
o bien
rootdn “uid=root,<sufijo>”
Establecer la contraseña:
rootpw password
Sala IBM
Usuarios

LDAP (OpenLDAP) – Servidor.

Configurar el archivo lap.conf.


Agregar entradas:
HOST <nombre de host>
BASE <sufijo>
Agregar al directorio la raiz mediante un archivo ldif.
dn: dc=server,<sufijo>
objectclass: dcobject
objectClass: organization
o: server
dc: server
root# ldapadd -x -D 'uid=root,dc=server,<sufijo>' -W –f raiz.ldif
Sala IBM
Usuarios

LDAP (OpenLDAP) – Clientes.


PAM (Pluggable Authentication Module) mecanismo
que proporciona una interfaz entre las aplicaciones de
usuario y diferentes métodos de autenticación.
Archivo nsswitch.conf, indica que mecanismo utilizar
y en que orden. Ejemplo:
Passwd files ldap
Group files ldap
Hosts dns files ldap
En fedora automaticamente desde la grafica.
Sala IBM
Usuarios

LDAP (OpenLDAP) – Clientes.


En fedora automáticamente desde la grafica
indicando servidor y base.
Manual:

Configurar el archivo lap.conf.


Agregar entradas:
HOST <nombre de servidor>
BASE <sufijo> (base de busqueda)
Configurar PAM, archivos individuales, algo complejo.
Sala IBM
Usuarios

LDAP
Ventajas:
No replicar en altas masivas de usuarios.
Autenticación de aplicaciones, servidores etc.
No solo autenticación (DNS, Roles etc).
Desventajas:
Debe existir un servidor de replica sino al caer
el servidor cae el sistema.
Interfaces de administración (phpldapadmin).
Sala IBM
Directorios compartidos

NFS(Network File System)
Es un protocolo utilizado para sistemas de
archivos distribuidos en un entorno de red
de computadoras de área local.
Transparencia: distintos equipos conectados
a una misma red accedan a archivos remotos
como si fueran locales.
Sala IBM
Directorios compartidos

NFS(Network File System)
Varios directorios compartidos en el servidor
para:
No instalar aplicaciones en todos los equipos.
 No hacer configuraciones en todos los equipos.
 Compartir archivos.
 Evita la transferencia de archivos (caso MPI).
 Transparencia. Ej: Home directory de usuarios.

Sala IBM
Directorios compartidos

NFS(Network File System)
Aplicaciones:
MPI.
 JAVA.
 ECLIPSE.
 BLAS.
 Otras que permitan acceso de este tipo.

Sala IBM
Directorios compartidos

NFS(Network File System)
Home directory:
Transparencia.
 Disponibilidad de archivos.
 Configuraciones de variables de ambiente
locales, ssh, aplicaciones.

Desventaja de no poder loguearse en la grafica con el mismo usuario en dos equipos simultáneamente.
Sala IBM
Directorios compartidos

NFS(Network File System)
Directorio compartido general:
Para compartir archivos entre los usuarios
del sistema o aplicaciones.
Sala IBM
Directorios compartidos

NFS(Network File System)

Configuración en el servidor:
Archivo /etc/exports, las entradas tienen la forma:
/dir/subdir

192.168.0.0/255.255.255.0(rw)
Configuración en el cliente:
Archivo /etc/fstab, las entradas son:
192.168.0.2:/home /mnt/nfs nfs rw,hard,intr 0 0
Sala IBM
Directorios compartidos

NFS(Network File System)

Ventajas:
Facilita la administración.
 Transparencia.


Desventajas:
Caída del servidor
 Overhead en la red en algunos casos.

Sala IBM
Laboratorio remoto



Abstraer al usuario del cluster.
Aplicación que permite la ejecución vía web
sobre el cluster.
Dar mayor disponibilidad del cluster
solucionando problemas de acceso:
Alumnos e investigadores.
 SSH limitado por seguridad.
 Lograr mejor interacción( aprovechar RIA AJAX).

Sala IBM
Laboratorio remoto
Request
Web Browser
JSP Response
Servidor Web
Contenedor de aplicaciones
Struts Framework
Aplicación JAVA
BD
Ambiente MPI
Sistema Operativo
Hardware
Cluster
Cluster A
Cluster B
46
Sala IBM
Laboratorio remoto



Ambiente de trabajo (Sistema de archivos).
Editar, compilar y ejecutar archivos.
Varios modos de ejecución:




Sincrónico.
Asincrónico.
Interactivo.
Otras acciones:



ABM de equipos y clusters.
ABM usuarios.
Permisos de acceso.
Por el momento solo en test.
Sala IBM
Laboratorio remoto
Sala IBM
Laboratorio remoto

Ventajas:
Acceso al cluster como recurso compartido
(ejecución controlada, detener corridas).
 Mayor interacción (aprovechando RIA - AJAX)


Desventaja:
El uso del cluster como escritorio.
 Problemas ante caída de un equipo.

Sala IBM
Servicios de red




Por el momento sin DNS posibilidad de
configurarlo mas adelante, resolución de
nombres por LDAP.
Firewall (iptables) salida a Internet, acceso
remoto.
Direcciones de red estáticas.
NTP.
Sala IBM
Escalabilidad

Agregado de otros equipos:
Misma arquitectura.
 Mismo sistema operativo (versiones).
 Algunos problemas compilando en versiones
anteriores.


Sumar otro cluster
Sala IBM
Escalabilidad

Agregado de otros equipos:
Misma arquitectura.
 Mismo sistema operativo (versiones).
 Algunos problemas compilando en versiones
anteriores.


Sumar otro cluster
Sala IBM