1. Monitorización
en
OpenSolaris
Víctor M. Fernández
Comunidad OpenSolaris Hispano
http://vfernandezg.blogspot.com
vfernandezg@gmail.com
2. Agenda
Historia
●
Que es OpenSolaris?
●
Negocio – Tecnologías
●
Gestión de la Capacidad
●
Gestión de la Disponibilidad
●
Gestión de la Configuración
●
Recursos e información
●
3. Agenda
Historia
●
Que es OpenSolaris?
●
Negocio – Tecnologías
●
Gestión de la Capacidad
●
Gestión de la Disponibilidad
●
Gestión de la Configuración
●
Recursos e información
●
4. Un poco de historia
OpenSolaris nace en Junio de 2005
●
TM
Base de desarrollo de Solaris 11 (Nevada)
●
● Licencia CDDL de código abierto aprobada
por la OSI (Open Source Initiative)
● Creación del portal opensolaris.org
(proyectos: http://www.opensolaris.org/os/projects
comunidades: http://www.opensolaris.org/os/communities)
Creación de grupos de usuarios locales
●
● La innovación y el conocimiento están en
marcha
6. Agenda
Historia
●
Que es OpenSolaris?
●
Negocio – Tecnologías
●
Gestión de la Capacidad
●
Gestión de la Disponibilidad
●
Gestión de la Configuración
●
Recursos e información
●
7. Que es OpenSolaris?
Proyecto de código abierto patrocinado
●
inicialmente por Sun Microsystems
Esfuerzo por unir a las comunidades de
●
desarrolladores de cualquier organización de
tipo Open Source
Cualquiera puede contribuir en el código de
●
OpenSolaris y mejorar la tecnología de las
distribuciones -> OpenGrok
8.
9. Distribuciones Binarias
SolarisTM 10 5/08
●
● SXCE Build 91 (Hypervisor xVM <- Xen)
Solaris Express Community Edition
● SXDE 1/08
(xVM, SAMP, CIFS + NetBeans 6, Sun Studio 12 y DLight)
Solaris Express Developer Edition
● Nexenta
(Solaris kernel + Entorno usuario / paquetes estilo Ubuntu)
Polaris (PowerPC)
●
● Belenix, SchilliX y Damm Small (Live CD)
● marTux (Live DVD - Sparc)
10. Distribuciones Binarias - INDIANA
Producto final de usuario
●
● Binario compilado por la comunidad
● Live CD/DVD, con posibilidad de instalación
● Actualización via repositorios online
● Nuevo instalador gráfico (Caiman)
● Sistema de paquetes al estilo apt
● (IPS: Image Packaging System)
● Distribution Constructor Toolkit
● (Contruye tu propia distribucion)
● 100% redistribuíble... GPLv3?
11.
12.
13. Agenda
Historia
●
Que es OpenSolaris?
●
Negocio – Tecnologías
●
Gestión de la Capacidad
●
Gestión de la Disponibilidad
●
Gestión de la Configuración
●
Recursos e información
●
15. Tecnologías
Gestión de la Capacidad:
●
✔ LOCAL: Ordenes del sistema:
➢ vmstat, iostat, mpstat, sar y prstat
➢ Extensiones del DTRACE Toolkit
✔ REMOTA: dim_STAT (GPL)
➢ Gestión a través de agentes
➢ Sistemas gestionados: OpenSolaris/Linux
✔ REMOTA: Cacti (GPL)
➢ Gestión, a través de SNMP v1/2/3
➢ Sistemas OpenSolaris/Linux/Windows...
16. Tecnologías
Gestión de la Disponibilidad:
●
✔ LOCAL y REMOTA: WebMIN (BSD)
➢ Gestión a través de conectores
✔ REMOTA: Nagios (GPL)
➢ Gestión a través de conectores y agentes
➢ Orientado a medir y evaluar el servicio
● Gestión de la Configuración:
✔ Completa: OneCMDB (GPL)
➢ Inventario de todos los activos IT
➢ Relacciones y vinculos entre los CI
17. Agenda
Historia
●
Que es OpenSolaris?
●
Negocio – Tecnologías
●
Gestión de la Capacidad
●
Gestión de la Disponibilidad
●
Gestión de la Configuración
●
Recursos e información
●
18. Gestión de la Capacidad
Ordenes del sistema:
●
✔ vmstat => consumo Memoria y Swap
✔ iostat => consumo acceso a Discos
✔ mpstat => consumo global CPU
✔ sar => conjunto de las anteriores,
planificado segun el gestor de tareas cron:
# crontab -l sys
0 * * * 0-6 /usr/lib/sa/sa1
20,40 8-17 * * 1-5 /usr/lib/sa/sa1
5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A
prstat => consumo CPU y estado / proceso
✔
19. Gestión de la Capacidad
Extensiones del DTRACE Toolkit
●
cpuwalk.d - Identifica si un proceso esta corriendo en
✔
multiples CPUs de forma concurrente o no.
✔ iotop: Similar al conocido top, mostrando la utilización
de los discos, por distintos procesos del sistema
✔ diskhits: Muestra la carga del sistema, similar a uptime
✔ xvmstat: Versión mejorada de vmstat, que muestra la
memoria libre y uso del área de swap
✔ tcpstat.d: Estadisticas del uso de la pila TCP
✔ udpstat.d: Estadisticas del uso de la pila UDP
✔ httpdstat.d: Estadisticas de peticiones GET, POST,
HEAD y TRACE recibidas por Apache
20. Gestión de la Capacidad - dim_STAT
Arquitectura Web Bicapa
●
21. Gestión de la Capacidad - dim_STAT
# gzip -d dim_STAT-v81-sol86.tar.gz (Server)
# tar -xvf dim_STAT-v81-sol86.tar
# ./INSTALL.sh
# ls -ltr /etc/rc2.d/S*
/etc/rc2.d/S99dimstat -> /apps/ADMIN/dim_STAT-Server
# cd /apps/httpd/bin
# ./htpasswd -c /apps/httpd/etc/.htpasswd vfernandezg
# cat > /apps/httpd/home/cgi-bin/.htaccess
AuthName quot;Welcome to dim_STAT Hostquot;
AuthType Basic
AuthUserFile /apps/httpd/etc/.htpasswd
require valid-user
# cp .htaccess /apps/httpd/home/docs
25. Gestión de la Capacidad - dim_STAT
Identificar los sistemas gestionados
✔
●
● Arrancar el agente de cada uno de ellos
● Declararlos en el lado del Servidor
28. Gestión de la Capacidad - dim_STAT
Dos métodos de monitorización:
✔
●
✔ Sistemas por separado (CPU, RAM, Zonas...)
✔ Sistemas de forma conjunta (Discos, Red...)
33. Gestión de la Capacidad - Cacti (Agente)
Monitorización en base a protocolos de la pila UDP
●
● Necesario en los sistemas a gestionar, un agente
SNMP v1, 2 y 3.
(www.sunfreeware.com)
# gzip -d netsnmp-5.4.1.1-sol10-x86-local.gz
# pkgadd -d netsnmp-5.4.1.1-sol10-x86-local
(http://www.blastwave.org/)
# pkgadd -d http://www.blastwave.org/pkg_get.pkg
# vi /opt/csw/etc/pkg-get.conf
url=http://blastwave.network.com/csw/unstable
# /opt/csw/bin/pkg-get -i wget
# /opt/csw/bin/pkg-get -i netsnmp
35. Gestión de la Capacidad - Cacti (Server)
Necesitamos un entorno de tipo SAMP, es decir un
●
Servidor Web de tipo Apache, con plugging de Php
y a su vez este último con el modulo de Mysql.
# gzip -d cacti-0.8.7b.tar.gz
# cd /var/apache2/2.2/htdocs/
# tar -xvf cacti-0.8.7b.tar
# /usr/mysql/5.0/bin/mysqladmin -u root -p create cacti
# /usr/mysql/5.0/bin/mysql cacti < cacti.sql
# /usr/mysql/5.0/bin/mysql -u root -p
mysql> GRANT ALL ON cacti.* TO cactiuser@localhost
IDENTIFIED BY 'somepassword';
mysql> flush privileges;
36. Gestión de la Capacidad - Cacti (Server)
Una vez alojado el producto, configuramos la
●
conexión a la BBDD en cuestión:
# vi cacti/include/config.php
$database_type = quot;mysqlquot;;
$database_default = quot;cactiquot;;
$database_hostname = quot;localhostquot;;
$database_username = quot;cactiuserquot;;
$database_password = quot;somepasswordquot;;
$database_port = quot;3306quot;;
# chown -R webservd:webservd cacti/rra/ cacti/log/
# crontab -l
* * * * * php /var/../htdocs/cacti/poller.php > /dev/null 2>&1
42. Agenda
Historia
●
Que es OpenSolaris?
●
Negocio – Tecnologías
●
Gestión de la Capacidad
●
Gestión de la Disponibilidad
●
Gestión de la Configuración
●
Recursos e información
●
43. Gestión de la Disponibilidad - WebMIN
# pkg install SUNWwebmin <= ¡ IPS !
✔
# webminsetup
***********************************************************************
Webmin has been installed and started successfully. Use your
web browser to go to http://opensolaris:10000/
and login with the name and password you entered previously.
# svcadm enable webmin <= ¡ SMF !
# svcs webmin
STATE STIME FMRI
online 11:42:19 svc:/application/management/webmin:default
# netstat -an|grep -i listen
*.22 *.* 0 0 49152 0 LISTEN
*.10000 *.* 0 0 49152 0 LISTEN
67. Agenda
Historia
●
Que es OpenSolaris?
●
Negocio – Tecnologías
●
Gestión de la Capacidad
●
Gestión de la Disponibilidad
●
Gestión de la Configuración
●
Recursos e información
●
68. Gestión de la Configuración-OneCMDB
Arquitectura Web Tricapa
●
Presentación
Lógica
Datos
69. Gestión de la Configuración-OneCMDB
Problematica:
●
✔ Unicamente disponible bajo Linux / Windows
● Solución:
✔ Zonas de tipo BrandZ <= ¡ Virtualización !
# zonecfg -z zonelx
zonecfg:zonelx> create -t SUNWlx
zonecfg:zonelx> set zonepath=/opt/zones
zonecfg:zonelx> add net
zonecfg:zonelx:net> set address=10.73.130.73/24
zonecfg:zonelx:net> set physical=pcn0
zonecfg:zonelx:net> end
zonecfg:zonelx> commit
zonecfg:zonelx> exit
70. Gestión de la Configuración-OneCMDB
# zoneadm -z zonelx install -d
/export/home/un38134/centos_fs_image.tar.bz2
# zoneadm -z zonelx boot
# zlogin zonelx
[Connected to zone 'zonelx' pts/3]
# uname -a
Linux zonelx 2.4.21 BrandZ fake linux i686 i386 GNU/Linux
# zfs list <= ¡ ZFS !
NAME USED AVAIL REFER MOUNTPOINT
rpool/ROOT/opensolaris/opt/zones 1,58G 520M 1,58G /opt/zones
# zoneadm list -cv
0 global running / native shared
1 zonelx running /opt/zones lx share
71. Gestión de la Configuración-OneCMDB
# zlogin zonelx
[Connected to zone 'zonelx' pts/3]
# cd /opt/onecmdb
# tar -zxvf onecmdb-1.4.0-Beta-linux.i386.tar.gz
# cd /opt/onecmdb/bin
# ./onecmdb.sh start
Using CATALINA_BASE: /opt/onecmdb/tomcat
Using CATALINA_HOME: /opt/onecmdb/tomcat
Using CATALINA_TMPDIR: /opt/onecmdb/tomcat/temp
Using JRE_HOME: /opt/onecmdb/jre
----------------------------------------------------------------------
To open the OneCMDB Web GUI, point your browser to
http://localhost:8080
82. Agenda
Historia
●
Que es OpenSolaris?
●
Negocio – Tecnologías
●
Gestión de la Capacidad
●
Gestión de la Disponibilidad
●
Gestión de la Configuración
●
Recursos e información
●
83. Recursos e información - ¡ Unete !
Portal internacional opensolaris.org
●
=> (http://opensolaris.org)
kit de inicio OpenSolaris (KIOPS)
●
=> (http://get.opensolaris.org/)
Portal OpenSolaris Hispano
●
=> (http://es.opensolaris.org)
Lista de distribución OpenSolaris Hispano
●
(http://mail.opensolaris.org/mailman/listinfo/ug-sposug)
Canal IRC OpenSolaris Hispano
●
=> (irc://irc.freenode.net/opensolaris-es)
OpenSolaris Day 08 y más...
●
84. Gracias !
Víctor M. Fernández
Comunidad OpenSolaris Hispano
http://vfernandezg.blogspot.com
vfernandezg@gmail.com