This repository contains a collection of demos I use in different technical sessions about Knative (e.g. Generating Events from Your Internal Systems with Knative). I try to keep these updated as new versions of Knative get released but sometimes I may get behind. Do let me know (issue) if you find something that's not working.
For the complete list of official Knative samples see docs repository.
To run these samples you need to a Knative cluster. If you don't have one, you can use the quick setup steps for GKE including static IP, custom domain and a few other post install configurations.
For official documentation on how to install and configure Knative on variety of Kubernetes services see the Knative install documentation
Follow these instructions to run the demos in the presentation:
- Deploying a pre-build image
- On-cluster build using Tekton
- Cloud (serverless) builds
- Build and deploy using GitHub Actions
- Build and deploy using Cloud Build
- Configuring Knative application
- Operations (Day 2)
- Eventing
Note, the monitoring/observability components require additional install
Run the following command to watch your Kubernetes pods while running the demos:
kubectl port-forward -n knative-monitoring \
$(kubectl get pods -n knative-monitoring --selector=app=grafana \
--output=jsonpath="{.items..metadata.name}") 3000
To enable event tracing first edit the tracing config
kubectl edit cm config-tracing -n knative-eventing
In this case I'm using Stackdriver so just add the following two lines. You can also use zipkin
in which case you will also have to define the back-end. See the config map's comments for details.
backend: stackdriver
sample-rate: "1.0"
If you're tracing high volume events you may want to adjust the
sample-rate
to something smaller like0.1
(10% of all events).
To view traces, navigate to the Trace UI in GCP console