The IPAM provides Pool
and IP
custom resource to take care of assigning and unassigning individual addresses from pools because Kubernetes cannot create IP addresses out of thin air, so we need to give it CRDs that it can use.
Clone repo into your go path under $GOPATH/src
:
$ git clone https://github.com/inwinstack/ipam.git $GOPATH/src/github.com/inwinstack/ipam
$ cd $GOPATH/src/github.com/inwinstack/ipam
$ make
Run the following command to debug:
$ go run cmd/main.go \
--kubeconfig $HOME/.kube/config \
--logtostderr \
-v=2
Run the following command to deploy the controller:
$ kubectl apply -f deploy/
$ kubectl -n kube-system get po -l ipam