Réseautique, répartition de charge et sécurité

Introduction à Kubernetes

Frank Heilmann

Platform Architect and Freelance Instructor

Plus sur les étiquettes et les sélecteurs

Étiquettes :

  • Paires clé/valeur associées aux objets Kubernetes comme les Pods ou les Nœuds
  • Servent à organiser des sous-ensembles d'objets
  • Modifiables en tout temps
  • Exemples :
    • environment: prod
    • app: my_cool_app
    • has_GPU: true

Sélecteurs :

  • Permettent d'identifier des objets via leurs étiquettes
  • Exemples :

    • ...    
      selector:
          environment: prod
          app: my_cool_app
      ...
      
    • ...
      nodeSelector:
        has_GPU: true
      ...
      
Introduction à Kubernetes

Réseautique et Services

Services Kubernetes

  • Chaque Pod reçoit sa propre adresse IP à l'échelle du cluster
  • Sert aux communications entre Pods
  • Peu utile, car les Pods peuvent redémarrer à tout moment et recevoir une nouvelle IP
  • Les Services y rattachent les Pods et offrent une connectivité stable
Introduction à Kubernetes

Manifeste de Service

Services Kubernetes

apiVersion: v1
kind: Service
metadata:
  name: Kubernetes_Service_2
spec:
  type: ...
  selector:
    app: app2 
  ...
Introduction à Kubernetes

Répartition de charge

Répartition de charge

  • Un répartiteur de charge dans Kubernetes distribue la charge entre les Pods
  • Évite la surcharge inégale des ressources, accroît l'efficacité et réduit les temps de réponse

  • Exemple :

    • fournir un service depuis plusieurs Pods
    • le répartiteur distribue la charge équitablement entre les Pods
Introduction à Kubernetes

Répartition de charge dans Kubernetes

apiVersion: v1
kind: Service
metadata:
  name: <service name>
spec:
  type: LoadBalancer
  selector:
    <key1>: <value1>
    <key2>: <value2>
  ...
  • Les répartiteurs de charge sont généralement préconfigurés par le fournisseur Kubernetes (fournisseur infonuagique)
  • Inutile de déclarer d'autres manifestes pour un répartiteur de charge : il sera créé automatiquement et rattaché au service
Introduction à Kubernetes

Ingress

Ingress Kubernetes

  • Les objets Ingress servent à acheminer les requêtes HTTP et HTTPS (trafic) de l'extérieur du cluster vers les services internes
  • Des règles d'Ingress définissent quel service traite quelles requêtes
  • Souvent utilisés avec la répartition de charge
Introduction à Kubernetes

Sécurité Kubernetes

  • La sécurité dans les architectures TI modernes est cruciale, mais complexe et multiforme
  • Kubernetes offre tous les composants pour sécuriser les applications qui y

    tournent, p. ex. :

    • l'API « Secret » pour des objets confidentiels comme des mots de passe, des jetons, des clés, etc.
    • des outils et des API pour chiffrer les communications réseau
    • des méthodes d'authentification des utilisateurs
    • le contrôle d'accès fondé sur les rôles et sur les attributs (« RBAC » et « ABAC »)
Introduction à Kubernetes

Passons à la pratique !

Introduction à Kubernetes

Preparing Video For Download...