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

Run against multiple namespaces, but not all #212

Open
patrickleet opened this issue Nov 9, 2022 · 1 comment
Open

Run against multiple namespaces, but not all #212

patrickleet opened this issue Nov 9, 2022 · 1 comment
Labels
kind/feature New feature or request

Comments

@patrickleet
Copy link

I'd like to use localizer to create tunnels for just two namespaces - it seems I can only do 1, or all. I'm using all for now, so not a big deal, but I couldn't find a way to do this currently.

Tried running two instances as a workaround, such as #35 - but realized that's not an option either.

Is there a way to do this that I'm missing?

@jaredallard
Copy link
Contributor

Hey! Right now we only support a single namespace. This would be a nice feature to have, totally :D

@jaredallard jaredallard added the kind/feature New feature or request label Jan 5, 2023
jaredallard added a commit that referenced this issue Aug 3, 2023
This PR contains a number of reliability and UX improvements for using
localizer in a larger cluster.

* When creating a port-forward, we don't pass a stop channel anymore.
  This was previously passed `ctx.Done()` which would silently stop the
  port-forward on ^C. This caused invalid "use of closed connection"
  logging that was confusing to the user but also possibly could end up
  in a port-forward not being fully stopped.
* When shutting down, pass a temporary context that has a timeout of 30
  seconds. This ensures that `/etc/host` modifications, ip pool
  cleanups, and other shutdown functions properly finish instead of
  possibly being terminated midway through during normal shutdown.
* Enabled delibird to remove tracing/metrics information being sent by
  default in localizer binaries. This is a OSS friendly way of us
  getting telemetry by logging to disk instead, which a user can opt to
  send us when reporting bugs (more on that in future work!)
* Upgraded all dependencies, including `client-go`. We still need a
  fork, but thankfully our fork is a single line now so it's much more
  likely we can upstream the change we made (the other change was
  upstreamed a year ago by another user!)
* Exposes `stderr` from the port-forwarder to the console with a colored
  prefix. This makes it easier to tell when a port-forward was busted
  but localizer didn't detect it (or if it did, why it failed!)
* Skipped namespaces by default (`kube-system`) and enabled the user to
  pass `--skip-namespace` to provide more (helps #212).
* Skip non-clusterIP services. These aren't addressable in the cluster,
  so we shouldn't create a tunnel for them. This helps with `NodePort`
  and `LoadBalancer` service overhead that some larger clusters may
  have.
* Reduced logging to be easier to read, while keeping a lot of helpful
  logs in the `debug` level. Defaults to `info` logging instead of
  `debug` logging (pass `--log-level debug` for that!)
jaredallard added a commit that referenced this issue Aug 3, 2023
#249)

* fix: logging and pf improvements, skip namespaces & non-ClusterIP svcs

This PR contains a number of reliability and UX improvements for using
localizer in a larger cluster.

* When creating a port-forward, we don't pass a stop channel anymore.
  This was previously passed `ctx.Done()` which would silently stop the
  port-forward on ^C. This caused invalid "use of closed connection"
  logging that was confusing to the user but also possibly could end up
  in a port-forward not being fully stopped.
* When shutting down, pass a temporary context that has a timeout of 30
  seconds. This ensures that `/etc/host` modifications, ip pool
  cleanups, and other shutdown functions properly finish instead of
  possibly being terminated midway through during normal shutdown.
* Enabled delibird to remove tracing/metrics information being sent by
  default in localizer binaries. This is a OSS friendly way of us
  getting telemetry by logging to disk instead, which a user can opt to
  send us when reporting bugs (more on that in future work!)
* Upgraded all dependencies, including `client-go`. We still need a
  fork, but thankfully our fork is a single line now so it's much more
  likely we can upstream the change we made (the other change was
  upstreamed a year ago by another user!)
* Exposes `stderr` from the port-forwarder to the console with a colored
  prefix. This makes it easier to tell when a port-forward was busted
  but localizer didn't detect it (or if it did, why it failed!)
* Skipped namespaces by default (`kube-system`) and enabled the user to
  pass `--skip-namespace` to provide more (helps #212).
* Skip non-clusterIP services. These aren't addressable in the cluster,
  so we shouldn't create a tunnel for them. This helps with `NodePort`
  and `LoadBalancer` service overhead that some larger clusters may
  have.
* Reduced logging to be easier to read, while keeping a lot of helpful
  logs in the `debug` level. Defaults to `info` logging instead of
  `debug` logging (pass `--log-level debug` for that!)

* make linter happy and shutdown easier to read
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants