Kubernetes Installation
This section includes different installation options such as a sidecar, stand-alone deployment or an operator.
Webhook Relay can help you receive webhooks for your internal services. We provide multiple options for the installation.
Option 1: Webhook Relay Operator (recommended)
Webhook Relay operator not only deploys and manages agent containers that subscribe and forward webhooks but it also configures buckets, inputs (your public endpoints) and outputs (forwarding destinations).
Install
Prerequisites:
Kubernetes
You need to add this Chart repo to Helm:
Get access token from here. Once you click on ‘Create Token’, it will generate it and show a helper to set environment variables:
Install through Helm:
Usage
Once the operator is deployed, to start receiving webhooks you will need to create a Custom Resource (usually called just ‘CR’). It’s a short yaml file that describes your public endpoint characteristics and specifies where to forward the webhooks:
Uninstall
To remove the agent that is forwarding the webhooks, remove the CR that created it:
To remove operator, use standard Helm command to uninstall the operator.
Option 2: Sidecar
First, go to https://my.webhookrelay.com/tokens and create a token key & secret pair. Then, create a Kubernetes secret:
Once the secret is created, you can deploy Webhook Relay container either as a sidecar or a standalone container. Webhook Relay agent can be easily deployed as a sidecar. This way requests can be forwarded to the service through localhost:
Option 3: Separate deployment
Webhook Relay container can also work as stand-alone deployment:
If agent is deployed as a separate deployment, the output destination should then be a service name. Repository can be found here: https://github.com/webhookrelay/webhook-demo.
Option 4: Ingress Controller
Implements a Kubernetes ingress controller using tunnels to connect a Web Relay managed URL (https://yoursubdomain.webrelay.io) to a Kubernetes service based on ingress resources. Single ingress controller can manage multiple tunnels and route to multiple namespaces.
Deployment files and issue tracker is available on GitHub:
https://github.com/webrelay/ingress
You can try out Web Relay ingress controller by creating a deployment from a hosted manifest, no clone or local install necessary.
What you do need:
A Kubernetes cluster that has access to the Internet
kubectl
configured with admin access to your clusterrelay
CLI, installation instructions can be found here
Install
To add Web Relay ingress controller to your cluster, run:
Manifests are available here: https://github.com/webrelay/ingress/tree/master/deployment
This command:
Creates
webrelay-ingress
namespaceCreates
webrelay
service accountCreates deployment with the controller
Creates cluster role and binding
Generates access key and secret for the Web Relay server and supplies them as a Kubernetes secret
If RBAC isn’t enabled on your cluster (for example, if you’re on GKE with legacy authorization or Minikube without RBAC), run:
You can also generate tokens through the Web UI here https://my.webhookrelay.com/tokens or
relay token create
command on the CLI.
Uninstall Ingress Controller
To remove it, either delete the namespace where it was deployed or use:
Last updated