Nginx Ingress Integrator docs - index

A Juju charm deploying and managing external access to HTTP/HTTPS services in a Kubernetes cluster via an Nginx Ingress resource. This requires the Kubernetes cluster in question to have an Nginx Ingress Controller already deployed into it.

This charm simplifies exposing services running inside a Kubernetes cluster to external clients. It offers TLS termination as well as easy configuration of a number of advanced features including rate limiting, restricting access to specific client IP source ranges, and OWASP ModSecurity Core Rule Set (CRS).

As such, the charm makes it easy for charm developers to provide external access to their HTTP workloads in Kubernetes by easy integration offered via the charm’s nginx_route library.

For DevOps and SRE teams, providing ingress for charms that support a relation to this charm will be possible via a simple juju relate command.

Contributing to this documentation

Documentation is an important part of this project, and we take the same open-source approach to the documentation as the code. As such, we welcome community contributions, suggestions and constructive feedback on our documentation. Our documentation is hosted on the Charmhub forum to enable easy collaboration. Please use the “Help us improve this documentation” links on each documentation page to either directly change something you see that’s wrong, ask a question, or make a suggestion about a potential change via the comments section.

If there’s a particular area of documentation that you’d like to see that’s missing, please file a bug.

In this documentation

Tutorials
Get started - a hands-on introduction to using the Charmed NGINX Integrator operator for new users
How-to guides
Step-by-step guides covering key operations and common tasks
Reference
Technical information - specifications, APIs, architecture
Explanation
Concepts - discussion and clarification of key topics

Navigation

Level Path Navlink
1 Tutorial Tutorial
2 getting-started Getting started
1 how-to How to
2 secure-an-ingress-with-tls Secure an Ingress with TLS
2 add-the-ingress-relation Add the Ingress relation to a charm
2 contribute Contribute
2 support-multiple-relations Support multiple relations
1 Reference Reference
2 Actions Actions
2 Configurations Configurations
2 Integrations Integrations
2 Libraries Libraries
1 Explanation Explanation
2 architecture Architecture
2 what-is-ingress What is Ingress?
roadmap Roadmap

Redirects

Mapping table
Path Location

Redirects

Mapping table
Path Location
2 Likes

Hi @mthaddo, congratulations for your post. Considering I’m a beginner, I apologize if I don’t have much foundation for what I’m looking for. Can you tell me which address I access hello-kubecon from after succeeding with

juju relate ingress hello-kubecon

I think I must have a problem with the AWS/Eks cluster. The description informs that the endpoint was not found during the entry process.

Name:             hello-kubecon-ingress
Namespace:        p6-model
Address:          
Default backend:  default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
Rules:
  Host           Path  Backends
  ----           ----  --------
  hello-kubecon  
                 /   hello-kubecon-service:8080 (192.168.85.237:8080)
Annotations:     nginx.ingress.kubernetes.io/proxy-body-size: 20m
                 nginx.ingress.kubernetes.io/rewrite-target: /
                 nginx.ingress.kubernetes.io/ssl-redirect: false
Events:          <none>

Thanks.

Hi Claiton,

It would be the IP of your Nginx Ingress Controller. If I’m running this on microk8s that’s exposed on 127.0.0.1 (as long as I’ve enabled the ingress add-on), but since I think you’re running this on AWS/EKS you may need to deploy an Nginx Ingress Controller first, and then connect to hello-kubecon on the IP address of that ingress controller.

This charm doesn’t deploy an Ingress Controller itself, it simply generates an Nginx Ingress resource that can then be used by an Nginx Ingress Controller. Ingress is a pretty involved topic in Kubernetes and there are lots of different ways to do things!

Hope that helps,

Thanks, Tom

1 Like