Murali Reddy
ed935a4d7a
fix gofmt, go_vet, misspells
2017-09-02 00:29:35 +05:30
Murali Reddy
ff079d205a
Enable netfilter for bridge, requirement for all CNI that use bridge
...
https://kubernetes.io/docs/concepts/cluster-administration/network-plugins/#network-plugin-requirements
Fixes #141
2017-08-29 20:13:33 +05:30
Murali Reddy
11a779f78c
Add iptable rule in filter table FORWRD chain to allow traffic in and out to the pods
...
Fixes #120
2017-08-14 18:08:47 +05:30
Bryan Zubrod
c81bfbb616
Enable pod egress masquerading by default ( #111 )
...
* Enable pod egress masquerading by default
- Adds flag "--enable-pod-egress" (default: true)
- Removes previously created iptables rule if option is changed to false
* Use an ipset to match Pod egress traffic to be masqueraded
* Set --cluster-cidr as depreciated flag
If set to anything, normal dynamic Pod egress masquerading is turned on.
* Use Replace else Add logic for updating export policy
Fixes errors logged due to existing statement in poliy.
2017-08-10 11:50:06 -05:00
Murali Reddy
898d78d688
reduce ipip tunnel MTU 20 to accommodate the tunnel overhead
...
Fixes #108
2017-08-07 19:35:36 +05:30
Murali Reddy
b8d3914242
Use IP-IP tunnelling for cross-subnet pod connectivity
...
- create a ipip tunnel interface from each node to nodes in the different subnet
- insert route to local routing table using tunnel device
Fixes #92
2017-08-06 13:05:14 +05:30
Bryan Zubrod
f8174a66be
network_route_controller: Avoid redundant policy sets ( #98 )
...
* gofmt
* route_controller: Avoid redundant DefinedSet adds
2017-08-03 02:49:20 -05:00
Murali Reddy
449f1bfcc6
fix Source/destination check disable logic
2017-07-21 15:20:42 +05:30
Murali Reddy
ef66b01002
WIP prometheus metrics: add pps in and out per service backend
2017-07-20 01:01:38 +05:30
Murali Reddy
83ca0c42d7
BGP export polices to advertise routes so that extra hop is avoided
...
Fixes #71
2017-07-19 21:13:03 +05:30
Murali Reddy
3f062f2828
fixing regression due to #71
2017-07-18 05:57:29 +05:30
Murali Reddy
e3ea82a1d1
add a BGP export policy on each node so that, learned routes
...
from iBGP peers are never advertised to global peer
Fixes #71
2017-07-18 04:04:30 +05:30
Murali Reddy
fb09646212
on BGP peer down, advertised route from peer is not cleaned-up in local routing table
...
Fixes #69
2017-07-17 09:20:11 +05:30
Murali Reddy
beb39cc54b
When running on AWS disable source-destination checks automatically
...
Fixes #35
2017-07-15 01:50:19 +05:30
Bryan Zubrod
a3bddf6ecd
services-controller: Add LoadBalancer Service support ( #53 )
...
* Allow LoadBalancer Service type
* Update docs
2017-07-11 18:12:11 -05:00
Bryan Zubrod
5af635a9bc
CI: Automated build/release workflow ( #46 )
...
TLDR; Run "make help" for options.
* gofmt
* .gitignore kube-router binary
* Docs: build/release workflow
* Implement build/release workflow
2017-07-09 11:21:26 -05:00
bzub
cb661f871c
controller: - Replace panics with errors
...
- Add context to errors for debugging
- Refactor init() code so ipset isn't required to run
"kube-router --help" for example
2017-07-05 21:57:29 -05:00
Murali Reddy
a757ea3203
Allow multiple peer routers specified through global BGP peer router flag '--peer-router'.
...
Node annotation to specifiy BGP peer routers also supports one or more BGP peers.
Fixes #37
2017-07-03 22:53:04 +05:30
Murali Reddy
2703522040
Support more than a single AS per cluster and configurable node specific
...
external BGP routers
Fixes #22
2017-06-13 10:22:22 +05:30
Murali Reddy
29396f9662
add option '--hostname-override' to deal with cases where kubelet is launched
...
with --hostname-override flag
Fixes #23
2017-06-10 07:10:38 +05:30
Murali Reddy
d4f32978fb
use NODE_NAME env variable to get the node object when running as daemon set
...
If NODE_NAME env is not set, fall back to hostname.
Partial fix towards #23 we still have issue where kube-router is run as agent
and kubelet is started with --hostname-overide flag
2017-06-07 02:28:21 +05:30
Murali Reddy
1478527cc8
setup masquerade rule for traffic destined for outside of cluster and pod network
...
change added iptable rule in NAT table POSTROUTING chain to masqurade outbound traffic
from the pods.
Fixes #8
2017-06-01 07:20:04 +05:30
Murali Reddy
c9bc18e92d
Skip head less services, when advertising cluster IP to external routers
...
Fixes #20
2017-06-01 00:52:47 +05:30
Murali Reddy
d042dbb21e
Add new Node api watcher which watches for add/remove nodes events.
...
On add/remove node events, perform refresh of peers to the peers as per the
current set of active nodes. If a node is removed, delete the BGP nieghbor relation.
Fixes #14
2017-05-30 20:35:23 +05:30
Murali Reddy
4531a915bb
Handle both cases where node can be registered with master either
...
by host name or FQDN. kubelet can be started with --hostname-override with configurable value.
In AWS envirinment typcally its set FQDN obtained from the metda data. This fix ensures
we can deploy kube-router in case nodes are registered with FQDN
Fixes #17
2017-05-30 03:11:51 +05:30
Murali Reddy
0f86e78c59
Adds support for advertising cluster IP correponding to a service to the BGP peers
...
Once external BGP is peered with cluster nodes, pods can be routable externally
fixes #4 and #7
2017-05-21 06:44:36 +05:30
Murali Reddy
231e5cee71
enable kube-router to be run as daemonset
2017-04-27 03:08:37 +05:30
Murali Reddy
a4e773bd91
edit README and handle external (outside from cluster) access to nodeport services
...
by masqurading the traffic so the return traffic from the pod hits the node before
going to the client
2017-04-18 03:37:46 +05:30
Murali Reddy
04a5cc033a
base line version tested with kube 1.5.6, 1.6
2017-04-17 10:33:09 +05:30