TriggerMesh Installation for Tanzu Community Edition
Tanzu Community Edition is a free and open source Kubernetes platform provided by VMware.
Tanzu Community Edition package repository versions
The knative-serving
version currently in the Tanzu Community Edition package repository is 0.22
, which does not meet TriggerMesh's minimum requirements. Additionally, at the time of writing, a knative-eventing
package is not available in the repository. Follow the instructions below for installing a supported version of Knative.
Installation
This guide walks you through the deployment of Knative version 1.4.0 using YAML files. Please refer to the upstream Knative documentation for other deployment options.
-
Follow the Getting Started with Tanzu Community Edition installation instructions and create your Tanzu cluster on your platform of choice.
-
Ensure you are in the context of your Tanzu cluster
kubectl config use-context <STANDALONE-CLUSTER-NAME>-admin@<STANDALONE-CLUSTER-NAME>
- Install Knative Serving following the Installing Knative Serving using YAML files instructions.
kubectl apply -f https://github.com/knative/serving/releases/download/knative-v1.4.0/serving-crds.yaml
kubectl apply -f https://github.com/knative/serving/releases/download/knative-v1.4.0/serving-core.yaml
- Wait until the pods have started before proceeding.
kubectl get pods -n knative-serving
- The version of Contour provided with the Tanzu Community Edition package repository is older than the version of
knative-serving
we have installed, so install it from YAML as well.
kubectl apply -f https://github.com/knative-sandbox/net-contour/releases/download/knative-v1.4.0/contour.yaml
kubectl apply -f https://github.com/knative-sandbox/net-contour/releases/download/knative-v1.4.0/net-contour.yaml
- Verify the pods have started before proceeding.
kubectl get pods -n contour-external
kubectl get pods -n contour-internal
- Configure Knative Serving to use Contour by default by running the command:
kubectl patch configmap/config-network \
--namespace knative-serving \
--type merge \
--patch '{"data":{"ingress-class":"contour.ingress.networking.knative.dev"}}'
- Get the External IP address or CNAME by running the command:
kubectl --namespace contour-external get service envoy
-
You will need to configure DNS following the Knative Serving DNS instructions for your requirements.
-
Install Knative Eventing following the Installing Knative Eventing using YAML files instructions.
kubectl apply -f https://github.com/knative/eventing/releases/download/knative-v1.4.2/eventing-crds.yaml
kubectl apply -f https://github.com/knative/eventing/releases/download/knative-v1.4.2/eventing-core.yaml
- Verify your installation.
kubectl get pods -n knative-eventing
At this point you have the TriggerMesh prerequisites installed and can continue with the standard installation instructions.