липкие сессии в nginx-ingress-controller не работают - PullRequest
0 голосов
/ 27 августа 2018

Я погружаюсь в проблему с существующим кластером kubernetes, не EKS, настроенным на AWS. Мы пытаемся включить поддержку липких сессий, и я просто не могу заставить ее работать. Я следовал за документами и не повезло. Вот где я сейчас нахожусь:

Я внес эти изменения в наши шаблоны helm (как с префиксом nginx, так и без него в начале аннотации). Я не понял, как проверить, какую версию nginx-ingress-controller мы используем, поэтому я попробовал оба, и я знаю, что аннотация изменилась еще в 17 декабря.

annotations:
    kubernetes.io/ingress.class:                nginx
    ingress.kubernetes.io/affinity: "cookie"
    ingress.kubernetes.io/session-cookie-name: "route"
    ingress.kubernetes.io/session-cookie-hash: "sha1"

Развернуты изменения, и когда я описываю вход, я вижу, что он был развернут путем описания входа (опять же, с префиксом nginx и без него). Я действительно не думаю, что эта часть правильна, потому что примеры, которые я видел, - то, что все до / для липких аннотаций не должно быть там, но здесь они есть.

Annotations:
    ingress.kubernetes.io/affinity:             cookie
    ingress.kubernetes.io/session-cookie-hash:  sha1
    ingress.kubernetes.io/session-cookie-name:  route
    kubernetes.io/ingress.class:                nginx

Но когда я делаю запрос curl, я вижу, что cookie не будет установлен:

curl -I  https://test.com/hello
HTTP/2 200 
server: nginx/1.11.3
date: Mon, 27 Aug 2018 20:26:37 GMT
content-type: application/json; charset=utf-8
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
etag: W/"93a23971a914e5eacbf0a8d25154cda3"
cache-control: max-age=0, private, must-revalidate
x-request-id: fc91644f-a4b6-475b-9fb5-ccabe0551038
x-runtime: 0.006894
strict-transport-security: max-age=15724800; includeSubDomains; preload
vary: Origin

Опять же, я протестировал с и без nginx. префикс для липких аннотаций, и никаких изменений не произошло, поэтому я должен что-то упустить.

1 Ответ

0 голосов
/ 19 июля 2019

Нашел мой старый вопрос, который остался без ответа. Моя проблема была в том, что мне нужно было указать полную аннотацию. Требуется префикс nginx

nginx.ingress.kubernetes.io/affinity:             cookie
nginx.ingress.kubernetes.io/session-cookie-hash:  sha1
nginx.ingress.kubernetes.io/session-cookie-name:  route
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...