Metabase est-il de près ou de loin un concurrent de Redash ?
A priori, la grosse différence est que Metabase propose un requêteur graphique qui ne nécessite aucunes connaissances en SQL alors que pour Redash il faut tapoter soit même ses requêtes.
Nous sommes actuellement en phase de mise en prod de metabase. Lors des tests je l'ai connecté directement à la base Oracle de notre ERP… Pas une bonne idée car comme tout requêteur graphique il a tendance à taper large et du coups à générer de grosse requête.
Est-il possible "facilement" de créer des graphiques personnalisé et d'y afficher des données venant de plusieurs type de bdd ? (Genre dans le même graphique recouper des infos venant de mysql et postgres ?).
La solution est de monter un datawarehouse qui sera synchronisé avec une ou x bases. L'avantage est choisir la périodicité de synchro et pouvoir croiser des données provenant des différentes bases, voir même d'import Office injecté par les utilisateurs dans des tables spécifiques.
si les données existent deja et sont disponibles sur la baie netapp,
Oui les données existe déjà et ce depuis de nombreuses années. C'est juste pour un nouveau partage qu'on me demande la possibilité de définir au dossier/fichier des droits et non au share complet. Jusqu'à présent nous avions un public et un share par service.
elles sont peut-etre plus tranquilles sur le NFS qui stockent ensuite en raid, avec deduplication, etc sur le netapp
Les disques des VM sont eux aussi stockés sur la baie dans des datastores dédiés gérés par VmWare.
puis migrer tes utilisateurs sur le nouveau serveur, sans meme toucher aux données qui restent sur le NFS
La migration sera un peu plus "complexe" puisque je souhaite passer de la branche 3.5 à 4.x pour avoir une simulation AD complète avec en backend LDAP, dns, dhcp…
il me semble avoir lu que ce serait une mauvaise idée par exemple de partager des dossiers webs, qui hébergent des sites en PHP, avec du NFS, pour le mettre à dispo d'une ferme de serveurs webs (apache ou nginx)
Cela reste pour de l'interne. Nous avons des app en php mais y une couche docker au milieu de ce petit monde.
J'aime bien garder l'idée du montage NFS car bien plus simple à gérer qu'un disque. Si j'ai besoin de l'agrandir ça me prend à peine 3s, alors qu'un disque, même avec LVM faut que je me gratte la tête pour me rappeler comment faire. Et même bien fait j'ai eu des mauvaises surprise. Je vais faire des essais avec une VM toute propre et récente.
la version de ton linux est vieille, peut-etre qu'il ne part pas en NFSv4 mais en v3 ou bien certaines options ne sont pas possibles justement à cause de son age
J'indique dans le fstab d'utiliser nfs4, si il le ne gérait pas je pense que j'aurai une erreur comme quoi le protocole n'est pas supporté ? il est clair que c'est vieux mais j'ai tout les outils getfacl et il marche en plus :)
getfacl /tmp
getfacl : suppression du premier « / » des noms de chemins absolus
# file: tmp
# owner: root
# group: root
# flags: --t
user::rwx
group::rwx
other::rwx
Un téléphone fixe DECT… mince le mien ne doit plus avoir de pile depuis 5 ans !
D'ailleurs je pense que le chien l'a transformé en une bouillit pré-mâché et l'a probablement subtilement glissé sous le canapé pour que personne ne s’aperçoive de sa bêtise… Oui mon chien est intelligent et je ne passe pas souvent l'aspirateur sous le canapé !
Suis-je le seul supris de voir un projet avec un script de backup et absolument rien pour décrire le process de restoration des données?
Pour faire la restauration tu utilise BackupPC, mon script permet juste d'extraire des données des containers pour les intégrer dans un processus global de sauvegarde de BackupPC. Dans mon cas j'utilise BackupPC pour Docker, pour des fichiers utilisateurs, pour d'autres bases mysql… Le jour où j'ai besoin de faire une restauration je n'ai pas à me demander par quel outil la sauvegarde est faite et comment cela marche. Des restaurations on en fait pas tout les jours ;)
Soit dit en passant GLPI est le cas typique d'une appli qui peut souffrir de quelques secondes d'arrêt chaque nuit et pour laquelle il y a peu de chance de vouloir restaurer seulement quelques lignes ou une table. Et ils semble que les volumes semblent être des bind mounts de répertoires de la machine hôte.
J'ai proposé GLPI, mais ce n'est qu'un exemple, remplace le par ce que tu veux avec ces propres contraintes. Ta proposition est bonne mais comment faire lorsque tu as un container qu'il est totalement impossible de mettre en pause ?
L'avantage c'est qu'il n'y a quasi aucun scripting, que t'es absolument sûr que le volume de ta db et du reste de l'appli sont cohérents. Avec ta méthode je ne vois rien qui garantie la cohérence entre le dump mysql et les fichiers copiés. Donc à la restauration tu peux te retrouver avec des fichiers uploadés qui ne sont pas référencés en DB et avoir des trucs pas propres..
Ça oui et effectivement, sauf à mettre en pause ou arrêter le container il n'y a pas de solution. Mais toujours même problème, comment faire pour un container qu'il n'est pas possible d'arrêter ?
Du reste en utilisant des vrais volumes plutôt que des bind mounts tu pourrais bénéfichier des capacités de snapshots de docker et faire des backups sur des clones.
J'utilise de vrai volume au quotidien. Si je ne l'ai pas fais dans mon exemple c'est par simplicité et aussi en scriptant la copie des fichiers hors du container on s'affranchit de devoir créer un volume par container.
Tout dépend du container. Pour le cas de GLPI cela serait les fichiers uploader (factures, contrats…). J'avoue ne pas avoir penser à la solution de sauvegarder le répertoire contenant le volume sur l'hôte. J'ai rapidement été voir et c'est quand même un jolie sac dans le répertoire /var/lib/docker/overlay2. Il y a autant de répertoires que de volumes et comme ça il est difficile de savoir qui appartient à qui. Sans compter les volumes fantômes qui peuvent exister.
GLPI n'était qu'un exemple et l'idée est d'avoir quelques choses de réutilisable pour d'autres container.
Pour mysql il est clair qu'il est impossible de copier les fichiers plats, passer par mysqldump permet de mettre un lock le temps de l'export.
Je ne connaissais pas Bivac, d'après ce que je comprends c'est uniquement pour les volumes.
BackupPC n'est pas dédié à la sauvegarde Docker, c'est un outil de sauvegarde au sens large. J'ai juste fais un script de pre-backup executé par BackupPC.
Version corrigé, il y avait un problème avec le mv qui n'aimais pas trop les espaces dans le nom de fichier initial.
for e in ./*
do# calcul le nouveau nom en replaçant les espaces par _ et PDF par pdfnouveau_nom=`echo$(basename "$e")| tr "[:blank:]""_"| tr "PDF""pdf"`# extrait l'extensionextension=${nouveau_nom##*.}# renomme sous la nouvelle nomenclature
mv "$(basename "$e")"$nouveau_nom# regarde si c'est un PDF et l'imprimeif[${extension}="pdf"]then
rlpr --printer=${PRINTER}$nouveau_nomfi# efface la piece jointe
rm -f $nouveau_nomdone
Dans mon container je lance toute les x minutes getmail par cette commande
#!/bin/shTIMECRON1=${TIMECRON:-300}while :
do
getmail --getmaildir=/etc/mail2print --rcfile=getmail.conf
sh /bin/printmail.sh
sleep $TIMECRON1done
getmail "copie" les mails dans le répertoire Mail/new, efface le mail de INBOX pour le copier dans INBOX.INBOX.archives
Ensuite le script suivant extrait les fichiers joints, lance l'impression et fait le ménage dans les répertoires.
#!/bin/bash# ParametersMAILDIR=/home/mail2print/Mail
LOGFILE=/var/log/mail/mail2print.log
ATTACH_DIR=/home/mail2print/Mail/attachments
PRINTER=${PRINTER}if[ -d ${MAILDIR}/new ]thenCOUNT=`ls ${MAILDIR}/new | wc -l`if[${COUNT} -ne 0]thenfor i in ${MAILDIR}/new/*
do#echo "[printmail] Processing : $i" | tee -a ${LOGFILE}
uudeview $i -iqn -p ${ATTACH_DIR}/
# process file attachments with spacecd${ATTACH_DIR}NBATTACH=`ls ${ATTACH_DIR}| wc -l`if[${NBATTACH} -ne 0]thenfor e in ./*
doa=`echo$e| tr "[:blank:]""_"`if[$? -eq 0]then
mv "$e""$a"fidonefor f in *.PDF
do
mv $f${f%.*}.pdf
done# end of patch#echo "[printmail] Printing PDFs" | tee -a ${LOGFILE}for x in ${ATTACH_DIR}/*.pdf
do#echo "[printmail] Printing : $x" | tee -a ${LOGFILE}
rlpr --printer=${PRINTER}$x#echo "[printmail] Deleting file : $x" | tee -a ${LOGFILE}
rm -f $x| tee -a ${LOGFILE}done#echo "[printmail] Clean up and remove any other attachments" | tee -a ${LOGFILE}for y in ${ATTACH_DIR}/*
do
rm -f $ydonefi# # delete mail#echo "[printmail] Deleting mail : $i" | tee -a ${LOGFILE}
rm $i| tee -a ${LOGFILE}donefifi
Faut que j'intègre la suppression du fichier log tout les x jours et éventuellement une purge du dossier INBOX.INBOX.archives tout les x mois.
Au final j'utilise un seul programme getmail totalement intégré au système. Je vais voir pour publier tout ça sur docker hub et github.
La gestion des pièces jointes est faite par un script shell qui va gratter dans le répertoire $USER/Mail. Il mérite encore quelques améliorations mais en l'état il fait le taff.
J'ai déjà fais quelques bricoles en python et j'ai vraiment du mal à me faire à ce langage. Mon idée était de rester sur des programmes systèmes (fetchmail, procmail…) scriptable pour rester simple et ne pas re-inventer la roue.
D'après ce que j'ai compris --folder de fetchmail permet de dire quel "répertoire" aller relever, donc le répertoire doit être existant dans la BAL. Dans mon cas les nouveaux mails doivent rester à la racine et doivent être déplacé uniquement après traitement (impression).
fetchmail.conf
set no syslog
set logfile /var/log/mail/mail2print.log
set postmaster "fetchmail"
poll ssl0.ovh.net
protocol imap
port 993
user "XXX@xxxx"
password "passs"
ssl
mda "/usr/bin/procmail -m '/etc/mail2print/procmail.conf'";
Il me semble que keepass et les déclinaisons ne sont pas vraiment multi-utilisateurs et sur le site je n'ai pas vu la notion de partage de mot de passe.
[^] # Re: Redash like ?
Posté par Philippe M (site web personnel) . En réponse à la dépêche Metabase - Business intelligence open source. Évalué à 5.
A priori, la grosse différence est que Metabase propose un requêteur graphique qui ne nécessite aucunes connaissances en SQL alors que pour Redash il faut tapoter soit même ses requêtes.
Born to Kill EndUser !
[^] # Re: Redash like ?
Posté par Philippe M (site web personnel) . En réponse à la dépêche Metabase - Business intelligence open source. Évalué à 4. Dernière modification le 29 novembre 2021 à 14:12.
Nous sommes actuellement en phase de mise en prod de metabase. Lors des tests je l'ai connecté directement à la base Oracle de notre ERP… Pas une bonne idée car comme tout requêteur graphique il a tendance à taper large et du coups à générer de grosse requête.
La solution est de monter un datawarehouse qui sera synchronisé avec une ou x bases. L'avantage est choisir la périodicité de synchro et pouvoir croiser des données provenant des différentes bases, voir même d'import Office injecté par les utilisateurs dans des tables spécifiques.
Born to Kill EndUser !
[^] # Re: gagne du temps
Posté par Philippe M (site web personnel) . En réponse au message NFS et ACL. Évalué à 2.
Oui les données existe déjà et ce depuis de nombreuses années. C'est juste pour un nouveau partage qu'on me demande la possibilité de définir au dossier/fichier des droits et non au share complet. Jusqu'à présent nous avions un public et un share par service.
Les disques des VM sont eux aussi stockés sur la baie dans des datastores dédiés gérés par VmWare.
La migration sera un peu plus "complexe" puisque je souhaite passer de la branche 3.5 à 4.x pour avoir une simulation AD complète avec en backend LDAP, dns, dhcp…
Cela reste pour de l'interne. Nous avons des app en php mais y une couche docker au milieu de ce petit monde.
J'aime bien garder l'idée du montage NFS car bien plus simple à gérer qu'un disque. Si j'ai besoin de l'agrandir ça me prend à peine 3s, alors qu'un disque, même avec LVM faut que je me gratte la tête pour me rappeler comment faire. Et même bien fait j'ai eu des mauvaises surprise. Je vais faire des essais avec une VM toute propre et récente.
Born to Kill EndUser !
[^] # Re: gagne du temps
Posté par Philippe M (site web personnel) . En réponse au message NFS et ACL. Évalué à 2. Dernière modification le 22 novembre 2021 à 14:36.
Ah punaise ! Très bonne idée !
Comme quoi ça vaut le coups d'en parler avant d'y aller tête baissé.
Reste à trancher si je continue avec mes montages NFS dans la nouvelle VM ou alors si j'ajoute des disques dans la VM ?
Merci.
Born to Kill EndUser !
[^] # Re: gagne du temps
Posté par Philippe M (site web personnel) . En réponse au message NFS et ACL. Évalué à 2.
Du coups si je veux faire plus simple, il faut que j'ajoute un disque à la VM et que j'active les xattr sur ext4 ?
Born to Kill EndUser !
[^] # Re: gagne du temps
Posté par Philippe M (site web personnel) . En réponse au message NFS et ACL. Évalué à 2. Dernière modification le 22 novembre 2021 à 11:25.
Oups effectivement erreur de ma part :
test/ étant un montage NFS
Born to Kill EndUser !
[^] # Re: gagne du temps
Posté par Philippe M (site web personnel) . En réponse au message NFS et ACL. Évalué à 2.
A priori c'est géré par la baie dès l'activation du nfs4 : https://www.google.fr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&ved=2ahUKEwiRmdON1av0AhWISPEDHfMXBiwQFnoECAsQAQ&url=https%3A%2F%2Fwww.netapp.com%2Fmedia%2F10720-tr-4067.pdf&usg=AOvVaw0XSonXBgCaPifhhYMGmtpz page 45
J'indique dans le fstab d'utiliser nfs4, si il le ne gérait pas je pense que j'aurai une erreur comme quoi le protocole n'est pas supporté ? il est clair que c'est vieux mais j'ai tout les outils getfacl et il marche en plus :)
Born to Kill EndUser !
[^] # Re: anti spam ?
Posté par Philippe M (site web personnel) . En réponse au journal Pourquoi Bloctel et les lois contre le démarchage téléphonique ne servent plus à rien. Évalué à 5. Dernière modification le 18 novembre 2021 à 11:27.
Un téléphone fixe DECT… mince le mien ne doit plus avoir de pile depuis 5 ans !
D'ailleurs je pense que le chien l'a transformé en une bouillit pré-mâché et l'a probablement subtilement glissé sous le canapé pour que personne ne s’aperçoive de sa bêtise… Oui mon chien est intelligent et je ne passe pas souvent l'aspirateur sous le canapé !
Born to Kill EndUser !
[^] # Re: quid de la restauration?
Posté par Philippe M (site web personnel) . En réponse au journal Sauvegarder le contenu d’un container Docker avec BackupPC. Évalué à 2.
Pour faire la restauration tu utilise BackupPC, mon script permet juste d'extraire des données des containers pour les intégrer dans un processus global de sauvegarde de BackupPC. Dans mon cas j'utilise BackupPC pour Docker, pour des fichiers utilisateurs, pour d'autres bases mysql… Le jour où j'ai besoin de faire une restauration je n'ai pas à me demander par quel outil la sauvegarde est faite et comment cela marche. Des restaurations on en fait pas tout les jours ;)
J'ai proposé GLPI, mais ce n'est qu'un exemple, remplace le par ce que tu veux avec ces propres contraintes. Ta proposition est bonne mais comment faire lorsque tu as un container qu'il est totalement impossible de mettre en pause ?
Ça oui et effectivement, sauf à mettre en pause ou arrêter le container il n'y a pas de solution. Mais toujours même problème, comment faire pour un container qu'il n'est pas possible d'arrêter ?
J'utilise de vrai volume au quotidien. Si je ne l'ai pas fais dans mon exemple c'est par simplicité et aussi en scriptant la copie des fichiers hors du container on s'affranchit de devoir créer un volume par container.
Born to Kill EndUser !
[^] # Re: Quelque chose qui m'échappe
Posté par Philippe M (site web personnel) . En réponse au journal Sauvegarder le contenu d’un container Docker avec BackupPC. Évalué à 2.
Tout dépend du container. Pour le cas de GLPI cela serait les fichiers uploader (factures, contrats…). J'avoue ne pas avoir penser à la solution de sauvegarder le répertoire contenant le volume sur l'hôte. J'ai rapidement été voir et c'est quand même un jolie sac dans le répertoire /var/lib/docker/overlay2. Il y a autant de répertoires que de volumes et comme ça il est difficile de savoir qui appartient à qui. Sans compter les volumes fantômes qui peuvent exister.
GLPI n'était qu'un exemple et l'idée est d'avoir quelques choses de réutilisable pour d'autres container.
Pour mysql il est clair qu'il est impossible de copier les fichiers plats, passer par mysqldump permet de mettre un lock le temps de l'export.
Born to Kill EndUser !
[^] # Re: typo
Posté par Philippe M (site web personnel) . En réponse au journal Sauvegarder le contenu d’un container Docker avec BackupPC. Évalué à 2.
Merci.
Born to Kill EndUser !
[^] # Re: Dans le même genre
Posté par Philippe M (site web personnel) . En réponse au journal Sauvegarder le contenu d’un container Docker avec BackupPC. Évalué à 3.
Je ne connaissais pas Bivac, d'après ce que je comprends c'est uniquement pour les volumes.
BackupPC n'est pas dédié à la sauvegarde Docker, c'est un outil de sauvegarde au sens large. J'ai juste fais un script de pre-backup executé par BackupPC.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2. Dernière modification le 22 octobre 2021 à 15:01.
Version corrigé, il y avait un problème avec le mv qui n'aimais pas trop les espaces dans le nom de fichier initial.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2.
Effectivement, c'est bien plus propre comme tu le propose.
Merci.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2.
Et voilà le petit dépôt qui va bien pour les warrior : https://github.com/Philippe-M/mail2print
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2.
s/getmail m'a souvent/getmail m'a sauvé/
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2.
getmail m'a souvent, je te laisse voir plus bas le montage fait.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 4. Dernière modification le 22 octobre 2021 à 11:19.
Nikel avec getmail
fichier de config
Dans mon container je lance toute les x minutes getmail par cette commande
getmail "copie" les mails dans le répertoire Mail/new, efface le mail de INBOX pour le copier dans INBOX.INBOX.archives
Ensuite le script suivant extrait les fichiers joints, lance l'impression et fait le ménage dans les répertoires.
Faut que j'intègre la suppression du fichier log tout les x jours et éventuellement une purge du dossier INBOX.INBOX.archives tout les x mois.
Au final j'utilise un seul programme getmail totalement intégré au système. Je vais voir pour publier tout ça sur docker hub et github.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 3.
La gestion des pièces jointes est faite par un script shell qui va gratter dans le répertoire $USER/Mail. Il mérite encore quelques améliorations mais en l'état il fait le taff.
J'ai déjà fais quelques bricoles en python et j'ai vraiment du mal à me faire à ce langage. Mon idée était de rester sur des programmes systèmes (fetchmail, procmail…) scriptable pour rester simple et ne pas re-inventer la roue.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2.
L'idée de sortir mon python m'a traversé l'esprit mais je trouve dommage de tout refaire "juste" à cause d'un problème de déplacement de mail.
imap-cli a l'air d'être à l'arrêt et il ne me semble pas gérer les pièces jointes.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2.
D'après ce que j'ai compris --folder de fetchmail permet de dire quel "répertoire" aller relever, donc le répertoire doit être existant dans la BAL. Dans mon cas les nouveaux mails doivent rester à la racine et doivent être déplacé uniquement après traitement (impression).
fetchmail.conf
procmail.conf
J'ai comme l'impression que fetchmail n'est pas capable d'envoyer des commandes, autre que pour relever les mails, au serveur.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2.
Ok merci je vais regarder tout ça.
Born to Kill EndUser !
[^] # Re: utiliser les APIs et les protocoles qui vont bien
Posté par Philippe M (site web personnel) . En réponse au message Imprimer une pièce jointe automatiquement en cli. Évalué à 2.
Effectivement je me connecte en imap mais je ne vois pas comment passer les commandes depuis mon container ?
Born to Kill EndUser !
[^] # Re: Keepass
Posté par Philippe M (site web personnel) . En réponse au message Gestionnaire de mots de passes. Évalué à 3.
Ok donc pas du tout adapté notre usage.
Born to Kill EndUser !
[^] # Re: Keepass
Posté par Philippe M (site web personnel) . En réponse au message Gestionnaire de mots de passes. Évalué à 2.
Il me semble que keepass et les déclinaisons ne sont pas vraiment multi-utilisateurs et sur le site je n'ai pas vu la notion de partage de mot de passe.
Born to Kill EndUser !