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

Improve Quickstart Guide #10586

Open
Tracked by #10441
danehans opened this issue Feb 6, 2025 · 8 comments
Open
Tracked by #10441

Improve Quickstart Guide #10586

danehans opened this issue Feb 6, 2025 · 8 comments
Assignees

Comments

@danehans
Copy link
Contributor

danehans commented Feb 6, 2025

This doc contains several steps to run kgateway. This is daunting and error-prone for a first-time user. The quickstart is the "standard" install and not a "quickstart" install and should be renamed accordingly. The project should add a "quickstart" install option that contains:

  • Two deps (kubectl and a k8s cluster)
  • A single command to deploy an example environment: kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.0/quickstart.yaml.
  • quickstart.yaml should contain all the k8s resources required to tests e2e functionality.
  • A step to clean up, e.g. kubectl delete -f
  • Next steps with a link to the "standard" install guide

cc: @artberger @timflannagan @npolshakova

@craigbox
Copy link
Contributor

craigbox commented Feb 6, 2025

I can help with the docs side of this, if there's someone who can make whatever changes to the packaging as required to make it possible.

@timflannagan
Copy link
Member

@craigbox that would be awesome. re:where to make changes, https://github.com/kgateway-dev/kgateway/blob/main/.goreleaser.yaml#L155-L197 is the source of truth here.

@craigbox
Copy link
Contributor

craigbox commented Feb 7, 2025

/assign

(is that a thing?)

@timflannagan
Copy link
Member

Haha unfortunately not. cc @jenshu @lgadban anyone have the perms to assign craig?

stevenctl pushed a commit to stevenctl/gloo that referenced this issue Feb 10, 2025
Signed-off-by: Shashank Ram <[email protected]>
Co-authored-by: changelog-bot <changelog-bot>
@artberger
Copy link
Contributor

@artberger artberger self-assigned this Feb 12, 2025
@craigbox
Copy link
Contributor

Here's my "friction log" for the new Quickstart guide. It's a stream of consciousness doc as I went through the page.
I know all this is in flux, but it might help explain a few things as we do a giant s/gloo/kgateway in the docs. It may or may not warrant turning into issues.

kubectl apply --kustomize "https://github.com/kubernetes-sigs/gateway-api/config/crd/experimental?ref=v1.2.1"
  • Why am I using –kustomize?
  • Why am I installing 1.21? (This appears hard coded in the page)
  • Do I need experimental channel?
helm install --create-namespace --namespace kgateway-system --version v2.0.0-main kgateway oci://ghcr.io/kgateway-dev/charts/kgateway
Pulled: ghcr.io/kgateway-dev/charts/kgateway:v2.0.0-main
Digest: sha256:a8487018a16189edc2c92d6c9d13922b052d3151b9a069944f959a7a762bbeaf
NAME: kgateway
LAST DEPLOYED: Fri Feb 14 13:28:56 2025
NAMESPACE: kgateway-system
STATUS: deployed
REVISION: 1
TEST SUITE: None

Needs a text file output here which says what to do next. "Congratulations, you've installed kgateway! Go here for more information" etc

kubectl create ns httpbin
kubectl -n httpbin apply -f https://raw.githubusercontent.com/solo-io/gloo-mesh-use-cases/main/policy-demo/httpbin.yaml

should we have our own httpbin sample? Should we use https://github.com/istio/istio/blob/master/samples/httpbin/httpbin.yaml? Rev the container version? Why are we including 'hey'?

The next steps listed are “Set up a listener”, with a llink to https://kgateway.dev/docs/setup/listeners/. That page doesn't tell me what a listener is. I click HTTP, it says “If you followed the Get started guide, you already have a gateway named http in the gloo-system namespace of your cluster.”

I have a gateway called kgateway in the kgateway-system namespace, and I still don’t know what a listener is or if I have one. This is also very underdocumented on the Gateway API site.

@artberger
Copy link
Contributor

Hey @craigbox thanks so much for capturing these notes. I have another PR open that addresses these, amongst other things: kgateway-dev/kgateway.dev#51

  • Updates the Kubernetes Gateway CR install command and uses a shortcode for the version going forward
  • Updates the httpbin sample app to use the one in the kgateway repo
  • Adds a little more info to the listener pages
  • Clarifies on the GS that you don't have a gateway yet, just the control plane

@craigbox
Copy link
Contributor

Is this format of feedback useful? I can make much more of it if so

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants