Karmada|8 temas nativos de nube, múltiples nubes y múltiples clústeres en el verano de código abierto de 2024 lo invitan a co-crear

Este artículo es compartido por la comunidad de nube de Huawei "Clúster de múltiples nubes nativo de la nube Karmada | 8 temas para el verano de código abierto de 2024 lo invitan a cocrear" , autor: Cloud Containers Great Future.

Introducción al verano de código abierto

La inscripción de estudiantes para Open Source Summer 2024 comienza el 30 de abril. Open Source Summer es una actividad de verano de código abierto iniciada y respaldada a largo plazo por el "Plan de iluminación de la cadena de suministro de software de código abierto" del Instituto de Software de la Academia de Ciencias de China. Su objetivo es alentar a los estudiantes a participar activamente en el desarrollo y. mantenimiento del software de código abierto y cultivar y descubrir más talentos destacados, promover el desarrollo vigoroso de excelentes comunidades de software de código abierto y ayudar a construir cadenas de suministro de software de código abierto. El motor de contenedores multinube nativo de la nube Karmada ofrece este año 8 temas en el campo de múltiples nubes y múltiples clústeres . Los estudiantes universitarios pueden postularse.

Introducción a la comunidad Karmada

Karmada ( https://github.com/karmada-io ) es el primer proyecto de orquestación de contenedores de múltiples nubes y múltiples clústeres de la industria, y también es un proyecto de nivel de incubación de Cloud Native Computing Foundation (CNCF) . La comunidad Karmada fue iniciada conjuntamente por ocho empresas, incluidas Huawei Cloud, Industrial and Commercial Bank of China, Xiaohongshu y China FAW, y se abrió oficialmente en abril de 2021. Los contribuyentes de Karmada provienen de todo el mundo y cubren más de 60 organizaciones en 22 países y regiones de todo el mundo, incluidas Huawei, DaoCloud, la Universidad de Zhejiang, Didi, Tencent, Xiaohongshu, Sina, Intel, IBM, Red Hat, Comcast y otras empresas. . Hasta ahora, el proyecto ha recibido más de 4,1 mil estrellas en GitHub, una plataforma de alojamiento de proyectos de software de código abierto.

Karmada (Kubernetes Armada) es un sistema de gestión de Kubernetes que le permite ejecutar aplicaciones nativas de la nube en múltiples clústeres de Kubernetes y plataformas en la nube sin necesidad de cambios en las aplicaciones. Karmada permite Kubernetes verdaderamente abierto y multinube mediante el uso de API nativas de Kubernetes y proporcionando capacidades de programación avanzadas.

1.png

La comunidad de Karmada llevará a cabo una reunión comunitaria regular a las 14:30 pm el 7 de mayo (martes) para promover los temas del Verano de Código Abierto. ¡Los estudiantes pueden prestar atención y participar! Enlace de participación estudiantil: https://zoom.com/my/karmada

Proyecto de verano de 2024 de código abierto de la comunidad Karmada

Tema 1: Karmada admite una reversión fluida de las capacidades de un solo clúster

Dificultad del proyecto : Básico

Mentor de la comunidad del proyecto : Pan Chaosi (Super pan)

Correo electrónico de contacto del instructor : [email protected]

Descripción del proyecto : Karmada admite la gestión de un único clúster y se hace cargo de los recursos implementados en el único clúster original. También admite la eliminación de un único clúster para que quede fuera del control de Karmada. Al eliminar un único clúster, Karmada limpiará los recursos que alguna vez fueron controlados por Karmada en el clúster. Sin embargo, en algunos escenarios de eliminación, los usuarios desean que estos recursos permanezcan en un único clúster. Karmada espera atraer a más usuarios para intentar evolucionar de un solo clúster a múltiples clústeres. Esta capacidad puede reducir los costos de prueba y error de los usuarios. Cuando los usuarios desean retroceder de múltiples clústeres a uno solo, pueden evitar causar daños. grupo único después de la reversión.

Por lo tanto, planeamos proporcionar una capacidad de reversión sin problemas. Los usuarios pueden configurar qué recursos retener al eliminar un clúster administrado, reteniendo así selectivamente los recursos en el clúster único original.

Enlace del proyecto : https://summer-ospp.ac.cn/org/prodetail/245c40436?lang=zh&list=pro

Tema 2: Implementación de la función de gestión de políticas de anulación de Karmada Dashboard

Dificultad del proyecto : Avanzado

Mentor de la comunidad del proyecto : Lu Chuanjia (capitán)

Correo electrónico de contacto del tutor : [email protected]

Breve descripción del proyecto : Actualmente, Karmada Dashboard ya admite las capacidades de visualización de Cluster, PropagationPolicy y OverridePolicy. La comunidad está reescribiendo Karmada Dashboard, con la esperanza de admitir completamente las capacidades de administración de los recursos anteriores.

Esperamos respaldar completamente la administración de las funciones de OverridePolicy en Karmada Dashboard, admitir la edición y visualización de los recursos de OverridePolicy a través del editor de OverridePolicy y reducir la complejidad del uso del usuario.

Extensión del proyecto: agregue funciones LSP a la versión YAML del editor (tanto los trabajadores locales como JSON-RPC remoto están disponibles) para reducir la complejidad de escribir YAML para los usuarios;

Enlace del proyecto : https://summer-ospp.ac.cn/org/prodetail/245c40342?lang=zh&list=pro

Tema 3: karmadactl admite el método del archivo de configuración para la instalación e implementación del entorno de nivel de producción

Dificultad del proyecto : Básico

Mentor de la comunidad del proyecto : Liang Yuanpeng

Correo electrónico de contacto del tutor : [email protected]

Breve descripción del proyecto : Karmada proporciona el método de instalación del comando karmadactl init. Es necesario configurar más parámetros durante la ejecución del comando. Con el desarrollo de la comunidad, los usuarios deberán configurar más y más parámetros, lo cual es inconveniente para los usuarios. Para reducir el exceso de parámetros de línea de comando, proponemos la instalación e implementación a través de archivos de configuración. Debe comprender y estar familiarizado con el código fuente de karmadactl init, enviar una propuesta para el archivo de configuración de soporte de karmadactl init y promover la propuesta para que la comunidad karmada la fusione. El objetivo principal de esta propuesta es reducir el exceso de parámetros de línea de comandos, migrar gradualmente los parámetros en forma de archivos de configuración y considerar plenamente la escalabilidad de la solución para facilitar la adición de nuevos parámetros en el futuro.

Problema relacionado: https://github.com/karmada-io/karmada/issues/3464

Además, karmadactl init necesita utilizar varias imágenes de contenedor durante el proceso de implementación y los usuarios no pueden obtener fácilmente la lista de imágenes de contenedor que se utilizarán. Por lo tanto, planeamos agregar un subcomando de lista de imágenes que permita a los usuarios imprimir las imágenes del contenedor utilizadas durante el proceso de inicio de karmadactl en la consola. Esta función se implementa como un elemento en la solución anterior.

Problema relacionado: https://github.com/karmada-io/karmada/issues/4086.

Enlace del proyecto : https://summer-ospp.ac.cn/org/prodetail/245c40186?lang=zh&list=pro

Tema 4: Karmada distribuye uniformemente el número de réplicas según las restricciones de distribución

Dificultad del proyecto : Avanzado

Mentor de la comunidad del proyecto : He Junhua (molinos de viento blancos)

Correo electrónico de contacto del tutor : [email protected]

Breve descripción del proyecto: en la estrategia de asignación de número de réplicas del programador actual de Karmada, ya admitimos cuatro métodos de asignación de réplicas: replicación, peso estático, agregación basada en la cantidad de réplicas disponibles y peso dinámico según la cantidad de réplicas disponibles. Pero para escenarios de programación más complejos: después de las restricciones de distribución entre zonas de disponibilidad, la cantidad de réplicas de la carga de trabajo se distribuye de la manera más uniforme posible en el clúster seleccionado. Actualmente, Karmada no soporta bien estos escenarios.

Por lo tanto, planeamos ordenar semánticamente la estrategia de programación actual de Karmada, determinar si extender la API existente o cambiar el diseño de la API original y, finalmente, introducir esta función para satisfacer las necesidades de programación de más escenarios.

Problema relacionado: https://github.com/karmada-io/karmada/issues/4805

Enlace del proyecto : https://summer-ospp.ac.cn/org/prodetail/245c40281?lang=zh&list=pro

Tema 5: Karmada admite el mecanismo de configuración dinámica OverridePolicy

Dificultad del proyecto : Avanzado

Mentor de la comunidad del proyecto : Jiang Xingyan (Chauncey)

Correo electrónico de contacto del tutor : [email protected]

Descripción del proyecto : Karmada utiliza la API nativa de Kubernetes y proporciona funciones de programación avanzadas. Cuando Karmada programa aplicaciones nativas de la nube para diferentes grupos de miembros, los usuarios pueden necesitar algunas configuraciones diferenciadas para diferentes grupos de miembros, como configurar diferentes variables de entorno o configurar diferentes imágenes para diferentes grupos de miembros. En este sentido, Karmada proporciona una API de política de configuración diferenciada: OverridePolicy, que puede establecer información de configuración diferenciada para diferentes clústeres.

Actualmente existe una limitación en el uso de OverridePolicy. Solo puede establecer algunos valores estáticos y no puede establecer valores dinámicamente según algunas condiciones. Esta limitación limita los escenarios de uso de OverridePolicy. Por lo tanto, queremos proporcionar un mecanismo que pueda establecer valores dinámicamente según las condiciones. Esto mejora la flexibilidad de los usuarios al usar OverridePolicy para una configuración de clúster diferenciada y brinda más escalabilidad a los usuarios. Por ejemplo, los usuarios pueden expandirse definiendo el lenguaje CEL o lua en OverridePolicy. La comunidad ya tiene problemas relevantes para rastrear esta tarea y es necesario seguir avanzando en soluciones específicas.

Enlace del proyecto: https://summer-ospp.ac.cn/org/prodetail/245c40337?lang=zh&list=pro

Tema 6: Herramienta i18n automatizada Karmada Dashboard

Dificultad del proyecto : Básico

Mentor de la comunidad del proyecto : Ding Wenjiang (warjiang)

Correo electrónico de contacto del tutor : [email protected]

Breve descripción del proyecto : i18n es un componente muy importante del proyecto de internacionalización. En el proceso de reescribir Karmada Dashboard, nos resultó difícil encontrar un conjunto de herramientas i18n listas para usar en la comunidad de código abierto. A medida que se expande la escala del proyecto, la gestión manual de las capacidades de i18n no sólo es ineficiente, sino que también la gestión manual de los recursos de i18n es propensa a errores.

Por lo tanto, esperamos desarrollar un conjunto de herramientas de traducción automática i18n como complemento del Karmada Dashboard, que admita la extracción automática de caracteres chinos del proyecto Karmada Dashboard, la asignación automática de claves i18n y el reemplazo de los caracteres chinos originales con la traducción i18n. funciones de la herramienta y la extracción de Los caracteres chinos recibidos se traducen automáticamente al idioma de destino llamando a una API de traducción de terceros.

Ampliación del proyecto:

Proporciona una página de visualización de los resultados de la traducción de i18n localmente, lo que permite a los usuarios ver la cobertura de i18n y permite a los usuarios modificar manualmente la redacción publicitaria de i18n;

Utilice GPT para reemplazar la implementación de traducción de OpenAPI y establezca el glosario Karmada para evitar la traducción automática de términos clave y mejorar la calidad de la traducción.

Enlace del proyecto : https://summer-ospp.ac.cn/org/prodetail/245c40338?lang=zh&list=pro

Tema 7: finalización de la función karmadactl y mejora de la experiencia de operación y mantenimiento

Dificultad del proyecto : Básico

Mentor de la comunidad del proyecto : Ren Hongcai

Correo electrónico de contacto del instructor : [email protected]

Breve descripción del proyecto : karmadactl es la herramienta de línea de comandos (CLI) del proyecto Karmada, utilizada para la interacción entre los usuarios y administradores de Karmada y Karmada. En comparación con kubectl, karmadactl es una herramienta CLI completamente dedicada a escenarios de múltiples clústeres de Karmada. Actualmente, karmadactl implementa algunas aplicaciones de comandos como get y top en escenarios de múltiples clústeres, pero todavía quedan algunos escenarios que deben implementarse y optimizarse.

Por lo tanto, planeamos completar las funciones de karmadactl en escenarios de múltiples clústeres, completar la implementación funcional de comandos como karmadactl create/patch/edit, optimizar la entrada y salida de comandos como karmadactl get/apply y mejorar aún más la operación. y experiencia en mantenimiento de karmadactl.

Enlace del proyecto : https://summer-ospp.ac.cn/org/prodetail/245c40397?lang=zh&list=pro

Tema 8: Minimizar los permisos RBAC de los componentes de Karmada

Dificultad del proyecto : Avanzado

Mentor de la comunidad del proyecto : Zhang Zhuang

Correo electrónico de contacto del instructor : [email protected]

Descripción del proyecto : El proyecto Karmada utiliza la autenticación RBAC para regular y controlar el acceso a los recursos de la computadora o de la red. Si se asignan permisos de acceso a objetos de recursos demasiado grandes al configurar RBAC, se puede producir un abuso de permisos, lo que permitirá a los atacantes expandir sus resultados y penetrar el clúster. Si se asigna un permiso de acceso a objetos de recursos demasiado pequeño al configurar RBAC, el componente puede funcionar de manera anormal.

Por lo tanto, planeamos clasificar el conjunto mínimo de permisos RBAC requerido por el componente Karmada, revisar la configuración actual recomendada por RBAC del repositorio de Karmada y hacer que cumpla con el principio de privilegio mínimo de RBAC y, en última instancia, usarlo para guiar a los usuarios de Karmada en la configuración. los permisos RBAC del componente Karmada.

Enlace del proyecto : https://summer-ospp.ac.cn/org/prodetail/245c40153?lang=zh&list=pro

¿Cómo registrarse en el proyecto Open Source Summer Karmada?

2.png

Objetivo de registro

  • Este evento está abierto a estudiantes universitarios mayores de 18 años.
  • Los estudiantes que estén a punto de graduarse en el verano pueden registrarse para el evento siempre que su tarjeta de identificación de estudiante sea válida al momento de presentar la solicitud.
  • Los estudiantes chinos deben proporcionar su tarjeta de identificación, tarjeta de identificación de estudiante, informe de verificación en línea del estado de estudiante del Ministerio de Educación (Xuexin.com) o comprobante de inscripción al participar en actividades.
  • Los estudiantes extranjeros deben presentar sus pasaportes al participar en las actividades, así como el aviso de admisión, la tarjeta de estudiante, el certificado de inscripción y otros documentos que acrediten su identidad de estudiante.

Del 30 de abril al 4 de junio , los estudiantes calificados pueden registrarse, comunicarse con tutores sobre proyectos y enviar solicitudes de proyectos a través del sitio web oficial de Open Source Summer (https://summer-ospp.ac.cn/).

Establecer comunicación con el mentor.

Los estudiantes que estén interesados ​​en los temas de verano de código abierto de la comunidad Karmada pueden comunicarse con el instructor con anticipación para comunicarle los requisitos del tema a través de la dirección de correo electrónico del instructor que se encuentra arriba de este artículo o mediante conferencias comunitarias , y comprender y bloquear los proyectos que más les convengan;

Preparar los materiales de solicitud del proyecto y enviar la solicitud.

1. Consulte la [Plantilla de solicitud de proyecto] en la Guía del estudiante (https://summer-ospp.ac.cn/help/student/) y prepare los materiales relevantes según sea necesario.

2. Haga clic en el botón [Agregar alternativa] en la página de inicio del proyecto, ingrese al centro personal del sistema [Mi proyecto], haga clic en el botón [Ver] y cargue su currículum vitae y el formulario de solicitud del proyecto;

3. Priorizar todas las solicitudes de proyectos. Si son seleccionados por varios proyectos al mismo tiempo, los proyectos con mayor prioridad se seleccionarán primero de acuerdo con los proyectos presentados;

4. Haga clic en el botón [Ordenar y enviar] para enviar todas las solicitudes de proyectos.

¿Qué pueden ganar los estudiantes?

  • Conozca amigos y expertos en tecnología en la industria del código abierto.

  • Obtenga orientación profesional de mentores de la comunidad y realice intercambios profundos con desarrolladores de proyectos de código abierto.

  • Enriquecer la experiencia práctica en proyectos y mejorar las habilidades de desarrollo de proyectos.

  • Proporcionar referencias para la dirección de estudios y acumular contactos para el desarrollo profesional.

  • Los estudiantes que aprueben la evaluación de finalización recibirán una bonificación y un certificado de finalización (8.000 RMB antes de impuestos para dificultad básica, 12.000 RMB antes de impuestos para dificultad avanzada) y tendrán la oportunidad de ser seleccionados como estudiantes destacados.

Seminario del proyecto de verano de código abierto de la comunidad Karmada

Para ayudar a los estudiantes a comprender y seleccionar mejor los temas, la comunidad Karmada realizará una presentación del tema en una reunión comunitaria regular a las 14:30 p. m. el 7 de mayo (martes). ¡Los estudiantes pueden prestar atención y participar! Enlace de participación estudiantil: https://zoom.com/my/karmada

 

Haga clic para seguir y conocer las nuevas tecnologías de Huawei Cloud lo antes posible ~

 

Los recursos pirateados de "Qing Yu Nian 2" se cargaron en npm, lo que provocó que npmmirror tuviera que suspender el servicio unpkg: No queda mucho tiempo para Google. Sugiero que todos los productos sean de código abierto. time.sleep(6) aquí juega un papel. ¡Linus es el más activo en "comer comida para perros"! El nuevo iPad Pro utiliza 12 GB de chips de memoria, pero afirma tener 8 GB de memoria. People's Daily Online revisa la carga estilo matrioska del software de oficina: Sólo resolviendo activamente el "conjunto" podremos tener un futuro para Flutter 3.22 y Dart 3.4 . nuevo paradigma de desarrollo para Vue3, sin necesidad de `ref/reactive `, sin necesidad de `ref.value` Lanzamiento del manual chino de MySQL 8.4 LTS: le ayudará a dominar el nuevo ámbito de la gestión de bases de datos Tongyi Qianwen Precio del modelo principal de nivel GPT-4 reducido en un 97%, 1 yuan y 2 millones de tokens
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/u/4526289/blog/11184758
Recomendado
Clasificación