Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Tymczasowa awaria ponownego rozpoznawania nazw

Dzieje się tak, że ujawniasz swoją instancję Redis za pomocą NodePort. Kubernetes rezerwuje bardzo specyficzny zakres portów sieciowych o dużej liczbie dla NodePorts, aby uniknąć konfliktów z powszechnie używanymi portami, takimi jak 22 lub, w tym przypadku, 6379, jak Redis.

Po uruchomieniu kubectl get svc zwrócona usługa wskazuje, że Redis jest przekierowywany do hosta na porcie 32649 . Dlatego podczas próby połączenia z Redis powinieneś używać tego portu zamiast 6379. (Upewnij się również, że zapora sieciowa i topologia sieci są również poprawnie skonfigurowane).

Więc dokąd stąd pójdziemy? Cóż, trudno mi powiedzieć. Brakuje mi informacji, aby powiedzieć, skąd pochodzi połączenie klienta i gdzie działa klaster. W przypadku, gdy twój klient znajduje się w twoim klastrze (czyli innym podze), powinieneś rozważyć udostępnienie usługi ClusterIP zamiast usługi NodePort.

W przypadku, gdy Twój klient jest zewnętrzny w stosunku do Twojego klastra, radzę Ci zastanowić się, jak aprowizować typy usług LoadBalancer i zasoby Ingress w Kubernetes.

Umożliwi to rozkręcenie dedykowanych adresów IP. Z którego możesz obsługiwać swoją aplikację na dowolnym porcie, nazwie hosta lub podkatalogu bez żadnych problemów. Aby to zrobić, musisz jednak mieć zainstalowany zarówno LoadBalancer, jak i kontroler Ingress, ponieważ serwer API Kubernetes jest dostarczany z żadnym z nich.

Jeśli korzystasz z dostawcy chmury, prawdopodobnie masz już kontroler LoadBalancer. Po prostu poproś o jeden, a następnie kubectl get svc i zobacz, czy kiedykolwiek wyjdzie ze stanu oczekiwania. Jeśli pracujesz na gołym metalu, możesz użyć fizycznego równoważenia obciążenia, takiego jak F5 Big IP. Możesz też użyć kontrolera Virtual Load Balancer, takiego jak MetalLB.

Dwa popularne kontrolery Ingress to NGINX i Istio. Kontroler NGINX zajmuje się wyłącznie zarządzaniem dostępem, podczas gdy Istio zajmuje się tym, a także wysoce konfigurowalną siecią i zwiększonym bezpieczeństwem.

Daj mi znać, jeśli potrzebujesz dodatkowych informacji lub pomocy w odpowiedzi na to pytanie. Zawsze chętnie Ci pomożemy!



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Przechowywanie właściwości obiektu w redis

  2. Jak usunąć klucze pasujące do wzorca w Redis

  3. Rails Redis ustawia maxmemory i maxmemory-policy

  4. Najszybszy sposób na przechowywanie tablicy numpy w redis

  5. Co to jest rozproszona blokada Atomic w sterownikach pamięci podręcznych?