Search code examples
javafabric8

Is Fabric8 for kubernetes client deprecated?


I've seen the fabric8 documentation and it says that fabric8 is already deprecated.

I would like to know if is recommendable to use this API or is better to use the official Kubernetes client I started using fabric8, but now I wonder if I have to switch to the official API


Solution

  • I'm one of the maintainers of Fabric8 Kubernetes Client. Let me provide some background about the project and it's current status.

    Back in 2015, the main Fabric8 platform project was quite active. At that time, Fabric8 project’s vision was to be a PaaS platform for Cloud Native Micro-services running on top of Kubernetes. Fabric8 Kubernetes Client provided a key role in Fabric8 ecosystem as it provided as an abstraction over Kubernetes REST API. Although the Fabric8 project was liked and appreciated by many people in the open source community, due to unfortunate reasons it could not become successful, and the idea of Fabric8 as an integrated development platform on top of Kubernetes died.

    Although the main project is archived, there are several repositories that are still active and used by the community, such as Fabric8 Docker Maven Plugin, Fabric8 Kubernetes Client and Fabric8 Maven Plugin (now known as Eclipse JKube). These projects are still quite active due to their usages as general purpose Docker/Kubernetes tools/libraries.

    Now coming to Fabric8 Kubernetes Client, it's very far from being a deprecated/archived project. It has an extremely active community (check GitHub issues/release cycles). It's even integrated into Java Operator SDK and Strimzi Kafka Operator. If you check the number of users, it's one of the most popular Kubernetes Client libraries (after client-go).

    I have written a blogpost about feature differences between Fabric8 and Official Kubernetes Client: Difference between Fabric8 and Official Kubernetes Java Client. It might help you in deciding which client would be better suited for your use case.