horis233 / depremon

It is a checker to validate deprecated api in a live k8s cluster.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Depremon (Deprecated k8s API Monitor)

Depremon is an open source utility to help users easily find deprecated Kubernetes API versions in a live Openshift cluster.

Known Limitation: Currently, it only works on Openshift since it is using Openshift service-ca-operator to sign certificate. We will evolute it to work on all the k8s platforms

Background

As the Kubernetes API evolves, APIs are periodically reorganized or upgraded. When APIs evolve, the old API is deprecated and eventually removed.

There are some existing tools designed to check if project yaml files has deprecated Kubernetes API before the release, like pluto and kubepug(https://github.com/rikatz/kubepug), but they don't work well with operator deployments or other services basing on Kubernetes controllers.

How Depremon works

Depremon is a Kubernetes Operator deploying a Kubernetes webhook to record resources with Kubernetes API which are going to be removed and save the result into a configmap.

Users can use Depremon custom resource to customize the configurations.

Apply watch namespace

In order to only check deprecated api from specific namespace, we can set the watch namespace in the spec.

spec:
  namespaces:
    - test1
    - test2

Then depremon will only watch deprecated api from these namespaces.

About

It is a checker to validate deprecated api in a live k8s cluster.

License:Apache License 2.0


Languages

Language:Go 86.0%Language:Makefile 7.8%Language:Shell 5.0%Language:Dockerfile 1.1%