A logo showing the text blog.marcnuri.com
English
Inicio»Cloud Native»Fabric8 Kubernetes Client 7.8 está disponible!

Entradas Recientes

  • Fabric8 Kubernetes Client 7.8 está disponible!
  • Fabric8 Kubernetes Client 7.7 está disponible!
  • Superpowers: El Framework de Skills de Claude Code Distribuido como Markdown
  • Los Niveles que Faltan en Desarrollo Asistido por IA: Del Caos a la Orquestación
  • Ascenso a Senior Principal Software Engineer en Red Hat

Categorías

  • Antiguo
  • Cloud Native
  • Desarrollo Backend
  • Desarrollo Frontend
  • Herramientas
  • Ingeniería de calidad
  • Inteligencia Artificial
  • JavaScript
  • Operaciones
  • Personal
  • Proyectos personales
  • Reflexiones sobre Ingeniería

Archivos

  • junio 2026
  • mayo 2026
  • abril 2026
  • marzo 2026
  • febrero 2026
  • enero 2026
  • diciembre 2025
  • octubre 2025
  • septiembre 2025
  • julio 2025
  • mayo 2025
  • abril 2025
  • marzo 2025
  • febrero 2025
  • enero 2025
  • diciembre 2024
  • noviembre 2024
  • agosto 2024
  • junio 2024
  • mayo 2024
  • abril 2024
  • marzo 2024
  • febrero 2024
  • enero 2024
  • diciembre 2023
  • noviembre 2023
  • octubre 2023
  • septiembre 2023
  • agosto 2023
  • julio 2023
  • junio 2023
  • mayo 2023
  • abril 2023
  • marzo 2023
  • febrero 2023
  • enero 2023
  • diciembre 2022
  • noviembre 2022
  • octubre 2022
  • septiembre 2022
  • agosto 2022
  • julio 2022
  • junio 2022
  • mayo 2022
  • marzo 2022
  • febrero 2022
  • enero 2022
  • diciembre 2021
  • noviembre 2021
  • octubre 2021
  • septiembre 2021
  • agosto 2021
  • julio 2021
  • enero 2021
  • diciembre 2020
  • octubre 2020
  • septiembre 2020
  • agosto 2020
  • junio 2020
  • mayo 2020
  • marzo 2020
  • febrero 2020
  • enero 2020
  • noviembre 2019
  • septiembre 2019
  • julio 2019
  • diciembre 2018
  • agosto 2018
  • julio 2018
  • junio 2018
  • mayo 2018
  • marzo 2018
  • febrero 2018
  • noviembre 2017
  • octubre 2017
  • agosto 2017
  • julio 2017
  • enero 2017
  • julio 2016
  • mayo 2016
  • enero 2016
  • diciembre 2015
  • noviembre 2015
  • diciembre 2014
  • noviembre 2014
  • octubre 2014
  • marzo 2014
  • febrero 2011
  • junio 2008
  • mayo 2008
  • abril 2008
  • enero 2008
  • junio 2007
  • mayo 2007
  • abril 2007
  • marzo 2007

Fabric8 Kubernetes Client 7.8 está disponible!

2026-06-29 en Cloud Native etiquetado Cliente / Cloud / Fabric8 / Java / Kubernetes / Open Source / OpenShift / Releases por Marc Nuri | Última actualización: 2026-06-29
English version

En nombre de todo el equipo de Fabric8 y de todos sus contribuidores, estoy muy contento de anunciar que hemos liberado la versión 7.8.0 de Fabric8 Kubernetes Client y que está disponible para su descarga desde Maven Central 🎉.

Esta es la octava versión menor de Fabric8 Kubernetes Client 7, que trae nuevas características, bug fixes y mejoras, minimizando los cambios que puedan romper la compatibilidad.

Muchas gracias a todos los que habéis contribuido reportando issues, creando pull requests, dando feedback y promocionando el proyecto mediante blogs, videos, comentarios, etc. Valoramos muchísimo vuestra ayuda ¡seguid así!

Novedades

Sin más dilación, veamos cuáles son las novedades más importantes de esta versión:

  • Selectores de shard para list, watch e informers
  • Calentamiento de TLS opcional para el cliente HTTP de Vert.x
  • Generador de CRDs: descripciones a nivel de clase con @JsonClassDescription
  • 🐛 Muchas otras mejoras y bug-fixes

Puedes encontrar la lista completa de cambios para esta versión en la release page en GitHub.

Selectores de shard para list, watch e informers

Las operaciones de list y watch, incluyendo los informers, ahora soportan selectores de shard mediante el nuevo método withShardSelector. Esto te permite particionar un conjunto grande de recursos entre varios consumidores, de modo que cada instancia sólo lista y observa la porción de la que es responsable. Es una pieza muy útil cuando necesitas escalar controladores u operadores horizontalmente y repartir la carga de watch, en lugar de que cada instancia reciba todos los eventos.

Un selector de shard es una expresión CEL, normalmente un shardRange(...) sobre el UID del recurso, que adjuntas a cualquier operación de list, watch, inform o delete:

try (KubernetesClient client = new KubernetesClientBuilder().build()) {
  // Esta instancia sólo ve la primera mitad del espacio de UIDs
  String shard = "shardRange(object.metadata.uid, '0x0000000000000000', '0x8000000000000000')";
  client.configMaps()
    .withShardSelector(shard)
    .inform(handler);
}

Ten en cuenta que esto depende del soporte de list y watch fragmentados (sharded) en el servidor, una característica alpha de Kubernetes, así que el feature gate correspondiente debe estar habilitado en tu clúster. El soporte inicial se ha completado con algunos follow-ups para pulir los detalles.

Calentamiento de TLS opcional para el cliente HTTP de Vert.x

Las factorías del cliente HTTP de Vert.x (Vertx5HttpClientFactory y VertxHttpClientFactory) exponen ahora un método setTlsWarmup(TlsWarmup) con tres modos: OFF, CONTEXT (el valor por defecto, con el comportamiento sin cambios) y FULL.

Cuando se configura como FULL, el cliente realiza un handshake TLS de loopback síncrono, desechable y una sola vez por JVM, fuera del event loop, en el momento en que se construye. De esta forma se paga por adelantado el coste único de la carga de clases TLS de JDK/Netty, así que la primera conexión real ya no bloquea el event loop por ese motivo. Está pensado específicamente para usuarios que ejecutan en JVMs en frío o con la CPU fuertemente limitada, que sufrían bloqueos o timeouts en la primera conexión.

Para activarlo, configuras el modo de warm-up en la factoría del cliente HTTP y se la pasas al builder:

Vertx5HttpClientFactory factory = new Vertx5HttpClientFactory();
factory.setTlsWarmup(TlsWarmup.FULL);
try (KubernetesClient client = new KubernetesClientBuilder()
    .withHttpClientFactory(factory)
    .build()) {
  // La primera conexión TLS ya no paga el coste de carga de clases en el event loop
}

El comportamiento por defecto (CONTEXT) no cambia, así que sólo lo activas si lo necesitas.

Generador de CRDs: descripciones a nivel de clase con @JsonClassDescription

El generador de CRDs ahora respeta la anotación @JsonClassDescription de Jackson, permitiéndote añadir descripciones a clases completas en el esquema de CRD generado. Esto complementa el soporte ya existente para descripciones a nivel de campo, de modo que la documentación embebida en tus CRDs puede ser más completa y estar más cerca de tu modelo de código.

Cómo utilizar esta versión

Si tu proyecto está basado en Maven, lo único que hay que hacer es añadir Fabric8 Kubernetes Client a las dependencias del proyecto:

pom.xml
<dependency>
  <groupId>io.fabric8</groupId>
  <artifactId>kubernetes-client</artifactId>
  <version>7.8.0</version>
</dependency>

Si tu proyecto está basado en Gradle, lo único que tienes que hacer es añadir Fabric8 Kubernetes Client a las dependencias de Gradle:

build.gradle
dependencies {
  api "io.fabric8:kubernetes-client:7.8.0"
}

Una vez hayas configurado tu proyecto, puedes crear una instancia del cliente para realizar distintas operaciones. En el siguiente fragmento de código muestro como instanciar el cliente y obtener una lista de Pods:

try (KubernetesClient client = new KubernetesClientBuilder().build()) {
  client.pods().list().getItems().forEach(p -> System.out.println(p.getMetadata().getName()));
}

Cómo ayudar y colaborar

Si estás interesado o interesada en ayudar con el proyecto y es la primera vez que contribuyes, puedes echar un vistazo al tag "good first issue" en el repositorio. Hemos etiquetado issues muy sencillas para que puedas iniciarte en el mundo Open Source.

También nos encanta leer artículos y publicaciones mencionando nuestro proyecto y compartiendo la experiencia. Dar una estrella al proyecto, y en general, ayudar a promocionar el proyecto, nos ayuda a llegar a más usuarios e incrementar el feedback. El feedback es la única forma de mejorar y siempre es bienvenido.

Project Page | Issues | Discussions | Gitter | Stack Overflow

El logo de Fabric8 Kubernetes Client
El logo de Fabric8 Kubernetes Client
Twitter iconFacebook iconLinkedIn iconPinterest iconEmail icon

Navegador de artículos
Fabric8 Kubernetes Client 7.7 está disponible!
© 2007 - 2026 Marc Nuri