HOS 2.1 Installation de Ceph avec personnalisation du réseau (8/8)

2016-01-23

HOS 2.1 Installation de Ceph avec personnalisation du réseau (8/8)

Machine-translated from English. Read the English original

# La vérité, toute la vérité…

Voici donc les erreurs que j’ai rencontrées lors de cette installation.

Erreur – 1

Lors de l’exécution du processeur de configuration, celui-ci accepte une clé de chiffrement courte et ne signale ni avertissement ni erreur jusqu’à la fin de l’exécution.

InstallC (11)

J’ai relancé le processeur de configuration et utilisé un mot de passe de chiffrement plus robuste : ‘H3lionhelion!’

Et ainsi, nous passons à la prochaine configuration qui doit être déboguée…

Erreur – 2

cd ~/helion/hos/ansible
ansible-playbook -i hosts/localhost config-processor-run.yml

InstallC (12)

Si nous examinons le fichier network_groups.yml, je vois que j’ai oublié de modifier cette section

InstallC (13)

J’ai ajouté ‘hos2.allthingscloud.eu’ en tant que nom externe

installC(100)

Erreur – 3

Il se plaint également de mes profils nic_mapping assignés dans le fichier servers.yml.

InstallC (15)

Ce profil manquait dans le fichier nic_mappings.

J’ai ajouté le profil correct, HP-DL360-8PORT, au fichier nic_mappings.

InstallC (16)

Maintenant, nous devons réengager tous ces changements dans le dépôt et recommencer.

cd ~/helion/hos/ansible
git add -A
git commit -m "Fixed initial configuration errors"

Erreur – 4

cd ~/scratch/ansible/next/hos/ansible
ansible-playbook -i hosts/verb_hosts wipe_disks.yml

Je rencontre l’erreur suivante lors de la tentative de formatage des disques

InstallC (27)

Cela est dû au fait que j’ai chiffré le contenu sensible – pour contourner ce problème, je dois fournir le --ask-vault-pass dans la ligne de commande

ansible-playbook -i hosts/verb_hosts wipe_disks.yml --ask-vault-pass

Erreur – 5

Et juste au moment où je pensais avoir presque terminé, je rencontre un autre échec comme suit :

InstallC (30)

Nombreuses plaintes dans ~/.ansible/ansible.log concernant des partitions de disque corrompues – j’ai tenté de les effacer « manuellement » à l’aide du script suivant :

clear_host() {
  ssh $1 << EOF
    echo onhost connected
    sudo /bin/dd if=/dev/zero of=/dev/sdb bs=512 count=2
    sudo /bin/dd if=/dev/zero of=/dev/sdc bs=512 count=2
    sudo /bin/dd if=/dev/zero of=/dev/sdd bs=512 count=2
    sudo /bin/dd if=/dev/zero of=/dev/sde bs=512 count=2
    sudo /bin/dd if=/dev/zero of=/dev/sdf bs=512 count=2
    sudo /bin/dd if=/dev/zero of=/dev/sdg bs=512 count=2
    sudo /bin/dd if=/dev/zero of=/dev/sdh bs=512 count=2
    sync
EOF
}

export -f clear_host

seq 15 17 | while read i; do
  clear_host 172.16.60.$i
done

Cela n’a également eu aucun effet. J’obtiens la même erreur de partition.

Ma prochaine tentative de correction consistera à me connecter au contrôleur RAID de chaque serveur Ceph et à supprimer puis recréer les disques non système.

InstallC (31)InstallC (32)InstallC (33)InstallC (34)InstallC (35)

Maintenant, je vais supprimer tous les tableaux SAUF le tableau A – le disque système

InstallC (36)InstallC (37)

Répétez cette opération pour les tableaux B à G, vous devriez obtenir quelque chose comme ceci :

InstallC (38)

Reconstruisez maintenant tous les tableaux de disques RAID0

InstallC (39)

Sélectionnez l’option « Créer des tableaux avec RAID 0 »

InstallC (40)

Sélectionnez OK

InstallC (41)InstallC (42)InstallC (43)

Répétez ce processus sur les 2 autres nœuds Ceph, puis nous pourrons relancer le déploiement

ansible-playbook -i hosts/verb_hosts site.yml --ask-vault-pass --limit @/home/graham/site.retry

Encore une fois, nous rencontrons exactement le même échec – il est temps de rechercher les bugs connus…

Oui – il s’agit d’un bug connu – la fonctionnalité wipe_disk ne fonctionne pas toujours correctement –
Il est nécessaire de se connecter à chaque nœud et d’exécuter la commande suivante sur chaque disque journal et OSD :

/sbin/sgdisk --zap-all -- /dev/sd[b-h]

ou d’utiliser le script suivant :

clear_host() {
  ssh $1 << EOF
    echo onhost connected
    sudo /sbin/sgdisk --zap-all -- /dev/sdb 
    sudo /sbin/sgdisk --zap-all -- /dev/sdc 
    sudo /sbin/sgdisk --zap-all -- /dev/sdd 
    sudo /sbin/sgdisk --zap-all -- /dev/sde 
    sudo /sbin/sgdisk --zap-all -- /dev/sdf 
    sudo /sbin/sgdisk --zap-all -- /dev/sdg 
    sudo /sbin/sgdisk --zap-all -- /dev/sdh 
    sync
EOF
}

export -f clear_host

seq 15 17 | while read i; do
  clear_host 172.16.60.$i
done

Erreur – 6

Et maintenant, nous reprenons là où nous nous sommes arrêtés –

ansible-playbook -i hosts/verb_hosts site.yml --ask-vault-pass --limit @/home/graham/site.retry

Cela m’amène au prochain défi –

InstallC (44)

Comme vous pouvez le voir, cela se plaint d’authentification. Ce que vous ne voyez pas, c’est que plus de 12 heures se sont écoulées depuis que je me suis reconnecté à la session screen initiale ayant échoué. En ajoutant --limit @/home/graham/site.retry, il tente de reprendre là où il a échoué. Cependant, il semble que certains jetons d’authentification aient pu expirer par la suite.

Relancez l’installation sans l’option --limit @/home/graham/site.retry.

ansible-playbook -i hosts/verb_hosts site.yml --ask-vault-pass

Originally published on allthingscloud.eu (2016-01-23).

← All posts