с обычной ALB+ec2 реализации на EKS
выводя персентиль метрикой nginx_ingress_controller_request_duration_seconds_bucket
вижу что у всех абсолютно сервисов проблемы с латенси(как при нагрузках, так и когда её особо нет)
пробовал деплоиться как с alpine так и slim образах, пробовал отключить в конфигах всё что связанно с внешним резолвом у аппки(дабы исключить проблему связанную с ДНС куба), пробовал выключать лимиты на CPU - картина тупо одна и таже
подскажите куда еще можно копнуть? может kube-proxy тюнить как-то надо? на данный момент из того что делал с ним давно, до этих инцидентов - перевел с iptables на ipvs mode
nginx ingress controller имеет такие параметры, должно быть более чем достаточно:
disable-ipv6: "true"
disable-ipv6-dns: "true"
worker-processes: "auto"
max-worker-connections: "16384"
upstream-keepalive-connections: "200"
keep-alive-requests: "10000"
sysctl для его подов:
- name: net.core.somaxconn
value: "65535"
- name: net.ipv4.tcp_max_syn_backlog
value: "65535"
- name: net.ipv4.ip_local_port_range
value: "1024 65535"
- name: net.ipv4.tcp_tw_reuse
value: "1"
- name: net.ipv4.tcp_synack_retries
value: "2"
- name: net.ipv4.tcp_syn_retries
value: "2"
- name: net.ipv4.tcp_fin_timeout
value: "10"
есть трейсы при нагрузке?
к сожалению не внедрена технология, эпик уже запилен, без неё и правда сложно в такой момент
если я правильно понял слово - трейс)
а на обычной ALB+ec2 как метрика по времени запроса считается? Метрика из ALB?
жалобы ранее поступали со стороны бизнес метрик приложений которые формируются statsd и которые взаимодействуют с сервисами которые перенесены были в куб к сожалению в те времена не было у меня еще бордов с латенсями и прочими полезными метриками в кубе( просто чтоб понимать, сейчас приложение особо не нагружено, но в какие-то моменты тупо такие скачки происходят и вообще перманентно латенси около 60ms на одном поде, что очень много и странно
60ms? Это latency чего? То есь сейчас запросы за 60ms отрабатывают?
не понял что с чем сравнивается. nginx_ingress_controller_request_duration_seconds_bucket в кубе, с метриками из statsd? А в statsd метрика чего именно показана. Что замеряется?
если входящие то латенси мизерные(смотрел трейсы нжинкса в зипкине и в логах нжинкса сколько времени длился запрос и близко нет таких цифр как на графике), у меня такое подозрение что на отдаче запроса такое латенси происходит
сейчас сравниваю в целом состояние приложух в кубе, наблюдаю что персентиль ингрессов не малый есть метрики statsd у приложух, которые фиксируют латенси на коннекшн к эндоинтам других сервисов(некоторе из которых в кубе) и там вот наблюдается x2 минимум латенси
все равно не понял. Вот у тебя есть старая инфра ec2 + ALB, есть новая инфра в кубе. Ты говоришь, в кубе nginx_ingress_controller_request_duration_seconds_bucket большой в сравнении со старой инфрой. Но с какой метрикой в старой инфре ты это сравниваешь непонятно
Обсуждают сегодня