"Mec, ces clients devraient essayer de faire quelque chose de difficile un jour… déployer un Qumulo est comiquement facile par rapport à beaucoup de choses que je déploie » – Client anonyme
Bienvenue à nouveau dans la célèbre Byte Sized Wisdom ! Au moins, je suis presque sûr qu'ils ont entendu parler de nous en Antarctique. Nous avons pris un mois de congé pour donner un webinaire (vous pouvez le trouver ici) parle de instantanés, de verrouillage et de récupération, mais nous sommes de retour ce mois-ci pour nous en inspirer et donner quelques astuces que nous utilisons lorsque nous traitons des instantanés.
Allons-y, d'accord ?
Assistance, comment puis-je savoir ce qui a changé entre les instantanés ?
Pour cela, nous utiliserions le ''snapshot_diff
»' commande. Nous allons d'abord collecter nos identifiants d'instantané
root@hooper-1:~# qq snapshot_list_snapshots | jq -r '.entries[] | select(.name |contains ("Gazontapede"))'
{
"expiration": "2023-11-13T15:46:03.088492418Z",
"id": 1038592,
"in_delete": false,
"name": "1038592_Gazontapede-5min_gazontapede",
"policy_id": 15,
"source_file_id": "36010006",
"timestamp": "2023-11-13T15:26:03.088558899Z"
}
…
…
{
"expiration": "2023-11-13T16:01:03.074206278Z",
"id": 1038610,
"in_delete": false,
"name": "1038610_Gazontapede-5min_gazontapede",
"policy_id": 15,
"source_file_id": "36010006",
"timestamp": "2023-11-13T15:41:03.074303969Z"
}
Nous pouvons maintenant utiliser notre ancien identifiant (1038592) et le comparer au nouvel identifiant (1038610).
root@hooper-1:~# qq snapshot_diff --newer-snapshot 1038610 --older-snapshot 1038592
{
"entries": [
{
"op": "MODIFY",
"path": "/gazontapede/how_to_identify_gazontapedes.txt"
},
{
"op": "MODIFY",
"path": "/gazontapede/"
}
],
"paging": {
"next": null
}
}
Dans ce cas, nous pouvons voir que les seuls changements ont été le fait que quelqu'un écrivait sur la façon d'identifier les gazontapedes. Évidemment, dans un environnement réel, cela aurait sans doute plus d'entrées, mais vous pouvez avoir une idée de ce que nous examinons.
Support, comment connaître la taille de mes instantanés ?
La commande par défaut « qq snapshot_get_capacity_used_per_snapshot » ne parvient pas à prendre en compte ce que nous appelons les « données couvertes », c'est-à-dire les données qui existent entre plusieurs instantanés. L'un de nos incroyables développeurs a abordé ce problème dans l'article Snapshot. écrit ici.
Bien que les données couvertes soient difficiles à prendre en compte de manière simple, cette seule ligne gravera certainement ce qui est spécifique à chaque instantané et vous donnera une bonne taille à rechercher.
root@qumulo-1:~# mapfile -t SNAP < <(qq snapshot_list_snapshots | jq -r '.entries[].name' | sort -u); for i in "${SNAP[@]}"; do IDS=$(qq snapshot_list_snapshots | jq --arg VAR "$i" '.entries[]|select(.name==$VAR).id'|paste -sd ','); CAPACITY_USED=`qq snapshot_calculate_used_capacity --ids $IDS | jq '.bytes|tonumber'`; echo "Snapshot Name: $i | Capacity used: $CAPACITY_USED"; done | awk '{print $NF,$0}' | sort -nr | cut -f2- -d' '
Snapshot Name: 15_replication_to_qumulo_bk | Capacity used: 1695744
Snapshot Name: 16_replication_to_qumulo_bk | Capacity used: 536576
Snapshot Name: 22_replication_to_qumulo_bk | Capacity used: 274432
Snapshot Name: 14_Gazontapede_Daily | Capacity used: 98304
Snapshot Name: 21_Gazontapede_Daily | Capacity used: 45056
Ce qu'une âme en herbe pourrait alors faire, c'est coupler cela avec le « snapshot_diff » mentionné précédemment et avoir une bonne idée de l'espace occupé dans ces données couvertes.
Assistance, je veux juste connaître les dix principaux contrevenants instantanés – comment puis-je faire cela ?
Gâteau, morceau de.
sudo qq snapshot_get_capacity_used_per_snapshot | jq '[.entries[]]|sort_by(.capacity_used_bytes|tonumber)|.[-10:]'
Si vous souhaitez plus que les dix premiers, vous pouvez simplement modifier ce numéro à la fin.
Assistance, j'ai un certain nombre d'instantanés à supprimer, comment puis-je le faire rapidement et facilement ?
De nombreux administrateurs ne savent pas qu'un regroupement d'instantanés s'appelle un congrès. Cela mis à part, c’est aussi une solution facile à réaliser.
Tout d’abord, générez une liste de vos ID d’instantané. Par exemple
root@qumulo-1:~# qq snapshot_list_snapshots | grep -B 3 "\"*Gazontapede-5min" | grep id |awk '{print $2}' |sed 's/,$//' > /history/snap_delete
Cela enregistrera tous les identifiants associés à ma politique d'instantané Gazantapede-5min dans un fichier appelé /history/snap_delete.
Maintenant, je vais simplement émettre
root@qumulo-1:~# cat /history/snap_delete | xargs -I % sh -c 'qq snapshot_delete_snapshot -i %'
Et c'est parti pour les courses.
Support, combien d'oiseaux peuvent tenir dans un arbre ?
Bien que ce ne soit pas directement lié à Qumulo, je pense que la réponse est tou-can.
J'espère que vous avez trouvé les conseils susmentionnés utiles. Vous remarquerez que nous pouvons (et faisons) passer de jq à unix classique – l'un ou l'autre fonctionne, donc celui avec lequel vous êtes le plus à l'aise, suivez cette voie.
En guise de départ, à l'approche de la période des fêtes, je vous demande d'être prudent si vous envisagez de quitter le centre de données et de visiter la nature. Les tigres peuvent être difficiles à repérer car ils le sont…. rayé.
Jusqu'au mois prochain !
Aaron Oshita est le responsable principal du marketing produit au sein de l'équipe produit de Qumulo. Il a passé la dernière décennie dans le marketing technologique B2B pour l'informatique d'entreprise, les applications SaaS et les technologies de la santé.