Hinweis:

Mit Cilium Networking-Services in Oracle Cloud Infrastructure Container Engine for Kubernetes bereitstellen

Einführung

Wenn wir ein neues Kubernetes-Cluster mit Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE) bereitstellen, ist das installierte Standard-CNI-(Container Network Interface-)Plug-in das OCI-VCN-native CNI-Plug-in. Mit Cloud Native Computing können Sie flexibel Ihre Methode zur Bereitstellung von Netzwerk- (Sicherheits-)Diensten für Ihre Containerplattform auswählen, indem Sie einfach ein anderes CNI-Plugin auswählen. In diesem Tutorial werden wir ein neues Kubernetes-Cluster mit OKE mit dem Flannel CNI-Plug-in bereitstellen und dieses in das Cilium CNI-Plug-in ändern. Cilium bietet im Vergleich zum OCI-VCN-nativen CNI-Plug-in und Flannel andere Netzwerk-(Sicherheits-)Features.

image

image

Ziele

Aufgabe 1: Kubernetes-Cluster mit OKE bereitstellen

Weitere Informationen zu den verschiedenen OKE-Deployment-Modellen finden Sie unter Beispielkonfigurationen für Netzwerkressourcen.

Beispiele für OKE-Deployment-Modelle:

In diesem Tutorial wählen Sie das Deployment-Modell Beispiel 1 aus. Hier wurde bereits erläutert, wie Sie Beispiel 3 bereitstellen: Neues Kubernetes-Cluster erstellen und die Komponenten prüfen.

Aufgabe 2: Cilium als CNI-Plug-in auf dem bereitgestellten OKE-Kubernetes-Cluster installieren

Aufgabe 3: Beispielwebanwendung und -service bereitstellen

Aufgabe 4: Kubernetes-Services vom Typ NetworkPolicy konfigurieren

Einer der Netzwerksicherheitsdienste, die das Cilium CNI-Plug-in anbietet, ist der Service vom Typ NetworkPolicy. Dies ist eine Möglichkeit, die Konnektivität zwischen Pods zu steuern, indem die Konnektivität zwischen zwei Pods verweigert wird.

Aufgabe 5: Beispielwebanwendung und -service entfernen

Aufgabe 6: Beispielanwendung bereitstellen und Kubernetes-Services des Typs LoadBalancer konfigurieren

Wir haben den Service NetworkPolicy mit Cilium getestet. Testen Sie auch den Service LoadBalancer mit Cilium.

Aufgabe 7: Beispielanwendungen und Kubernetes-Services des Typs LoadBalancer entfernen

  1. Führen Sie den folgenden Befehl aus, um die bereitgestellten Pods abzurufen.

    iwan_hooge@cloudshell:~ (eu-amsterdam-1)$ kubectl get pods
    NAME                                READY   STATUS    RESTARTS   AGE
    nginx-deployment-86dcfdf4c6-6ncvx   1/1     Running   0          2m54s
    nginx-deployment-86dcfdf4c6-qbhn2   1/1     Running   0          2m54s
    
  2. Prüfen Sie die bereitgestellten Pods.

  3. Um die bereitgestellte Webanwendung zu entfernen, führen Sie den folgenden Befehl aus.

    iwan_hooge@cloudshell:~ (eu-amsterdam-1)$ kubectl delete deployment nginx-deployment --namespace default
    deployment.apps "nginx-deployment" deleted
    
  4. Vergewissern Sie sich, dass die Anwendung gelöscht wurde.

  5. Führen Sie den folgenden Befehl aus, um die bereitgestellten Pods abzurufen.

    iwan_hooge@cloudshell:~ (eu-amsterdam-1)$ kubectl get pods
    No resources found in default namespace.
    
  6. Beachten Sie, dass die Pods nicht mehr bereitgestellt und erfolgreich gelöscht wurden.

  7. Führen Sie den folgenden Befehl aus, um die bereitgestellten Services abzurufen.

    iwan_hooge@cloudshell:~ (eu-amsterdam-1)$ kubectl get svc
    NAME         TYPE           CLUSTER-IP    EXTERNAL-IP     PORT(S)             AGE
    kubernetes   ClusterIP      10.96.0.1     <none>          443/TCP,12250/TCP   46h
    my-service   LoadBalancer   10.96.56.91   XXX.XXX.XXX.88   80:32422/TCP        2m42s
    
  8. Prüfen Sie die bereitgestellten Services.

  9. Um die bereitgestellten LoadBalancer-Services zu entfernen, führen Sie den folgenden Befehl aus.

    iwan_hooge@cloudshell:~ (eu-amsterdam-1)$ kubectl delete service my-service -n default
    service "my-service" deleted
    
  10. Prüfen Sie, ob der Service gelöscht wurde.

  11. Führen Sie den folgenden Befehl aus, um die bereitgestellten Services abzurufen.

    iwan_hooge@cloudshell:~ (eu-amsterdam-1)$ kubectl get svc
    NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)             AGE
    kubernetes   ClusterIP   10.96.0.1    <none>        443/TCP,12250/TCP   46h
    iwan_hooge@cloudshell:~ (eu-amsterdam-1)$ 
    
  12. Beachten Sie, dass der LoadBalancer-Service nicht mehr bereitgestellt und erfolgreich gelöscht wurde.

image

Danksagungen

Weitere Lernressourcen

Lernen Sie andere Übungen auf docs.oracle.com/learn kennen, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube Channel zu. Außerdem können Sie education.oracle.com/learning-explorer besuchen, um Oracle Learning Explorer zu werden.

Die Produktdokumentation finden Sie im Oracle Help Center.