Powrót do bloga

Odkrywanie CloudSigma PaaS: Jak uzyskać dostęp do aplikacji Kubernetes za pomocą publicznego adresu IP

Odkrywanie CloudSigma PaaS: Jak uzyskać dostęp do aplikacji Kubernetes za pomocą publicznego adresu IP

CloudSigma PaaS pozwala użytkownikom na udostępnianie swoich aplikacji za pomocą publicznego adresu IP. Adres ten musi być przypisany do węzła ze środowiska klastra Kubernetes. Istnieją dwa sposoby na osiągnięcie tego w środowisku CloudSigma PaaS:

  • Jednym ze sposobów jest przypisanie publicznego adresu IP do dedykowanego load balancera.1-Public IP for Access to Kubernetes Application in Jelastic PaaS
  • Innym sposobem jest przypisanie publicznego adresu IP do węzła Worker z Kubernetes.

W tym samouczku przeprowadzimy Cię przez proces uzyskiwania dostępu do aplikacji Kubernetes przy użyciu jednego z tych podejść.

Konfiguracja dedykowanego load balancera w celu uzyskania dostępu do aplikacji Kubernetes

Najpierw dowiemy się, jak skonfigurować dedykowany load balancer w celu uzyskania dostępu do aplikacji:

  1. Przejdź do CloudSigma Marketplace aby zlokalizować i zainstalować klaster Kubernetes. Następnie wdroż swoją aplikację. Jako przykład wdrożymy Jakarta EE Cargo Tracker.
  2. Obok swojego klastra Kubernetes znajdź i kliknij Change Environment Topology. W oknie, które otworzy się na ekranie, dodaj węzeł Dedicated Load Balancer. Następnie przypisz do niego publiczny adres IP w ten sposób:

2-Public IP Jelastic PaaS

W naszym przykładzie użyliśmy load balancera NGINX. Dostępnych jest wiele innych load balancerów, w tym HAProxy, LS Web ADC, oraz Varnish. Możesz wybrać ten, który wolisz.

Po zakończeniu modyfikacji topologii zastosowane zmiany będą wyglądać następująco:

3-Public IP for Access to Kubernetes Application in Jelastic PaaS

4-Public IP for Access to Kubernetes Application in Jelastic PaaS

3. Następnym krokiem jest utworzenie rekordu A dla własnej domeny. Użyjesz tego samego publicznego adresu IP, którego użyłeś w poprzednich krokach. W tym przykładzie użyjemy cargo-tracker.cloudsigma.website:

5-Public IP for Access to Kubernetes Application in Jelastic PaaS

4. Teraz możemy przypisać naszą własną domenę do klastra K8s. Aby to zrobić, wyślemy żądanie wydania zaufanego Let’s Encrypt SSL certyfikatu:

  • Najejdź kursorem na Load Balancer i kliknij Add-Ons.
  • Znajdź i zainstaluj Let’s Encrypt Free SSL:

6-Public IP for Access in Jelastic PaaS-02

  • W konfiguracji wprowadź nazwę swojej własnej domeny, a następnie kliknij Install. W naszym przypadku nazwa domeny jest następująca:

7-Public IP for Access to Kubernetes Application in Jelastic PaaS-

Ostatecznie nasza aplikacja jest teraz dostępna pod własną domeną https://cargo-tracker.cloudsigma.website. Zaszyfrowaliśmy również ruch w naszej aplikacji za pomocą ważnego i zaufanego certyfikatu Let’s Encrypt SSL.

Uzyskiwanie dostępu do aplikacji przy użyciu publicznego adresu IP węzła Worker Kubernetes

Następnie przyjrzymy się alternatywnemu podejściu, które można zastosować, aby udostępnić aplikację poza klastrem Kubernetes. W zasadzie dowiemy się, jak przypisać publiczny adres IP do węzła worker w klastrze Kubernetes, aby aplikacja była bezpośrednio dostępna:

8-Public IP for Access to Kubernetes Application in Jelastic PaaS

Kontynuujmy z tym samym przykładem, który pokazaliśmy wcześniej. Użyjemy tego samego klastra, na którym wdrożyliśmy naszą aplikację Cargo Tracker. Oto jak postępować:

1. Kliknij Change Environment Topology. Dodaj publiczny adres IP do węzła worker:

9.1-Public IP for Access in Jelastic PaaS

2. Następnie utwórz rekord A dla swojej własnej domeny i skieruj go na adres IP, który właśnie dodałeś. Upewnij się, że używasz nazwy domeny innej niż ta użyta w poprzednim rozdziale. Na przykład użyjemy następującej nazwy domeny: cargo-tracker-worker.cloudsigma.website:

9.2-Public IP for Access to Kubernetes Application in Jelastic PaaS

3. Najedź kursorem na węzeł Control Plane lub Master i kliknij Add-Ons. Zlokalizuj i zainstaluj Certificate Manager. Powinno to zainstalować kontroler cert-manager wraz z kontrolerem ingress NGINX typu usługi LoadBalancer. Ten ostatni zawiera adres IP powiązany z Twoim węzłem worker. Będzie on obsługiwał zasoby klasy ingress „nginx-cert”:

10-Public IP for Access to Kubernetes Application in Jelastic PaaS-01

4. W podanym polu wprowadź preferowaną nazwę domeny i kliknij Apply:

11-Public IP for Access to Kubernetes Application in Jelastic PaaS

5. W momencie instalacji dodatek instaluje również aplikację testową o nazwie helloworld-cert. Możesz po prostu usunąć zasoby, z których korzysta, za pomocą tych poleceń:

Te polecenia należy wprowadzić i wykonać za pomocą SSH (SFTP) lub Web SSH Gate dla Control Plane lub Master Node. Najedź kursorem na węzeł i kliknij na Web SSH obok niego, aby uzyskać dostęp do bramy.

Inną opcją jest najechanie kursorem na Control Plane lub Master Node i kliknięcie na Config. Stąd przejdź do SFTP/SSH Gate i postępuj zgodnie z podanymi instrukcjami.

6. Aby zakończyć ruch SSL aplikacji i obsłużyć routing do usługi cargo-tracker, musimy utworzyć zasób ingress o nazwie cargo-tracker-worker. Załóżmy, że używamy cargo-tracker-worker-ingress.yaml. Możesz użyć edytora takiego jak vi aby utworzyć plik, a następnie wkleić następujący kod:

Następnie postępuj w następujący sposób:

7. Po utworzeniu tego ingressu, Certificate Manager automatycznie wyda certyfikat SSL Let’s Encrypt dla Twojej nowej nazwy domeny. Daj systemowi minutę lub dwie, zanim sprawdzisz, czy Twoja aplikacja jest dostępna pod nową niestandardową nazwą domeny, którą w naszym przypadku jest https://cargo-tracker-worker.cloudsigma.website w naszym przypadku.

I voila! Postępując zgodnie z tymi krokami, udostępniłeś swoją aplikację przy użyciu dwóch różnych podejść. W rezultacie zobaczysz dwa ingressy. W naszym przypadku są to:

  • cargo-tracker

Ten ingress obsługuje ruch aplikacji przychodzący przez publiczny adres IP Twojego dedykowanego load balancera.

  • cargo-tracker-worker

Ten ingress jest skonfigurowany do obsługi ruchu aplikacji, który napływa bezpośrednio z adresu IP przypisanego do węzła roboczego (worker node) K8s.

Oto jak będą się prezentować:

12-Public IP for Access in Jelastic PaaS

W zależności od wybranego rodzaju wdrożenia, w środowisku produkcyjnym będziesz potrzebować tylko jednego ingressu. CloudSigma PaaS daje swoim użytkownikom dostęp do wielu narzędzi do wykonywania równoważenia obciążenia w zależności od potrzeb ich aplikacji. Zachęcamy do przeczytania i dowiedzenia się więcej o równoważeniu obciążenia na platformie. Posiadamy również szczegółowe przewodniki na temat podstaw równoważenia obciążenia za pomocą takich narzędzi jak NGINX oraz HAProxy spośród innych dostępnych narzędzi.

Możesz wypróbować CloudSigma’s PaaS w ramach naszego 7-dniowego bezpłatnego okresu próbnego lub skontaktować się z nami, jeśli chcesz, abyśmy przekazali Ci więcej szczegółów i zaprezentowali platformę. 

Wypróbuj bezpłatnie przez 7 dni

author

Zhenya Mocheva

Autor · CloudSigma

Preslav Dobrev jest projektantem kreatywnym w CloudSigma, skupiającym się na spójnej tożsamości biznesowej przy wykorzystaniu tradycyjnych i innowacyjnych kanałów marketingowych. Biegle łączy wizję artystyczną ze strategicznym marketingiem, tworząc wywierające wpływ narracje marki.

Komentarze

Brak komentarzy. Bądź pierwszy.