Skip to content
This repository has been archived by the owner on Nov 16, 2020. It is now read-only.

Letsencrypt support via cert-manager #427

Merged
merged 3 commits into from
May 16, 2018

Conversation

berndtj
Copy link
Contributor

@berndtj berndtj commented May 10, 2018

This is a work in progress to support real certificates via
letsencrypt. Here are the notes:

  • Requires DNS challenge (via route53 for now) as kong is not an
    ingress controller and isn't compatible with the HTTP challenge
    scheme

    • HTTP would be preferred as we don't need to depend on access
      to a 3rd party DNS service (route53)
  • I'm not sure we should package this up together. This support
    may be better handled via manually installing additinal charts
    (cert-manager, certificate) as the failure modes are hard to
    debug and handle automatically

  • User must manually set a secret with AWS IAM secret:

kubectl create secret generic route53 --namespace kube-system --from-literal secret-access-key=$AWS_SECRET_ACCESS_KEY

  • Please comment!

Here's a working install.yaml:

ingress:
  serviceType: LoadBalancer
apiGateway:
  serviceType: LoadBalancer
  host: apibjung03.dispatchframework.io
letsEncrypt:
  email: [email protected]
  staging: false
  route53:
    accessKeyID: ***********
dispatch:
  host: bjung03.dispatchframework.io
  port: 443
  tls:
    ca: letsEncrypt
  faas: riff
  eventTransport: kafka
  bootstrapUser: [email protected]
  oauth2Proxy:
    provider: github
    clientID: **********
    clientSecret: ***********

This is a work in progress to support real certificates via
letsencrypt.  Here are the notes:

* Requires DNS challenge (via route53 for now) as kong is not an
  ingress controller and isn't compatible with the HTTP challenge
  scheme
    - HTTP would be preferred as we don't need to depend on access
      to a 3rd party DNS service (route53)

* I'm not sure we should package this up together.  This support
  may be better handled via manually installing additinal charts
  (cert-manager, certificate) as the failure modes are hard to
  debug and handle automatically

* User must manually set a secret with AWS IAM secret:

```kubectl create secret generic route53 --namespace kube-system --from-literal secret-access-key=$AWS_SECRET_ACCESS_KEY```

* Please comment!

Here's a working install.yaml:

```
ingress:
  serviceType: LoadBalancer
apiGateway:
  serviceType: LoadBalancer
  host: apibjung03.dispatchframework.io
letsEncrypt:
  email: [email protected]
  staging: false
  route53:
    accessKeyID: ***********
dispatch:
  host: bjung03.dispatchframework.io
  port: 443
  tls:
    ca: letsEncrypt
  faas: riff
  eventTransport: kafka
  bootstrapUser: [email protected]
  oauth2Proxy:
    provider: github
    clientID: **********
    clientSecret: ***********
```
* document gke installation guide
* ensure backwards compatibility
@berndtj berndtj changed the title WIP: Letsencrypt support via cert-manager Letsencrypt support via cert-manager May 16, 2018
Copy link
Contributor

@kars7e kars7e left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

[issues](https://github.com/kubernetes/helm/issues/3379). If it fails, retry:

```
helm init --tiller-image powerhome/tiller:git-3b22ecd --wait
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This shouldn't be needed with helm 2.8.2, as both of those issues were addressed (and it shouldn't require retry either). I will update our CI to use 2.8.2.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good to know.

@berndtj berndtj merged commit cabf9bc into vmware-archive:master May 16, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants