Client Libraries for Kubernetes
- Kubernetes Client Libraries
- Go Clients for Kubernetes
- Python Client for Kubernetes
- Java Clients for Kubernetes
- CDK8s
- Eclipse Jkube Java Client for Kubernetes (formerly known as Fabric8). Kubernetes \& OpenShift Maven Plugins
- Java Operator SDK
Kubernetes Client Libraries
- github.com/kubernetes-client π
- medium: Building stuff with the Kubernetes API β TOC π
- k8s-ruby: Kubernetes Ruby Client
Go Clients for Kubernetes
- kubernetes/client-go: Go client for Kubernetes π Go clients for talking to a kubernetes cluster.
- Rate Limiting in Controller-Runtime and Client-go
- kubernetes-client/go: OpenAPI based Generated Go client for Kubernetes
- kyaml2go (Pronounced as camel2go π«) π K8s Go client code generator from Kubernetes resource yamls.
- itnext.io: Writing a Kubernetes CLI in Go
- blog.devgenius.io: Learn Kubernetes Programming β Part 1 Learn to programmatically talk to the Kubernetes cluster using the Official Client Go Library. In this tutorial, you’ll learn how to build a simple CLI that connects to the Kubernetes cluster and displays the server version. In the process, you will learn Go and the client-go package.
- iximiuz.com: How To Develop Kubernetes CLIs Like a Pro Build You Own kubectl The Simple Way. Learn how to use the http://k8s.io/cli-runtime library to develop Kubernetes CLI tools that behave like and are as potent as the mighty kubectl.
Python Client for Kubernetes
- github.com/kubernetes-client/python
- github.com/kubernetes-client/python-base
- medium.com/@dimitrijevskiv: Monitor Kubernetes pod status from a Jenkins pipeline
- blog.devgenius.io: Automate Kubernetes With Python π The Kubernetes Python module is a very powerful client that allows you to easily automate interactions with a Kubernetes cluster.
- martinheinz.dev/blog/73: Automate All the Boring Kubernetes Operations with Python π In this article, you will look at how you can leverage the Kubernetes Python Client library to automate any tasks. Examples:
- Triggering a rollout
- Scaling a deployment
- Applying taints
- Retrieving metrics
- Backing up all resources in a namespace
Java Clients for Kubernetes
Official Java client library for kubernetes
- github.com/kubernetes-client/java: Kubernetes Java Client Official Java client library for kubernetes
Fabric8 Java Client for Kubernetes
- Fabric8 has been available as a Java client for Kubernetes since 2015, and today is one of the most popular client libraries for Kubernetes (the most popular is client-go, which is the client library for the Go programming language on Kubernetes). In recent years, fabric8 has evolved from a Java client for the Kubernetes REST API to a full-fledged alternative to the kubectl command-line tool for Java-based development.
- developers.redhat.com: Getting started with the fabric8 Kubernetes Java client
- developers.redhat.com: How the fabric8 Maven plug-in deploys Java applications to OpenShift
- Fabric8.io Microservices Development Platform It is an open source microservices platform based on Docker, Kubernetes and Jenkins. It is built by the Red Hat guys.The purpose of the project is to make it easy to create microservices, build, test and deploy them via Continuous Delivery pipelines then run and manage them with Continuous Improvement and ChatOps. Fabric8 installs and configures the following things for you automatically: Jenkins, Gogs, Fabric8 registry, Nexus, SonarQube.
- developers.redhat.com: Whatβs new in Fabric8 Kubernetes Java client 4.12.0
- blog.marcnuri.com: Fabric8 Kubernetes Client for Java introduction
- blog.marcnuri.com: Build Kubernetes controllers with Fabric8 Kubernetes Client, Quarkus, and JKube
- developers.redhat.com: How to generate code using Fabric8 Kubernetes Client
- levelup.gitconnected.com: First Try on Java Operator SDK Demo on java-operator-sdk and compare it with Kubebuilder
- developers.redhat.com: How to use Fabric8 Java Client with Kubernetes In this 5-part series, you’ll learn how to use Fabric8 Kubernetes Client to interact with Kubernetes custom resources using its REST API
CDK8s
- cdk8s Define Kubernetes native apps and abstractions using object-oriented programming
- blog.twstewart.me: cdk8s-python - A Love and Hate Experience CDK8S is an alpha level library that allows you to write high level abstractions of Kubernetes objects like deployments, services, and more all in your favorite language ( TypeScript, Python, and others).
- qdnqn.com: Kubernetes objects from Go to YAML using Cdk8s Cdk8s is an open-source software development framework for defining Kubernetes applications and reusable abstractions using familiar programming languages and rich object-oriented APIs. cdk8s apps synthesize into standard Kubernetes manifests which can be applied to any Kubernetes cluster.
Eclipse Jkube Java Client for Kubernetes (formerly known as Fabric8). Kubernetes & OpenShift Maven Plugins
- Eclipse JKube π Cloud-Native Java Applications without a hassle. Eclipse JKube is a collection of plugins and libraries that are used for building container images using Docker, JIB or S2I build strategies. Eclipse JKube generates and deploys Kubernetes/OpenShift manifests at compile time too. It brings your Java applications on to Kubernetes and OpenShift by leveraging the tasks required to make your application cloud-native. Eclipse JKube also provides a set of tools such as watch, debug, log, etc. to improve your developer experience.
- Github: Eclipse Jkube
- developers.redhat.com: Migrating from Fabric8 Maven Plugin to Eclipse JKube 1.0.0
- developers.redhat.com: Cloud-native Java applications made easy: Eclipse JKube 1.0.0 now available
- developers.redhat.com: Java development on top of Kubernetes using Eclipse JKube
- eclipse.org: Migration Guide for projects using Fabric8 Maven Plugin to Eclipse JKube π
- youtube: Deploying a Quarkus application into Kubernetes using JKube | Cloud Tool Time | Marc Nuri π
- blog.marcnuri.com
- developers.redhat.com: How to manage microservices using OpenShift Dev Spaces and JKube
Java Operator SDK
- javaoperatorsdk.io: Build Kubernetes Operators in Java without hassle Whether you want to build applications that operate themselves or provision infrastructure from Java code, Kubernetes Operators are the way to go. This SDK will make it easy for Java developers to embrace this new way of automation. The java-operator-sdk is based on the fabric8 Kubernetes client.