Това, което се случва, е, че излагате вашия Redis екземпляр с NodePort. Kubernetes запазва много специфичен набор от мрежови портове с голям номер за NodePorts, за да избегне конфликт с често използвани портове като 22 или в този случай 6379 като Redis.
Когато стартирате kubectl get svc
върнатата услуга показва, че Redis се пренасочва към хоста на порт 32649
. Следователно, когато извършвате опита си за свързване срещу Redis, трябва да използвате този порт вместо 6379. (Също така се уверете, че вашата защитна стена и топология на мрежата също са правилно конфигурирани).
И така, накъде да тръгнем от тук? Е, трудно ми е да кажа. Липсва ми информация, за да кажа откъде произхожда вашата клиентска връзка и къде работи вашият клъстер. В случай, че вашият клиент е във вашия клъстер (известен още като друг Pod), трябва да разгледате предоставянето на ClusterIP услуга вместо услуга NodePort.
В случай, че вашият клиент е външен за вашия клъстер, моят съвет към вас е да разгледате как да предоставите типове услуги на LoadBalancer и ресурси за входяща информация в Kubernetes.
Това ще ви позволи да завъртите специални IP адреси. От който можете да обслужвате приложението си на всеки порт, име на хост или поддиректория без никакви проблеми. За да направите това обаче, ще трябва да имате инсталиран както LoadBalancer, така и Ingress Controller, тъй като Kubernetes API сървърът не се доставя с нито един от тях.
Ако използвате облачен доставчик, вероятно вече имате контролер на LoadBalancer. Просто поискайте такъв и след това kubectl get svc
и вижте дали някога се придвижва от състоянието на чакане. Ако работите на гол метал, можете да използвате балансьор на физическо натоварване като F5 Big IP. Или можете да използвате контролер Virtual Load Balancer като MetalLB.
Два популярни Ingress контролера са NGINX и Istio. Контролерът NGINX се занимава изключително с управление на влизане, докато Istio се занимава с това, както и с високо конфигурируема мрежа и подобрена сигурност.
Кажете ми, ако имате нужда от допълнителна информация или помощ по този въпрос. Винаги се радвам да помогнем!