Contour is an Ingress controller for Kubernetes that deploys the Envoy proxy as a reverse proxy and load balancer.
The Contour Ingress component has different requirements on different platforms. The reason for this is that an Ingress Controller needs traffic to be routed to their ingress pods, and the network configurations needed to achieve that differ on each platform.
Currently the supported platform is Packet.
-
A Lokomotive cluster accessible via
kubectl
deployed on Packet. -
MetalLB component installed and configured.
Contour component configuration example:
component "contour" {
# Optional arguments
service_monitor = false
ingress_hosts = ["*.example.lokomotive.org"]
}
Table of all the arguments accepted by the component.
Example:
Argument | Description | Default | Required |
---|---|---|---|
service_monitor |
Create ServiceMonitor for Prometheus to scrape Contour and Envoy metrics. | false | false |
ingress_hosts |
ExternalDNS component creates DNS entries from the values provided. | "" | false |
To apply the Contour component:
lokoctl component apply contour
This component is installed in the projectcontour
namespace.
To destroy the component:
lokoctl component render-manifest contour | kubectl delete -f -