Skip to content

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.

  1. Follow the Getting Started with Tanzu Community Edition installation instructions and create your Tanzu cluster on your platform of choice.

  2. Ensure you are in the context of your Tanzu cluster

kubectl config use-context <STANDALONE-CLUSTER-NAME>-admin@<STANDALONE-CLUSTER-NAME>
  1. 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
  1. Wait until the pods have started before proceeding.
kubectl get pods -n knative-serving
  1. 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
  1. Verify the pods have started before proceeding.
kubectl get pods -n contour-external
kubectl get pods -n contour-internal
  1. 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"}}'
  1. Get the External IP address or CNAME by running the command:
kubectl --namespace contour-external get service envoy
  1. You will need to configure DNS following the Knative Serving DNS instructions for your requirements.

  2. 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
  1. 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.