Wymagania wstępne integracji Kubernetes

Wyświetlasz dokumentację Apigee Edge.
Przejdź do dokumentacji Apigee X.
info

W tym artykule opisujemy czynności, które musisz wykonać, zanim zainstalujesz Edge Microgateway jako usługę w klastrze Kubernetes.

W tym artykule omówimy:

  • minimalne wymagania dotyczące klastra Kubernetes,
  • sposób instalowania i konfigurowania Edge Microgateway,
  • sposób instalowania podstawowej konfiguracji Edge Microgateway w klastrze Kubernetes.

Wymagania dotyczące klastra Kubernetes

Twój klaster Kubernetes wymaga:

  • Kubernetes w wersji 1.9 lub nowszej.
  • Interfejs wiersza poleceń Kubernetes kubectl w wersji 1.9 lub nowszej.
  • Klaster z co najmniej 3 węzłami, z których każdy ma 2 vCPU.

Przykład: tworzenie klastra Kubernetes w Google Kubernetes Engine (GKE)

Konfigurowanie maszyny administracyjnej Kubernetes

Maszyna administracyjna Kubernetes to maszyna lokalna, której używasz do uruchamiania poleceń w klastrze Kubernetes. Zwykle jest to komputer stacjonarny, który ma dostęp do maszyn wirtualnych Kubernetes.

Na maszynie administracyjnej Kubernetes musisz zainstalować te narzędzia:

  • Zainstaluj interfejs wiersza poleceń kubectl w wersji 1.9 lub nowszej.

  • (Tylko GKE) Jeśli używasz Kubernetes w GKE, zainstaluj gcloud.

Tworzenie klastra Kubernetes w GKE

  1. Zaloguj się w panelu Google Kubernetes Engine (GKE) w Google Cloud Platform (GCP).
  2. Kliknij Utwórz klaster.
  3. Wybierz Klaster standardowy.
  4. Wpisz nazwę klastra.
  5. Wybierz strefę.
  6. Wybierz Cluster Version 1.9.7-gke-*. Na przykład 1.9.7-gke.6.
  7. Wybierz rozmiar 3 węzłów.
  8. Wybierz 2 vCPU z 7,5 GB pamięci.
  9. Kliknij Utwórz.

    Ten zrzut ekranu przedstawia panel GKE wypełniony zgodnie z opisem w poprzednich krokach:

    Panel GKE

Pobieranie danych logowania do klastra

  1. Ustaw nazwę projektu GKE:

    gcloud config set project projectName
  2. Ustaw strefę projektu GKE:

    gcloud config set compute/zone zoneName
  3. Pobierz dane logowania do kontenera gcloud:

    gcloud container clusters get-credentials cluster-name --zone zone --project project-name

    gdzie:

    • cluster-name to nazwa utworzonego klastra Kubernetes.
    • zone to strefa, w której znajduje się klaster.
    • project-name to nazwa projektu GCP.

    Na przykład:

    gcloud container clusters get-credentials edgemicrogateway-cluster --zone us-central1-a --project edgemicro-project
  4. Wykonaj to polecenie dokładnie tak, jak pokazano. Polecenie przyznaje bieżącemu użytkownikowi uprawnienia administratora klastra. Uprawnienia administratora są wymagane do utworzenia niezbędnych reguł RBAC dla usługi Edge Microgateway:

    kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
    

Instalowanie Edge Microgateway dla Kubernetes

  1. Pobierz Edge Microgateway dla Kubernetes. Jeśli używasz komputera z systemem MacOS lub Linux, możesz pobrać najnowszą wersję lub konkretną wersję, podając jej nazwę.

    Aby pobrać najnowszą wersję:

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -

    Aby pobrać konkretną wersję według numeru wersji. Pamiętaj, że numer wersji musi zaczynać się od litery „v”. Na przykład: v3.0.2

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s  version

    Na przykład:

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s v3.0.2
  2. Zmień katalog na katalog instalacyjny microgateway_Version_OS_ARCH. Na przykład:

    cd microgateway_2.5.26_Darwin_x86_64
  3. Sprawdź katalog instalacyjny:

    • /install/kubernetes – pliki konfiguracji .yaml do wdrożenia w Kubernetes.
    • /samples – przykładowe aplikacje do testowania instalacji.
    • /bin – plik wykonywalny edgemicroctl. Polecenie edgemicroctl wstrzykuje Edge Microgateway do Kubernetes.
  4. Dodaj klienta edgemicroctl do PATH. Na przykład w systemie MacOS lub Linux uruchom to polecenie:

    export PATH=$PWD/bin:$PATH
  5. Zastosuj podstawową konfigurację Edge Microgateway do klastra Kubernetes. To polecenie tworzy przestrzeń nazw edgemicro-system i role klastra.

    kubectl apply -f install/kubernetes/edgemicro.yaml
  6. Zainstaluj kontroler Ingress NGINX w klastrze. Upewnij się, że nie jest uruchomiony żaden inny kontroler Nginx. Możesz to sprawdzić, uruchamiając polecenie kubectl get pods.

    kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml

Sprawdzanie instalacji

  1. Aby sprawdzić, czy kontroler Ingress został uruchomiony, uruchom to polecenie:

    kubectl get pods --all-namespaces -l app=edgemicro-ingress --watch

    Jak pokazują te przykładowe dane wyjściowe, uruchomienie procesów trwa minutę lub 2. Zanim STATUS zmieni się na Running, zwykle występuje kilka cykli błędów i ponownych uruchomień.

    NAMESPACE          NAME                                            READY     STATUS             RESTARTS   AGE
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   1          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Error              2          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   2          40s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Running            3          1m
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running            3          1m
    
  2. Gdy Ingress jest uruchomiony, możesz anulować powyższe polecenie, naciskając Ctrl+C.

  3. Uruchom to polecenie, aby sprawdzić, czy usługi Kubernetes są wdrożone. Powinny się wyświetlić dane wyjściowe podobne do tych:

    kubectl get svc -n edgemicro-system
    

    Przykładowe dane wyjściowe:

    NAME                        TYPE           CLUSTER-IP     EXTERNAL-IP    PORT(S)                     AGE
    default-http-backend        ClusterIP      10.19.255.106  <none>         80/TCP                       2h
    edgemicro-ingress           LoadBalancer   10.19.247.156  35.224.24.13   80:30176/TCP,443:32325/TCP   2h
    
  4. Sprawdź, czy wszystkie pody są uruchomione:

    kubectl get pods -n edgemicro-system
    

    Przykładowe dane wyjściowe:

    NAME                                            READY     STATUS    RESTARTS   AGE
    default-http-backend-55c6c69b88-2lvtw           1/1       Running   0          4m
    edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running   3          4m
    

Instalowanie Edge Microgateway

  1. Musisz mieć zainstalowaną Edge Microgateway w wersji 2.5.26 lub nowszej. Możesz to sprawdzić, wpisując:

    edgemicro --version
  2. Jeśli nie masz zainstalowanej Edge Microgateway w wersji 2.5.26 lub nowszej, uruchom skrypt instalacyjny:

    npm install edgemicro -g
  3. Jeśli instalujesz Edge Microgateway po raz pierwszy lub ją uaktualniasz, uruchom to polecenie:

    edgemicro init

    Jeśli potrzebujesz dodatkowej pomocy, zapoznaj się z artykułem Instalowanie Edge Microgateway.

Następny krok

Możesz teraz wdrożyć Edge Microgateway w Kubernetes.