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

dlb: add how to use #33818

Open
wants to merge 9 commits into
base: main
Choose a base branch
from
Open

dlb: add how to use #33818

wants to merge 9 commits into from

Conversation

daixiang0
Copy link
Member

Add doc about how to use.

Commit Message:
Additional Description:
Risk Level: low
Testing: N/A
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

@phlax phlax self-assigned this Apr 26, 2024
@phlax
Copy link
Member

phlax commented Apr 26, 2024

/docs

Copy link

Docs for this Pull Request will be rendered here:

https://storage.googleapis.com/envoy-pr/33818/docs/index.html

The docs are (re-)rendered each time the CI envoy-presubmit (precheck docs) job completes.

🐱

Caused by: a #33818 (comment) was created by @phlax.

see: more, trace.

@phlax
Copy link
Member

phlax commented Apr 30, 2024

/retest

@adisuissa
Copy link
Contributor

/wait on CI

@repokitteh-read-only repokitteh-read-only bot added waiting deps Approval required for changes to Envoy's external dependencies and removed waiting labels Apr 30, 2024
Copy link

CC @envoyproxy/dependency-shepherds: Your approval is needed for changes made to (bazel/.*repos.*\.bzl)|(bazel/dependency_imports\.bzl)|(api/bazel/.*\.bzl)|(.*/requirements\.txt)|(.*\.patch).
envoyproxy/dependency-shepherds assignee is @phlax

🐱

Caused by: #33818 was synchronize by daixiang0.

see: more, trace.

Copy link
Contributor

@adisuissa adisuissa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems that some of the modifications are not related to the PR.
/wait on cleanup

@daixiang0
Copy link
Member Author

@adisuissa sorry for mistake :(

@phlax
Copy link
Member

phlax commented May 10, 2024

still failing format and publishing ci

/wait

Signed-off-by: Loong <loong.dai@intel.com>
@daixiang0
Copy link
Member Author

Force push to fix DCO.

@daixiang0 daixiang0 requested a review from adisuissa May 15, 2024 02:12
@daixiang0
Copy link
Member Author

@phlax please help review :)

@phlax
Copy link
Member

phlax commented May 15, 2024

/docs

Copy link

Docs for this Pull Request will be rendered here:

https://storage.googleapis.com/envoy-pr/33818/docs/index.html

The docs are (re-)rendered each time the CI envoy-presubmit (precheck docs) job completes.

🐱

Caused by: a #33818 (comment) was created by @phlax.

see: more, trace.

@phlax
Copy link
Member

phlax commented May 15, 2024

@daixiang0 there are a lot of format issues - see https://storage.googleapis.com/envoy-pr/c0fc41e/docs/configuration/other_features/dlb.html

could you resolve these first and then i can review

@phlax
Copy link
Member

phlax commented May 17, 2024

/wait

@daixiang0
Copy link
Member Author

@phlax please check the latest, CI is happy.

@phlax
Copy link
Member

phlax commented May 17, 2024

@daixiang0 please look at the rendered docs - they are obviously not correct

Signed-off-by: Loong <loong.dai@intel.com>
Signed-off-by: Loong <loong.dai@intel.com>
Signed-off-by: Loong <loong.dai@intel.com>
Signed-off-by: Loong <loong.dai@intel.com>
@daixiang0
Copy link
Member Author

Signed-off-by: Loong <loong.dai@intel.com>
Copy link
Member

@phlax phlax left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for working on this @daixiang0 - i think as this is config reference for Envoy we dont really want to include nginx or any specific upstream here - just document and highlight what configuration is required to make it work

docs/root/configuration/other_features/dlb.rst Outdated Show resolved Hide resolved
docs/root/configuration/other_features/dlb.rst Outdated Show resolved Hide resolved
Create a config file named `dlb-config.yaml` to make Envoy listen 10000 port as proxy, the upstream server listens 12000 port.

.. literalinclude:: _include/dlb_example_config.yaml
:language: yaml
Copy link
Member

@phlax phlax May 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you add linenos, lineno-start and a caption with download link please

to see existing examples you can do something like git grep lineno-start docs/

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lets highlight lines 7-11 - also not sure we need the entire file included as it can be downloaded

when including only a part of the config i tend to include 2 lines before and after

docs/root/configuration/other_features/dlb.rst Outdated Show resolved Hide resolved
docs/root/configuration/other_features/dlb.rst Outdated Show resolved Hide resolved
docs/root/configuration/other_features/dlb.rst Outdated Show resolved Hide resolved
docs/root/configuration/other_features/dlb.rst Outdated Show resolved Hide resolved
Signed-off-by: Loong <loong.dai@intel.com>
Signed-off-by: Loong <loong.dai@intel.com>
@daixiang0
Copy link
Member Author

daixiang0 commented May 21, 2024

@phlax thanks, I have updated all.

Also I see two download button, maybe the framework bug:
image

@daixiang0 daixiang0 requested a review from phlax May 22, 2024 08:10
Copy link
Member

@phlax phlax left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for iterating @daixiang0 - this is close to landing i think

docs/root/configuration/other_features/dlb.rst Outdated Show resolved Hide resolved
:linenos:
:caption: :download:`dlb_example_config.yaml <_include/dlb_example_config.yaml>`

Run the upstream service:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lets remove this - no need to mention nginx - better to be upstream agnostic

Create a config file named `dlb-config.yaml` to make Envoy listen 10000 port as proxy, the upstream server listens 12000 port.

.. literalinclude:: _include/dlb_example_config.yaml
:language: yaml
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lets highlight lines 7-11 - also not sure we need the entire file included as it can be downloaded

when including only a part of the config i tend to include 2 lines before and after

docs/root/configuration/other_features/dlb.rst Outdated Show resolved Hide resolved

$ ./envoy --concurrency 2 -c dlb_example_config.yaml

Test:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure we need this section at all - this kinda instruction would be more suited to sandbox/examples - here we are just showing the necessary/minimum configuration to make it work

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the "upstream" part and "test" part, I put those here since CI do not have DLB device and cannot run this feature, so I do not put those to sandbox/examples.

My goal is to make an complete example to users, if possible, maybe do not do verify, I can move those to examples, which is more suitable.

@phlax phlax removed the deps Approval required for changes to Envoy's external dependencies label May 22, 2024
@phlax
Copy link
Member

phlax commented May 22, 2024

Also I see two download button, maybe the framework bug:

looks correct to me here https://storage.googleapis.com/envoy-pr/5112fcc/docs/configuration/other_features/dlb.html

@phlax
Copy link
Member

phlax commented May 22, 2024

@daixiang0 one thing im trying to understand ...

with DLB does it load balance between multiple upstream clusters? should the example config have multiple clusters?

perhaps i just dont fully understand what it does

@daixiang0
Copy link
Member Author

with DLB does it load balance between multiple upstream clusters? should the example config have multiple clusters?

perhaps i just dont fully understand what it does

Now Envoy use multi-threads to handle connections, there is only one balance policy called exact balancer.

The DLB connection balancer can balance the connections between the threads at local, but not helpful for upstream clusters.

Signed-off-by: Loong <loong.dai@intel.com>
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.

None yet

3 participants