#ingressnginx

2025-07-03

Как работает ingress-nginx: нырнем еще глубже. Часть 2 — балансировка

В первой части мы разобрались с принципами работы Ingress-nginx контроллера . Теперь пришло время углубиться в то, как в Ingress-nginx устроен механизм обновления бэкендов и как реализована балансировка нагрузки на примере sticky sessions . Готовы узнать больше? Поехали! Напомню, если вдруг забыли, эта статья написана по мотивам выступления на DevOpsConf’25, а меня зовут Алексей Колосков, я Lead DevOps из Hilbert Team. Итак, рассмотрим, как реализовано обновление бэкендов в самом контроллере.

habr.com/ru/companies/oleg-bun

#ingress #ingressnginx #ingressконтроллер #lua #luanginxmodule #k8s #kubernetes

2025-07-02

Как работает ingress-nginx: нырнем поглубже. Часть 1 — basics

Наверняка вы все работаете с Kubernetes, публикуете сервисы наружу через Ingress-контроллер. Уверен, что большинство из вас использует ingress-nginx. Создаете манифест, деплоите его в k8s, но не всегда получаете именно тот результат, который хотели бы. Или же все работает, но спустя какое-то время что-то идет не так. В этой серии статей, созданной по мотивам выступления на DevOpsConf’25, мы подробно разберемся как работает сам ingress-nginx контроллер и почему это не совсем классический nginx. Погрузимся в дебри LUA-кода чтобы понять, как реализована балансировка. А также затронем тему сниппетов, как их включить если они вам очень нужны, и почему этого делать не стоит. Меня зовут Алексей Колосков , я Lead DevOps из Hilbert Team . Больше 15 лет я в IT: за это время админил, разрабатывал, развивал on-premise инфраструктуру, инфраструктуру в облаках и даже курсы по DevOps, Security и DataTech в Yandex Cloud. Hilbert Team — провайдер IT-решений для крупного и среднего бизнеса в области облачных технологий, DevOps, DevSecOps, DataOps, MLOps и FinOps. Партнёр Yandex Cloud со специализацией Yandex Cloud Professional по направлениям DevOps и Data Platform.

habr.com/ru/companies/oleg-bun

#ingress #ingressnginx #luanginxmodule #lua #ingressконтроллер #k8s #kubernetes

2025-03-31

Si ça continue, nous bloquerons Azure, AWS et consort 😡

#intelligenceArtificielle #ia #web #sysadmin #netadmin #kubernetes #nginx #ingressNginx

2025-03-31

Well, this one was unexpected: github.com/tarampampam/error-p

I just discovered that some of my services were open to the internet, thanks to the default-backend for my ingress-nginx changing the status codes when switching from v2 to v3 of the backend container…

It's not really a vulnerability, but somehow a security issue for potentially more people. My monitoring caught it, but I didn't really understand until I looked deeper into it.

#IngressNginx #kubernetes #errorPages

2025-03-26

Just started again playing with and a few days ago - now I've fun with CVE-2025-1974
Yay...

LetsConvertletsconvert
2025-03-25

🔐 Security Alert Resolved! 💪

CVE-2025-24513, 24514, 1097, 1098 & 1974 hit hard — but LetsConvert patched all issues within 12 hours! 🛡️

Your data stays safe. We're always on guard. 🚀
🔗 letsconvert.io/?utm_source=dlv

💪

Security Update #CyberSecurity
2025-02-26

C’est un peu des bourrins les robots des voleurs de l’intelligence artificielle, ça tape plusieurs fois par seconde.

J’ai bien tenté d’ajouter des entêtes X-Robots-Tag

developer.mozilla.org/en-US/do

…mais ils n’en ont rien à faire, qui aurait pu prédire.

Je suis donc passé à l’étape suivante « block-user-agent » :

kubernetes.github.io/ingress-n

#intelligenceArtificielle #ia #web #sysadmin #netadmin #kubernetes #nginx #ingressNginx

Johannes Schnattererschnatterer@floss.social
2025-01-13

Heads up #ingressNginx users!

Controller version 1.12 / chart 4.12, contains breaking changes.

Even though a minor release, one change blocks risky annotations like the 'snippet' annotations.

These are often used to block access to specific URLs, like /metrics.

An insecure workaround is to allow these annotations via values.yaml:

```
allowSnippetAnnotations: true
config:
annotations-risk-level: Critical
```

A more secure alternative would be to get rid of the annotation.

An example for blocking access to a path via ingress

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: example-metrics-blocker
  namespace: my-ns
  labels:
  annotations:
    acme.cert-manager.io/http01-ingress-class: nginx
    kubernetes.io/ingress.class: nginx
    kubernetes.io/tls-acme: "true"
    # Allow access from within the cluster only
    nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8
spec:
  tls:
    - hosts:
        - "example.com"
      secretName: example-certificate
  rules:
    - host: "example.com"
      http:
        paths:
          - path: /metrics
            pathType: Prefix
            backend:
              service:
                name: my-svc
                port:
                  number: 8080
Filip 🌱 🦀hhg@infosec.exchange
2023-11-07

Got #MiniKube with the #MetalLB and #Ingress plugins, all good. However, I literally cannot figure out how to access my charts, containing #ClusterIP services with ingresses. If anyone has any ideas as to what I could try, all ears!

Tried through tunnel, mapped the Minikube IP to the domain in /etc/hosts, MetalLB is configured to a free IP subrange of the MK address.

Tried using #KVM but #Podman as well, rootless and not. Nothing seems to work.

#K8S #Kubernetes #DevOps #K3S #Helm #HelmChart #KubernetesHelm #IngressNginx #NGINX

Filip 🌱 🦀hhg@infosec.exchange
2023-07-31

Does anyone have any experience using #k3s on #Hetzner's #HetznerCloud? Trying to use #NGINX as an #ingress with #IngressNginx but I keep getting a 403 from registry.k8s.io when pulling the images and I cannot figure out why.

#K8S #Kubernetes #Rancher #DevOps #Cloud

BenderIsGreat34andymoose
2023-03-11

Health probe issues on VIP clients cluster is going to be a recurring theme this weekend.

2023-03-08

I‘m not sure if I should be happy that github.com/compumike/hairpin-p is the solution to my problem, or that it needs to be the solution because the underlying issue isn’t fixed by default in #k8s it’s not a super edgy edge case to have a #LoadBalancer set up using #ProxyProtocol and using #CertManager with #IngressNginx

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst