-
Notifications
You must be signed in to change notification settings - Fork 95
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
Add quickstart for the relay setup #772
Conversation
Sweet! Will finish off #666 (almost there!) and then pop over to this 👍🏻 |
Finally getting around to taking this for a spin and building out the integration tests. I'm rebasing against |
Whichever works best, I don't mind either way, but pushing to here seems like the easiest, don't worry about not rewriting the commits to get through the rebase. |
Updated examples from googleforgames#772 moved into their own separate PR, so that when googleforgames#772 is submitted, link checks om the quickstart documentation will resolve correctly.
Updated examples from googleforgames#772 moved into their own separate PR, so that when googleforgames#772 is submitted, link checks om the quickstart documentation will resolve correctly.
fefabc4
to
7a29e25
Compare
Added a commit with fixes for the quickstart and associated docs. Please take a look and let me know what you think! Html link testing in CI will pass once #807 has been merged. |
Html link testing will pass once #807 has been merged.
7a29e25
to
12e4a80
Compare
* Bring examples up to use 0.7.0 * Update xDS quickstart to be inline with the relay quickstart in googleforgames#772 and with the relevant changes to Quilkin. Dependent on: * googleforgames#772
* Bring examples up to use 0.7.0 * Update xDS quickstart to be inline with the relay quickstart in googleforgames#772 and with the relevant changes to Quilkin. Dependent on: * googleforgames#772
| services | ports | Protocol | | ||
|----------|-------|--------------------| | ||
| ADS | 7800 | gRPC(IPv4 OR IPv6) | | ||
| CPDS | 7900 | gRPC(IPv4 OR IPv6) | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One thing I noted when doing the examples is that it's not just quilkin relay
it's quilkin relay (agones|file)
(at least from the command prompt).
And in the example for Agones - we do run quilkin relay agones
. I am wondering if that's because we still want to pickup the Filter ConfigMap at the Relay level, but the endpoint configuration at the Agent level?
But it does seem like we have the same CLI args shared between quilkin relay
and quilkin agent
, which may be confusing (Also, noting that quilkin relay
with no extra args works will run, but I assume will skip any of the provider/agent specific logic.
For example, quilkin relay agones --config-namespace="gameservers"
is valid, but I'm guessing that --config-namespace
doesn't actually do anything? (maybe to get removed later?). Same for quilkin relay file
?
Just wanted to make sure I wasn't missing anything here when writing docs. I figure this is just an artifact of work in progress, but wanted to check.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using --config-namespace
does do something. It picks up the filters configuration from kubernetes, same thing for file.
It's that way because with the relay, you (or at least we) only want to pick up the filter configuration from one place (the configmap).
I think for the future we should adopt traefik style dot separated flags, then the behaviour would be much more obvious.
quilkin relay
--filters.provider.configmap.namespace=gameservers
And then a management server or agent would look like this.
quilkin manage
--filters.provider.configmap.namespace=quilkin
--endpoints.provider.agones.namespace=gameservers
This separates where the two sources of configuration are defined so it's more clear what is being picked from where.
I opened a discussion with clap about supporting this natively to reduce the effort on our part earlier in the year, but they haven't added anything yet for it.
I think for now it'll be worth making the extra effort on our side to provide a better CLI API, we just need to allocate the time to move it, and I don't have that time right now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah that's an interesting point. I don't hugely worry about the cli being dot seperated, but also don't hate it 😄
But I'll also add some notes to the agent/quickstart around relay sub-command functionality so that is also clear.
Just so I make sure to get that right:
quilkin relay --gameservers-namespace
.... that doesn't do anything does it? Since the relay isn't looking at Agones GameServer
data locally? (or does it???)
I also assume quilkin relay file <path>
wouldn't actually do anything, since the full config would come from seperate quilkin agents
- or would it grab the local file info and merge it with whatever else is coming in?
Build Succeeded 🥳 Build Id: 024b17a8-2e70-47cc-b451-5980dce1e28b The following development images have been built, and will exist for the next 30 days: To build this version:
|
@markmandel LGTM, I can't approve since it's my PR, so you or @koslib need to approve for it to be merged. |
This is the Quickstart for the relay setup, as mentioned this is still mostly the same as the xds setup, except with a few paragraph changes and additions to the
xds-control-plane.yaml
to launch a relay and a agent.