
Nagios – Monitorizando nuestro Servicio de Negocio (1/3)
Bueno, bueno… tenia ganas de empezar con este tipo de posts y que veamos hasta donde podemos llegar con nuestro Nagios!! En una serie de 3 documentos veremos cómo poder medir el SLA que ofrecen distintas capas de nuestra organización. No sólo utilizaremos Nagios para monitorizar nuestra Capa de Infraestructura, podemos escalar aprovechándonos de dicha base y monitorizar los Servicios Operacionales de su Empresa, esto se consigue interrelacionando los servicios de infraestructura ya monitorizados con las necesidades departamentales, llegando a monitorizar el Servicio de Negocio que da tu empresa.
Interesante no solo para la obtención de certificaciones ISO de calidad de servicio o implantación de ITIL… Si no por ejemplo para extender nuestra monitorización y dar acceso a nuevos roles. Esto es, ¿por qué nuestr@ CEO no puede tener visualización de cómo está su negocio? Si analizamos todas las dependencias y requisitos que tiene nuestros departamentos (para que sean funcionales) con los servicios de infraestructura que ya hemos monitorizado, podremos mostrarle en unos mapas personalizados y por los que podrá desplazarse y ver el estado de su Negocio así como sus dependencias. Podremos medir en cada Servicio, el Acuerdo de Nivel de Servicio que ofrece visualizando gráficas, además que como es habitual, si se ve afectado, nos alertará en modo Warning o Critico!
Es complicado explicarlo en pocas líneas, pero bueno, poco a poco y con buena letra que ya verás que al final vas a tenerlo claro!!! Estoy seguro que muchos sabréis de lo que hablo, y sin ser un experto en ello, voy a tratar de intentar aclararlo con un ejemplo. Claro que cada uno podrá definirlo diferente o con más detalle, pero voy a intentar abreviar. Pensemos que somos una fabrica de tuercas, todo un clásico! Somos una pequeña empresa que las producimos y las vendemos online, disponemos de un departamento que gestionará los pedidos de los clientes y otra a la atención final con cliente.
Bueno, rollos a parte, para dar servicio, tenemos un pequeñito CPD, donde la infraestructura se apoya de un entorno virtual con vSphere, un par de hosts ESXi y una cabina, servidores virtuales Windows que ofrecen por ejemplo impresoras, shares, bases de datos, ERP, CRM, un par de servidores Exchange para el correo, un par de firewalls, un par de routers de 2 distintos ISP… los usuarios tienen thinclients para conectarse y trabajar sobre un entorno centralizado de Citrix donde abren sus desktops/app… Y sin olvidar la web, que está externalizada en un hosting! De la parte de Fábrica no vamos a hablar, pensemos que es una red de PLCs que la tenemos ya monitorizada.
Por tanto, el negocio se verá afectado si cualquiera de los servicios que ofrece cada área no puede trabajar, tanto si la web no ofrece el servicio de ventas, o no se pueden gestionar pedidos como si no se responde a los clientes o no se pueden producir tuercas.
Ahora tenemos que desgranar y ver qué necesidades tiene cada departamento para que puedan desempeñar su servicio, ver qué necesitan de los recursos que tenemos y relacionarlo entre sí con condicionantes.
Servicios de Negocio,
Comenzamos a definir cuales son los Servicios de los cuales nuestro negocio depende para que todo funcione correctamente, estos son los denominados Servicios de Negocio; y en mi ejemplo serán:
- Servicio Venta Online sería todo lo que pueda afectar a que no se vendan productos en nuestro negocio.
- Servicio Atención al Cliente abarcaría todo lo que sea comunicación con cliente final.
- Servicio Logística y Distribución de Pedidos, lo que entendemos que va desde la preparación del paquete al envío a cliente final.
- Servicio de Producción, todo lo que concierne a que no se puedan fabricar tuercas.
Servicios Operacionales,
Serán pues, los que permiten que un Servicio de Negocio funcione correctamente, definiremos todas las necesidades que tenemos para poder operar. En este documento definiremos sólo uno de ellos, usaremos como ejemplo el SERVICIO ATENCION AL CLIENTE. Bien, qué necesitamos para que se pueda atender a los clientes? Pensemos que para ello tenemos unos profesionales que se comunican con los clientes mediante correos electrónicos o llamadas telefónicas, gestionan todo con un ERP además de temas de satisfacción en un CRM. Para que el Servicio de Negocio SERVICIO ATENCION AL CLIENTE sea funcional, deberemos de dar servicio a los usuarios con los siguientes Servicios Operacionales:
- Servicio ERP, será todo lo necesario para que nuestro ERP sea funcional.
- Servicio CRM al igual que el anterior, este servicio ofrece que los usuarios puedan usar el CRM.
- Servicio Correo les permitirá disponer a los usuarios la posibilidad de comunicación con los usuarios por esta vía.
- Servicio Telefonía será todo lo relacionado con que los teléfonos funcionen bien y las llamadas se puedan realizar o recibir.
- Servicio Internet les proveerá la posibilidad de hacer consultas necesarias a veces para poder cumplir con sus trabajos.
Si cualquier Servicio Operacional no fuese operativo afectaría al SERVICIO ATENCION AL CLIENTE, por tanto indicaré un condicionante tipo AND, ya verás más adelante para que son estos condicionantes 🙂
Desmenuzaremos cada Servicio Operacional que tengamos para llegar a ver qué hace que éste funcione.
Servicios de Intraestructura,
Los Servicios de Infraestructura son los servicios de más bajo nivel, en los que se apoyan los Servicios Operacionales. En este documento veremos como ejemplo únicamente las necesidades del SERVICIO CORREO. Definiremos qué requisitos deben cumplirse para que nuestro correo funcione bien, en esta organización serían los siguientes:
- Servicio Exchange, Sistema de Correo electrónico en el que se basa el correo de la organización.
- Servicio Directorio Activo, sin este servicio core, los equipos de los usuarios entre otros ítems no serían funcionales, así que conviene controlar su estado.
- Servicio DNS, si la resolución DNS no funciona en nuestra organización, los Outlooks no podrían conectarse si quiera.
- Servicio Virtualización, si la plataforma virtual se ve afectada, obviamente cualquier servicio que ofrecemos desde máquina virtuales se verá afectado.
- Servicio Comunicaciones Internas serían los ítems que permiten la comunicación entre los PCs clientes y los servidores.
Si? Seguimos???
Definiría por ejemplo el Servicio Directorio Activo de la organización relacionando los servicios que hacen que esto funcione y sea operativo, no? Qué hace falta para que sea operativo el servicio que ofrece nuestro AD? O de qué depende para que funcione? En el ejemplo que tengo 2 DCs (Domain Controller) llamados SRVDC01 y SRVDC02, entendiendo que bien si uno falla no pasa nada, ya que ambos ofrecen dicho servicio, que el AD dé servicio a los recursos/usuarios. Por tanto defino los servicios que lo componen:
- Servicio AD SRVDC01
- Servicio AD SRVDC02
¿Qué es el Servicio AD SRVDC01? Serán los servicios que ofrece dicho servidor para que el AD funcione en él, ejemplo:
- Servicio SRVDC01
- Estado Directorio Activo
- Servicios – Directorio Activo
- Puerto 389tcp – LDAP
- Puerto 636tcp – LDAPS
Los últimos 4 servicios ya nos empiezan a sonar, no? Son los ítems que ya tenemos monitorizados desde nuestro Nagios, a que sí? A que tenemos monitorizados sus puertos TCP, Servicios de Windows necesarios, o sabemos que con NRPE podemos monitorizar con scripts lo que sea, tanto un DCDIAG… Todo esto si no lo tienes, lo encontrarás si buscas por el blog :-). Lo que nos queda por aclarar es, ¿Qué es Servicio SRVDC01? Bien, son los servicios que hacen que ese servidor funcione correctamente, los recursos básicos que le monitorizamos, sean su CPU, Memoria RAM, Disco C o Ping normalmente. A veces, el mismo servidor cumple distintas funciones, por eso es bueno definirlo con su configuración base para luego ser usado en otros Servicios de Infraestructura.
Listo? Pues así habremos definido nuestro primer Servicio de Infraestructura! Ahora nos quedan todos los demás, los que cada organización tenga, definirlos como necesitéis… Lo que nos queda es pensar las interrelaciones que necesitamos, crear las que nos falten directamente en Nagios, ya que muchas cosas que necesita el negocio seguro que no lo hemos tenido en cuenta. Así que saca papel y lapiz y empieza a relacionar lo que tienes monitorizado y la función que desempeñan! saca un buen rato!!
Os dejo unos ejemplos/pantallazos de algunos servicios, claro que en cada entorno serán diferentes o queramos definirlos de forma distinta! Cuando lo documentemos, indicaremos si la relación entre ellos es OR o AND, si bien obligamos a que se cumplan todos los condicionantes o basta con que uno de ellos este como OK. Según vayas avanzando con la lectura del documento, espero que se vaya entendiendo mejor!
Servicio DNS
Este sería un ejemplo de las necesidades que dependen para que el Servicio DNS sea funciona. Tenemos 2 Servicios DNS corriendo en 2 servidores a los que a parte de monitorizarles lo básico en Nagios también hacemos consultas DNS o verificamos que el Servicio del Windows esté levantado. Fijaros bien en los condicionantes!
Servicio Virtualización
Este Servicio de Virtualización define las dependencias para que sea operativo, a parte de utilizar los checkeos de Nagios sobre los hosts ESXi, datastores o que la cabina SAN no tenga problemas, también dependeremos de que el networking interno funcione bien o tengamos suministro eléctrico que verificaremos con los SAI.
Servicio Exchange
Y aquí definimos todas las cosas que afectarán a nuestro Servicio Exchange, sabemos que tenemos 2 servidores en alta disponibilidad que tienen Microsoft Exchange Server, ofrecen ambos los mismos servicios, tanto de CAS o Acceso de Clientes como DAG para el balanceo de las bases de datos. Tendremos en cuenta todo lo demás, todo lo que pueda hacer que esto caiga, como el certificado SSL que utilizamos, que no estemos en listas SPAM o que tengamos Internet entre otras cosas más.
Servicio Comunicaciones Internas
Otro último ejemplo sería el Servicio de Comunicaciones Internas, donde en este caso defino todo lo que debe de funcionar para que haya conectividad entre los equipos y servidores, tanto con switches o puntos de acceso Wifi.
…Etc, etc… os dejo estos ejemplos para empezar, ok? Una vez vayamos definiendo todos los Servicios Operacionales y sus Servicios de Infraestructura iremos creando todas las dependencias que tiene nuestro negocio para que funcione de forma adecuada y no se vea afectado, analizaremos nuestros puntos críticos y cómo por ejemplo que la caducidad de un certificado puede afectar a que el negocio se pare. Nuestra meta es conseguir que los responsables del negocio puedan tener otro punto de vista de lo que nuestro departamento de IT aporta al negocio, mostrando información de las necesidades, de por qué tenemos que comprar a veces otra cabina, etc… es una forma muy interesante de justificar y demostrar nuestro trabajo! Esto junto a los reports de crecimiento, podemos crear unos informes impresionantes!