Yearly Archives: 2020


YAKC - Yet Another Kubernetes Client
Introduction Kubernetes v1.19.0 was just released. Amongst the many new features and improvements, the graduation of Ingress API to V1 (#1453) stands out. Despite users have widely adopted Ingress resources, and that Kubernetes introduced the beta feature back in 2015 (v1.1), it hasn’t been until the new v1.19 release that Ingress has gone GA. An Ingress is “An API object that manages external access to the services in a cluster, typically HTTP”. In other words, Ingresses are the way to publicly expose your Kubernetes managed Services to the outer world. In this post, I will show you how to use […]

Kubernetes 1.19 Ingress API from Java using YAKC


Quarkus
Introduction Quarkus provides its very own templating engine, Qute. In this post, I will show you how to use it to render Markdown from different sources using flexmark-java. Besides showcasing Qute, another reason for this post is to show complex assembly configurations to build container images using Eclipse JKube. I designed the project to be run in Kubernetes, so some of the features won’t be available if the application is run locally. The application renders a template with markdown fragments loaded from different locations, highlighting how these fragments can be assembled into the container image using different techniques and ultimately […]

Quarkus + JKube: Qute template with markdown processing from different ...


Camel
Introduction Eclipse JKube 1.0.0 GA will be released on September 9, 2020. As I mentioned in previous posts, JKube is the successor of the deprecated Fabric8 Maven Plugin (FMP), and as such, our main goal right now is to migrate the current user-base to the new project. Aligned with this strategy, we started to create Pull Requests on those repositories that are currently using FMP in order to replace the deprecated dependency. In this article, I’ll describe how to run the updated Apache Camel example (now using JKube) for Cassandra running on Kubernetes, and its expected behavior. This blog post […]

Apache Camel used on a Kubernetes Cassandra cluster



Quarkus
Introduction During the past few months, my team and I have been working very hard to release Eclipse JKube. JKube is the successor of the deprecated Fabric8 Maven Plugin, and as such, our main goal right now is to migrate the current user-base to the new project. GitHub provides some fancy stats and metrics, including information about the project’s dependency graph. This information is really valuable since we get to know which projects (within GitHub) depend on ours. So for our user-base migration use case, this information is spot on. Unfortunately, the GitHub developers API offers information about dependencies, but […]

Building a GitHub Dependents Scraper with Quarkus and Picocli


YAKC - Yet Another Kubernetes Client
Introduction This example shows how you can access the Kubernetes cluster’s REST API from inside a Pod using YAKC (Yet Another Kubernetes Client), Eclipse JKube and Spring Boot. The first part of the tutorial shows how to create a very simple Spring Boot application with the required YAKC Kubernetes Client dependency (see introductory post for YAKC). The second part describes how to quickly deploy the application into a Kubernetes cluster and how to perform requests to the Pod’s REST endpoints to retrieve information from the cluster. Example application The first step will be to create an example Spring Boot Maven […]

Access the Kuberntes API from a Pod in Java


YAKC - Yet Another Kubernetes Client
Introduction I’m a proud member of the team maintaining Fabric8 Kubernetes Client (for a while now) which is one of the most popular Java clients for Kubernetes and OpenShift. Fabric8 Kubernetes Client is great because it allows to perform most of the kubectl supported operations from Java with a very neat and fluent API. However, accessing low-level REST API operations or specific API versions is hard because some of these decisions are taken for you (for now). This is the main reason that drove me to implement Yet Another Kubernetes Client (YAKC) as a side project during these Easter holidays. […]

Kubernetes Client for Java: Introducing YAKC