kubediff

command module
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 3, 2021 License: MIT Imports: 8 Imported by: 0

README

Dashboard kubediff is a Kubernetes resource diff watcher, with the ability to send event notifications. asciicast

Usage

$ kubediff --config=/path/to/config

kubediff: A resource diff watcher for Kubernetes

kubediff is a Kubernetes resource diff watcher with the ability to configure event notifications
to webhook/Slack. It watches the cluster for any resource change (including custom CRDs) and logs them. You can also run it in normal mode, and can export the logs to your preferred logging stack.

Usage:
  kubediff --config=/path/to/config

Flags:
  --config   configuration folder for kubediff

$ kubediff --config=./test/

{
  "level": "info",
  "msg": "add event",
  "obj": {
    "apiVersion": "v1",
    "data": {
      "ca.crt": "-----BEGIN CERTIFICATE----------END CERTIFICATE-----\n"
    },
    "kind": "ConfigMap",
    "metadata": {
      "creationTimestamp": "2021-09-27T11:07:22Z",
      "managedFields": [
        {
          "apiVersion": "v1",
          "fieldsType": "FieldsV1",
          "fieldsV1": {
            "f:data": {
              ".": {},
              "f:ca.crt": {}
            }
          },
          "manager": "kube-controller-manager",
          "operation": "Update",
          "time": "2021-09-27T11:07:22Z"
        }
      ],
      "name": "kube-root-ca.crt",
      "namespace": "vdp-system-n5nkm",
      "resourceVersion": "704",
      "uid": "b531c44d-d624-4127-807e-dbc5c0203c35"
    }
  },
  "resourceType": "v1/configmaps",
  "time": "2021-10-03 10:43:06"
}

Install

Using helm:

When you have helm installed in your cluster, use the following setup:

helm repo add arriqaaq https://arriqaaq.github.io/charts
helm repo update
helm install --create-namespace --namespace kubediff kubediff arriqaaq/kubediff

You can also install this chart locally by cloning this repo:

helm install --create-namespace --namespace kubediff kubediff helm/kubediff
Using kubectl:

In order to run kubediff in a kind cluster quickly, just run

$ kubectl apply -f hack/deploy.yaml
Configuration:

You can also provide a custom config file:

resources:
  - kind: v1/pods             # Name of the resource. Resource name must be in group/version/resource (G/V/R) format
                              # resource name should be plural (e.g apps/v1/deployments, v1/pods)
  - kind: v1/services
  - kind: apps/v1/deployments
  - kind: apps/v1/statefulsets
  - kind: networking.k8s.io/v1beta1/ingresses
  - kind: v1/nodes
  - kind: v1/namespaces
  - kind: v1/persistentvolumes
  - kind: v1/persistentvolumeclaims
  - kind: v1/configmaps
  - kind: apps/v1/daemonsets
  - kind: batch/v1/jobs
  - kind: rbac.authorization.k8s.io/v1/roles
  - kind: rbac.authorization.k8s.io/v1/rolebindings
  - kind: rbac.authorization.k8s.io/v1/clusterrolebindings
  - kind: rbac.authorization.k8s.io/v1/clusterroles

namespaces:
  - all
Using Go:
# Download and install kubediff
$ go get -u github.com/arriqaaq/kubediff

# Add resources to be watched
kubediff --config=./test/

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg
log

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL