Porque KubeEdge es mi proyecto de código abierto favorito de 2020

creo computación de borde, que "acerca la informática y el almacenamiento de datos a donde se necesitan para mejorar los tiempos de respuesta y ahorrar ancho de banda", es el próximo paso importante en la adopción de la tecnología. El uso generalizado de dispositivos móviles y dispositivos portátiles y la disponibilidad de Wi-Fi gratuito en toda la ciudad en algunas áreas genera una gran cantidad de datos que pueden brindar muchos beneficios cuando se usan correctamente. Por ejemplo, estos datos pueden ayudar a las personas a combatir el crimen, conocer actividades y eventos cercanos, encontrar el mejor precio de venta, evitar el tráfico, etc.

Gartner establece que el rápido crecimiento en la adopción de aplicaciones móviles requiere una infraestructura de borde para utilizar los datos de estos dispositivos para avanzar y mejorar la calidad de vida. Algunas de las mentes más brillantes están buscando formas de utilizar los datos enriquecidos generados por nuestros dispositivos móviles. Tome la pandemia de COVID-19, por ejemplo. Edge computing puede recopilar datos que pueden ayudar a combatir la propagación del virus. En el futuro, los dispositivos móviles podrían alertar a las personas sobre el potencial de infección en la comunidad proporcionando actualizaciones en tiempo real a sus dispositivos en función del procesamiento y publicación de datos recopilados por otros dispositivos (usando inteligencia artificial y aprendizaje automático).

Al definir una arquitectura informática de borde, una cosa es constante: la plataforma debe ser flexible y escalable para implementar una aplicación inteligente en ella y en su centro de datos principal. Como defensor y usuario del código abierto, esto despierta naturalmente mi interés en utilizar la tecnología de código abierto para aprovechar el poder de la computación perimetral.

Aquí porque KubeEdge, que proporciona orquestación de contenedores para entornos con recursos limitados, es mi proyecto de código abierto favorito de 2020. Esta distribución de Kubernetes extremadamente ligera pero totalmente compatible se creó para ejecutar cargas de trabajo nativas de la nube en dispositivos de Internet de las cosas (IoT). la red

Índice

    Los desafíos de la recopilación y el consumo de datos

    Tener una rica fuente de datos no significa nada si los datos no se usan correctamente. Este es el dilema que el edge computing está tratando de resolver. Para poder usar los datos correctamente, la plataforma debe ser lo suficientemente flexible para manejar la demanda requerida para recopilar, procesar y entregar datos y tomar decisiones inteligentes sobre si los datos pueden procesarse en la periferia o deben procesarse regionalmente o en una base de datos central.

    Los desafíos al mover datos desde la ubicación de borde a un centro de datos central incluyen:

    • Confiabilidad de la red
    • Seguridad
    • Limitaciones de recursos
    • Autonomía

    Una plataforma de Kubernetes en el borde, como KubeEdge, cumple con estos requisitos al proporcionar la escalabilidad, la flexibilidad y la seguridad necesarias para realizar la recopilación, el procesamiento y el procesamiento de datos. KubeEdge es de código abierto, liviano y fácil de implementar, requiere pocos recursos y proporciona todo lo que necesita.

    La arquitectura de KubeEdge

    KubeEdge fue introducido en 2018 en KubeCon en Seattle. En 2019, la Cloud Native Computing Foundation (CNCF) lo aceptó como un proyecto sandbox, lo que le da una visibilidad pública más amplia y lo convierte en un proyecto de pleno derecho aprobado por la CNCF.

    En pocas palabras, KubeEdge tiene dos componentes o partes principales: Cloud y Edge.

    Nube

    La parte de la nube es donde residen los componentes de Kubernetes Master, EdgeController y Edge CloudHub.

    • CloudHub es un módulo de interfaz de comunicación en el componente Cloud. Actúa como un mecanismo de almacenamiento en caché para garantizar que los cambios en la parte de la nube se envíen al mecanismo de almacenamiento en caché de Edge (EdgeHub).
    • El EdgeController gestiona los nodos perimetrales y realiza la reconciliación entre los nodos perimetrales.

    Borde

    La parte de borde es donde se ubican los nodos de borde. Los componentes de Edge más importantes son:

    • EdgeHub es un módulo de interfaz de comunicación para el componente Cloud.
    • Bordeado hace el trabajo de kubelet, incluida la gestión de los ciclos de vida de los pods y otros trabajos de kubelet relacionados en los nodos.
    • Metagestor asegura que todos los metadatos a nivel de nodo sean persistentes.
    • dispositivo gemelo es responsable de sincronizar dispositivos entre los componentes Cloud y Edge.
    • EventBus gestiona las comunicaciones perimetrales internas mediante el transporte de telemetría de Message Queue Server (MQTT).

    Kubernetes para la computación perimetral

    Kubernetes se ha convertido en el estándar de oro para orquestar cargas de trabajo en contenedores en las instalaciones y en nubes públicas. Por eso creo que KubeEdge es la solución perfecta para utilizar el edge computing para aprovechar los datos generados por la tecnología móvil.

    La arquitectura KubeEdge permite una autonomía a nivel de edge computing, lo que resuelve los problemas de latencia y velocidad de la red. Esto le permite administrar y orquestar contenedores en un centro de datos principal, así como también administrar millones de dispositivos móviles a través de una capa informática de borde independiente. Esto es posible gracias a la forma en que KubeEdge utiliza una combinación del bus de mensajes (en los componentes Cloud y Edge) y el almacenamiento de datos del componente Edge para permitir que el nodo Edge sea independiente. A través del almacenamiento en caché, los datos se sincronizan con el almacén de datos local cada vez que se produce un protocolo de enlace. Se aplican principios similares a los dispositivos perimetrales que requieren persistencia.

    KubeEdge maneja la comunicación de máquina a máquina (M2M) de manera diferente a otras soluciones de plataforma perimetral. Usos de KubeEdge mosquito eclipse, un popular corredor MQTT de código abierto de la Fundación Eclipse. Mosquitto permite la comunicación WebSocket entre el borde y los nodos maestros. Más importante aún, Mosquitto permite a los desarrolladores crear una lógica personalizada y habilitar la comunicación de dispositivos con recursos limitados en el perímetro.

    [Read next: How to explain edge computing in plain terms]

    La seguridad es imprescindible para la comunicación M2M; es la única forma en que puede confiar en los datos confidenciales enviados a través de la web. Actualmente, KubeEdge es compatible con Secure Production Identity Framework para todos (ESPÍRITU), asegurando que:

    1. Solo los nodos verificables pueden unirse al clúster perimetral.
    2. Solo las cargas de trabajo verificables pueden ejecutarse en los nodos perimetrales.
    3. Los certificados de corta duración se utilizan con criterios de rotación.

    Hacia dónde se dirige KubeEdge

    KubeEdge se encuentra en una etapa muy temprana de adopción, pero está ganando popularidad debido a su enfoque flexible para hacer que las comunicaciones informáticas de borde sean seguras, confiables y autónomas para que no se vean afectadas por la latencia de la red.

    KubeEdge es una plataforma informática perimetral flexible, independiente del proveedor, liviana y heterogénea. Esto le permite admitir casos de uso como análisis de datos, análisis de video, aprendizaje automático y más. Como es independiente del proveedor, KubeEdge permite que los grandes jugadores de la nube lo usen.

    Estas son las razones por las que KubeEdge es mi proyecto favorito de 2020. Hay mucho más por venir y espero ver más contribuciones de la comunidad para una adopción más amplia. Estoy entusiasmado con su futuro, que nos permitirá consumir los datos disponibles y usarlos para un bien mayor.

    Artículos de interés

    Subir