Mostrando entradas con la etiqueta Automation. Mostrar todas las entradas
Mostrando entradas con la etiqueta Automation. Mostrar todas las entradas

viernes, 22 de marzo de 2024

La Domótica: Preguntas y Respuestas

Como ya hemos mencionado en otras entradas de este Blog, la Cuarta Revolución Industrial trajo consigo a la Transformación Digital y tomó lo mejor de la Convergencia Informática. Como ya hemos dicho, esta última es en esencia la sinergia que ha resultado de el involucramiento gradual y en algunos casos hasta natural de la Informática en prácticamente toda actividad, ciencia y/o disciplina humana.

¿Qué es la Domótica?

Incluida en la Transformación Digital tenemos precisamente a la Domótica. Es entonces en este momento cuando debemos preguntarnos qué es la Domótica.

La domótica es un campo de la tecnología que se refiere a la automatización y control de sistemas en el hogar, con el objetivo de mejorar la calidad de vida de sus habitantes, aumentar la seguridad, optimizar el consumo de energía y proporcionar mayor comodidad y conveniencia. El término "domótica" proviene de la combinación de las palabras "domus" (casa en latín) y "automática".

La domótica se basa en la interconexión de estos sistemas a través de una red, generalmente inalámbrica, y su control centralizado mediante interfaces como aplicaciones móviles, paneles de control táctiles, o comandos de voz. Esto permite a los usuarios gestionar y controlar su hogar desde cualquier lugar y en cualquier momento, a través de dispositivos conectados a Internet.

La domótica integra sistemas electrónicos y de comunicación en el hogar, permitiendo la gestión y control remoto de dispositivos y sistemas tales como:

Iluminación: Control automático de la iluminación en función de la presencia de personas, la luz natural o la hora del día.

Climatización: Control de la calefacción, ventilación y aire acondicionado para mantener la temperatura óptima en cada momento.

Seguridad: Sistemas de seguridad como cámaras de vigilancia, sensores de movimiento, alarmas contra intrusos, y cerraduras inteligentes.

Control de accesos: Sistemas de acceso mediante códigos, tarjetas de proximidad o dispositivos biométricos.

Electrodomésticos: Automatización de electrodomésticos como lavadoras, secadoras, lavavajillas, etc., para gestionar su funcionamiento de manera eficiente.

Entretenimiento: Integración de sistemas de audio y video, y control remoto de dispositivos como televisores, sistemas de sonido, y proyectores.

Gestión energética: Monitorización y control del consumo energético para optimizar su uso y reducir costos.

Riego: Sistemas automáticos de riego para jardines y plantas.

¿Cuándo comenzó a aplicarse la Domótica?

La aplicación práctica de la domótica comenzó a tomar forma en las décadas de 1970 y 1980, con el desarrollo de la automatización del hogar y sistemas de control centralizados. Inicialmente, estas tecnologías eran rudimentarias y se limitaban a controles básicos de iluminación y sistemas de seguridad. Los primeros sistemas eran caros, complejos y estaban al alcance de muy pocos, generalmente implementados en edificios comerciales de alta gama o en residencias de lujo.

El verdadero despegue de la domótica como la conocemos hoy comenzó en la década de 1990 y se aceleró en los 2000, gracias a varios factores clave:

Avances tecnológicos: La mejora en la tecnología de sensores, la miniaturización de componentes electrónicos y el desarrollo de estándares de comunicación más eficientes como Wi-Fi, Bluetooth, Zigbee, y Z-Wave, facilitaron la creación de dispositivos domóticos más asequibles y confiables.

Internet y la conectividad: El auge de Internet y la expansión del acceso a banda ancha permitieron la interconexión de dispositivos dentro del hogar y el control remoto de estos a través de interfaces web y aplicaciones móviles.

Smartphones y tablets: La popularización de los Dispositivos Personales Móviles o "smartphones" y las "tablets" proporcionó una plataforma accesible y universal para el control de dispositivos y sistemas domóticos, haciendo que la automatización del hogar fuera más fácil de usar y accesible para el gran público.

IoT (Internet de las Cosas): El desarrollo del Internet de las Cosas (IoT) ha sido crucial para la domótica, permitiendo que objetos cotidianos se conecten a internet y entre sí, facilitando su control y automatización.

En la actualidad, la domótica está experimentando un rápido crecimiento, impulsado por el interés en el ahorro energético, la comodidad, la seguridad, y por la continua innovación en tecnologías relacionadas. La integración de la inteligencia artificial y el aprendizaje automático está abriendo nuevas posibilidades para la automatización del hogar, haciendo que los sistemas sean aún más inteligentes y proactivos en la gestión del entorno del hogar.

¿Qué personas y empresas han aportado ideas y conceptos en lo que respecta a la Domótica?

Varias personas y empresas han contribuido significativamente al desarrollo de la domótica a lo largo del tiempo, ya sea a través de la investigación, la innovación tecnológica, la implementación práctica o la promoción de estos conceptos. Algunas de estas personas incluyen:

Nikola Tesla: Aunque no directamente relacionado con la domótica moderna, Tesla fue pionero en la idea de la automatización y control remoto de sistemas eléctricos. Sus contribuciones al desarrollo de la corriente alterna y su visión de un mundo interconectado sentaron las bases para la electrificación y la automatización del hogar.

Jim Sutherland y Gordon Gow: En la década de 1970, estos investigadores de la Universidad de Waterloo en Canadá desarrollaron el primer sistema domótico conocido como "Home Automated Systems".

Mark Weiser: Aunque su trabajo estaba más centrado en la informática ubicua y los entornos de computación invisibles, Weiser acuñó el término "computación calmada" que influyó en la idea de sistemas domóticos que funcionan de manera discreta y sin interrupciones en el fondo de nuestras vidas.

X10: Esta empresa fue pionera en el desarrollo de un protocolo de comunicación para la domótica que permitía el control remoto de dispositivos eléctricos a través de la línea eléctrica de la casa.

Steve Jobs y Apple: A través de productos como el iPhone, el iPad y el HomeKit, Apple ha contribuido a popularizar la idea de la domótica accesible y fácil de usar para el consumidor promedio.

Jeff Bezos y Amazon: Con su línea de productos Echo y Alexa, Amazon ha llevado la domótica a un nivel completamente nuevo al integrar el control por voz en el hogar inteligente.

Elon Musk y Tesla: Aunque más conocido por su trabajo en automóviles eléctricos y cohetes espaciales, Elon Musk y Tesla han incursionado en el mercado de la energía del hogar con productos como Powerwall, que pueden integrarse en sistemas domóticos para gestionar el consumo de energía.

Estas son solo algunas de las muchas personas que han contribuido al desarrollo y la popularización de la domótica. El campo sigue evolucionando rápidamente con la participación de científicos, ingenieros, empresarios y visionarios de todo el mundo.

¿Qué  es y qué NO es la Domótica?

Para entender qué es y qué no es la domótica, aquí hay algunas características y ejemplos:

¿Qué SÍ es la Domótica?

Automatización del Hogar: La domótica implica la automatización de diversas funciones y sistemas en el hogar, como la iluminación, la climatización, la seguridad, los electrodomésticos y más.

Control Remoto: Permite el control remoto de los dispositivos y sistemas domóticos, generalmente a través de dispositivos móviles, computadoras u otros dispositivos conectados a internet.

Integración de Sistemas: La domótica integra diferentes sistemas y dispositivos en el hogar en una plataforma centralizada, lo que permite la interacción entre ellos para lograr un funcionamiento más eficiente y coordinado.

Interactividad: Los sistemas domóticos pueden ser interactivos, respondiendo a los comandos y preferencias de los usuarios, y adaptándose a diferentes situaciones y escenarios.

Eficiencia Energética: Uno de los objetivos principales de la domótica es optimizar el consumo de energía en el hogar, reduciendo el desperdicio y ayudando a los usuarios a ahorrar en sus facturas de servicios públicos.

¿Qué NO es la Domótica?

Simples Controles Remotos: Si bien la domótica implica el control remoto de dispositivos, no se limita simplemente al uso de controles remotos convencionales. Implica la automatización inteligente y la integración de sistemas.

Tecnologías Aisladas: La domótica no se refiere al uso aislado de tecnologías individuales en el hogar, como una simple cámara de seguridad o un termostato programable. Más bien, implica la integración de estas tecnologías en un sistema más amplio y coordinado.

Aplicaciones Limitadas: La domótica no se limita a aplicaciones específicas o limitadas en el hogar. Puede abarcar una amplia gama de funciones y sistemas para mejorar la vida diaria de los usuarios.

Complejidad Innecesaria: Aunque algunos sistemas domóticos pueden ser complejos, la verdadera domótica busca simplificar y mejorar la experiencia del usuario en el hogar, no complicarla con tecnologías innecesarias o difíciles de usar.

¿Qué liboros y/o guías básicas hay ya disponibles para el entendimiento y aprendizaje de la Domótica?

Para quienes buscan adentrarse en el mundo de la domótica, ya sea como aficionados, profesionales en desarrollo o simplemente por curiosidad, existen numerosos recursos que pueden proporcionar una base sólida y un entendimiento amplio de la materia. A continuación, te muestro algunos libros y guías recomendadas para el aprendizaje de la domótica, desde conceptos básicos hasta aplicaciones avanzadas:

"Smart Home Automation with Linux and Raspberry Pi" de Steven Goodwin: Este libro muestra cómo puedes automatizar tu hogar utilizando el sistema operativo Linux y la Raspberry Pi como plataforma central. Es una excelente introducción para quienes tienen interés en la implementación práctica de sistemas de domótica.

"Home Automation For Dummies" de Dwight Spivey: Parte de la popular serie "For Dummies", este libro ofrece una introducción accesible y amena al mundo de la automatización del hogar. Cubre desde los conceptos básicos hasta consejos para la selección e instalación de sistemas de domótica.

"Practical Internet of Things with JavaScript: Build standalone exciting IoT projects with Raspberry Pi 3 and JavaScript (Node.js and React)" de Arvind Ravulavaru: Aunque se centra en el Internet de las Cosas (IoT), este libro es altamente relevante para la domótica, ya que gran parte de la automatización del hogar depende de dispositivos IoT. Es ideal para quienes tienen una base en programación y desean explorar cómo aplicar sus habilidades en el ámbito de la domótica.

"Designing Connected Products: UX for the Consumer Internet of Things" de Claire Rowland, Elizabeth Goodman, Martin Charlier, Ann Light, y Alfred Lui: Este libro proporciona una visión profunda sobre el diseño de productos IoT, enfocándose en la experiencia del usuario, un aspecto crucial en el desarrollo de sistemas domóticos que sean tanto funcionales como accesibles para el usuario final.

"The Home Automation Guide for Beginners: Learn How to Setup, Automate, and Secure Your Home" de Gerardus Blokdyk: Una guía para principiantes que abarca los fundamentos de la domótica, incluyendo cómo comenzar, opciones para la automatización y consejos para la seguridad del hogar inteligente.

Revistas y publicaciones especializadas: Además de libros, existen numerosas revistas y publicaciones en línea dedicadas a la domótica, el IoT y la tecnología del hogar inteligente, donde se pueden encontrar artículos de actualidad, reseñas de productos y tutoriales prácticos.

Documentación y tutoriales en línea: Muchos fabricantes de dispositivos y sistemas de domótica ofrecen extensas guías, documentación y tutoriales en línea que pueden ser recursos valiosos para aprender sobre productos específicos y cómo integrarlos en soluciones domóticas personalizadas.

¿Qué debe de incluír un programa de estudios para una carrera a nivel licenciatura relativa a la Domótica?

Si lo que Usted desea es comenzar una carrera enfocada principalmente en la Domótica, entonces vale la pena asistir a una Universidad o a un Instituto Tecnológico.

Consideramos que un programa de estudios para una carrera a nivel licenciatura en Domótica debería incluir una combinación de fundamentos teóricos y habilidades prácticas necesarias para comprender, diseñar, implementar y mantener sistemas de automatización del hogar. Aquí hay una propuesta de los componentes que podrían formar parte de dicho programa:

Fundamentos de la Domótica:

  • Introducción a la domótica y la automatización del hogar.
  • Historia y evolución de la domótica.
  • Principios básicos de electrónica y electricidad aplicados a la domótica.
  • Principios de programación y sistemas operativos relevantes para la domótica.

Tecnologías y Protocolos de Comunicación:

  • Redes de comunicación en el hogar (Wi-Fi, Bluetooth, Zigbee, Z-Wave, etc.).
  • Protocolos de comunicación para la domótica (MQTT, RESTful API, etc.).
  • Seguridad en redes y sistemas domóticos.

Dispositivos y Sistemas Domóticos:

  • Sensores y actuadores para la domótica (sensores de movimiento, termostatos, cámaras de seguridad, cerraduras inteligentes, etc.).
  • Sistemas de gestión y control domótico.
  • Integración de dispositivos y sistemas domóticos.

Automatización y Programación:

  • Automatización de tareas y eventos en el hogar.
  • Desarrollo de aplicaciones y software para la domótica.
  • Lenguajes de programación relevantes (Python, JavaScript, etc.) y herramientas de desarrollo.

Diseño y Gestión de Proyectos Domóticos:

  • Diseño de sistemas domóticos para diferentes necesidades y escenarios.
  • Planificación, implementación y gestión de proyectos domóticos.
  • Evaluación de costos, recursos y requisitos de infraestructura.

Aplicaciones Específicas de la Domótica:

  • Aplicaciones en eficiencia energética y sostenibilidad.
  • Domótica para personas con discapacidad o necesidades especiales.
  • Aplicaciones comerciales y empresariales de la domótica.

Ética y Legislación:

  • Consideraciones éticas en el diseño y uso de sistemas domóticos.
  • Legislación y regulaciones relevantes para la domótica y la privacidad del usuario.

Proyecto Final:

Desarrollo y ejecución de un proyecto práctico en el área de la domótica, que integre los conocimientos adquiridos durante el programa de estudios.

Este es solo un ejemplo de los temas que podrían incluirse en un programa de estudios para una carrera en domótica. Es importante adaptar el plan de estudios a las necesidades y tendencias actuales del campo, así como también proporcionar oportunidades para la investigación y la actualización constante de conocimientos en un área tecnológica en constante evolución.

¿Qué universidades en México y América Latina ya están ofreciendo la carrera (a nivel licenciatura, maestría o doctorado) en Domótica?

Hasta la fecha en la que redactamos y publicamos esta entrada, la oferta académica específica en domótica a nivel licenciatura, maestría o doctorado en México y América Latina es limitada en comparación con otras áreas de estudio tecnológico. Sin embargo, algunas universidades y centros de investigación pueden ofrecer programas relacionados con la automatización del hogar, la electrónica, la informática o la ingeniería eléctrica que incluyan cursos o líneas de investigación en domótica. A continuación, te menciono algunas instituciones que podrían tener programas relacionados con la domótica:

México:

Instituto Politécnico Nacional (IPN): A través de sus escuelas de ingeniería, como la Escuela Superior de Ingeniería Mecánica y Eléctrica (ESIME), ofrece programas en ingeniería eléctrica y electrónica que pueden incluir cursos relacionados con la domótica.

Universidad Nacional Autónoma de México (UNAM): Facultades como la Facultad de Ingeniería y la Facultad de Estudios Superiores (FES) pueden ofrecer cursos y proyectos de investigación relacionados con la automatización del hogar.

Tecnológico Nacional de México (TecNM): Algunos institutos tecnológicos dentro del TecNM pueden tener programas de ingeniería eléctrica, electrónica o mecatrónica que incluyan contenido relacionado con la domótica.

América Latina:

Universidad de Buenos Aires (UBA), Argentina: Facultades de ingeniería o tecnología pueden ofrecer cursos relacionados con la automatización del hogar dentro de programas de ingeniería eléctrica o electrónica.

Pontificia Universidad Católica de Chile (PUC): Facultades de ingeniería pueden tener cursos o proyectos de investigación relacionados con la domótica como parte de sus programas de pregrado o posgrado.

Universidad de Sao Paulo (USP), Brasil: Facultades de ingeniería pueden tener áreas de investigación en sistemas electrónicos y de control que aborden temas de domótica.

Es muy importante tener en cuenta que la domótica es un campo interdisciplinario que abarca aspectos de la ingeniería eléctrica, la informática, la automatización y la ingeniería de sistemas, entre otros. Por lo tanto, los programas específicos de domótica pueden no ser tan comunes como los programas más generales en estas áreas. Además, la oferta académica puede variar con el tiempo, por lo que siempre es recomendable consultar directamente a las instituciones educativas para obtener información actualizada sobre sus programas de estudio.

¿Cómo y cuándo comenzar?

Esta entrada no tiene como objetivo el ser una guía máxima o las tablas de la ley, mas recomendamos comenzar con la lectura de alguno de los libros arriba recomendados. Una excelente alternativa adicional pudiese ser el libro "Home Automation For Dummies" escrito por Dwight Spivey. Al momento de escribir estas líneas sólo está disponible en inglés, pero vale la pena leerlo. Hay mucho material en la red. Pero a modo de guía, recomendamos material que haya sido escrito y/o publicado por quienes actualmente son los más importantes e influyentes exponentes de la Domótica (mencionados párrafor arriba en esta entrada).

Enseguida y si está Usted completamente convencido de que la Domótica es lo suyo, proceda con cursos y seminarios ofrecidos por Universidades y/o insituciones educativas como las que incluímos en esta entrada, para entonces y con el pleno convencimiento, pueda inscribirse o matricularse en una licenciatura, maestría o doctorado afín a la Domótica. De otra manera y si lo que desea es incluír en su currícula temas relacionados con la Domótica, existen excelentes cursos y diplomados afines que puede aprovechar. Nuevamente recomendamos que esos cursos y diplomados sean impartidos por Universidades e Institutos Tecnológicos como los arriba mencionados.

Conclusión

La domótica busca hacer los hogares más inteligentes, eficientes, seguros y cómodos mediante la automatización y control de diferentes sistemas y dispositivos. También hay que tener presente en todo momento que la Domótica es sólo una herramienta al servicio de los Seres Humanos y no algo que nos reemplazará en nuestra responsabilidad y/o alcances.

¿Está Usted listo para comenzar con la Domótica?

martes, 16 de febrero de 2021

Cloud Paks de IBM. Microservicios en Multi Nube Híbrida

Parte esencial de la Tercera Plataforma. Tecnología fundamental dentro de las doce tecnologías con impacto a corto plazo de la Transformación Digital y uno de los cimientos fundamentales para la Cuarta Revolución Industrial, el Cómputo en La Nube ha sido pues de lo más revolucionario que se tiene ahora en lo referente a las Tecnologías de la Información.

Cómo recordamos y con mucho afecto esos días en los que el Cómputo, los Sistemas, la Informática se llevaba a cabo programando sobre un hardware, para poder obtener un Sistema de Cómputo que pudiese subsanar las necesidades de administración, contabilidad, producción, etc. en una empresa u organización.

El "boom" que vino de la mano de la Segunda Plataforma, o la Arquitectura Cliente-Servidor, hizo que sin darnos cuenta y sin previo aviso, fuésemos responsables de programas de cómputo monolíticos, enormes,  con millones de líneas de código y que cada que fuese necesario realizar un cambio, una actualización, arreglar un desperfecto (por más pequeño que este fuera), requeríamos abrir una ventana de mantenimiento y la operación podía durar un par de meses.

Los negocios, la gestión de empresas y/o entidades de gobierno y todas esas actividades para las que se había creado o comprado una aplicación, evolucionaron por su cuenta y ahora los cambios suceden con una frecuencia inusitada e inverosímil para aquellos tiempos en los que muchas aplicaciones se habían creado. Ahora los usuarios (no decenas ni cientos, sino miles o millones) no estaban detrás de una Terminal "tonta" (en una estación de trabajo fija). Tampoco estaban en Computadoras Personales de Escritorio (Desktops). Mínimo los usuarios están detrás de una Computadora con Monitor Abatible (LapTop), una Tableta con tecnología "touch" y servicio de red inalámbrica o con un Dispositivo Personal Móvil en su mano, y éstos pueden estar en su casa, en un ciber-café, en la calle, en un vehículo de transporte público o inclusive en la Estación Espacial Internacional. Sí. Literalmente donde quieran y utilizando el dispositivo que en ese momento pueden o quieren utilizar. Todo un reto.

Las Redes de Cómputo son ese aparato circulatorio por el cual los datos fluyen en todos los sentidos. Los riesgos de seguridad se han multiplicado y literalmente, los usuarios no pueden esperar más de tres segundos por su información. Para desgracia de muchos negocios, existen muchas opciones para los usuarios quienes no dudarán en abandonar una opción e inmediatamente tomar otra distinta que les ofrezca lo que necesitan, cuando lo necesitan, en donde quiera que estén y sin esperar tres segundos.

¿Se imaginan estar en la época de los Mainframe (Primera Plataforma), o incluso de la Arquitectura Cliente-Servidor (Segunda Plataforma), con los tiempos y procedimientos para crear, actualizar, reparar aplicaciones en estos tiempos tan vertiginosos con usuarios tan exigentes y voraces?

La Nube (pública, híbrida o privada) representó un considerable ahorro para los Costos de Capital (CapEx) y un uso más eficiente en lo que se refiere al Costo Operativo (OpEx). Pero aún así el seguir "montando" inmensas aplicaciones monolíticas (aunque fuese en modalidad Multi-Capa) seguía siendo un enorme reto.

¿Y qué pasó entonces? Nació la Arquitectura de Microservicios (en inglés, Micro Services Architecture, MSA).

Ésta es una aproximación para el Desarrollo de Software que consiste en construir una aplicación como un conjunto de pequeños servicios, los cuales se ejecutan en su propio proceso y se comunican con mecanismos ligeros (normalmente una API de recursos HTTP).

En esta Arquitectura, cada servicio se encarga de implementar una funcionalidad completa del negocio. Cada servicio es instalado, configurado y aprovisionado de forma independiente y puede estar programado en distintos lenguajes, usando diferentes tecnologías de almacenamiento de datos.

¿Cuáles son las características principales de los Microservicios?

  • Los componentes son servicios: Los servicios son componentes separados que se comunican mediante mecanismos como los servicios web o los RPC en lugar de usar llamadas a funciones en memoria como hacen las bibliotecas.

  • Organización en torno a las funcionalidades del negocio: El sistema se divide en distintos servicios donde cada uno está organizado en torno a una capacidad del negocio. Es muy importante limitar la responsabilidad de cada servicio. Cada servicio implementa toda la funcionalidad del negocio que agrupa desde la interfaz de usuario, la persistencia en el almacenamiento y cualquiera de las colaboraciones externas.

  • Productos, no proyectos: En esta arquitectura normalmente se sigue la idea de que un equipo debe estar a cargo de un componente (servicio) durante todo el ciclo de vida del mismo, desde la etapa de diseño y construcción, la fase de producción y hasta la de mantenimiento. Esta mentalidad se acopla bien con la vinculación a una capacidad del negocio. En lugar de ver el software como un conjunto de funcionalidades terminadas se ve como una relación continua, donde la pregunta es cómo puede el software ayudar a sus usuarios a mejorar la funcionalidad del negocio que implementa. Esto es facilitado por el bajo nivel de granularidad que ofrecen los microservicios.

  • Extremos inteligentes, tuberías bobas: Las aplicaciones creadas desde microservicios pretenden ser tan disociadas y cohesivas como sea posible, ellas poseen su propia lógica de dominio y actúan como filtros en el clásico sentido UNIX: recibe una solicitud, aplica la lógica apropiada y produce una respuesta. Estos pasos son coreografiados usando protocolos simples (típicamente HTTP con REST o mensajería liviana como RabbitMQ o ZeroMQ) en lugar de protocolos complejos como WS-BPEL.

  • Tener gobernabilidad descentralizada: Con el sistema con múltiples servicios colaborativos, podemos decidir utilizar diferentes lenguajes de programación y tecnologías dentro de cada servicio. De esta forma podemos elegir la herramienta adecuada para cada tipo de trabajo en lugar de tener una estandarizada. Por ejemplo si una parte del sistema necesita mejorar su rendimiento es posible usar una tecnología, quizás más complicada, que permita alcanzar el nivel de rendimiento requerido.

  • Gestión de datos descentralizada: Los microservicios prefieren dejar a cada servicio que gestione su propia base de datos, sean estos diferentes instancias de la misma tecnología de base de datos o sistemas de base de datos completamente diferentes.

  • Diseño tolerante a fallos: Las aplicaciones necesitan ser diseñadas de modo que puedan tolerar las fallas de los distintos servicios. Cualquier llamada de servicio puede fallar y el cliente tiene que ser capaz de responder a esto con la mayor facilidad y eficacia posible, evitando los muy habituales fallos en cascada de las arquitecturas distribuidas.

  • Automatización de la infraestructura: La mayoría de los productos y sistemas desarrollados con el enfoque de microservicios han sido construidos por equipo que usan entrega continua y su precursor la integración continua. Para conseguir esto es necesario:
    • Automatizar todo el proceso, desde el chequeo del código, pruebas, despliegue.
    • Control de versiones y gestión de configuración.
    • Arquitectura (hardware-software-sistema operativo) adecuada. Tiene que permitir realizar cambios sin que afecten al resto del sistema.

  • Diseño evolutivo: Cuando se divide el sistema en servicios hay que tener en cuenta que cada uno tiene que poder ser reemplazado o actualizado de forma independiente.

Todo esto se lee y suena fantástico. ¿Pero cómo es posible lograr todo esto de manera concreta, completa y cabal? La respuesta a esta pregunta de llaman Contenedores de Cómputo.

Los Contenedores son elementos que contienen (valga la redundancia) están centrados en las aplicaciones, para que estas sean escalables de alto rendimiento, pudiéndose ejecutar en cualquier infraestructura que se elija. Los Contenedores son los más adecuados para ofrecer microservicios, al proporcionar entornos virtuales portátiles y aislados para que las aplicaciones se ejecuten sin interferencia de otras aplicaciones en ejecución.

Un contenedor es una unidad estándar de software que empaqueta el código y todas sus dependencias para que la aplicación se ejecute de forma rápida y confiable de un entorno informático a otro. Una imagen de contenedor en la plataforma de ejecución para contenedores Docker, es un paquete de software ligero, independiente y ejecutable que incluye todo lo necesario para ejecutar una aplicación: código, tiempo de ejecución, herramientas del sistema, bibliotecas del sistema y configuraciones.

Aquí ya comenzamos a tocar un tema dentro de esto que es los Contenedores, y aquí vale la pena hacer una aclaración: Los Contenedores NO SON Máquinas Virtuales, y aunque suene a todo un "cliché" o un pleonasmo, las Máquinas Virtuales NO SON tampoco Contenedores. Lo que es más, es posible ejecutar Contenedores DENTRO de Máquinas Virtuales, pero nunca una Máquina Virtual podrá ejecutarse en un ambiente de ejecución para Contenedores, pues la máquina virtual necesita de un Hipervisor.

Vale la pena entonces también hacer un paréntesis para mencionar que, los Micro Servicios (y por ende los Contenedores), nada tienen que ver con la Arquitectura Orientada a Servicios o Service Oriented Architecture (SOA). Un ejemplo de implementación de esta Arquitectura son los Web Services.

La Arquitectura Orientada a Servicios es un estilo de arquitectura de TI que se apoya en la orientación a servicios y se deriva de la Web 2.0 en lo concerniente a relación Negocio a Negocio. La orientación a servicios es una forma de pensar en servicios, su construcción y sus resultados. Aquí un servicio es una representación lógica de una actividad de negocio que tiene un resultado de negocio específico (ejemplo: comprobar el crédito de un cliente, obtener datos de clima, consolidar reportes de perforación).

El estilo de arquitectura SOA se caracteriza por:

  • Estar basado en el diseño de servicios que reflejan las actividades del negocio en el mundo real, estas actividades forman parte de los procesos de negocio de la compañía.
  • Representar los servicios utilizando descripciones de negocio para asignarles un contexto de negocio.
  • Tener requerimientos de infraestructura específicos y únicos para este tipo de arquitectura, en general se recomienda el uso de estándares abiertos para la interoperabilidad y transparencia en la ubicación de servicios.
  • Estar implementada de acuerdo con las condiciones específicas de la arquitectura de TI en cada compañía.
  • Requerir un gobierno fuerte sobre las representación e implementación de servicios.
  • Requerir un conjunto de pruebas que determinen que es un buen servicio.

El desarrollo e implementación de una arquitectura SOA se rige por los principios descritos en el manifiesto SOA. Por otra parte la aplicación de la orientación a servicios se divide en 2 grandes etapas:

  • Análisis orientado a servicios (Modelado de servicios)
  • Diseño orientado a servicios

Volviendo ahora al tema, para hacer más simple el entendimiento de el concepto de lo que es el Contenedor, imagine por un momento que Usted necesita ejecutar, en su computadora de escritorio un par de aplicaciones. Estas aplicaciones NO es posible instalarlas sobre el mismo Sistema Operativo que actualmente se ejecuta en su equipo de cómputo, pues ambas tienen en común "bibliotecas" (libraries) y recursos informáticos que no pueden compartir. Una evita que la otra se ejecute en el mismo ambiente de ejecución (valgan las redundancias).

¿Qué hacer entonces? Si esto nos lo hubiesen preguntado hace dos años, la respuesta sería: -"...instala VMware WorkStation Player o Virtual Box sobre tu Sistema Operativo, crea dos máquinas virtuales y sobre los respectivos Sistemas Operativos, instala en cada una su aplicación correspondiente."- Hoy y si esta aplicación viene "contenerizada", no necesitas hipervisor alguno. Mientras que el "Kernel" del Sistema Operativo sea compatible a ambas aplicaciones, usando un ambiente de ejecución de contenedores (como el ya mencionado Doker), no es necesaria ninguna Máquina Virtual. Ambas aplicaciones pueden convivir en el mismo Hardware.

Queda entonces claro que, para poder ejecutar contenedores es necesario:

  • Un Sistema Operativo (Linux) en el que se pueda instalar el ambiente de ejecución de contenedores
  • Un ambiente de ejecución de contenedores (Doker)
  • Los contenedores

Sí. Así de sencillo. Huelga decir que estos contenedores pudiesen trabajar completamente independientes uno del otro o trabajar en conjunto para conformar una Aplicación. También podemos inferir de todo esto, que con tan solo un modesto equipo de cómputo (pudiese ser incluso a nivel de escritorio) es posible comenzar con nuestra aventura con los Contenedores.

Todo esto ha estado funcionando tan bien y ha tenido tanto sentido para las empresas y organizaciones, que se disparó una tremenda proliferación de aplicaciones contenerizadas. Esto comenzó entonces a presentar sendos retos para la administración de los Contenedores.

Sólo para comenzar, éstos ya no se instalaban en equipos pequeños, sino que ahora se tenían Clusters de Servidores que proveen todo lo necesario en cuanto a ambiente de ejecución se requiere. Dichos Clusters en su mayoría son basados en plataformas de Virtualización y esto también fue lo que hizo que cada vez se tuviesen ambientes más y más complejos para controlar los Contenedores. Fue entonces que se hizo necesaria una herramienta que permitiese orquestar, administrar de manera centralizada y automatizar la operación de los Contenedores. Nace Kubernetes.

Kubernetes (referido en inglés comúnmente como “K8s”) es una herramienta de Código Abierto creada para la automatización del despliegue, escalabilidad y administración de aplicaciones en contenedores,​ que fue originalmente diseñado por Google y donado a la Cloud Native Computing Foundation (parte de la Linux Foundation). Soporta diferentes entornos para la ejecución de contenedores, incluido Docker.

Ahora los Desarrolladores y el personal de Operación de las empresas y organizaciones, encontraron un muy valioso aliado para poner bajo control desde pequeñas y hasta inmensas cantidades de contenedores.

No vamos a ahondar en el tema de Kubernetes, pues merece un tratamiento aparte. Lo que sí vale la pena mencionar es que aunque es posible ejecutar Contenedores contando tan sólo con Doker (la plataforma o ambiente de ejecución), Kubernetes ha demostrado ser indispensable.

Para muchas áreas de Tecnologías dela Información de empresas y organizaciones, ya en la práctica, poder armar todo lo referente al ambiente de ejecución, automatización, orquestación, administración, etc. para los Contenedores, no resultó tan fácil como se escuchaba o leía. ¿Qué hacer para aprovechar todas las bondades de los Contenedores y no tener que lidiar con todo lo que implica poner a punto toda esa estructura necesaria). Llegó al rescate Red Hat® OpenShift®.

OpenShift® es una familia de productos de software de contenedorización desarrollados por Red Hat®. Su producto estrella es OpenShift® Container Platform, una plataforma local como servicio construido alrededor de contenedores Docker orquestados y administrados por Kubernetes sobre la base de Red Hat® Enterprise Linux. 

La familia de productos OpenShift® proporciona la ten necesaria plataforma a través de diferentes entornos: OKD (Origin Community Distribution) que sirve como el upstream impulsado por la comunidad (similar a la forma en que Fedora está upstream de Red Hat® Enterprise Linux). OpenShift® Online, la plataforma que se ofrece como software como servicio y OpenShift® Dedicated, la plataforma que se ofrece como servicio gestionado.

Hasta el momento hemos mencionado que los Contenedores son ideales para crear un ambiente de Plataforma como un Servicio, sobre nuestra Infraestructura como un Servicio, en nuestros Centros de Datos Definidos por Software. Digamos que ahora tenemos nuestra Nube Privada ejecutando nuestros Contenedores.

¿Y qué sucede cuando queremos incorporar Servicios de Infraestructura en Nubes Públicas? Cierto. La evolución a entornos de ejecución fuera de la empresa, da soporte y es esencial para esa necesidad de proveer a nuestros Usuarios de sus aplicaciones que se puedan ejecutar donde sea, cuando sea, a través del dispositivo que sea.

Leyes, normatividades, regulaciones pusieron un freno a la migración total desde La Nube Privada (o los ambientes On Premise) hacia La Nube Pública. Por lo que las empresas y organizaciones optaron por un mitad-y-mitad naciendo con esto La Nube Híbrida. En esta modalidad se aprovecha lo mejor de La Nube Privada y La Nube Pública, dando como resultado un ambiente de ejecución homogéneo (o idealmente homogéneo) en donde los Usuarios "ni se enteran" de a dónde se están ejecutando sus Servicios. Ellos simplemente disfrutan de estos.

El nuevo reto entonces era elegir en qué proveedor de Nube Pública ejecutar nuestros Contenedores. Pues en un principio y aunque los ambientes de ejecución de Contenedores no requieren de bastos recursos informáticos, sí es indispensable el armar toda la estructura (física y/o virtual) que de sustento dicho ambiente de ejecución.

Aquí es entonces a donde entra el concepto de los Cloud Paks de IBM. Son software con tecnología de Inteligencia Artificial para La Nube (o Multi Nube) Híbrida , que nos permite implementar por completo flujos de trabajo inteligentes la empresa u organización, para acelerar el camino a la transformación digital en lo que a Contenedores se refiere.

IBM Cloud Paks aprovecha el poder de IBM Watson® para aplicar Inteligencia Artificial a su negocio, predecir y dar forma a resultados futuros, automatizar procesos complejos, optimizar el tiempo de administradores de T.I. y crear ambientes más ágiles y seguros.

Basados en Red Hat® OpenShift®, es posible desarrollar o instalar aplicaciones contenerizadas una vez, e implementarlas en cualquier lugar de cualquier Nube Pública o Privada. Además, puede integrar la seguridad y automatizar las operaciones con visibilidad de gestión. IBM Cloud Paks tiene una base común de componentes empresariales que aceleran el desarrollo, brindan una integración perfecta y ayudan a mejorar la colaboración y la eficiencia.

Los flancos en los que tenemos por el momento los Cloud Paks son:

  • Datos
  • Automatización del Negocio
  • Operaciones con Inteligencia Artificial provista por Watson
  • Integración
  • Automatización de la Red
  • Seguridad

En entregas posteriores abordaremos cada uno de estos Cloud Paks. Por el momento baste decir que si dentro de los requerimientos de su empresa u organización ya se está trabajando y/o se requiere implementar a corto plazo la contenerización de sus aplicaciones, Cloud Paks de IBM son la mejor alternativa Multi Nube.

¿Su empresa u organización ya está trabajando con Contenedores?

martes, 5 de marzo de 2019

Internet de las Cosas desde abajo: Edge Computing

Hace dos entradas, más precisamente hablando de aquella intitulada: "Internet de las Cosas desde abajo: Dispositivos y Controladores Físicos", hicimos un breve recorrido por todas y cada una de las siete capas que deben conformar una Solución para Internet de las Cosas que a saber, son las siguientes:

7.- Colaboración y Procesos.- En donde se involucra directamente a personas y los ciclos del negocio.
6.- Aplicaciones.- Todo lo relativo a Reportes, Análisis, Control.
5.- Abstracción de los Datos.- Adición y acceso a datos generados por capas inferiores.
4.- Acumulación de los Datos.- Almacenamiento de datos generados por capas inferiores.
3.- Edge Computing.- Análisis y Transformación de los datos generados por la capa 1.
2.- Conectividad.- Unidades para comunicación y pre-procesamiento de los datos.
1.- Dispositivos y Controladores Físicos.- Las "Cosas" (sensores y actuadores).

Es precisamente del "Edge Computing" o Cómputo Perimetral la capa en la que ahora estaremos poniendo atención. A "groso modo" podemos definir esta capa como: Análisis y Transformación de los datos generados por los Dispositivos y Controladores Físicos.

El Internet de las Cosas está desempeñando un papel importante en la transformación digital de organizaciones e industrias. La creciente cantidad de sensores que generan terabytes de datos, y la necesidad de un procesamiento rápido y confiable de estos datos ha motivado una arquitectura común de Internet de las Cosas de dispositivos informáticos de borde que se comunican con las plataformas de nube de Internet de las Cosas.

La importancia y los beneficios de la computación en la nube, como el alto procesamiento y almacenamiento de datos, son bien conocidos en la industria. El Cómputo Perimetral está aumentando en importancia, permitiendo el procesamiento rápido, seguro y local en las puertas de enlace ubicadas cerca de los dispositivos.

Esta entrada explorará los beneficios del Cómputo Perimetral. Examinará las características clave que requiere una solución de software para construir un puente entre las puertas de enlace en el perímetro y las plataformas de Cómputo en La Nube.

Evolución del Cómputo en La Nube y Cómputo Perimetral.

Para entender las arquitecturas actuales de Internet de las Cosas, es importante tener en cuenta la evolución del Cómputo Perimetral "en el sitio" y en La Nube. Aquí describimos la evolución del Cómputo Perimetral que desemboca en una arquitectura de Cómputo en el Borde (Frontera o "Edge") y en La Nube, para satisfacer los requisitos de las aplicaciones de Internet de las Cosas a gran escala.

Mirando hacia atrás en la historia de la comunicación y los sistemas distribuidos, la Computación Perimetral no es un concepto nuevo. El origen de éste se remonta a Akamai en la década de 1990, cuando Akamai lanzó su Red de Entrega de Contenido (CDN). El concepto de una Red de Entrega de Contenido, era presentar nodos en ubicaciones geográficamente más cercanas al usuario final, por lo que el contenido, como las imágenes y los videos, podría almacenarse en caché localmente y luego entregarse mucho más rápido al usuario final.

En 1997, un artículo de investigación de Nobel Networks, demostraron en su trabajo “Adaptación ágil de aplicaciones ágiles para la movilidad”, cómo diferentes tipos de aplicaciones (navegador web, video y reconocimiento de voz) que se ejecutan en dispositivos móviles con recursos limitados, pueden descargar ciertas tareas a servidores potentes para liberar recursos del dispositivo móvil . Incluso hoy en día, Google, Apple y Amazon utilizan conceptos similares para sus servicios móviles de reconocimiento de voz.

La era del Cómputo en La Nube comenzó en 2006, cuando Amazon presentó su "Nube de Cómputo Elástico" (Elastic Cloud Computing o ECC). Amazon Web Services y otros proveedores de La Nube posteriores han abierto muchas nuevas oportunidades en términos de capacidades de computación, visualización y almacenamiento.

En 2012, Cisco introdujo el término "Fog Computing" para describir una infraestructura de Nube Distribuida para abordar los problemas de escalabilidad, creados por una gran cantidad de dispositivos para Internet de las Cosas y grandes volúmenes de datos de aplicaciones de baja latencia en tiempo real.


Hoy en día, el alcance y los requisitos para una solución de Internet de las Cosas son mucho más amplios, por lo que es por eso que presentamos un enfoque que combinará las ventajas de ambos mundos: el Cómputo Perimetral y Cómputo en La Nube. Pero primero veamos más de cerca cómo se pueden beneficiar los clientes.

¿Por qué Cómputo en La Nube?

El Cómputo en La Nube ha revolucionado la forma en que las organizaciones crean aplicaciones y operan sus centros de datos. Las organizaciones ahora pueden almacenar de forma centralizada grandes cantidades de datos y optimizar los recursos computacionales, para satisfacer sus necesidades de procesamiento de datos. En particular, el Cómputo en La Nube ofrece a las organizaciones lo siguiente:

No hay necesidad de comprar y mantener infraestructura.

Las organizaciones ahora pueden subcontratar a los proveedores de la nube pública y con ello trasladar los costos para mantener un centro de datos, incluido el costo de la instalación física (sala, refrigeración, seguridad), hardware (servidores y almacenamiento) y software.

Menos experiencia interna requerida

Al subcontratar y delegar las responsabilidades de mantener y operar una infraestructura en la nube, una organización tiene menos necesidad de conocimiento experto interno.

Escalabilidad (elasticidad)

El Cómputo en La Nube permite escalar los recursos informáticos según sea necesario. Dependiendo de las horas pico y las solicitudes, se puede aprovisionar más capacidad sin necesidad de tener tiempos de inactividad.

Resilencia

Para lograr un cierto objetivo de confiabilidad, que está determinado por los llamados acuerdos de nivel de servicio, las instancias redundantes del servicio en la nube se pueden instanciar más fácilmente para evitar tiempos de inactividad y aumentar la disponibilidad de un servicio.

Pagar por lo que vas a usar

Los costos de la Computación en La Nube pueden ser más flexibles en comparación con la infraestructura propietaria clásica. Los usuarios solo tienen que pagar por los recursos de infraestructura cuando se utilizan.

¿Por qué y para qué el Cómputo Perimetral?

Para casos de uso de Internet de las Cosas, conectar miles o incluso millones de dispositivos directamente a La Nube, a menudo no es factible debido a los costos, la privacidad y los problemas inherentes de conectar nodos a una red. La Computación Perimetral facilita el procesamiento de datos en el borde de una red, cerca de los sensores y por lo tanto, evita los problemas de enviar todos los datos directamente a La Nube.

Alrededor del 10% de los datos generados por la empresa se crean y procesan fuera de un centro de datos o nube tradicional centralizada. Para 2022, Gartner predice que esta cifra alcanzará el 75%.



En particular, la Computación Perimetral aborda muchos de los desafíos técnicos que experimentan las aplicaciones de Internet de las Cosas a gran escala:

Latencia en la conexión

La latencia de la red es un problema importante para los sistemas críticos para la seguridad, como un automóvil auto-conducido o un sistema de control de fábrica. La diferencia entre un tiempo de respuesta de 100 ms y 1 ms puede ser un asunto de vida o muerte. La Computación Perimetral permite una latencia reducida debido al procesamiento local de decisiones clave.

Privacidad y seguridad de los datos

Reducir el vector de ataque de una aplicación para Internet de las Cosas es una forma de crear un sistema más seguro. La Computación Perimetral reduce la cantidad de dispositivos conectados a Internet y el filtrado de datos locales reduce la cantidad de datos confidenciales que se transmiten.

Reducción de carga de red

Al procesar datos localmente, la Computación Perimetral puede reducir significativamente los requisitos de ancho de banda de la red. Esto es particularmente importante en los casos en que pueden producirse cuellos de botella debido a la falta de fiabilidad y áreas geo-específicas) y datos que llegan con un intervalo de tiempo más largo (en el orden de segundos en lugar de milisegundos).

Eficiencia computacional

A menudo es más eficiente realizar el procesamiento y análisis de datos en conjuntos de datos más pequeños y con un tiempo de llegada más largo. Esto significa que se puede realizar un análisis más eficiente en un conjunto de datos más pequeño (como áreas geo-específicas más pequeñas) y datos que llegan con un intervalo de tiempo más largo (en el orden de segundos en lugar de milisegundos).

Reducción de costos de nube

El almacenamiento y procesamiento local no solo reduce la carga de la red, sino que también evita el envío de datos innecesarios a la nube, lo que reduce los costos asociados con el almacenamiento y procesamiento de la nube.

Autonomía

Para ciertos casos de uso, es fundamental que la aplicación local pueda continuar ejecutándose en modo desconectado. La Computación Perimetral permite la ejecución local, por lo que un sistema puede continuar ejecutándose de manera autónoma, incluso si no hay conectividad hacia una red.

Casos de uso de Cómputo Perimetral

La Computación Perimetral es aplicable a una amplia gama de industrias y casos de uso. Los siguientes casos de uso proporcionan información adicional sobre cómo la informática avanzada puede resolver algunos de los desafíos de las implementaciones de Internet de las Cosas:

Internet de las Cosas a nivel industrial

Hay muchos casos de uso de Industrial Internet de las Cosas que requieren tiempos de respuesta rápidos habilitados por la Computación Perimetral:

  • Para sistemas críticos de seguridad, se requiere un tiempo de respuesta inferior a un segundo para evitar lesiones físicas y daños a la máquina. Por ejemplo, cuando un ser humano ingresa a un área restringida en una fábrica, las máquinas deben detenerse inmediatamente. En este caso, la capacidad de tomar decisiones rápidas y deterministas en el límite es fundamental para la seguridad humana y la conservación de la máquina en aplicaciones industriales de Internet de las Cosas.
  • Para el mantenimiento predictivo y las aplicaciones de monitoreo de condición, el procesamiento de datos se puede realizar localmente en un dispositivo perimetral, lo que reduce la cantidad de datos confidenciales que se envían fuera de la fábrica y mejora la privacidad y seguridad general de la aplicación.

-"Cuando comienza a interactuar con maquinaria del mundo real en lugar de con solo bits, ya no se es lo suficientemente bueno proporcionar una confiabilidad del 99.99% o una latencia de mili segundos. Cuando los desafíos en el mundo digital se encuentran con el mundo físico, se magnifican; La vida de las personas reales o los procesos de producción están en la línea, con consecuencias reales."- Stacey Higginbotham

Ventas al por menor (Retail)

Los supermercados y las tiendas de autoservicio pueden beneficiarse de las aplicaciones de Internet de las Cosas para mejorar la eficiencia de sus instalaciones y la experiencia del cliente. Algunos ejemplos de cómo la computación perimetral ayuda a los minoristas a:

  • Si una máquina expendedora se llena de monedas sin previo aviso, los clientes deben esperar hasta que llegue un empleado para vaciarla. Una solución informática avanzada podría enviar a los empleados una notificación de inserción una vez que la máquina se llene al 80%. Esto le permitiría al empleado tiempo suficiente para vaciar la máquina antes de que una máquina completa pueda retrasar la posible experiencia negativa del cliente.
  • Debido a las regulaciones legales, los niveles de temperatura y humedad de los sistemas de refrigeración deben ser monitoreados y llevarse un registro para comprobar que los alimentos se han almacenado de manera segura. Este caso se conoce como Análisis de Peligros y Puntos de Control Crítico (HACCP por sus siglas en inglés). Por lo general, los sistemas se verifican manualmente una vez al día, lo que se convierte en un lapso de tiempo muy grande entre un chequeo y otro. Además, las tiendas están cerradas los domingos y los días festivos, por lo que si se rompe un sistema de refrigeración, nadie lo notará y el resultado será un alimento estropeado que debe desecharse.

Una solución de computación avanzada permite el monitoreo local de la temperatura, la humedad y la presión del aire sin la necesidad de involucrar a la nube. Por lo tanto, los costos de la nube pueden reducirse y cualquier cambio en las condiciones puede desencadenar notificaciones a nivel local, por lo que se pueden tomar medidas correctivas antes de que se estropee cualquier alimento.

Industria Automotriz

La computación perimetral es muy adecuada para automóviles y otros usos de movilidad como la conducción autónoma, el monitoreo y diagnóstico remoto de vehículos. En particular, una Puerta de Enlace Perimetral (gateway)  puede ejecutarse en la unidad de control de telemetría de un vehículo para habilitar las siguientes funcionalidades:

  • Comunicación: el Software Perimetral puede actuar como el cliente de comunicación para permitir el intercambio de información de control, para la gestión de dispositivos y los datos de telemetría.
  • Aplicaciones: El Software Perimetral puede ejecutar aplicaciones de usuario en el automóvil, como el servicio de llamadas de emergencia (eCall) que brinda una ubicación precisa en caso de accidentes. Otro ejemplo es una aplicación de diagnóstico que recopila información de registro que proviene de diferentes componentes dentro del vehículo para identificar problemas.
  • Actualizaciones: el Software Perimetral se puede usar para coordinar actualizaciones de software de las unidades de control electrónico, unidades principales o material de mapas de navegación del vehículo.

Aspectos a tener en cuenta al seleccionar soluciones informáticas de vanguardia

Una solución de computación avanzada generalmente se ubica entre los dispositivos de Internet de las Cosas y la plataforma en La Nube. Las características principales de una solución de vanguardia se centran en conectar los dispositivos, procesar y administrar los datos a nivel local, moviendo los datos a la plataforma en la nube para un mayor análisis de los datos e integración con los servicios tras bambalinas.

-"Para 2020, el gasto en Tecnologías de la Información destinado a infraestructura de vanguardia, alcanzará hasta el 18% del gasto total en infraestructura de Internet de las Cosas, impulsado por implementaciones de sistemas convergentes de Tecnología de la Información/Tecnología Operativa, reduciendo el tiempo para obtener y procesar el valor de los datos recopilados de sus dispositivos conectados."- IDC

Para cumplir con los beneficios del Cómputo Perimetral, hay un conjunto central de características que deben considerarse al seleccionar una solución perimetral:

Soporte para protocolos de dispositivos

Existe una amplia variedad de protocolos de comunicación utilizados para conectar sensores y actuadores. Para facilitar la conectividad de estos dispositivos, una "puerta de enlace" (gateway) perimetral debe admitir protocolos Internet de las Cosas prominentes como: Z-Wave, ZigBee, KNX,
Bluetooth LE, HomeConnect, Modbus, ONVIF, EnOcean, BACnet, OPC UA, LoRa y Siemens S7.

Motores de reglas

Un motor de reglas simple debe estar disponible para la ejecución automática de reglas de negocios predefinidas, monitoreo local y control de varios aspectos en el borde. Las reglas suelen tener la siguiente forma:

• ENCENDIDO - algo sucede (el estado de la ventana cambia)
• SI - se cumplen las condiciones (window.state == estado abierto)
• ENTONCES - haga la tarea (light.state = off)

Dispositivo de abstracción y gemelo digital

Para facilitar la creación de aplicaciones para una solución avanzada, una capa de abstracción de dispositivos debería ofrecer una interfaz unificada para los dispositivos, independientemente del tipo de dispositivo o el protocolo de conectividad. La abstracción debe admitir la implementación de aplicaciones sin la necesidad de conocer los detalles de un protocolo específico. Un gemelo digital, controlado desde la nube, debería poder acceder a la misma capa de abstracción del dispositivo para monitorear y controlar los dispositivos de manera consistente.

Almacenamiento de persistencia local

Las Soluciones de Perimetrales deben permitir el almacenamiento local de datos en la "puerta de enlace" (gateway) sin requerir conectividad con la nube. Las diferentes opciones de almacenamiento pueden incluir una base de datos relacional, datos de telemetría normalizados de los dispositivos y la capacidad de agregar sus propios tipos de almacenamiento.

Operación autónoma mientras está desconectado

Las Soluciones Perimetrales deberían poder funcionar sin conectividad a la nube. El almacenamiento de datos locales y la capacidad de cómputo deben permitir que las tareas críticas se ejecuten en modo desconectado.

Seguridad y privacidad

Las características clave de seguridad y privacidad de una solución de vanguardia deben incluir:

  • La capacidad de configurar los permisos de componentes y aplicaciones según la ubicación, el firmante (del certificado de seguridad) y otras condiciones personalizadas.
  • Soporte para la comunicación segura al tiempo de ejecución de la puerta de enlace a través de Seguridad en la Capa de Transporte (TLS por sus siglas en inglés) y el cifrado de datos.


Gestión de certificados incluyendo revocación y actualización de certificados

  • Integración con servicios de gestión de claves de terceros, clave pública.
  • Infraestructuras, y módulos de seguridad de hardware.

Disponibilidad y fiabilidad

Las soluciones de informática perimetral deben poder supervisar constantemente el estado del tiempo de ejecución de la Puerta de Enlace (gateway), detectar fallos y ejecutar acciones como reiniciar o iniciar un restablecimiento "de fábrica". Además, debería ser posible realizar copias de seguridad de datos importantes del usuario de forma periódica de manera agendada o con una solicitud explícita.

Gestión remota y actualización

Debe ser posible administrar de forma remota dispositivos de Computación Perimetral para iniciar, detener, configurar el dispositivo e instalar o actualizar el software, así como aplicar parches y revisiones nuevas de forma remota.

Aplicaciones locales

Debe ser posible desarrollar aplicaciones locales que se instalen y ejecuten en los dispositivos perimetrales.

Analítica y aprendizaje automático.

Una solución informática de vanguardia debe permitir aplicar diferentes algoritmos de aprendizaje automático en el perímetro. Las capacidades avanzadas pueden incluir combinar soluciones locales en el perímetros con algoritmos y servicios en la nube.

Interfaz para Programación de Aplicaciones (API) abierta para aplicaciones remotas

Las APIs abiertas deben proporcionar la posibilidad de desarrollar aplicaciones remotas que se comuniquen con el entorno y tiempo de ejecución de la Puerta de Enlace (gateway), a través de REpresentational State Transfer (REST), WebSockets o JSON-RPC. Esto permitirá una integración más estrecha con otros servicios (tanto perimetral como en la nube) permitiendo crear una interfaz de usuario móvil o web para acceder y visualizar datos del "gateway".

En este momento y después de haber conocido al menos las tres primeras capas que podrían o debieran formar parte de una Solución de Internet de las Cosas, podemos ya tener una idea de que esta tecnología derivada de la Transformación Digital, no consiste en simplemente conectar todo contra todo.

En entregas posteriores abordaremos otras capas como son Acumulación de Datos, Abstracción de Datos, etc.

martes, 28 de agosto de 2018

VMware evoluciona como el Sistema Operativo, para la Nube Híbrida del futuro

Echando mano de las tecnologías de la información, hemos podido (mientras impartimos curso de VMware vSphere 6.7) revisar material que va saliendo del VMworld 2018.

¿Para comenzar? Aquí la relación de los patrocinadores diamante del VMworld 2018:


Aunque están ordenados alfabéticamente, resalta la presencia de Amazon Web Services. Viendo el video del "Key Note" que ofreció Pat Geisinger (CEO de VMware) en el evento, no debería de sorprendernos.

¿Cuáles son los retos que VMware considera con respecto a la adopción de una Nube Pública? Para comenzar la diversidad de opciones serias que ya hay en el mercado:


¿Qué y cuáles son esos retos que VMware visualiza con respecto a la adopción de La Nube Pública? Costo, Riesgo e Ineficiencias Operacionales.


A este respecto, VMware YA se convirtió en el Sistema Operativo de la Nube Híbrida del Futuro. Parafraseando a Pat Geisinger y Ray O'Ferrel (EVP & CTO de VMware), se pasa del Centro de Datos Definido por Software al Centro de Datos Auto Administrado.


Si ya de por sí hablar de Centros de Datos Definidos por Software exige Automatización y Administración Basada en Políticas, ahora el Centro de Datos por fin tiene un sustento concreto, verosímil y viable para auto administrarse.

Sobre el ya consabido "moto" o "mantra": "Cualquier Dispositivo, Cualquier Aplicación", ahora se anexa "Cualquier Nube".


Amazon Web Services, IBM Cloud, Google, Microsoft Azure. Todas las nubes públicas ya están con VMware. ¿Para qué? NO sólo para utilizar los servicios de todas y cada una de ellas, sino para acelerar la Nube Híbrida, sin importar quién es quien aporta los recursos de nube pública. En palabras de Pat Geisinger: -"...VMware acelera su viaje a la nube múltiple."-


¿Cómo controlar todas las nubes públicas? VMware apoya en ese punto con un consolidador de facturación de servicios en La Nube Pública, siempre y cuando forme parte de el proyecto VMware de aceleración de la Nube Híbrida. ¿A qué nos suena eso?

Para el área de DevOps y demás tendencias de desarrollo, VMware ya ofrece Cloud Automation Services: -"Habilitamos a los Desarrolladores con un rico conjunto de servicios y acceso controlado a cualquier nube"-



VMware anuncia "VMware Cloud Operations", para la Administración, Seguridad y Operación de Cargas de Trabajo en La Nube. Con la compra de "CloudHealth", un consolidador de Servicios en La Nube, se obtiene el Control de los Costos, Conformidad con Estándares y Analíticos.


Otra novedad es el Proyecto "Dimension". En este proyecto el objetivo es -"entregar la simplicidad de la nube de VMware, tanto al Centro de Datos como al "Borde". ¿El Borde? Todo lo que tenga que ver con dispositivos conectados vía una red (Internet), dotados con algo de inteligencia para todo lo que respecta a Internet de las Cosas.


El enfoque de Nube Híbrida de VMware no solo incluye la Nube Privada y la Nube Pública, sino también eso que se llama "Edge" (la frontera o el borde), que como mencioné en el párrafo anterior incluye Internet de las Cosas. TODO entregado como un Servicio. ¿Y quién entregaría el Servicio? VMware y asociados como un Kyo Networks, que ya cuentan con acuerdos con VMware para efectos de VMware Cloud Air. 


¿Qué hay de VMware concretamente y con respecto a DevOps y Contenedores? Se llama VMware PKS. Entrega rápida y "operacionalización" para la siguiente generación de aplicaciones.


¿Y para Blockchain? Reitero mi aclaración de toda la vida: -"Blochchain NO ES Bitcoin"-. Para Blockchain VMware tiene YA el proyecto Concord. Una Infraestructura Confiable Descentralizada para Blockchains Empresarales. Todo ello aprovechando todo lo que el Código Abierto (Open Source) ya tiene a este respecto.


Cabe señalar que en el discurso de Pat Gelsinger y Ray O'Farrell, se mencionó mucho el compromiso que VMware tiene ahora para interactuar con el Código Abierto (Open Source).

Más delante haremos una entrada con más información. Pero el mensaje es claro: VMware evoluciona como el Sistema Operativo para la Nube Híbrida del futuro.