Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FAQ: NGINX Ingress Controller for routing #415

Merged
merged 5 commits into from
Jan 12, 2020
Merged

FAQ: NGINX Ingress Controller for routing #415

merged 5 commits into from
Jan 12, 2020

Conversation

drnickiw
Copy link
Contributor

what

  • NGINX Ingress Controller FAQ

why

  • Imported from Google Doc

Links to #353

@osterman osterman changed the title FAG: NGINX Ingress Controller for routing FAQ: NGINX Ingress Controller for routing Mar 23, 2019

## Question

Is the NGINX Ingress Controller needed for internal routing? I’d like more info on how that is meant to be used.
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
Is the NGINX Ingress Controller needed for internal routing? I’d like more info on how that is meant to be used.
Is the NGINX Ingress Controller needed for internal routing?


On GKE, deploying an NGINX Ingress Controller is not required, as GKE ties in directly with GCP load balancers. On AWS, the NGINX Ingress Controller is currently (2018) the de facto standard on AWS. However, there are up and coming contenders.

That said, the NGINX Ingress Controller is not uncommon in GKE as well. It operates in tandem with the platform-provided load balancer to route traffic within the cluster. The benefits of using the NGINX Ingress Controller is that you get all the features of NGINX (e.g. lua). The downside is that for very large clusters running thousands of pods, the Community Edition (CE) ingress reloads might be disruptive (which is why there's an enterprise offering by NGINX that supports real-time updates). A cluster can run multiple NGINX Ingress Controller deployments—even one per namespace. This can get expensive though, since each NGINX Ingress Controller ships with its own load balancer. An ingress resource then uses an annotation to select an ingress controller.
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
That said, the NGINX Ingress Controller is not uncommon in GKE as well. It operates in tandem with the platform-provided load balancer to route traffic within the cluster. The benefits of using the NGINX Ingress Controller is that you get all the features of NGINX (e.g. lua). The downside is that for very large clusters running thousands of pods, the Community Edition (CE) ingress reloads might be disruptive (which is why there's an enterprise offering by NGINX that supports real-time updates). A cluster can run multiple NGINX Ingress Controller deployments—even one per namespace. This can get expensive though, since each NGINX Ingress Controller ships with its own load balancer. An ingress resource then uses an annotation to select an ingress controller.
That said, the NGINX Ingress Controller is not uncommon in GKE as well. It operates in tandem with the platform-provided load balancer to route traffic within the cluster. The benefits of using the NGINX Ingress Controller is that you get all the features of NGINX (e.g. lua). The downside is that for very large clusters running thousands of pods, the Community Edition (CE) ingress reloads might be disruptive (which is why there's an enterprise offering by NGINX that supports real-time updates). A cluster can run multiple Ingress Controller deployments—even one per namespace. This can get expensive though, since each NGINX Ingress Controller ships with its own load balancer. An ingress resource then uses an annotation to select an ingress controller.

@osterman osterman merged commit 64bd449 into master Jan 12, 2020
@osterman osterman deleted the nginx branch January 12, 2020 22:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants