‫Jeśli zastanawiasz się nad wdrożeniami i usługami
‫na nich świadczonymi, być może zdałeś
‫sobie sprawę, że do tej pory nie rozmawialiśmy o OSI
‫Layer 7,
‫routingu nazw HTTP, routingu DNS ani o tym, jak
‫chcesz to nazwać. Zasadniczo pomysł, że jeśli
‫jesteś na serwerze z wieloma witrynami, które muszą korzystać z tych
‫samych portów, dobrze. Port 80 i 443,
‫wtedy potrzebujesz czegoś, co prowadzi do różnych kontenerów,
‫w oparciu o coś innego niż tylko port.
‫To w Kubernetes jest znane jako Ingress.
‫Jest to konkretny zasób i niekoniecznie jest to
‫moduł równoważenia obciążenia lub cokolwiek, co można
‫przypisać do usługi.
‫Technicznie jest to coś innego, co
‫naprawdę koncentruje się na typowym problemie większości klastrów, które
‫chcą uruchomić wiele różnych stron internetowych
‫lub różnych kontenerów dla różnych adresów
‫URL i nazw. Właśnie na tym skupia
‫się cały projekt - projekt Ingress.
‫Domyślnie nie jest instalowany w
‫klastrze Kubernetes, ale istnieją dla niego oficjalne funkcje.
‫W ten sposób Kubernetes nie wynalazł
‫serwera proxy HTTP.
‫Dostarczają tylko mechanizmy dla
‫innych zewnętrznych serwerów proxy do korzystania
‫z funkcji, aby zainstalować wejście w klastrze.
‫Następnie możesz powiedzieć aplikacjom, na podstawie której używasz,
‫jak korzystać z tego serwera proxy, aby dostać się
‫do kontenera.
‫Dobrym przykładem może być witryna A. com i masz stronę internetową
‫B. com.
‫Będą to dwa różne wdrożenia.
‫Musisz jakoś uzyskać te same porty na wszystkich swoich węzłach
‫... jego 80443.
‫Musisz przenieść różne strony internetowe do
‫różnych kontenerów. Po to jest Ingress.
‫W Swarm nie mieliśmy tej funkcji od razu po wyjęciu z pudełka.
‫Tak więc naprawdę musiałeś wdrożyć niektóre proxy jako
‫kontener i tak naprawdę nie miało to nic specjalnego
‫z tym kontenerem. Nie rozumiał, czym była Ingress.
‫Ale Kubernetes ma.
‫Gdy spojrzysz na dokumentację, domyślnym przykładem, o
‫którym wszyscy mówią, jest Nginx.
‫Używaliśmy Nginx przez ten kurs.
‫Ten prawdopodobnie powinien być tym, który powinieneś najpierw wypróbować.
‫Wolę coś innego.
‫Właściwie to lubię Traefika, a zobaczysz to w niektórych moich
‫przykładach, szczególnie na moim kursie roju.
‫Kiedy widzisz, jak mówię na konferencjach, często
‫mówię o Traefik, ponieważ był to serwer proxy utworzony
‫w świecie kontenerów.
‫Początkowo chodziło o pomysł, że wszystkie te efemeryczne
‫kontenery się obracają i zamykają, i musimy przeprogramować
‫serwer proxy, i musimy martwić się o
‫SSL i wszystkie inne rzeczy, których potrzebujemy dla
‫wielu stron internetowych w klastrze kontenerów.
‫Zaprojektowali więc ten nowy produkt, który teraz spawnuje
‫inne produkty. Teraz stoi za tym
‫cała firma i umowy wsparcia. Możesz
‫to sprawdzić. Jest wielu dostawców, którzy robią
‫te wtyczki dla Kubernetes, w tym głównych, właśnie.
‫HAProxy, F5 i nowi
‫gracze, tacy jak Envoy i Istio, również obsługują
‫typy wejściowe. Powiem, że, technicznie rzecz biorąc, sama funkcja
‫wejścia jest wciąż w wersji beta na 1. 15.
‫Każdy z nich będzie miał własną implementację w zależności
‫od tego, który wybierzesz.
‫F5 to zewnętrzny sprzętowy moduł równoważenia obciążenia, który jest naprawdę
‫powszechny w przedsiębiorstwie.
‫Oczywiście kontroler Ingress pomoże kontrolować
‫ten zewnętrzny zasób z wnętrza Kubernetes.
‫Chodzi o to, że
‫gdy twórcy aplikacji piszą swoje YAML
‫z ludźmi DevOps, a może z
‫samym zespołem Ops, są w stanie wstawić adnotacje
‫do swojego YAML, które są potrzebne do wejścia kontroler,
‫aby dowiedzieć się, co z nimi zrobić.
‫Zasadniczo, jak ich trasować?
‫Jakie są właściwe ścieżki? Gdzie ja to biorę?
‫Z jakich portów korzystam? Czy biorę za ciebie
‫SSL? Czy dostaję certyfikaty? Czy
‫dostarczysz mi trochę? Wszystkie te sprawy są załatwione.
‫Po pierwsze, sugeruję zajrzeć do zasobów.
‫Może po prostu wypróbuj Nginx domyślnie.
‫Zdecydowanie, jeśli nie masz zdania, wypróbuj Traefik,
‫ponieważ jest łatwy w użyciu i ma wiele funkcji,
‫w tym Let's Encrypt, aby automatycznie uzyskać certyfikaty dla ciebie i twoich
‫stron internetowych od razu po wyjęciu z pudełka.
‫Jeśli znasz swoje własne wymagania sprzętowe lub
‫programowe dotyczące tego, co musisz zrobić
‫z Ingress, w dokumentacji
‫znajdziesz listę wszystkich dostępnych opcji Ingress.