Correction d'un problème de LVM dans Kubernetes sur AWS

Nous avons migré notre infrastructure héritée en Kubernetes. La capacité de déployer en quelques secondes fait une énorme différence en termes de nombre de Maigre expériences que nous pouvons prendre. Kubernetes nous donne un moyen de gérer la simplicité du conteneur docker à une échelle qui peut gérer les événements widget 1 milliard avec le traitement des données correspondantes qui doit se produire.

Bien que Kubernetes est impressionnant, il est encore relativement nouveau et il ya beaucoup d'endroits à contribuer. Tout a commencé quand notre noeud principal est descendu sur AWS-il n'est pas revenu vers le haut. Il aurait dû. Les noeuds sur AWS sont configurés pour revenir sans problème. Cela a conduit à ma première Commettre. Après avoir creusé dans les journaux du système, j'ai vu cette erreur flagrante:

The disk drive for /mnt/ephemeral is not ready yet or not present.
keys:Continue to wait, or Press S to skip mounting or M for manual recovery

Creuser dans la source, j'ai trouvé que sur AWS, scripts Kubernetes créer un volume LVM pour stocker les données.

lvcreate -l 100%FREE --thinpool pool-ephemeral vg-ephemeral

L'exécution du code semblait fonctionner. Plus que cela, le maître a travaillé au démarrage. Qu'est-ce qui se passait? Je me suis connecté à un maître existant et j'ai cherché le volume logique. Il n'était pas là! Le répertoire était le là, mais le volume n'était pas.

Pour en revenir aux journaux système (à partir du premier démarrage), nous voyons cette erreur sur'lvcreate':

Insufficient free space: 3905 extents needed, but only 3897 available

Apparemment, c'est un problème sur lvcreate en général: vous ne pouvez pas utiliser 100% gratuit avec une piscine mince! Il va échouer. Vous pouvez voir plus de détails dans le Billet.

Eh bien, il n'y avait pas besoin d'utiliser un thinpool pour cela. Nous ne sommes pas surapprovisionner le disque dans Kubernetes-> ma première demande pull! J'ai signé le contrat de licence du conTribuant et le reste est l'histoire.

Nous avons maintenant 4 grappes Kubernetes de production avec des douzaines de Pods (et des noeuds maîtres redémarrables) et attendons avec impatience la stabilité et le travail de haute disponibilité venant dans "Ubernetes". Si vous êtes intéressé à résoudre des problèmes comme celui-ci nous serions ravis de vous avoir Rejoignez notre équipe!

À propos de ShareThis

Depuis 2007,ShareThis libère la puissance du comportement numérique mondial en synthétisant les données relatives aux partages sociaux, aux intérêts et aux intentions. Grâce au comportement des consommateurs sur plus de trois millions de domaines mondiaux, ShareThis observe les actions en temps réel de personnes réelles sur des destinations numériques réelles.

S'abonner à notre newsletter

Recevez les dernières nouvelles, les conseils et les mises à jour

S'abonner

Contenu connexe