Este repositorio proporciona una implementación de un controlador de ingreso para NGINX y NGINX Plus de la gente detrás de NGINX.
Valoramos los comentarios de la comunidad y nos encantaría verlo en la próxima llamada comunitaria. En estas llamadas, analizamos las relaciones públicas de los miembros de la comunidad, así como problemas, debates y solicitudes de funciones.
Enlace de Microsoft Teams : KIC: clasificación de problemas de GitHub
ID de reunión: 298 140 979 789
Código de acceso: jpx5TM
Slack : Únase a nuestro canal #nginx-ingress-controller
en la comunidad NGINX Slack para recibir actualizaciones y debates.
Cuándo : 15:00 GMT / Convierta a su zona horaria, cada dos lunes.
Fechas de llamadas comunitarias |
---|
2024-10-07 |
2024-10-21 |
2024-11-05 |
2024-11-18 |
2024-12-02 |
2024-12-16 |
NGINX Ingress Controller funciona con NGINX y NGINX Plus y admite las funciones estándar de Ingress: enrutamiento basado en contenido y terminación TLS/SSL.
Además, varias funciones de NGINX y NGINX Plus están disponibles como extensiones del recurso Ingress a través de anotaciones y el recurso ConfigMap. Además de HTTP, NGINX Ingress Controller admite aplicaciones Websocket, gRPC, TCP y UDP de equilibrio de carga. Consulte los documentos de ConfigMap y Anotaciones para obtener más información sobre las funciones admitidas y las opciones de personalización.
Como alternativa a Ingress, NGINX Ingress Controller admite los recursos VirtualServer y VirtualServerRoute. Permiten casos de uso que no son compatibles con el recurso Ingress, como la división del tráfico y el enrutamiento avanzado basado en contenido. Consulte el documento de recursos de VirtualServer y VirtualServerRoute.
También se admite el equilibrio de carga TCP, UDP y TLS Passthrough. Consulte el documento de recursos de TransportServer.
Lea este documento para obtener más información sobre NGINX Ingress Controller con NGINX Plus.
Nota
Este proyecto es diferente del controlador de ingreso NGINX en el repositorio kubernetes/ingress-nginx. Consulte este documento para conocer las diferencias clave.
Ingress es un recurso de Kubernetes que le permite configurar un equilibrador de carga HTTP para aplicaciones que se ejecutan en Kubernetes, representado por uno o más servicios. Un equilibrador de carga de este tipo es necesario para entregar esas aplicaciones a clientes fuera del clúster de Kubernetes.
El recurso de Ingress admite las siguientes características:
Enrutamiento basado en contenido :
Enrutamiento basado en host . Por ejemplo, enrutar solicitudes con el encabezado del host foo.example.com
a un grupo de servicios y el encabezado del host bar.example.com
a otro grupo.
Enrutamiento basado en rutas . Por ejemplo, enrutar solicitudes con el URI que comienza con /serviceA
al servicio A y solicitudes con el URI que comienza con /serviceB
al servicio B.
Terminación TLS/SSL para cada nombre de host, como foo.example.com
.
Consulte la Guía del usuario de Ingress para obtener más información sobre el recurso de Ingress.
El controlador de Ingress es una aplicación que se ejecuta en un clúster y configura un equilibrador de carga HTTP según los recursos de Ingress. El balanceador de carga puede ser un balanceador de carga de software que se ejecuta en el clúster o un balanceador de carga de hardware o en la nube que se ejecuta externamente. Diferentes balanceadores de carga requieren diferentes implementaciones de Ingress Controller.
En el caso de NGINX, el controlador de ingreso se implementa en un pod junto con el equilibrador de carga.
Nota
Toda la documentación solo debe usarse con la última versión estable, indicada en la página de versiones del repositorio de GitHub.
Instale NGINX Ingress Controller utilizando el gráfico Helm o los manifiestos de Kubernetes.
Configure el equilibrio de carga para una aplicación web sencilla:
Utilice el recurso de Ingress. Vea el ejemplo de Café.
O el recurso VirtualServer. Vea el ejemplo de configuración básica.
Vea ejemplos de configuración adicionales.
Obtenga más información sobre todas las configuraciones y personalizaciones disponibles en los documentos.
Publicamos versiones de NGINX Ingress Controller en GitHub. Vea nuestra página de lanzamientos.
La última versión estable es 3.7.2. Para uso en producción, le recomendamos que elija la última versión estable.
La versión Edge es útil para experimentar con nuevas funciones que aún no están publicadas en una versión estable. Para usarlo, elija la versión perimetral creada a partir de la última confirmación de la rama principal.
Para utilizar NGINX Ingress Controller, debe tener acceso a:
Una imagen del controlador de ingreso NGINX.
Manifiestos de instalación o un diagrama de Helm.
Documentación y ejemplos.
Es importante que las versiones de los elementos anteriores coincidan.
La siguiente tabla resume las opciones relacionadas con las imágenes, el gráfico de Helm, los manifiestos, la documentación y los ejemplos, y proporciona enlaces a las versiones correctas:
Versión | Descripción | Imagen para NGINX | Imagen para NGINX Plus | Manifiestos de instalación y gráfico de timón | Documentación y ejemplos |
---|---|---|---|---|---|
Última versión estable | Para uso en producción | Utilice las imágenes 3.7.2 de DockerHub, GitHub Container, Amazon ECR Public Gallery o Quay.io o cree su propia imagen. | Utilice las imágenes 3.7.2 de F5 Container Registry o cree su propia imagen. | Manifiestos. Carta de timón. | Documentación. Ejemplos. |
Borde/Nocturno | Para probar y experimentar | Utilice imágenes de borde o nocturnas de DockerHub, GitHub Container, Amazon ECR Public Gallery o Quay.io o cree su propia imagen. | Construye tu propia imagen. | Manifiestos. Carta de timón. | Documentación. Ejemplos. |
Generamos SBOM para los binarios y las imágenes de Docker.
Los SBOM para los binarios están disponibles en la página de lanzamientos. Los SBOM se generan utilizando syft y están disponibles en formato SPDX.
Los SBOM para las imágenes de Docker están disponibles en los repositorios DockerHub, GitHub Container, Amazon ECR Public Gallery o Quay.io. Los SBOM se generan utilizando syft y se almacenan como una certificación en el manifiesto de imagen.
Por ejemplo, para recuperar el SBOM para linux/amd64
desde Docker Hub y analizarlo usando grype, puede ejecutar el siguiente comando:
docker buildx imagetools inspecciona nginx/nginx-ingress:edge --format '{{ json (index .SBOM "linux/amd64").SPDX }}' | quejarse
¡Nos gustaría escuchar tus comentarios! Si tiene alguna sugerencia o tiene problemas con nuestro controlador de ingreso, cree un problema o envíe una solicitud de extracción en GitHub. Puede contactarnos directamente a través de NGINX Community Slack.
Si desea contribuir al proyecto, lea nuestra guía de contribución.
Para los clientes de NGINX Plus, el controlador de ingreso NGINX (cuando se usa con NGINX Plus) está cubierto por el contrato de soporte.