k8snetworkplumbingwg / whereabouts

A CNI IPAM plugin that assigns IP addresses cluster-wide
Apache License 2.0
275 stars 123 forks source link

Centralised IPAM Management #99

Open vivekskrishna opened 3 years ago

vivekskrishna commented 3 years ago

This is a request/query to see if there is a way to centralise IPAM assigment to a master cluser and then we use it to assign IP' for pods in all other clusters. This helps in centralsing IPAM management wich operationally is simple than configuring pools in each cluster.

Anyway whereabouts can tie in with some 3rd party IPAM software to manage IP address form a central location. ill be useful for cases where ip's are assigned to pods in many edge locations which needs a centralised management

vivekskrishna commented 3 years ago

https://github.com/vivekskrishna/whereabouts

i implemented a sample integration with phpipam and openwisp where the whereabouts cni will use API to eventually assign a IP to a multus interface for a pod and can also track it using some pod annotation for hostname so that if the pod moves to a different worker node, the same IP can be retained if annotated. please do take a look to see if it is something which whereabouts can eventually support.

crandles commented 3 years ago

I think supporting multiple back-ends is interesting (we already have etcd / kubernetes), especially considering that it enables IP blocks to be shared across clusters.

I would consider trying to work with (and/or extend) the storage package instead of replacing it as your repository does now (if you want to upstream it).