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

docs: add guide for excluding traffic from transparent proxy redirection #2219

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

bartsmykla
Copy link
Contributor

@bartsmykla bartsmykla commented Mar 7, 2025

  • Added a guide on how to exclude specific traffic from transparent proxy redirection
  • Included configuration examples for better clarity

Preview: https://deploy-preview-2219--kuma.netlify.app/docs/2.9.x/guides/excluding-traffic-from-transparent-proxy-redirection/


Did you sign your commit? Instructions: 👍

Have you read Contributing guidelines?: 👍

- Added a guide on how to exclude specific traffic from transparent
  proxy redirection
- Included configuration examples for better clarity

Signed-off-by: Bart Smykla <[email protected]>
@bartsmykla bartsmykla requested a review from a team as a code owner March 7, 2025 06:23
@bartsmykla bartsmykla requested review from johncowen and Icarus9913 and removed request for a team March 7, 2025 06:23
Copy link

netlify bot commented Mar 7, 2025

Deploy Preview for kuma ready!

Name Link
🔨 Latest commit 89f491b
🔍 Latest deploy log https://app.netlify.com/sites/kuma/deploys/67ca90fad2e042000825e45d
😎 Deploy Preview https://deploy-preview-2219--kuma.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 88 (🔴 down 7 from production)
Accessibility: 90 (no change from production)
Best Practices: 100 (no change from production)
SEO: 92 (no change from production)
PWA: 80 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify site configuration.

Copy link

netlify bot commented Mar 7, 2025

Deploy Preview for kuma ready!

Name Link
🔨 Latest commit 0b581bd
🔍 Latest deploy log https://app.netlify.com/sites/kuma/deploys/67d000d768259e000855e0e2
😎 Deploy Preview https://deploy-preview-2219--kuma.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 95 (🟢 up 11 from production)
Accessibility: 90 (no change from production)
Best Practices: 100 (no change from production)
SEO: 92 (no change from production)
PWA: 80 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify site configuration.

@bartsmykla
Copy link
Contributor Author

Note that #2216 affects this PR


Use this guide to control which traffic the transparent proxy intercepts and which it allows through directly.

## Terminology overview
Copy link
Contributor

Choose a reason for hiding this comment

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

should we split this terminology overview between kubernetes and universal? Do we even need it, I guess these are core concepts of Kubernetes and users should be familiar with them when they start playing with service mesh

Copy link
Contributor

Choose a reason for hiding this comment

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

I noticed that the three concepts "Workload", "ConfigMap", "Service" aren't mentioned in the following guides, do we really need this paragraph ?

Follow the [Kubernetes Quickstart]({{ docs }}/quickstart/kubernetes-demo/) guide to set up a zone control plane and demo application.
{% endtab %}
{% tab Universal %}
Confirm that all necessary components are up and running. The following resources may be useful:
Copy link
Contributor

Choose a reason for hiding this comment

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

wouldn't it be enought. to just link to universal quickstart or docker quickstart?

@Automaat
Copy link
Contributor

I am still not sure if this fits well with guides, there are no steps to follow here and you cannot easily try this, maybe we need new concept for such docs, like tasks or ops playbooks or runbooks? self contained tutorials on how to do stuff on already running production env?

Comment on lines +26 to +27
1. **Familiarity with transparent proxy:** You should already understand what a transparent proxy is, how to install it, and how to configure its settings.

Copy link
Contributor

Choose a reason for hiding this comment

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

We should add a link that jumps to transparent section


## Exclude traffic on certain ports

This example shows how to exclude incoming traffic on port `1234` and outgoing traffic on ports `5678` and `8900`.
Copy link
Contributor

Choose a reason for hiding this comment

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

I'd recommend emphasize the intercept concept, same as the latter "Exclude traffic to and from specific IP addresses" section

Suggested change
This example shows how to exclude incoming traffic on port `1234` and outgoing traffic on ports `5678` and `8900`.
This example demonstrates how to configure the transparent proxy to exclude incoming traffic on port 1234 and outgoing traffic on ports 5678 and 8900 from being intercepted.

Comment on lines +67 to +73
You can add these annotations manually in your Kubernetes manifests or by using below command:

```sh
kubectl annotate pods example-app \
"traffic.kuma.io/exclude-inbound-ports=1234" \
"traffic.kuma.io/exclude-outbound-ports=5678,8900"
```
Copy link
Contributor

Choose a reason for hiding this comment

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

I suggest removing these because the user would edit the annotations in controller(deployment, statefulset) in the main use cases.

With the above Pod yaml, it's enough to make the user understand the usage of our annotations.


Use this guide to control which traffic the transparent proxy intercepts and which it allows through directly.

## Terminology overview
Copy link
Contributor

Choose a reason for hiding this comment

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

I noticed that the three concepts "Workload", "ConfigMap", "Service" aren't mentioned in the following guides, do we really need this paragraph ?

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.

3 participants