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.
Tipp.
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 80
né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.
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
: .
Üzembe helyezés
ing-guestbook.yaml
a következő futtatásával:kubectl apply -f ing-guestbook.yaml
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ő.
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>
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évbening-guestbook-tls.yaml
.Az ing-guestbook-tls.yaml üzembe helyezése a következő futtatásával:
kubectl apply -f ing-guestbook-tls.yaml
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.
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 ahosts
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
Üzembe helyezés
ing-guestbook-tls-sni.yaml
futtatássalkubectl apply -f ing-guestbook-tls-sni.yaml
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