ssl ingress connector #1

Supports: bionic xenial

Add to new model

Description

This charm will connect your SSL termination proxy with a kubernetes cluster
and make sure that Ingress is deployed and the rules for the given FQDNS are added


SSL-ingress-Connector

This charm installs a subordinate on the kubernes master and is based on the kubernetes-deployer and
the SSL-termination-FQDM charm but will now automatically connect your SSL-termination-proxy to the Ingress controller running on your k8s Cluster.

Configs

It has the same 3 config values as the SSL-termination-proxy:

  • fqdns is a space separated list of domain names on which the webservice should be accessable. Note: make sure to point the DNS records of these domain names to the ssl-termination-proxy. Example: "example.com www.example.com".
  • credentials is a space-separated pair of username and password for basic authentication.
  • contact-email is the contact email address for lets encrypt. This email address will receive notifications when the certificate expires. Note that the ssl-termination-proxy automatically renews certificates after 2 months so you will only get an email when something is broken.

How to use

```bash

Deploy your ssl-termination-fqdn

juju deploy cs:~tengu-team/ssl-ingress-connector

Configure the connector

juju config ssl-ingress-connector fqdns="example.com www.example.com"
juju config ssl-ingress-connector basic_auth="username password"

Connect the connector with the kubernetes master

juju add-relation kubernets-master ssl-ingress-connector

Connect the connector with the proxy.

juju add-relation ssl-ingress-connector:ssl-termination ssl-termination-proxy:ssl-termination
```

Authors

This software was created in the IDLab research group of Ghent University in Belgium. This software is used in Tengu, a project that aims to make experimenting with data frameworks and tools as easy as possible.


Configuration

contact-email
(string) Contact email for Let's Encrypt
credentials
(string) Space-separated username and password for basic authentication.
fqdns
(string) Space-separated list of domain names. These will share the same certificate.
isolated
(boolean) When true, the pods will only be able to receive traffic from inside the same namespace.
namespace
(string) The namespace in which the deployments will be set-up.
default