4 points par xguru 2021-01-27 | 1 commentaires | Partager sur WhatsApp
  • OpenAI partage son expérience de montée en charge de k8s pour GPT-3, DALL·E, etc.

  • En général, on ne fait pas évoluer un cluster unique jusqu’à 7 500 nœuds, ce qui nécessite une gestion particulière, mais cela permet d’obtenir une infrastructure simple et de monter en charge facilement sans modifier le code.

  • L’environnement applicatif et matériel diffère un peu de celui des entreprises classiques.

→ Les GPU doivent utiliser pleinement le matériel du nœud via NVLink, GPUDirect, etc.

→ C’est pourquoi, en général, un seul Pod occupe l’ensemble du nœud.

→ Autrement dit, il y a beaucoup de nœuds, mais la charge sur le scheduler reste relativement faible.

  • Réseau

→ Comme le nombre de pods et de nœuds a fortement augmenté, ils sont passés au Native Pod Networking.

→ Le traitement des adresses IP a été modifié pour reposer sur des alias, ce qui permet d’utiliser 200 000 adresses IP à tout moment.

  • API Server

→ Utilisation du tableau de bord Grafana fourni par kube-prometheus.

→ Il est utile de définir des alertes sur les HTTP 429 (Too Many Requests) et les 5xx (Server Error) comme signaux de haut niveau en cas de problème.

→ L’API Server s’exécute toujours en dehors du cluster

1 commentaires

 
xguru 2021-01-27

C’est un article assez long… Comme je n’aurai probablement jamais à mettre en place un cluster de cette taille, je n’en ai fait qu’un bref résumé.