A collection of script to run Knative
An opinionated package of Knative, Koruier, Apache Kafka and Strimzi can be found in [this](ootb_kafka)
folder!
The root director contains a set of more fine-grained scripts, allowing you a modular setup. The installer gets you a minikube cluster, that runs:
- Knative Serving CORE
- Kourier Ingress
./01-installer.sh
To install the Knative Eventing components to the cluster invoke:
./02-kn-eventing.sh
To extract the host & port for accessing a Knative service via Minikube you can use the following expression:
$(minikube ip):$(kubectl get svc kourier --namespace kourier-system --output 'jsonpath={.spec.ports[?(@.port==80)].nodePort}')
For example:
# Get host:port for acessing a service
ADDR=$(minikube ip):$(kubectl get svc kourier --namespace kourier-system --output 'jsonpath={.spec.ports[?(@.port==80)].nodePort}')
# Create a sample service
kn service create random --image rhuss/random:1.0
# Access the Knative service
curl -sH "Host: random.default.example.com" http://$ADDR | jq .
kn
is the official CLI from the Knative project. Get it here!
If you want to experiment with Apache Kafka, install it using Strimzi:
./03-strimzi.sh
To install the KafkaSource
and the KafkaChannel
CRDs, run:
./04-kn-kafka.sh
The
KafkaChannel
in this version is currently not configured to run as a default channel!
If you want, you can install zipkin and configure it for Knative Eventing to read event traces:
./optional-tracing.sh
Be aware to configure tracing after you configured all the other components
Have fun!