Commit Graph
395 Commits
Author SHA1 Message Date
Stephen Kitt 5888e837ce Add Gateway CRD
This will be used to store and report the cluster-local engine
status.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2020-04-14 10:54:14 +02:00
Miguel Angel Ajo PelayoandGitHub 8213fe55f0 Merge pull request #21 from sridhargaddam/route-agent-get-nodes
Add ClusterRole for route-agent to annotate a node
2020-04-13 16:36:50 +02:00
Miguel Angel Ajo PelayoandGitHub 8fa5ec5c03 Merge pull request #20 from sridhargaddam/gncontroller-nodes
Add role for globalnet controller to annotate a node
2020-04-13 16:36:02 +02:00
Sridhar Gaddam ae121cfdc4 Add ClusterRole for route-agent to annotate a node
As part of supporting connectivity from HostNetwork to remoteClusters, globalnet
controller requires the CNIInterfaceIP on each node. This PR adds the necessary
clusterRoles for the route-agent daemonSet which will annotate the node with the
CNIInterfaceIP on that respective node.

Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
2020-04-10 14:36:00 +05:30
Sridhar Gaddam 80bdf3eb07 Add role for globalnet controller to annotate a node
As part of supporting connectivity from HostNetwork to remoteClusters, globalnet
controller annotates a node with globalIP. This PR adds the necessary roles for
globalnetController.

Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
2020-04-09 22:58:57 +05:30
Miguel Angel Ajo PelayoandGitHub f3ff20e128 Update travis.yml to fail if deployment fails 2020-03-13 12:15:24 +01:00
Miguel Angel Ajo PelayoandGitHub 535256f640 Merge pull request #15 from sridhargaddam/leader-election
Make Gateway Leadership variables configurable
2020-03-11 18:23:21 +01:00
Miguel Angel Ajo PelayoandGitHub 232bb7478c Merge pull request #16 from mkolesnik/local-reg-globalnet
Support globalnet image specification
2020-03-11 15:28:37 +01:00
Mike Kolesnik 116615040a Support globalnet image specification
This is necessary to allow globalnet image to be stored in local
registry.
2020-03-11 10:30:34 +02:00
Sridhar Gaddam 9041855054 Make Gateway Leadership variables configurable
This PR provides a mechanism to configure the following
Submariner Gateway leader election values
1. leaseDuration
2. renewDeadline
3. retryPeriod

Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
2020-02-13 19:41:26 +05:30
Miguel Angel Ajo PelayoandGitHub f6301aea3a Merge pull request #14 from mangelajo/rename-daemonset-to-gateway
Rename submariner engine daemonset to submariner-gateyway
2020-01-29 13:37:26 +01:00
Miguel Angel Ajo bcd9f800bf Rename submariner engine daemonset to submariner-gateyway
In previous upstream discussions we talked about renaming submariner
engine "deployment" (now daemonset) to submariner-gateway to make
identification of the gateway easier to admins and avoid confusion.

Also see: https://github.com/submariner-io/submariner-operator/pull/145
2020-01-28 16:36:32 +01:00
Miguel Angel Ajo PelayoandGitHub fd672a570c Merge pull request #13 from sridhargaddam/update-sm-engine-as-ds
Update Submariner Engine to a DaemonSet
2020-01-28 16:21:14 +01:00
Sridhar Gaddam d4a0bc4d15 Update Submariner Engine to a DaemonSet
Currently, the Submariner Engine is a deployment with nodeSelector
(for submariner.io/gateway=true). It is seen that when the label
is removed from the node after SM engine is deployed, SM engine
continues to run on that node. This behavior is not in Sync with
the DaemonSet (used by GlobalnetController) behavior where the POD
is immediately terminated when the label is removed from the node.
This PR updates SM engine as DaemonSet so that we have consistent
behavior between the SM Engine POD and GlobalnetController POD.

Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
2020-01-28 19:23:32 +05:30
Miguel Angel Ajo PelayoandGitHub 7200264f5f Merge pull request #12 from mkolesnik/ipam-support
Add support for the Globalnet controller
2020-01-28 14:06:26 +01:00
Mike Kolesnik 04865e056b Added clusters to rbac 2020-01-28 08:27:25 +02:00
Mike Kolesnik fb754f5f2f Added the role & binding for globalnet
Signed-off-by: Mike Kolesnik <mkolesni@redhat.com>
2020-01-23 14:36:26 +02:00
Mike Kolesnik 35417fa669 Add globalnet service account creation
Signed-off-by: Mike Kolesnik <mkolesni@redhat.com>
2020-01-22 16:50:32 +02:00
Mike Kolesnik afac49e68e Remove GLOBALCIDR, empty yaml if disabled 2020-01-21 11:49:45 +02:00
Mike Kolesnik 409c875713 Add support for the Globalnet controller
Added a chart for the globalnet controller which uses the global CIDR.
Also added the global CIDR to the submariner engine pod env so it can
utilize it.
The controller will only be deployed if the CIDR is specified.
2020-01-13 10:22:23 +02:00
Dmitry GroismanandGitHub e1a313755c Merge pull request #10 from dimaunx/k8s-1.16.x
Add support for k8s version 1.16.x
2019-12-03 14:44:48 +02:00
Dmitry Groisman f8565a2e30 k8s 1.16.x support 2019-11-25 15:23:22 +02:00
Miguel Angel Ajo PelayoandGitHub ddf1538905 Merge pull request #9 from mangelajo/bump-submariner-to-0.0.2
Bump submariner image versions to 0.0.2
2019-11-05 15:29:50 +01:00
Miguel Angel Ajo 459b9c23bc Bump submariner image versions to 0.0.2 2019-11-04 14:01:36 +01:00
Dmitry GroismanandGitHub c563636ed0 Merge pull request #8 from dimaunx/dev-workflow
Dev workflow proposal
2019-09-27 15:19:10 +03:00
Miguel Angel Ajo PelayoandGitHub 97ebaecb96 Merge pull request #7 from dimaunx/ipsec-custom-port
Add custom ipsec ports support
2019-09-27 10:19:15 +02:00
Dmitry Groisman 129cb73a00 local dev workflow 2019-09-26 16:03:22 +03:00
Dmitry Groisman 8d2c48b8a1 adding custom ipsec ports support 2019-09-26 12:54:02 +03:00
Dmitry Groisman faf5f3e04b fixing sources location 2019-09-05 14:52:52 +03:00
Dmitry Groisman 2b92daa9f8 fixing yaml lint issues 2019-09-05 14:15:44 +03:00
Dmitry Groisman 47638e04f9 helm repo ci 2019-09-05 14:12:53 +03:00
Miguel Angel Ajo PelayoandGitHub 4629754c20 Merge pull request #3 from sridhargaddam/use-iptables-from-host
Fix iptables/nftables issue
2019-09-05 09:56:54 +02:00
Chris KimandGitHub 037bb91428 Merge pull request #1 from sridhargaddam/fix-submariner-broker-url
Update SUBMARINER_BROKER_URL to use https endpoint
2019-09-03 08:25:40 -07:00
Chris KimandGitHub c7433eaaf1 Merge pull request #4 from sridhargaddam/rbac-list-pods
Add RBAC policy for listing pods in sm-route-agent ds pod
2019-09-03 08:24:48 -07:00
Miguel Angel Ajo PelayoandGitHub a77d2ef36f Merge branch 'master' into use-iptables-from-host 2019-09-03 16:46:17 +02:00
Sridhar Gaddam c31d14f3c2 Add RBAC policy for listing pods in sm-route-agent ds pod
Submariner-route-agent daemonset pod needs to query the list of other sm-route-agent
pods in the cluster for their hostIP addresses. The ipaddress will be used as remote
VxLAN Vtep IPs. Currently, sm-route-agent pod does not have the necessary privileges
to list the pods in the submariner namespace of local cluster. This patch addresses
this issue by adding the necessary role.

Error seen:
Failed to list *v1.Pod: pods is forbidden: User
"system:serviceaccount:submariner:submariner-routeagent" cannot list resource "pods"
in API group "" in the namespace "submariner"
2019-08-30 21:32:50 +05:30
Thomas PantelisandGitHub 249e684959 Merge pull request #2 from sridhargaddam/update-route-agent-ds
Update route-agent-ds with Cluster/SVC CIDR values
2019-08-28 08:20:49 -04:00
Sridhar Gaddam 246e8c7f37 Fix iptables/nftables issue
Both iptables and nftables use netfilter framework in the kernel for
packet filtering. Many distributions are moving in the direction of
using nftables over iptables. Although, nftables uses a new command
line utility (named nft), starting from iptables >=1.8, it uses
nftables under the hood while continuing to support the same iptables
syntax from the user.

Quoting from Dan's comment [#]

"In iptables 1.8, the maintainers have "deprecated" the classic ip_tables:
the iptables tool now does userspace translation from the legacy UI/UX,
and uses nf_tables under the hood. So, the commands look and feel the
same, but they're now programming a different kernel subsystem.

The problem arises when you mix and match invocations of iptables 1.6
(the previous stable) and 1.8 on the same machine, because although they
look identical, they're programming different kernel subsystems.

Empirically, this causes weird and wonderful things to happen - things
like if you trace a packet coming from a pod, you see it flowing through
both ip_tables and nf_tables, but even if both accept the packet, it then
vanishes entirely and never gets forwarded"

So, as long as we are programming either nf_tables or iptables, we would
not have any issues. Currently, there is no easy way to identify what type
of rules are programmed on the host. This patch follows the same approach
(as described here [*]) that is taken in OpenShift where the host file
system is mounted inside the docker container and iptables utility on the
host is exec'ed for programming any firewall rules.

[#] https://github.com/kubernetes/kubernetes/issues/71305#issuecomment-448052889
[*] https://github.com/kubernetes/kubernetes/issues/71305#issuecomment-521978797
2019-08-27 16:33:55 +05:30
Sridhar GaddamandGitHub 77cc3ace93 Update route-agent-ds with Cluster/SVC CIDR values 2019-08-14 13:32:29 +05:30
Sridhar Gaddam 7b718471e5 Update SUBMARINER_BROKER_URL to use https endpoint
Normally in a vanilla kubernetes deployment, there is a single endpoint for kubernetes.
However, in some deployments (like OpenShift), there could be multiple endpoints.

This patch updates the SUBMARINER_BROKER_URL to use the appropriate "https" endpoint.
2019-05-17 14:12:07 +05:30
Chris Kim dfcac09089 correct type for ca validation and update rancher catalog item images 2019-03-18 10:09:22 -07:00
Chris Kim b137b8fa5e add license v0.0.1 2019-03-11 22:06:52 -07:00
Chris Kim f7503036eb change chart author + app version/add readme 2019-03-11 22:04:30 -07:00
Chris Kim e820307e8b Updating NOTES.txt to provide ca retrieval command 2019-03-11 17:28:29 -07:00
Chris Kim 9d71ffb01a initial commit, adding v0.0.1 helm charts 2019-03-11 17:14:39 -07:00