Skip to content
Kubernetes CRD & custom controller for envoyproxy
Go
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
crds
pkg
sample
LICENSE
README.md
go.mod
go.sum
main.go

README.md

Kube-Envoy-Controller

Kubernetes CRD & custom controller for envoyproxy

Allows creation & configuring of envoyproxies using a kubernetes resource (kind: Envoy)

Installing

   $ go get github.com/starizard/kube-envoy-controller

   $ go build
   

Usage

$ kubectl apply -f crds/ 
customresourcedefinition.apiextensions.k8s.io/envoys.example.com created
 
$ ./kube-envoy-controller
 

In a separate shell

$ kubectl apply -f sample/envoy.yaml
envoy.example.com/edge-envoy created
 
$ kubectl get envoy
NAME         AGE
edge-envoy   35s
 
$ kubectl get configmap
NAME          DATA   AGE
envoy-cfg-1   1      45s
 
$ kubectl get po
NAME                       READY   STATUS    RESTARTS   AGE
envoy-1-794d4fb667-dkwww   1/1     Running   0          57s
envoy-1-794d4fb667-jpjw8   1/1     Running   0          57s
envoy-1-794d4fb667-xc6cl   1/1     Running   0          57s
 

Roadmap

  • Envoy CRD
  • Autogenerate bootstrap configmap & mount it to the envoy pods
  • Configure XDS
  • Automatic Sidecar Injection (Mutating Webhook)
  • Implement XDS component
  • Ship access log & expose prometheus metrics
You can’t perform that action at this time.