## Het Kubernetes-dashboard gebruiken

Via het dashboard kunt u de verschillende soorten Kubernetes-bronnen bekijken:

Het dashboard maakt het eigenlijk gemakkelijker om bronnen te maken: dus in plaats van complexe YAML-bestanden te schrijven, kun je de apps implementeren door simpelweg een formulier in te vullen.

We nemen als voorbeeld de implementatie van een basiswebapplicatie:

In het eerste gedeelte hebben we de naam van de app gespecificeerd, de docker-image die we zullen gebruiken. We noemden ook het aantal te maken pods. En toen hebben we een externe service toegevoegd, de poort en het protocol.

Troubleshooten:

Ik zocht naar de docker-image: apache, echter deze heeft een andere naam. De containers kun je vinden op Docker-hub, zie afbeelding hieronder.

Nadat aangepast te hebben in een nieuwe deployment, werkte het naar behoren en zouden we ervoor kunnen kiezen een aangepaste installatie te doen. Je kunt meerdere variabelen meegeven tijdens het deployen van je images. De oude/foute nog even verwijderen.

Zie wat er allemaal veranderd is en controleer waar de Pods draaien.

Om te controleren of apache werkt, zoeken we de poort op onder "Discovery and Load Balancing".

Zo zien we dat Kubernetes zowel op de CLI and in de Dashboad-Kubernetes Pods kan deployen en dat het super werkt.

Echter dit is pas het begin van onze mooie Kubernetes reis ;-).

## YAML implementeren met behulp van het Kubernetes-dashboard

Nu zullen we de Nginx app implementeren met behulp van een YAML-bestand via het Kubernetes-dashboard.

Gebruik de volgende YAML-bronnen bij het maken van een nieuwe app met YAML:

    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx-yaml
    spec:
      strategy:
        type: Recreate
      selector:
        matchLabels:
          app: nginx-yaml
      replicas: 3
      template:
        metadata:
          labels:
            app: nginx-yaml
        spec:
          containers:
          - name: nginx
            image: nginx
            ports:
            - containerPort: 80

    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: nginx-svc-yaml
      labels:
        app: nginx
      annotations:
        description: My web App deployment
    spec:
      externalTrafficPolicy: Cluster
      ports:
      - name: http
        port: 80
        protocol: TCP
        targetPort: 80
      selector:
        app: nginx-yaml
      type: LoadBalancer

Implementeer de app en controleer de implementaties om te controleren of deze met succes is gemaakt:

Top het werkt!

Kijk welke app's je nog meer op deze manier kunt maken.......