Je viens vers vous aujourd’hui car malgré les forums, les tutos et notre ami le chat je suis perdu sur la manière de faire pour basculer la BDD de HA dans MariaDB.
Je vous détaille rapidement ma config :
Serveur hébergeant truenas scale
VM pour héberger HA
Application truenas MariaDB
L’avantage de mettre MariaDB comme application sur truenas c’est pouvoir stocker la BDD sur un pool de HDD sûr. (pas à 100% bien sûr, mais bien plus que sur le disque virtuel ^^)
Ne me demandez pas pourquoi, même moi je ne sais pas mais j’aime les données de ma maison, je les veux toutes et ad vitam aeternam
Je me suis rendu compte récemment que la BDD interne de HA ne le permettait pas donc je souhaite basculer sur MariaDB qui si j’ai bien compris permet d’exaucer mon souhait
Ah oui et point important, j’aimerais récupérer mes données actuelles, est-ce possible de les transférer dans MariaDB ?
Si tu veux récupérer des historiques, tu peux tenter de sauver ton fichier home-assistant_v2.db au moment de la bascule pour par après exporter les tables des statistiques.. ça doit marcher mais comme ce n'est pas supporté, bonne chance.
Mais ces tables devraient suffire car le reste c'est le recorder court terme qui sera reconstruit après quelques jours...
Fais des copies du fichier .db, on ne sait jamais...
je suis etonne de lire cela !
je vois pas pourquoi un disque virtuel est moins sur qu’un pool de disque ? surtout si ton disque virtuel est sur un pool de disque
et surtout j’espère que tu as une sauvegarde de ton HA qui contient un backup de la BDD
c’est un avantage de la version SQLite qui suffit totalement pour les besoins de HA une fois le recorder bien paramétré
n’oublies pas de dumper regulièrement ta BDD maria
Alors effectivement cette raison n'est pas suffisante pour totalement justifier de passer sur une db externe.
Disque virtuel ou pool... la redondance, c'est pour la tolérance de pannes pas pour la sauvegarde...
Vaut mieux être certain d'avoir une bonne gestion des sauvegardes de tes données.
alors ne me jugez pas svp mais mes VM sont dans un pool composé d’un seul SSD donc pas de redondance…
et la BDD maria elle je l’ai créée sur un pool composé de 3 HDD en RAIDZ1.
Pourquoi un seul SSD ? tout simplement : le prix…
Je cherchais la performance pour mes VM donc SSD et je fais des sauvegardes régulières que je stock sur mes HDD.
comme l’a dit @AlexHass la redondance ce n’est pas du backup d’ailleurs dans un contexte de homelab c’est pas plus utile que ça la redondance tout aussi eu que mariaDB dans HA
c’est pas un souci, j’ai pareil chez moi, mon proxmox qui fait tourner les apps et VM n’a qu’un SSD… mais je m’assure d’avoir des sauvegardes de tout et surtout je sais comment restaurer
Le refaire me pendrait pas trop de temps…
Faut suivre quand même l’usure du SSD, suivant la marque et le modèle ça peut aller assez vite…
L’article est sur HA, mais c’est une reco universelle:
Salut, d’acc merci
Du coup je vais plutot créer un lecteur réseau dans HA qui ira sur mon RAIDZ1 et j’y stockerai les sauvegardes de HA mais du coup 2 questions me viennent :
Est-ce que MAria DB dans HA permet une grande quantité de stockage ?
Est-ce que Maria DB dans HA se sauvegarde aussi ?
MariaDB c’est MariaDB donc oui tu peux stocker des Tera de données avec MariaDB et oui il est possible de sauvegarder ses données stockées dans MariaDB.
mariaDB n’es pas dans HA c’est un module complémentaire (en gros un conteneur packagé par HA directement) mais tu peux y stocker autant que dans une BDD mariaDB
après il y’a la pertinance de ce que tu gardes, il est conseille de bien regler son recorder, HA a un procédé de conservation de données sur une longue période
les addons de HA sont sauvegardés automatiquement mais je ne sais pas du tout comment ça se passe avec mariadb, si la base est dumpée régulièrement ?
J’avais regardé, il y a des hooks avant le backup pour passer la base en read-only ou locker les tables (je ne sais plus) et pour les libérer après le backup.
Exactement comme pour le fichier SQLite mais bon j’ose pas imaginer les effets de bords sur une grosse base de données
La version App de HA (anciennement Module Complémentaire) est sauvée dans les backups complets, comme toutes les autres Apps que tu as installé.
Mais bon passer du SQLite standard à MariaDB en App, il faut voir quel est l’intérêt. Y’a peut-être moins de risque de corruption, mais encore, aucune idée…
Si tu utilises l’app dans TrueNas, la base de données est complètement séparée de HA, c’est à toi de mettre en place la sauvegarde… et de t’assurer qu’elle tourne correctement. Et la faut regarder les méthodes de backup existantes de Mariadb.
Je ne pense pas que le backup de HA s’occupe des cas particuliers de chaque App possible…
S’il est sympa il envoie une commande docker pause à tous les containers des apps et après fait un simple backup des fichiers data de chacun.
Bon après, la DB, s’il n’y a que HA dessus, pendant un backup le recorder ne tourne pas non plus… il ne se passe plus rien dessu…
Clairement HA ne sait pas ce que contient les addons/app donc pas moyen qu’il fasse une action spécifique. On avait évoqué le sujet avec @vincen il y a quelques mois.
Et de mémoire je crois qu’il n’a pas bien réussi à remettre un backup en service quand la base est grosse.
@DeadLu17 ce que tu souhaites c’est conserver des datas à long terme dans ce cas le meilleur choix c’est, je pense, pour ton besoin ce n’est pas une SGBD mais une TSBD (time series data base) du genre d’influxdb
ça te permet de garder d’un coté le BD de base de HA (sqlite) et les datas sont poussées en parallèle dans une TSDB (influx ou autre)
Ce n’est pas HA qui s’en occupe, il y a des hooks envoyés par HA avant le backup, après le backup c’est au développeur de l’application (add-on) de faire correctement le job.
C’est quoi cette la commande docker pause ? A ma connaissance, ça n’existe pas. Ca correspondrait à quoi ?