Megosztás a következőn keresztül:


AKS-szolgáltatás elérhetővé tétele HTTP-en vagy HTTPS-en keresztül az Application Gateway használatával

Ezek az oktatóanyagok bemutatják a Kubernetes bejövő erőforrásainak használatát, hogy egy példa Kubernetes-szolgáltatást tegyenek elérhetővé a Azure-alkalmazás-átjárón keresztül HTTP-en vagy HTTPS-en keresztül.

Előfeltételek

  • Telepített ingress-azure helm-diagram.
    • Zöldmezős üzembe helyezés: Ha az alapoktól indul, tekintse meg ezeket a telepítési utasításokat, amelyek ismertetik az AKS-fürtök Application Gatewayben való üzembe helyezésének és az Application Gateway bejövőforgalom-vezérlőjének az AKS-fürtre való telepítésének lépéseit.
    • Barnamezős üzembe helyezés: Ha már rendelkezik AKS-fürtövel és Application Gatewayrel, tekintse meg ezeket az utasításokat az Application Gateway bejövőforgalom-vezérlőjének az AKS-fürtre való telepítéséhez.
  • Ha HTTPS-t szeretne használni ezen az alkalmazásban, szüksége van egy x509-tanúsítványra és annak titkos kulcsára.

Alkalmazás üzembe helyezése guestbook

A vendégkönyv-alkalmazás egy canonical Kubernetes-alkalmazás, amely egy webes felhasználói felület előtérrendszerét, egy háttérrendszert és egy Redis-adatbázist alkot. Alapértelmezés szerint guestbook egy porton 80névvel frontend ellátott szolgáltatáson keresztül teszi elérhetővé az alkalmazását. Kubernetes bejövő erőforrás nélkül a szolgáltatás nem érhető el az AKS-fürtön kívülről. Az alkalmazást használjuk, és beállítjuk a bejövő erőforrásokat az alkalmazás HTTP- és HTTPS-kapcsolaton keresztüli eléréséhez.

A vendégkönyv-alkalmazás üzembe helyezéséhez kövesse az alábbi utasításokat.

  1. Letöltés guestbook-all-in-one.yaml innen
  2. Üzembe helyezés guestbook-all-in-one.yaml az AKS-fürtben
kubectl apply -f guestbook-all-in-one.yaml

Most az guestbook alkalmazás üzembe lett helyezve.

Szolgáltatások http-en keresztüli elérhetővé tétele

A vendégkönyv-alkalmazás felfedéséhez használja a következő bejövő erőforrást:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: guestbook
  annotations:
    kubernetes.io/ingress.class: azure/application-gateway
spec:
  rules:
  - http:
      paths:
      - backend:
          serviceName: frontend
          servicePort: 80

Ez a bejövő forgalom az frontend üzembe helyezés szolgáltatását teszi elérhetővé az guestbook-all-in-one Application Gateway alapértelmezett háttérrendszereként.

Mentse a fenti bejövő erőforrást a következőként ing-guestbook.yaml: .

  1. Üzembe helyezés ing-guestbook.yaml a következő futtatásával:

    kubectl apply -f ing-guestbook.yaml
    
  2. Ellenőrizze a bejövőforgalom-vezérlő naplójában az üzembe helyezés állapotát.

Most már elérhetőnek kell lennie az guestbook alkalmazásnak. A rendelkezésre állás ellenőrzéséhez látogasson el az Application Gateway nyilvános címére.

Szolgáltatások elérhetővéítása HTTPS-en keresztül

Megadott gazdagépnév nélkül

A gazdagépnév megadása nélkül a vendégkönyv szolgáltatás az application gatewayre mutató összes gazdagépnéven elérhető.

  1. A bejövő forgalom üzembe helyezése előtt létre kell hoznia egy kubernetes-titkos kulcsot a tanúsítvány és a titkos kulcs üzemeltetéséhez. Kubernetes-titkos kód létrehozásához futtassa a

    kubectl create secret tls <guestbook-secret-name> --key <path-to-key> --cert <path-to-cert>
    
  2. Adja meg a következő bejövő forgalmat. A bejövő forgalomban adja meg a titkos kód nevét a secretName szakaszban.

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: guestbook
      annotations:
        kubernetes.io/ingress.class: azure/application-gateway
    spec:
      tls:
        - secretName: <guestbook-secret-name>
      rules:
      - http:
          paths:
          - backend:
              serviceName: frontend
              servicePort: 80
    

    Feljegyzés

    Cserélje le <guestbook-secret-name> a fenti bejövő erőforrást a titkos kód nevére. Tárolja a fenti bejövő erőforrást egy fájlnévben ing-guestbook-tls.yaml.

  3. Az ing-guestbook-tls.yaml üzembe helyezése a következő futtatásával:

    kubectl apply -f ing-guestbook-tls.yaml
    
  4. Ellenőrizze a bejövőforgalom-vezérlő naplójában az üzembe helyezés állapotát.

Az guestbook alkalmazás mostantól HTTP-n és HTTPS-en is elérhető.

Megadott gazdagépnévvel

A bejövő forgalom állomásnevét is megadhatja a multiplex TLS-konfigurációkhoz és -szolgáltatásokhoz. A gazdagépnév megadásával a vendégkönyv szolgáltatás csak a megadott gazdagépen érhető el.

  1. Adja meg a következő bejövő forgalmat. A bejövő forgalomban adja meg a titkos kód nevét a secretName szakaszban, és ennek megfelelően cserélje le a hosts szakasz állomásnevét.

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: guestbook
      annotations:
        kubernetes.io/ingress.class: azure/application-gateway
    spec:
      tls:
        - hosts:
          - <guestbook.contoso.com>
          secretName: <guestbook-secret-name>
      rules:
      - host: <guestbook.contoso.com>
        http:
          paths:
          - backend:
              serviceName: frontend
              servicePort: 80
    
  2. Üzembe helyezés ing-guestbook-tls-sni.yaml futtatással

    kubectl apply -f ing-guestbook-tls-sni.yaml
    
  3. Ellenőrizze a bejövőforgalom-vezérlő naplójában az üzembe helyezés állapotát.

Most az guestbook alkalmazás csak a megadott gazdagépen érhető el HTTP-n és HTTPS-en is (<guestbook.contoso.com> ebben a példában).

Integráció más szolgáltatásokkal

A következő bejövő forgalom lehetővé teszi, hogy más útvonalakat is hozzáadjon ehhez a bejövő forgalomhoz, és átirányítsa ezeket az útvonalakat más szolgáltatásokhoz:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: guestbook
  annotations:
    kubernetes.io/ingress.class: azure/application-gateway
spec:
  rules:
  - http:
      paths:
      - path: </other/*>
        backend:
          serviceName: <other-service>
          servicePort: 80
       - backend:
          serviceName: frontend
          servicePort: 80