-
Notifications
You must be signed in to change notification settings - Fork 150
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1443 +/- ##
==========================================
+ Coverage 66.39% 66.41% +0.02%
==========================================
Files 54 54
Lines 4026 4026
==========================================
+ Hits 2673 2674 +1
Misses 960 960
+ Partials 393 392 -1
Continue to review full report at Codecov.
|
9eb8c83
to
ffeb5e8
Compare
The simplest setup ingress is to only proxy HTTP2 traffic. Multiplexing gRPC and HTTP is possible, but it requires two ingress objects and explicit path / gRPC service specific forwarding rules. Notes: - Supply a default backend to prevent the ingress controller from creating it's own - Supply path routes. Without path routing NGINX won't use our TLS certs and will supply it's own "default" TLS cert.
6c9502f
to
bdedd90
Compare
- Link to a static IP resource. - Disable HTTP to slightly simplify the firewall rules. - Set the backend protocol to HTTP2. - Requiries an HTTP2 healthcheck at '/'. - Requires TLS (HTTP2 + TLS is incompatible with cmux). - Supports GRPC. Refs - https://cloud.google.com/load-balancing/docs/https/
This makes debugging slightly easier since NodePorts will be stable
This makes the ingress object routable by Kubernetes in Docker (KIND) The current kind config routes localhost traffic on 443 to specific node ports (80443)
Using kustomize is required because `kubectl -k` doesn't support directories to as resources in kustomize file.
After researching
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For your main PR description, can you make the first line more descriptive? These guidelines are really useful: https://chris.beams.io/posts/git-commit/
Could you also add in the PR description more details about the additional files and structure under ingress-nginx
?
Also, i'd recommend if you would explain the use of Kustomize (+investigation into Helm results in the PR description itself, rather than inline in the comments).
Finally if this adds a mechanism to route from outside to our cluster, can you add sample commands or reference to how one might validate that the setup works?
deploy/kubernetes/overlays/local/ingress-nginx/baremetal/kustomization.yaml
Show resolved
Hide resolved
* master: Portable docker images cleanup script (google#1445)
Also deletes unreferenced yaml configs.
Thanks for your suggestions @NatalieDoduc Please see
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - can you just update the PR title to match your first line of the description.
Also, a few questions below, but only for clarification, no changes required. Thanks!
Use K8 ingress for TLS termination
Kubernetes ingress objects support
sandbox.keytransparency.dev
.The backend protocol from the ingress reverse proxy to the binaries use HTTP/2 + TLS
This PR uses
kustomize
to configure k8 configs for both GCE and baremetal deployments. The baremetal deployment is used for local testing and the kubernetes test in travis. Baremetal deployments must locally supply an ingress implementation, this PR usesnginx
. The GCE deployment uses the cloud provided GCE ingress implementation.I chose 'kustomize
over
helm` because kustomize has better support for multiple deployment environments. We can revisit this decision later if needed.The directory structure:
To verify that this PR worked:
Fixes #1396