- Notifications
You must be signed in to change notification settings - Fork921
Description
👋🏼 I tried out workspace proxies and have some feedback on the feature. (I know it's still in MVP and some of these things are planned. I tried to write out everything I noticed)
Cool 😎
- Love that you can have output formats for
coder proxy create
for automation - After a proxy went offline, my client gracefully switched back to the default one. When it was restored, my client gracefully switched back to the proxy
- Being able to set proxy icons + display names is awesome
High user impact
Do proxies include DERP yet? It doesn't look like it from this tooltip, but I was also confused that in the instructions I should add this
CODER_DERP_SERVER_ENABLE=trueCODER_DERP_SERVER_RELAY_ADDRESS="https://127.0.0.1:8443"
Then I also saw this open PR:chore: add derpserver to proxy, add proxies to derpmap #7311
Assuming they don't 🤷🏼
Do not show a list of workspace proxies on the "account" page if there are no external proxies added
- On the deployment page, I think it would be nice to list the proxies, even if none are added. This is a good way for admins to discover the feature without adding more overhead to users.
Typo on workspace proxies description (https://github.com/coder/coder/pull/7448/files)
Workspace proxies are used to reduce the latency of connections to aworkspace. To get the best experience, choose the workspace proxy that isclosest located to you. This selection only affects browser connections to your workspace.
to
Workspace proxies are used to reduce the latency of connections to your workspaces. To get the best experience, choose the workspace proxy that is closest to you. This selection only affects browser connections to your workspace.
Add latency indicator to web terminal (add latency indicator to web terminal #7382) (two people who tried thought that it wasn't enabled for the web terminal)
Add basic docs for deploying via a system service
Add basic docs for deploying on Kubernetes
Add basic docs for deploying via
docker run
(most people will not usedocker run
but may try to run with app engine or AWS ECSImprove "Route not found." error if no license is not present (chore: Make better error message if missing license #7440)
ubuntu@ben-coder:~$ coder proxy lsRoute not found.
Medium user impact
List latency in the picker in "Account" settings (workspace proxies: show latency indicator on dashboard #7381)
Automatically pick a workspace proxy based on latency (workspace proxies: auto-pick proxy with the best latency #7496)
Add lightweight workspace proxy picker in terminal latency hover (or link to account settings)?
coder proxy ls
shows status twiceubuntu@ben-coder:~$ coder proxy lsNAME URL STATUS STATUS japan-gcp unregistered
It is confusing for a proxy to not immediately become healthy when started, especially if it was unhealthy before.This is done, when a proxy is updated/created/registerd the status is checked async immediately. So it will come online as quickly as is possible, and ignore the normal 1min cadence.
- A) immediately report status to coderd when a proxy is started
- B) in proxy server logs, say that it could take up to 60 seconds to become healthy
Add a small section for troubleshooting proxies
- e.g. what messages to expect in server logs, what messages to expect in proxy logs
- workspace proxies: edit proxy #7406
- workspace proxies: regenerate token #7407
Low user impact
coder proxy create
polish #7908$ coder proxy createubuntu@ben-coder:~$ coder proxy createproxy name is required
Redesign workspace proxy picker to be a bit more slick, perhaps collaborate with Bruno on it?
The 404 message on the proxy root endpoint is a bit jarring
- A) Proxies should probably redirect to the access URL by default (e.g. bundled in all deployment methods or set by `coder proxy server)
- B) add some type of general "health"/landing page that shows when the users is authenticated
Improve recovery time when a proxy goes offline, perhaps if it was gracefully stopped it can report shutdown to Coder?chore: Implement workspace proxy going away (graceful shutdown) #7459
- Currently, the user has to wait around 60 seconds to get back to their workspace with no error
Unknown impact / open questions
- What is the current behavior withDetect out-of-date coder proxies, or configuration mismatches #6592? Are workspace proxies still enabled when out-of-date?
- Does the proxy health endpoint include more details than
coder proxy ls
? Is it worth documenting that an admin can hit this endpoint to get more details - It seemed like after stopping the proxy, and after my client began using the built-in proxy, the agent disconnected for a second and it was another minute before I could open code-server (it was using the original address, but still not resolving). Does this have to do with some type of DERP disconnect?
- My agent also appeared to disconnect briefly when the proxy came back online.
- Here's a video. This time it was very fast, but sometimes it takes ~10 seconds to reconnect