CloudSigma PaaS umožňuje uživatelům zpřístupnit své aplikace pomocí veřejné IP adresy. Tato adresa musí být připojena k uzlu z Kubernetes cluster prostředí. V prostředí CloudSigma PaaS toho lze dosáhnout dvěma způsoby:
- Jedním ze způsobů je připojení veřejné IP adresy k vyhrazenému load balanceru.

- Druhým způsobem je připojení veřejné IP adresy k Worker uzlu z Kubernetes.
V tomto návodu vás provedeme tím, jak získat přístup k aplikaci v Kubernetes pomocí kteréhokoli z těchto přístupů.
Nastavení vyhrazeného load balanceru pro přístup k aplikaci v Kubernetes
Nejprve se naučíme, jak nastavit dedicated load balancer pro přístup k aplikaci:
- Přejděte do CloudSigma Marketplace vyhledejte a nainstalujte Kubernetes cluster. Poté nasaďte svou aplikaci. Jako příklad budeme nasazovat Jakarta EE Cargo Tracker.
- Vedle vašeho Kubernetes clusteru najděte a klikněte na Change Environment Topology. V okně, které se otevře na obrazovce, přidejte uzel Dedicated Load Balancer. Poté k němu připojte veřejnou IP adresu takto:

V našem příkladu jsme použili NGINX uzel load balanceru. K dispozici je několik dalších load balancerů, včetně HAProxy, LS Web ADC, a Varnish. Můžete si vybrat kterýkoli z nich, kterému dáváte přednost.
Jakmile dokončíte úpravu topologie, použité změny budou vypadat takto:


3. Dalším krokem je vytvoření A záznamu pro vlastní doménu. Budete používat stejnou veřejnou IP adresu, kterou jste použili v předchozích krocích. V tomto příkladu budeme používat cargo-tracker.cloudsigma.website:

4. Nyní můžeme k našemu K8s clusteru připojit vlastní doménu. Za tímto účelem odešleme žádost o vystavení důvěryhodného Let’s Encrypt SSL certifikátu:
- Najeďte myší na Load Balancer a klikněte na Add-Ons.
- Najděte a nainstalujte Let’s Encrypt Free SSL:

- V konfiguraci zadejte název své vlastní domény a poté klikněte na Install. V našem případě je název domény následující:

Nakonec jsme zprovoznili naši aplikaci, ke které máme přístup pomocí vlastní domény https://cargo-tracker.cloudsigma.website. Také jsme zašifrovali provoz naší aplikace pomocí platného a důvěryhodného SSL certifikátu Let’s Encrypt.
Získání přístupu k aplikaci pomocí veřejné IP adresy Worker uzlu Kubernetes
Dále se podíváme na alternativní přístup, který můžete zvolit pro zpřístupnění aplikace mimo Kubernetes cluster. V zásadě se naučíme, jak připojit veřejnou IP adresu k worker uzlu v Kubernetes clusteru, aby byla aplikace přímo přístupná:
Pokračujme se stejným příkladem, který jsme vám ukázali dříve. Budeme používat stejný cluster, na který jsme nasadili naši aplikaci Cargo Tracker. Postupujte následovně:
1. Klikněte na Change Environment Topology. Přidejte veřejnou IP adresu k worker uzlu:

2. Dále vytvořte A záznam pro svou vlastní doménu a namapujte jej na IP adresu, kterou jste právě přidali. Ujistěte se, že používáte jiný název domény než ten, který byl použit v předchozí kapitole. Použijeme například následující název domény: cargo-tracker-worker.cloudsigma.website:

3. Najeďte myší na Control Plane nebo Master uzel a klikněte na Add-Ons. Vyhledejte a nainstalujte Certificate Manager. Tím by se měl nainstalovat cert-manager controller spolu s NGINX ingress controllerem typu služby LoadBalancer. Ten obsahuje IP adresu, která je přidružena k vašemu worker uzlu. Bude obsluhovat prostředky třídy ingress „nginx-cert“:

4. Do příslušného pole zadejte preferovaný název domény a klikněte na Apply:

5. V době instalace doplněk také nainstaluje testovací aplikaci s názvem helloworld-cert. Prostředky, které využívá, můžete jednoduše smazat pomocí těchto příkazů:
|
1 2 3 4 5 |
$ kubectl delete deploy hello-cert-manager $ kubectl delete svc hello-cert-manager $ kubectl delete ing helloworld-cert |
Tyto příkazy by měly být zadány a spuštěny pomocí SSH (SFTP) nebo Web SSH Gate pro Control Plane nebo Master Node. Najeďte myší na uzel a klikněte na Web SSH vedle něj pro přístup k bráně.
Druhou možností je najet myší na Control Plane nebo Master Node a kliknout na Config. Odtud přejděte na SFTP/SSH Gate a postupujte podle uvedených pokynů.
6. Abychom ukončili SSL provoz aplikace a zajistili směrování do služby cargo-tracker, musíme vytvořit prostředek ingress s názvem cargo-tracker-worker. Řekněme, že používáme cargo-tracker-worker-ingress.yaml. K vytvoření souboru můžete použít editor jako vi a poté vložit následující kód:
|
1 |
vi cargo-tracker-worker-ingress.yaml |
Poté postupujte následovně:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: cargo-tracker-worker namespace: default annotations: kubernetes.io/ingress.class: nginx-cert cert-manager.io/cluster-issuer: "letsencrypt-prod" kubernetes.io/tls-acme: "true" nginx.ingress.kubernetes.io/affinity: "cookie" nginx.ingress.kubernetes.io/affinity-mode: "persistent" nginx.ingress.kubernetes.io/session-cookie-expires: "172800" nginx.ingress.kubernetes.io/session-cookie-max-age: "172800" spec: tls: - hosts: - cargo-tracker-worker.cloudsigma.website secretName: external-domain-tls rules: - host: cargo-tracker-worker.cloudsigma.website http: paths: - path: / pathType: ImplementationSpecific backend: service: name: cargo-tracker port: number: 80 |
|
1 |
$ kubectl apply -f cargo-tracker-worker-ingress.yaml |
7. Jakmile tento ingress vytvoříte, Certificate Manager automaticky vystaví SSL certifikát Let’s Encrypt pro váš nový doménový název. Dejte systému minutu nebo dvě, než zkontrolujete, zda je vaše aplikace dostupná na novém vlastním doménovém názvu, což je https://cargo-tracker-worker.cloudsigma.website v našem případě.
A voilà! Podle těchto kroků jste svou aplikaci zpřístupnili pomocí dvou různých přístupů. Výsledkem bude, že uvidíte dva ingressy. V našem případě to jsou:
- cargo-tracker
Tento ingress obsluhuje provoz aplikace, který přichází přes veřejnou IP adresu vašeho vyhrazeného nástroje pro vyrovnávání zátěže (load balanceru).
- cargo-tracker-worker
Tento ingress je nastaven tak, aby obsluhoval provoz aplikace, který přichází přímo z IP adresy připojené k worker uzlu K8s.
Takto se zobrazí:

V závislosti na tom, pro jaký druh implementace se rozhodnete, budete v produkci potřebovat pouze jeden ingress. CloudSigma PaaS poskytuje svým uživatelům přístup k řadě nástrojů pro provádění vyvažování zátěže podle potřeby jejich aplikací. Neváhejte si přečíst a dozvědět se více o vyvažování zátěže na této platformě. Máme také podrobné návody o základech vyvažování zátěže s nástroji jako NGINX a HAProxy a dalšími dostupnými nástroji.
Můžete vyzkoušet CloudSigma’s PaaS s naší 7denní bezplatnou zkušební verzí nebo nás kontaktovat, pokud chcete, abychom vám poskytli více podrobností a ukázku platformy.

Komentáře
Zatím žádné komentáře. Buďte první.