Adoptar la infraestructura de nube de computación de borde nativa de la nube de próxima generación

  //  

Nota del editor: frente a la demanda de baja latencia y arquitectura distribuida en nuevas formas de aplicación de datos masivos, la computación de borde se convertirá en una nueva generación de infraestructura de nube de computación de borde. Volcano Engine cubre una gran cantidad de nodos de borde en todo el país y reserva cientos de terabytes de ancho de banda. Con servicios al cliente en múltiples escenarios, como video en vivo, entretenimiento de juegos, transporte inteligente, efectos especiales de cine y televisión, LiveVideoStackCon 2023 Shanghai Station invitó al arquitecto de computación de borde en la nube de Volcano Engine, Guo Shaowei, a compartir "Embracing Cloud Native-Next". Generación Edge Computing" Infraestructura en la nube".

Texto/Guo Shaowei

Editor/LiveVideoStack

Hola a todos, mi nombre es Guo Shaowei. Actualmente trabajo como arquitecto de computación de borde en Volcano Engine. Mis áreas personales de especialización son la investigación y el desarrollo de tecnología nativa de la nube y relacionada con IaaS. En los últimos años, me he involucrado en la computación de borde. Diseño de arquitectura relacionado y trabajos de investigación y desarrollo.

El tema de este intercambio es "Adopción de la nube nativa: infraestructura de nube de computación perimetral de próxima generación".

El discurso incluye principalmente los siguientes cinco aspectos: 1. Las empresas avanzan hacia el borde; 2. Los nuevos desafíos que plantea el desarrollo empresarial a la infraestructura de la nube de computación de borde; 3. En respuesta a los desafíos, la infraestructura de la nube de computación de borde se mejora gradualmente; 4. Cómo Volcano Engine construye unidad interna y externa, arquitectura de infraestructura de nube nativa de Edge 5. Perspectivas de futuro.

-01-

El negocio se acerca al límite

f3613a8c277722251e645f0704568d11.png

Después de más de diez años de desarrollo, la computación en la nube no es ajena a todos. En el proceso de utilizar la computación en la nube, hemos disfrutado de muchos beneficios que brinda, como la elasticidad y confiabilidad de la computación en la nube. En la última década, han surgido uno tras otro muchos proveedores de nube, incluida la infraestructura como servicio, la plataforma como servicio y el software como servicio. La computación en la nube ha evolucionado hacia varios modelos, como la nube pública, la nube privada y la híbrida. nube La "nube" actual ha tocado todos los aspectos de las aplicaciones empresariales.

Según Gartner, para 2027, más del 90% de las empresas utilizarán la "nube" como su infraestructura preferida. Con aplicaciones de tan gran escala, ¿cuál es la siguiente etapa en la dirección del desarrollo de la computación en la nube? Tomemos esta pregunta y observemos la fuerza impulsora de la evolución de la computación en la nube.

3e40e16ac6dbb5416b80e9825fe6eb0d.png

Hay tres impulsores clave de la evolución de la computación en la nube:

①Impulsado por aplicaciones : la aparición de aplicaciones cada vez más localizadas, incluidos juegos en la nube, AR/VR, fabricación industrial, transmisiones web, parques inteligentes, conducción autónoma, conducción asistida, etc. Estas aplicaciones diversificadas impulsadas por negocios locales se implementan más cerca del lugar del usuario. .

②Evolución de la infraestructura : las aplicaciones impulsan la mejora de la infraestructura. La infraestructura está evolucionando gradualmente desde el centro hacia el borde, formando tres nuevas formas de infraestructura de borde: borde en el sitio, borde de campo cercano y borde de la nube, que proporcionan diferentes garantías de latencia respectivamente. potencia de cálculo, el retraso en el borde del campo es de 1 a 5 ms, el borde del campo cercano es de 5 a 20 ms y el borde de la nube es de 20 a 40 ms.

③ Combinación de potencia informática y red : impulsados ​​por las aplicaciones y la infraestructura, los usuarios esperan tener una experiencia consistente tanto en la infraestructura de borde como en la nube, por lo que colocamos las funciones de la nube en la infraestructura de borde. Al integrar la potencia informática y la red, podemos ofrecer a las empresas mejores servicios en la nube.

b83e59d4660816a2c94aa8013ee613a4.png

A continuación, echemos un vistazo a la evolución de la arquitectura empresarial:

Dividimos los recursos en tres categorías:

① Recursos de terminal : proporcione a los usuarios respuestas de servicio en tiempo real, que pueden ser los teléfonos móviles, tabletas y sistemas de automóviles utilizados por los usuarios. Aunque el recurso del terminal está más cerca del usuario, su potencia informática es limitada, por lo que los recursos de borde están disponibles.

② Recursos perimetrales : brinde a los usuarios servicios de acceso cercano, cobertura comercial de área amplia y capacidades precisas de percepción de la red. Aunque el borde puede proporcionar a los terminales una mayor potencia informática, está distribuido por todo el país y la escala de un solo nodo de borde es limitada. Para lograr una mayor elasticidad y potencia informática, es necesario combinar recursos centrales.

③Recursos centrales: los recursos centrales pueden proporcionar a los usuarios una capacidad del sistema más flexible y capacidades de agregación de datos más potentes.

La arquitectura de implementación centralizada tradicional ya no puede cumplir con el modelo de implementación con nuevos recursos. La arquitectura empresarial adopta un modelo de implementación en el borde de la nube para aprovechar plenamente las ventajas del borde de la nube. En el futuro, cada vez más empresas avanzarán hacia la borde de la nube: la nueva dirección arquitectónica de la implementación híbrida de extremo a extremo.

ff3d8f89d8dc20bd2b666e670d630bea.png

El desarrollo de la informática de punta se remonta a 1998, cuando Akamai propuso por primera vez el concepto de CDN. Una red de almacenamiento en caché de contenido basada en Internet CDN almacena en caché el contenido cercano, reduce la congestión de la red y mejora la eficiencia del acceso y la tasa de aciertos. CDN se ha convertido en el servicio básico detrás de aplicaciones, sitios web y clientes.

En 2002, Microsoft, IBM, Akamai y otras empresas cooperaron para implementar servicios .Net y J2EE en nodos CDN PoP, y apareció por primera vez el concepto de informática de punta.

En 2009, CMU propuso el concepto de Cloudlet, que combina VM con infraestructura de borde para crear un host confiable rico en recursos implementado en el borde de la red. Este es el prototipo del servicio IaaS de borde.

En 2012, en el contexto de Internet de Todo, se propusieron tecnologías como la computación de borde móvil (MEC) y la computación en la niebla para resolver el problema del crecimiento masivo de datos causado por Internet de Todo. Posteriormente, se combinaron la computación en la nube y el borde, y surgió el concepto de computación en el borde para proporcionar capacidades de servicios de computación en el borde livianos, elásticos, inteligentes, heterogéneos y de baja latencia entre las fuentes de datos y las rutas del centro de la nube.

En este sentido, tengo dos puntos de vista: en primer lugar, la computación en la nube es el complemento más poderoso de la computación en la nube, y los dos se complementan entre sí en lugar de simplemente reemplazar conceptos; en segundo lugar, la colaboración en la nube magnifica el valor de la computación en la nube y la computación en la nube. y solo más Sólo coordinando adecuadamente la nube y el borde se puede liberar el valor máximo de ambos.

-02-

El desarrollo empresarial plantea nuevos desafíos a la infraestructura de la nube de computación de punta

Si bien el desarrollo de la informática de punta aporta beneficios, también plantea muchos desafíos en términos de arquitectura de infraestructura de nube.

d6e8b4e974c2f3526d786fc2bca7e9c0.png

Las ventajas de la informática de punta son las siguientes:

Baja latencia : los nodos de Edge Computing se distribuyen por todo el país y cubren operadores de todos los enlaces, lo que brinda a los usuarios una experiencia de baja latencia.

Gran ancho de banda : la informática de borde procesa y transmite cerca, capaz de transportar un mayor ancho de banda.

Ahorro de costos : la computación perimetral puede reducir la cantidad de datos comunicados entre los clientes y los nodos centrales, lo que ayuda a los clientes a ahorrar más costos de ancho de banda.

Seguridad de los datos : los datos se procesan y agregan previamente en los nodos de borde sin transmitirse a través de la red, lo que reduce el riesgo de robo de datos cuando se transmiten a través de la red pública.

aa0364002359c3105df626b062c32e80.png

La informática de punta plantea principalmente los siguientes cuatro desafíos:

Limitaciones de recursos : la escala de los nodos de computación de borde suele ser pequeña y la cantidad de máquinas generalmente oscila entre unas pocas y docenas. Algunos nodos de borde incluso tienen un solo servidor, por lo que es necesario considerar cómo administrar los recursos a pequeña escala. nodos Con recursos limitados, aumente la tasa de venta de recursos tanto como sea posible.

Gestión distribuida : Cientos de grupos de nodos informáticos de borde están distribuidos por todo el país y existen problemas con una gestión de red débil y una autonomía de borde débil.

Necesidades diversas : dado que los negocios de los clientes son diversos, los clientes también tienen muchas demandas sobre los nodos de borde. Los clientes deben proporcionar varios tipos de recursos, como hosts en la nube/contenedores/metal desnudo en el borde. Además, a nivel de red, los clientes esperan que proporcionemos VPC, PIP, EIP y otras capacidades. A nivel de almacenamiento, los clientes esperan que proporcionemos disco en la nube, disco local, almacenamiento de archivos, almacenamiento de objetos y otras capacidades.

Gestión de seguridad : es necesario lograr el aislamiento de los inquilinos dentro de un nodo muy pequeño y garantizar la seguridad de la transmisión de la red pública coordinada por la red pública y los nodos de borde.

-03-

Hacer frente a los desafíos: la infraestructura de la nube de Edge Computing está mejorando gradualmente

Para hacer frente a los desafíos anteriores, la infraestructura de la nube de computación de borde está mejorando gradualmente.

611f0df301352d4706b23a435e15369f.png

Como se mencionó anteriormente, la informática de punta enfrenta desafíos como la miniaturización, la distribución y el aislamiento de seguridad.

En este sentido, lo primero que pensamos es en la tecnología nativa de la nube, que tiene las siguientes características:

En términos de gestión de recursos , la tecnología nativa de la nube admite el escalamiento elástico y la asignación de recursos bajo demanda, brindando la posibilidad de construir un nodo de borde elásticamente escalable en un nodo de borde pequeño.

En términos de arquitectura técnica , la tecnología nativa de la nube está débilmente acoplada, es conectable y tiene buena escalabilidad. Proporciona la posibilidad de implementación heterogénea y bajo demanda de nodos de borde.

En términos de implementación de aplicaciones , la tecnología nativa de la nube proporciona implementación estándar, operación y mantenimiento automatizados y observabilidad. Proporciona la posibilidad de crear operaciones y mantenimiento simplificados y capacidades de recuperación automática en el borde.

Nativo de la nube es un concepto ideológico para el diseño de aplicaciones en la nube, que ayuda a construir un sistema que sea elástico, confiable, débilmente acoplado, fácil de administrar y observable.

5bf633d3d05cbd2026cf42efbc5f8dd0.png

La evolución arquitectónica del Edge Computing es consistente con la evolución de la arquitectura empresarial y ha pasado por tres etapas:

Etapa orientada a recursos : En la etapa inicial, el negocio básicamente se ejecuta directamente en máquinas virtuales o máquinas físicas. En este momento, el negocio está orientado directamente a los recursos y no resuelve el problema de cómo organizar aplicaciones y cómo implementarlas rápidamente. , cómo operar y mantener, cómo observar, etc., para su uso en la nube de aplicaciones.

Orientado a aplicaciones : Con el auge de la tecnología de contenedores, Kubernetes apareció en 2014 y el concepto de Cloud Native apareció en 2018. Al mismo tiempo, el borde también ha evolucionado hasta un período en el que la nube nativa es la arquitectura principal.

Sin embargo, la nube nativa no resuelve todos los problemas de borde. Los escenarios de borde tienen sus propias características:

A nivel de recursos , el borde tiene una amplia cobertura de nodos y los recursos de los nodos individuales son muy limitados, lo que impone requisitos muy altos en cuanto a la gestión y el control masivos de nodos y la optimización de recursos de un solo nodo.

A nivel de red , existe el problema de un entorno de red débil en el borde de la nube, lo que plantea requisitos para la autonomía del borde.

Como resultado, ha comenzado la tercera etapa de la arquitectura de tecnología de nube de borde, que combina características nativas de la nube y de borde para formar una solución de tecnología de borde única, a saber, nativa de borde.

A continuación, les presentaré la evolución de la arquitectura informática de punta por etapas.

La primera etapa es la etapa de virtualización tradicional. Esta etapa combina la tecnología de virtualización con el borde para brindar la capacidad de dividir recursos de gran granularidad en recursos de pequeña granularidad y aislar recursos. Su enfoque principal está orientado a los recursos. Los clientes necesitan resolver una serie de problemas como implementación, operación y mantenimiento y monitoreo por sí mismos. Este modelo de gestión y control tiene requisitos extremadamente altos sobre las capacidades básicas de operación y mantenimiento del cliente, y requiere que los clientes tengan una operación y mantenimiento muy profesionales y sistemas de gestión y control.

2bfef68313a3df62b116631fc78936cb.png

Con la madurez de la tecnología de contenedores y la tecnología nativa de la nube, cada vez hay más aplicaciones nativas de la nube. En este momento, los contenedores se implementan en máquinas virtuales y los contenedores y las máquinas virtuales están anidados entre sí. En esta solución, la virtualización sigue siendo la tecnología principal y los contenedores son auxiliares. Es una solución de "transición" para la hiperconvergencia tradicional para hacer frente a la tendencia nativa de la nube. Aunque algunas capacidades de orquestación se resuelven en esta etapa, la elasticidad del contenedor está limitada por la elasticidad de la máquina virtual.

4b4539df62474e070b65697357fe2087.png

Basándose en las características de la informática de punta, la arquitectura hiperconvergente nativa de la nube finalmente evolucionó. Realiza la gestión, control e implementación de máquinas virtuales, contenedores y bare metal en el mismo grupo de recursos, lo que tiene las dos ventajas siguientes:

926a3ff952a56f70c39033491285c2f5.png

Primero, la puesta en común de recursos. Las tres formas de recursos comparten un grupo de recursos, que puede asignar de manera flexible diferentes grupos de recursos y mejorar la tasa general de ventas de recursos.

En segundo lugar, cumplir con más formas comerciales y brindar servicios para aplicaciones nativas de la nube a través de diferentes contenedores . Utilice máquinas virtuales para brindar servicios a los clientes con capacidades básicas de operación y mantenimiento, use máquinas virtuales para resolver problemas ecológicos de Windows y use bare metal para brindar a los usuarios recursos de mayor rendimiento en escenarios de alto tráfico en el borde.

Edge Native combina las características y ventajas de las tecnologías nativas de la nube y del borde, por lo que tiene la portabilidad, observabilidad, fácil administración y capacidades de orquestación unificada de las aplicaciones y servicios nativos de la nube. También tiene colaboración en el borde de la nube y colaboración de borde. capacidades de control central y autonomía de borde. En términos de programación global, tiene capacidades de programación de recursos globales y optimización de recursos locales, y tiene capacidades heterogéneas en los nodos de borde. La combinación de las características de la nube nativa y del borde permite que las aplicaciones y servicios utilicen plenamente las capacidades del borde.

c8ed90f286db806ed0b632fcaebab3e8.png

-04-

Arquitectura de infraestructura de nube nativa de borde, interna y externa unificada

A continuación, presentaré cómo Volcano Engine construye una infraestructura de nube nativa del borde.

73285900c8064f904103a4cf6f16b3be.png

La figura muestra la solución técnica general, presentada desde abajo:

Los nodos de computación de borde de Volcano Engine están distribuidos en varias provincias y ciudades de todo el país, con varios operadores y tienen líneas de red de alta calidad. Al mismo tiempo, se combina con una gran cantidad de dispositivos de hardware de vanguardia, como servidores X86 personalizados, servidores ARM, recursos de servidor heterogéneos de GPU, almacenamiento NVMe de alto rendimiento y dispositivos de tarjetas de red inteligentes con ancho de banda de 100G.

Sobre la base de esta infraestructura de alta calidad, diseñamos las capacidades del sistema operativo nativo de la nube de borde, incluida la gestión autónoma de borde, la gestión de componentes del sistema y las capacidades de servicio de duplicación orientada al borde. La gestión autónoma incluye la gestión de clústeres y la gestión del ciclo de vida de las aplicaciones. Los componentes del sistema incluyen componentes de red, descubrimiento de servicios y colas de mensajes. Los componentes de la imagen incluyen imágenes públicas, imágenes personalizadas, precalentamiento de imágenes y aceleración de imágenes.

La gestión en el borde de la nube proporciona subsistemas como canales en el borde de la nube, gestión de clústeres y programación inteligente, optimizando la colaboración en el borde de la nube.

La gestión de datos proporciona recopilación, monitoreo y alarmas de datos, grandes pantallas de datos y almacenes de datos. Los datos del borde se preprocesan y se envían al centro para su análisis y alarma.

En última instancia, brindamos a los clientes servicios de computación de borde a nivel de forma de producto, incluidas máquinas virtuales de borde, bare metal, contenedores y otras formas, al mismo tiempo que brindamos una red de borde consistente, almacenamiento de borde y otras capacidades de servicios en la nube en la nube. Además, también creamos servicios de vanguardia como FaaS y SaaS.

El nivel de aplicación de escenario puede satisfacer las necesidades de diversos escenarios comerciales, como CDN, video en vivo, audio y video en tiempo real, juegos en la nube, aceleración dinámica e inteligencia de borde.

El concepto general del diseño de la arquitectura es la colaboración en el borde de la nube, la autonomía del borde y la gobernanza jerárquica.

59a1d5ca5acbf74dff71bfe2c3c72e70.png

El sistema operativo nativo del borde combina características nativas de la nube y del borde y proporciona las siguientes cuatro capacidades clave:

① Orquestación unificada : a través del sistema operativo nativo de la nube, se puede lograr la orquestación unificada de recursos informáticos, recursos de almacenamiento, recursos de red y sus propios recursos de servicios en la nube.

② Gestión y control colaborativos : admite la gestión y el control colaborativos entre el centro y el borde para lograr una integración eficiente del centro y el borde.

③Implementación bajo demanda : mediante la implementación híbrida de potencia informática y la implementación híbrida de servicios y componentes conectables, se pueden proporcionar potencia informática heterogénea y capacidades de productos heterogéneas en diferentes escenarios de recursos.

④Colaboración en el borde de la nube : implementa capacidades como canales en el borde de la nube y colaboración en el borde de la nube.

55019114d7b30a7acc91f7d4d60cf91b.png

Los requisitos de los nodos de borde para la orquestación de recursos se pueden resumir en miniaturización y diversificación:

Miniaturización : Por lo general, el tamaño del nodo es pequeño, con solo unas pocas máquinas, y algunos nodos incluso tienen una sola máquina.

Requisitos informáticos : debido a las diversas demandas empresariales, los nodos perimetrales deben admitir múltiples formas de productos, como máquinas virtuales, contenedores y bare metal al mismo tiempo.

Nivel de almacenamiento : Requiere capacidades de almacenamiento en bloque, almacenamiento de archivos y almacenamiento de objetos.

Red : debe personalizar la red VPC, el equilibrio de carga, la IP pública elástica y otras capacidades.

En este sentido, la solución que adoptamos es la orquestación unificada de recursos .

La capa inferior es Kubernetes. Además, la abstracción se unifica a través de CRD. Por ejemplo, si necesita una máquina virtual, defina un CRD para la máquina virtual e implemente la lógica del controlador a través de CRD para lograr la gestión y el control de recursos. En términos de ecología, la red, el almacenamiento, la GPU y otros tipos de recursos existentes se pueden reutilizar directamente en Kubernetes para unificar el almacenamiento de contenedores y máquinas virtuales y los recursos de red.

2598a5246033f65e2789008822e3202d.png

El requisito para la orquestación de servicios unificados es la gestión unificada de componentes. Incluye dos demandas:

Ligero : los clústeres perimetrales suelen ser pequeños, por lo que los servicios de gestión y control deben ser ligeros.

Dependencias de ejecución de servicios : debido a la amplia variedad de servicios, las bibliotecas de componentes subyacentes de las que dependen también son diversas y algunos servicios también tienen requisitos de escenario específicos para el sistema operativo.

La solución es unificar la orquestación de servicios, diseñar todos los componentes como microservicios y empaquetar y publicar los componentes en un contenedor unificado, de modo que el tiempo de ejecución del componente no dependa del sistema operativo ni de la versión de la biblioteca de componentes de un host específico.

La capa inferior de la imagen de la derecha es la capa del motor. Al reutilizar las capacidades de administración básicas de Kubernetes, accede directamente a las capacidades básicas proporcionadas por Kubernetes, como la red y el almacenamiento. Además de la capa del motor, contamos con capacidades de registro, monitoreo y alarmas de desarrollo propio, entre otras, y utilizamos y fortalecimos capacidades de expansión y contracción de capacidad nativa de la nube, detección de estado, migración de fallas y capacidades de recuperación automática. Además de esto, las capacidades externas, como máquinas virtuales, instancias de contenedores y bare metal, se proporcionan de manera uniforme al mundo exterior.

f77e28081acc5d472804f4ea13e1dc97.png

El requisito para la gestión y el control colaborativos es la gestión, el control y la programación unificados, incluida la gestión y el control de enlaces en el borde de la nube y la programación unificada de recursos. La solución es un sistema de control y gestión colaborativo en el borde de la nube de desarrollo propio, que incluye tres puntos clave:

Percepción global: según el mecanismo de vigilancia en el centro, se logra una percepción en tiempo real de los recursos perimetrales y los cambios de recursos e inventario se perciben más rápidamente.

Autonomía del borde: El mecanismo multi-Master se utiliza para garantizar la disponibilidad del borde, incluso si pierde contacto con el centro, el borde aún puede funcionar de forma independiente.

Programación unificada: se realiza una gestión de inventario unificada de máquinas virtuales y contenedores.

La imagen de la derecha es el proceso de creación de una programación de máquina virtual. Primero, el usuario inicia una solicitud para crear una instancia de máquina virtual. Después de que el control de la máquina virtual la recibe, inicia una solicitud al servicio de inventario. El sistema de programación regresa el resultado a través de una estrategia de programación óptima global, y el sistema de gestión y control descarga los recursos, los envía al nodo de borde correspondiente, realiza una programación ligera a través de la gestión de borde y el programador de borde, y finalmente ejecuta la instancia en un nodo específico.

5810ff689f0b456db13f6e20ef90193e.png

El requisito para la implementación bajo demanda es la diversidad de capacidades, que incluye principalmente los siguientes puntos:

Escala heterogénea : algunos nodos serán más pequeños y otros serán más grandes.

Recursos heterogéneos : los tipos de servidores proporcionados por diferentes nodos incluyen X86, ARM y GPU.

Recursos de almacenamiento : las capacidades de almacenamiento proporcionadas por diferentes nodos incluyen discos en la nube, discos locales, almacenamiento de archivos, etc.

Capacidades del producto : diferentes nodos proporcionarán máquinas virtuales X86 o máquinas virtuales ARM

La respuesta a esto es la estandarización de componentes y la implementación bajo demanda.

El primero es estandarizar las especificaciones de los nodos, estandarizamos los tipos y componentes de los nodos, el primero se divide en nodos pequeños, nodos de uso general, nodos grandes, etc., y el segundo se divide en máquinas virtuales, contenedores y redes. , etc.

Al mismo tiempo, el plan de implementación tiene arreglos fijos para diferentes tipos de nodos y requisitos de productos. Durante la construcción del nodo, se seleccionan diferentes planes de implementación según los tipos de nodos y requisitos de productos. Como puede ver en la imagen de la derecha, los usuarios reciben máquinas virtuales estándar, contenedores y capacidades LB en nodos de tamaño pequeño, y capacidades bare metal adicionales en nodos de uso general. -ins en nodos de uso general. Para proporcionar a los usuarios más capacidades, como GPU y capacidades de productos de almacenamiento de archivos en nodos de gran tamaño, también es necesario implementar los complementos correspondientes basados ​​en nodos de gran tamaño.

5d68ec1c2c95c890d76cc22ec143c91c.png

La colaboración en el borde de la nube resuelve el problema de las redes débiles en el borde de la nube, incluidos los aspectos de red y seguridad. El primero incluye problemas como pérdida de paquetes de red, inestabilidad de enlaces e interrupción de enlaces de red. Este último es principalmente un problema de seguridad de transmisión de enlaces de redes públicas.

La solución correspondiente es un canal de borde de nube de desarrollo propio.

En primer lugar, al establecer enlaces largos entre el borde y el centro, los enlaces entre el borde y el centro se reutilizan y el almacenamiento en caché de datos de cada nodo de borde se implementa en el centro, lo que garantiza que el centro pueda detectar los cambios de borde más rápidamente. y los componentes centrales pueden responder a los cambios del borde cuando operan el borde y acelerar las solicitudes de lectura.

En segundo lugar, en términos de protección de seguridad, la seguridad de la autenticación bidireccional entre el cliente y el servidor se garantiza mediante mecanismos como la autenticación de identidad y los certificados bidireccionales. En términos de seguridad de transmisión, la seguridad de los datos transmitidos se garantiza mediante cifrado y descifrado SSL de enlace completo. En términos de control de acceso SSL y ACL, se garantiza que solo los nodos de borde incluidos en la lista blanca puedan registrarse en el centro, lo que mejora la seguridad de la comunicación en el borde de la nube.

Finalmente, en términos de recuperación ante desastres de la red, se adoptan tecnologías como múltiples salas de computadoras, múltiples copias, equilibrio de carga y migración automática de fallas para garantizar la alta disponibilidad de los canales perimetrales de la nube.

A continuación se muestran algunas de las mejores prácticas técnicas para nodos de borde.

1b033cd38771a2e142c6c6ae55c50cd4.png

El primero es la aceleración de la creación de instancias. El problema es que los nodos de borde tardan en crear instancias, incluidas dos razones: primero, la descarga de la imagen es lenta, porque el nodo de borde descarga la imagen desde el centro lentamente y porque la descarga de la imagen debe transmitirse a través de la red pública, el tiempo de descarga de la imagen es incontrolable. En segundo lugar, la creación de instancias requiere una copia completa de la imagen base. Si la imagen es más grande, la copia llevará más tiempo.

La solución adoptada para esto es el calentamiento y la instantánea.

En primer lugar, precaliente las imágenes de la máquina virtual y las imágenes definidas por el usuario en los nodos perimetrales de antemano. Luego cree previamente una instantánea de la imagen del borde. Cuando es necesario crear una máquina virtual, se crea directamente en función de la instantánea. La capa inferior de la máquina virtual comparte la misma capa de instantánea. La instantánea utiliza el mecanismo de copia en escritura. .Cuando se crea la máquina virtual, los datos de la imagen no se copian por completo. Los datos que deben cambiarse se copian solo cuando los datos realmente se escriben. A través del mecanismo de instantáneas, las máquinas virtuales se pueden crear en segundos.

ceaebb248a72cadedebb208ea96682cb.png

Hemos optimizado el rendimiento de la virtualización en el nivel de optimización del rendimiento. Como sugiere el nombre, una máquina virtual está virtualizada por software, por lo que la máquina virtual tiene una cierta pérdida de rendimiento, lo que se refleja en los siguientes tres puntos:

•En primer lugar, las vCPU se programan como procesos ordinarios en modo de usuario en el sistema operativo, por lo que puede haber competencia de rendimiento entre las vCPU.

•En segundo lugar, debido a que la máquina virtual divide la memoria de granulado grande en memoria de grano pequeño, existe una sobrecarga en el rendimiento de la conversión de memoria.

•En tercer lugar, la salida de VMM puede afectar el rendimiento de la CPU.

Para tener una comprensión más profunda de los problemas anteriores, permítanme presentarles los principios básicos de las máquinas virtuales:

El nivel de ejecución de la CPU se divide en cuatro niveles de estado de ejecución, Ring0 ~ 3. Linux solo usa Ring0 y Ring3, que representan el modo kernel y el modo usuario respectivamente.

La máquina virtual se compone principalmente de VMM (Hypervisor) e Guest. Para admitir la virtualización, el servidor X86 proporciona dos modos operativos, modo raíz y modo no raíz. El proceso de ejecución de la máquina virtual de la CPU es en realidad el cambio controlado por la CPU entre los modos operativos raíz y no raíz.

El modo de operación que cambia entre VMM e Guest se divide principalmente en dos partes. Supongamos que el código actualmente en ejecución está en la capa VMM. Si desea ejecutar el código del cliente, debe ingresar a la capa Invitado. Puede llamar manualmente a la instrucción VMLAUNCH o VMRESUME para cambiar el código actualmente en ejecución al lado invitado. Esto El proceso se llama Entrada VM. Supongamos que el cliente necesita responder a interrupciones externas o fallas de página durante la operación. En este momento, la operación de la CPU cambiará a VMM. A este proceso lo llamamos VM Exit.

Para reducir la pérdida de rendimiento de las máquinas virtuales, hemos hecho lo siguiente:

• Vinculación de vCPU: al vincular vCPU a la CPU de la máquina física uno a uno, se reducen los cambios frecuentes de CPU, reduciendo así la pérdida de cambio de contexto de la CPU;

•Hugepage: al utilizar páginas de memoria grandes, se reduce la tabla de páginas de memoria, se reducen los errores de TLB y se mejora el rendimiento del acceso a la memoria de la máquina virtual;

•Optimización de salidas: al transmitir de forma transparente salidas como temporizador/IPI, se eliminan la mayoría de las salidas de VM, lo que reduce la pérdida de virtualización a menos del 5 %.

f0682ba8747d515d13567ec8524e3a78.png

La optimización a nivel de E/S incluye principalmente dos puntos:

•E/S de red: ancho de banda ultragrande, como el escenario vCDN

•Nivel de almacenamiento: los escenarios de almacenamiento en caché localizados requieren un gran ancho de banda de almacenamiento y capacidades de IOPS

La solución correspondiente es utilizar descarga de hardware, transferencia de hardware, E/S sondeadas y otros métodos.

•Descarga de hardware: descargue el tráfico de red a un dispositivo de tarjeta de red dedicado y utilice el dispositivo de red dedicado para reenviar paquetes de red. Esto no sólo mejora el rendimiento de reenvío, sino que también libera algunos recursos de la CPU.

•Paso de dispositivo: pase directamente el disco o el dispositivo de tarjeta de red a la máquina virtual, lo que reduce la ruta de reenvío del software y mejora el rendimiento general de E/S.

•E/S sondeada: a través del sondeo en modo de usuario, reduce la dependencia del mecanismo de notificación y detecta los cambios de datos más rápidamente.

-05-

perspectiva del futuro

En el futuro, la informática de punta seguirá mostrando una tendencia de crecimiento y el auge de la informática de punta también traerá más comodidad. Finalmente, me gustaría presentarles las principales direcciones de los futuros esfuerzos de informática de punta.

a0296d1a03eec4b74fea56bf9f228990.png

Principalmente ligero, integración de redes informáticas y ecología abierta.

bcc4aaac4395bb8e7ad28347d8562bf9.png

Actualmente brindamos capacidades de virtualización estándar y funciones muy completas en el borde. Pero actualmente existe un grave problema con la virtualización.

En el futuro, optimizaremos el hipervisor para lograr una sobrecarga más ligera y reducir aún más las pérdidas de virtualización. Además, a nivel de gestión y control, algunas capacidades de gestión y control se unifican en el centro a través de la colaboración en el borde de la nube, y se proporcionan capacidades autónomas livianas en el borde, lo que hace que el plano de control y administración del borde y el hipervisor sean livianos.

6186d954fd4b3005fb050cd1813c81a4.png

El segundo es la profunda integración de las redes informáticas. Actualmente, dependemos más de la elasticidad de un solo nodo y la programación de los recursos de potencia informática de un solo nodo. Las aplicaciones deben proporcionar capacidades de recuperación ante desastres para múltiples salas de computadoras. En el futuro, realizaremos una integración profunda de las redes de potencia informática, programaremos de manera uniforme los recursos de red y los recursos informáticos de la CPU y lograremos una escalabilidad elástica entre nodos, de modo que algunos servicios puedan ser libres. migró entre diferentes nodos. Haga un buen uso de los recursos de diferentes nodos.

221c7633ce9a31eb5079fe10468b1d0f.png

Finalmente, hay un ecosistema más abierto. Actualmente, hemos creado un sistema operativo nativo de borde basado en tecnología nativa de la nube y brindamos servicios de nube pública como máquinas virtuales, contenedores y bare metal de manera unificada.

En el futuro, abriremos más capacidades nativas de la nube a los usuarios y atraeremos más socios en el ecosistema nativo de la nube. A través de un modelo más abierto, la tecnología nativa de la nube no solo puede servirse a sí misma, sino que también puede permitir que más clientes disfruten de los beneficios nativos de la nube. Ven con comodidad ecológica.



35cefc38503ae957815af071520de1f8.png

Escanee el código QR en la imagen o haga clic en " Leer el texto original " 

Acceso directo a LiveVideoStackCon 2023 Shenzhen Station 10% de descuento en el canal de compra de entradas

Supongo que te gusta

Origin blog.csdn.net/vn9PLgZvnPs1522s82g/article/details/132748759
Recomendado
Clasificación