Bonjour,
J'utilise actuellement le service kubernetes et je rencontre un problème concernant l'IP source sur les loadbalancer.
J'ai des pod Apaches qui tournent derrière un loadbalancer configuré avec l'option External Traffic Policy: Local mais dans les logs apache c'est l'ip local du cluster qui est affichée.
Un second service loadbalancer ingress a été testé avec une configuration identique mais dans les logs du controleur Nginx c'est egalement une IP "cluster" ( 10.10.... ) qui apparait dans les logs.
Il est donc impossible de restreindre des noms de domaines / dossiers à des IP publiques.
Est-ce un problème de configuration ou une limitation du service LB Kubernetes de OVH ?
Avez-vous déja rencontré ce type de problème ?
Merci pour vos retours
Kubernetes loadbalancer IP source
Sujets apparentés
- Issues with Wordpress install guide
3082
13.12.2018 20:11
- Kubernetes dashboard
2300
02.12.2019 14:14
- Guides pour la mise en place et l'utilisation des volumes
2185
10.04.2019 12:27
- All pods killed and to "Container Creating"
2078
13.02.2019 10:11
- Mémoire pod limitée java
1973
24.04.2019 22:19
- Managés implique sauvegardés?
1845
03.04.2019 09:27
- Private nodes with jump-host
1777
19.11.2018 12:19
- Managed Kubernetes Platform is now live !
1702
27.02.2019 15:20
- Erreur intempestive
1668
03.04.2019 17:18
Bonjour @Youri,
Vous pouvez avoir accès aux IPs sources en utilisant le proxy-protocol sur votre LoadBalancer OVH.
Vous pouvez vous inspirer de ce gist: https://gist.github.com/d33d33/d95fc38e7b94dc4e41533196af228c8e#file-ingress-lb-yml
Thomas
Bonjour,
Merci pour votre retour.
J'ai réussi a configurer le loadbalancer en suivant ce tuto : https://docs.ovh.com/gb/en/kubernetes/getting-source-ip-behind-loadbalancer/
Cordialement
Bonjour,
J'ai la même problèmatique, mais même en suivant le tutorial pas-à-pas je n'arrive pas à obtenir la véritable Ip source.
à la fin du tutorial, le service echo me répond ceci:
// http://6fvbxxxxev4.lb.c4.gra.k8s.ovh.net/
{
"path": "/",
"headers": {
"host": "6fvbxxxxxev4.lb.c4.gra.k8s.ovh.net",
"x-request-id": "7e323901xxxxxxxxxx98640c0a940b81",
"x-real-ip": "10.110.108.17",
"x-forwarded-for": "10.110.108.17",
"x-forwarded-host": "6fvbxxxxev4.lb.c4.gra.k8s.ovh.net",
Quelqu'un a une piste pour savoir comment débugger ça ?
+1 (même problème)
Eurêka ! (En fait non, voir message suivant)
Il doit y avoir une régression ou un problème de compatibilité avec la dernière version de ingress-nginx.
En utilisant la version précédente, ça marche pour moi :
En fait, je crois plutôt qu'une amélioration a été apportée à le version courante de ingress-nginx.
Maintenant le patch n'est plus nécessaire, il suffit de configurer le service de la sorte :
```
data:
use-proxy-protocol: "true"
```
Ce qui donne (en ayant remplacé le contenu du fichier `patch-ingress-configmap.yml` par le code ci-dessus) :
```
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml
kubectl -n ingress-nginx patch configmap nginx-configuration -p "$(cat patch-ingress-configmap.yml)"
kubectl apply -f ingress-nginx.yaml
kubectl apply -f echo.yaml
```
(Je conseille également de renommer le service `ingress-lb` en `ingress-nginx`, sinon ça remplit le log du pod. Je crois que le redémarrage du pod n'est pas non plus nécessaire après avoir patché la configmap.)