Fabric8 Kubernetes Client 6.6.0 está disponible!
En nombre de todo el equipo de Fabric8 y de todos sus contribuidores, estoy muy contento de anunciar que hemos liberado la versión 6.6.0
de Fabric8 Kubernetes Client y que está disponible para su descarga desde Maven Central 🎉.
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:
- Experiencia mejorada para trazar las llamadas HTTP
- Support for raw, arbitrary HTTP calls to the cluster
- General performance improvements
- 🐛 Muchas otras mejoras y bug-fixes
Puedes encontrar la lista completa de cambios para esta versión en la release page en GitHub.
Experiencia mejorada para trazar las llamadas HTTP
Hasta ahora, el trazado de las llamadas HTTP se realizaba utilizando el okhttp3.logging.HttpLoggingInterceptor
. El principal problema de este enfoque es que sólo se podía utilizar con la implementación por defecto de HttpClient
de OkHTTP. Además, había algunos problemas al trazar las llamadas HTTP de streaming como las que se utilizan para realizar un S2I build.
En esta versión, incluimos un nuevo interceptor para trazar las llamadas HTTP que funciona de forma consistente con todas las implementaciones de HttpClient
. La forma más sencilla de utilizarlo es proporcionando una implementación de logger de Slf4J y configurar un nivel de log trace
. Por ejemplo, puedes utilizar la implementación SimpleLogger:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j.version}</version>
</dependency>
Posteriormente, configura el nivel de log trace
(globalmente):
-Dorg.slf4j.simpleLogger.defaultLogLevel=trace
O de forma específica para el paquete io.fabric8.kubernetes.client.http
:
-Dorg.slf4j.simpleLogger.log.io.fabric8.kubernetes.client.http.HttpLoggingInterceptor=trace
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:
<dependency>
<groupId>io.fabric8</groupId>
<artifactId>kubernetes-client</artifactId>
<version>6.6.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:
dependencies {
api "io.fabric8:kubernetes-client:6.6.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 "first-timers-only" 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