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

Introduce networkMode config option and ipsecEncap mode for Agent #286

Closed
wants to merge 1 commit into from

Conversation

jianjuns
Copy link
Contributor

Introduce networkMode config option, which now supports two modes:
encapNormal (for normal overlay tunnels) and ipsecEncap (for IPSec
encyption of tunnel traffic). Later, there could be more modes added
like noEncap, hybrid (encapsulation only for traffic across Nodes in
the different underlay subnets) passthrough (use cloud native
networking / underlay network for connectivity), etc..
Remove the enableIPSecTunnel option and use ipsecEncap networkMode
to enable IPSec encyption. This is also to avoid misconfiguration
of IPSec encyption when later we have noEncap and other modes -
IPSec could be enabled for only tunnel traffic.

@antrea-bot
Copy link
Collaborator

Thanks for your PR.
Unit tests and code linters are run automatically every time the PR is updated.
E2e, conformance and network policy tests can only be triggered by a member of the vmware-tanzu organization. Regular contributors to the project should join the org.

The following commands are available:

  • /test-e2e: to trigger e2e tests.
  • /skip-e2e: to skip e2e tests.
  • /test-conformance: to trigger conformance tests.
  • /skip-conformance: to skip conformance tests.
  • /test-networkpolicy: to trigger networkpolicy tests.
  • /skip-networkpolicy: to skip networkpolicy tests.
  • /test-all: to trigger all tests.
  • /skip-all: to skip all tests.

These commands can only be run by members of the vmware-tanzu organization.

@jianjuns
Copy link
Contributor Author

@tnqn @antoninbas @salv-orlando @suwang48404: like to learn your thoughts on the network mode config option.
See also discussion over issue #237.

Introduce networkMode config option, which now supports two modes:
encapNormal (for normal overlay tunnels) and ipsecEncap (for IPSec
encyption of tunnel traffic). Later, there could be more modes added
like noEncap, hybrid (encapsulation only for traffic across Nodes in
the different underlay subnets) passthrough (use cloud native
networking / underlay network for connectivity), etc..
Remove the enableIPSecTunnel option and use ipsecEncap networkMode
to enable IPSec encyption. This is also to avoid misconfiguration
of IPSec encyption when later we have noEncap and other modes -
IPSec could be enabled for only tunnel traffic.
@antrea-bot
Copy link
Collaborator

Thanks for your PR.
Unit tests and code linters are run automatically every time the PR is updated.
E2e, conformance and network policy tests can only be triggered by a member of the vmware-tanzu organization. Regular contributors to the project should join the org.

The following commands are available:

  • /test-e2e: to trigger e2e tests.
  • /skip-e2e: to skip e2e tests.
  • /test-conformance: to trigger conformance tests.
  • /skip-conformance: to skip conformance tests.
  • /test-networkpolicy: to trigger networkpolicy tests.
  • /skip-networkpolicy: to skip networkpolicy tests.
  • /test-all: to trigger all tests.
  • /skip-all: to skip all tests.

These commands can only be run by members of the vmware-tanzu organization.

@tnqn
Copy link
Member

tnqn commented Jan 6, 2020

@tnqn @antoninbas @salv-orlando @suwang48404: like to learn your thoughts on the network mode config option.
See also discussion over issue #237.

Just personal feeling, the supported values are not very symmetric, I mean ipsecEncap, thinking whether to encrypt is in not the same dimension as encap, noEncap, hybrid, passthrough (and technically hybrid could enable IPSec too?).
I feel the concern of misconfiguration of IPSec encryption when later we have noEncap and other modes can be easily addressed by adding a validation to the two options, anyway tunnelType is an option specific to encap mode too.

@jianjuns
Copy link
Contributor Author

jianjuns commented Jan 6, 2020

Just personal feeling, the supported values are not very symmetric, I mean ipsecEncap, thinking whether to encrypt is in not the same dimension as encap, noEncap, hybrid, passthrough (and technically hybrid could enable IPSec too?).

You must be right. I could only argue "passthrough" is different from other modes too. Then do we need a separate flag for it too?
Anyway, I do not have a strong opinion on this, but just like to learn what you guys think. @antoninbas and @salv-orlando: your thoughts?

@antoninbas
Copy link
Contributor

After thinking about this, I feel the same way as Quan. I think we should keep "ipsec enable" as a separate dimension and validate option consistency in our code.

@suwang48404
Copy link
Contributor

sorry for late reply.

two separate knobs make sense to me

  • Encap
  • IPSecEnable

@jianjuns
Copy link
Contributor Author

jianjuns commented Jan 7, 2020

Ok. I will drop this PR then. Also let me know if you prefer another name for the option to enable IPSec - it is now "enableIPSecTunnel".
@tnqn @antoninbas @susanwu88

@antoninbas
Copy link
Contributor

The name is fine as far as I'm concerned, since IPsec can only be enabled for tunnels created by Antrea.

@jianjuns jianjuns closed this Jan 8, 2020
@jianjuns jianjuns deleted the network-mode branch February 18, 2020 18:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants