Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement a periodic watcher for public-ip changes #1823

Closed
Tracked by #52
sridhargaddam opened this issue May 9, 2022 · 1 comment · Fixed by #1824
Closed
Tracked by #52

Implement a periodic watcher for public-ip changes #1823

sridhargaddam opened this issue May 9, 2022 · 1 comment · Fixed by #1824
Labels
enhancement New feature or request

Comments

@sridhargaddam
Copy link
Member

There could be some scenarios where the public-ip associated with the Gateway node would change (fe., when the user modifies the external-ip or when using Load-balancer service with AWS Clusters). Submariner should have a periodic watcher which monitors any changes to the public-ip and updates the local endpoint accordingly.

@sridhargaddam sridhargaddam added the enhancement New feature or request label May 9, 2022
@sridhargaddam
Copy link
Member Author

For example, when using the Loadbalancer mode with an AWS Cluster the following is observed.

[sgaddam@localhost submariner-operator]$ ping af8840d5f343c4669b2972dd7d1b3da3-96f8b10c1bc2be9c.elb.us-east-2.amazonaws.com
PING af8840d5f343c4669b2972dd7d1b3da3-96f8b10c1bc2be9c.elb.us-east-2.amazonaws.com (3.134.138.231) 56(84) bytes of data.
^C
--- af8840d5f343c4669b2972dd7d1b3da3-96f8b10c1bc2be9c.elb.us-east-2.amazonaws.com ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms

// Sleep for about 2 mins

[sgaddam@localhost submariner-operator]$ ping af8840d5f343c4669b2972dd7d1b3da3-96f8b10c1bc2be9c.elb.us-east-2.amazonaws.com
PING af8840d5f343c4669b2972dd7d1b3da3-96f8b10c1bc2be9c.elb.us-east-2.amazonaws.com (3.137.56.223) 56(84) bytes of data.
^C
--- af8840d5f343c4669b2972dd7d1b3da3-96f8b10c1bc2be9c.elb.us-east-2.amazonaws.com ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms

You can ignore the non-response to the ping packets and just look at the IP that is resolved for the corresponding hostname. As you can see it changes.

sridhargaddam added a commit to sridhargaddam/submariner that referenced this issue May 9, 2022
Currently when the submariner gateway pod comes up, it discovers
the public-ip associated with the gateway node and configures it
in the local endpoint. However, if the public-ip changes, the
connectivity would be lost. This PR implements a periodic watcher
which monitors for any changes to the public IP and updates the
local endpoint when necessary. It works for all the modes like
when using a dedicated gateway node with external-ip as well as
when using a Load-balancer mode of Submariner.

Fixes: submariner-io#1823
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this issue May 18, 2022
Currently when the submariner gateway pod comes up, it discovers
the public-ip associated with the gateway node and configures it
in the local endpoint. However, if the public-ip changes, the
connectivity would be lost. This PR implements a periodic watcher
which monitors for any changes to the public IP and updates the
local endpoint when necessary. It works for all the modes like
when using a dedicated gateway node with external-ip as well as
when using a Load-balancer mode of Submariner.

Fixes: submariner-io#1823
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this issue May 18, 2022
Currently when the submariner gateway pod comes up, it discovers
the public-ip associated with the gateway node and configures it
in the local endpoint. However, if the public-ip changes, the
connectivity would be lost. This PR implements a periodic watcher
which monitors for any changes to the public IP and updates the
local endpoint when necessary. It works for all the modes like
when using a dedicated gateway node with external-ip as well as
when using a Load-balancer mode of Submariner.

Fixes: submariner-io#1823
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this issue May 19, 2022
Currently when the submariner gateway pod comes up, it discovers
the public-ip associated with the gateway node and configures it
in the local endpoint. However, if the public-ip changes, the
connectivity would be lost. This PR implements a periodic watcher
which monitors for any changes to the public IP and updates the
local endpoint when necessary. It works for all the modes like
when using a dedicated gateway node with external-ip as well as
when using a Load-balancer mode of Submariner.

Fixes: submariner-io#1823
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
tpantelis pushed a commit that referenced this issue May 19, 2022
Currently when the submariner gateway pod comes up, it discovers
the public-ip associated with the gateway node and configures it
in the local endpoint. However, if the public-ip changes, the
connectivity would be lost. This PR implements a periodic watcher
which monitors for any changes to the public IP and updates the
local endpoint when necessary. It works for all the modes like
when using a dedicated gateway node with external-ip as well as
when using a Load-balancer mode of Submariner.

Fixes: #1823
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
novad03 pushed a commit to novad03/k8s-submariner that referenced this issue Nov 25, 2023
Currently when the submariner gateway pod comes up, it discovers
the public-ip associated with the gateway node and configures it
in the local endpoint. However, if the public-ip changes, the
connectivity would be lost. This PR implements a periodic watcher
which monitors for any changes to the public IP and updates the
local endpoint when necessary. It works for all the modes like
when using a dedicated gateway node with external-ip as well as
when using a Load-balancer mode of Submariner.

Fixes: submariner-io/submariner#1823
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant