Pronic fait confiance à Via-Numérica pour son PRA

Extrait du livre blanc sur le PRA de Via-Numérica (20 JUIN 2018)

https://www.via-numerica.net/telecharger-le-livre-blanc-pra-pca/

Pronic, spécialiste mondial du taraudage et de l’insertion sous presse, fait appel à Via Numérica
pour la gestion de son réseau, l’hébergement de la quasi-totalité de ses données et la gestion
d’un plan de reprise d’activité particulièrement exigeant. La réussite de cette entreprise, dont le
siège est situé à Marignier (en Haute-Savoie), est intimement liée à la vélocité de son système
d’information.

Créée en 1989 et historiquement spécialisée dans le taraudage sous presse, l’entreprise Pronic (70 collabo-rateurs) s’est taillé une solide réputation à l’internatio-nal sur tout ce qui touche aux solutions d’insertion sous presse (« /nOie »). Une activité qui nécessite un savoir-faire industriel, mais aussi une expertise informatique.« Plus d’un tiers des collaborateurs sont des ingénieurs. qui utilisent quotidiennement des logiciels de conception assistée par ordinateur (CAO) assez pointus, comme Solid-Works ». indique Guillaume Jacquemoud, responsable du système d’information. « Dans un tel contexte. toute panne de réseau ou chute de serveur serait donc très dom-mageable. »

Sauvegardes externalisées

Pour éviter les déconvenues, Pronic (11,7 millions de chiffre d’affaires l’an dernier) s’appuie sur un double lien en fibre optique (un lien de 1 gigabit/s et un lien 100 mégabits/s), déployé et géré par Via Numérica. Elle a aussi pris le parti d’externa liser la totalité de ses ser-veurs dans les salles d’hébergement de cet opérateur local. Les données et les applications sont encapsulées dans « une trentaine de machines virtuelles (VM) réparties sur trois serveurs ESX (VMware) », précise Guillaume Jac-quemoud. « S’y ajoute une quatrième machine ESX qui est elle entièrement dédiée à la sauvegarde et au PRA. »
Grâce à l’accès très haut débit qui relie Pronic aux deux centres d’hébergement de Via Numérica. l’entre-prise bénéficie d’un accès instantané – sans temps de latence – aux applications métiers hébergées dans des serveurs virtuels. Elle assure en outre une sauvegarde journalière de l’ensemble de ses données sur un équi-pement de secours. qui pourra être appelé en renfort en cas d’incident.

Machines virtuelles de secours

Le « backup » est facilité par la capacité de Via Numérica à piloter à la fois le réseau très haut débit et l’héberge-ment : « En cas d’avarie sur un serveur, les deux liens redon-dants seront mobilisés pour nous offrir un accès immédiat au PRA de secours, comme si celui-ci était installé dans nos murs ». Ce cas de figure s’est déjà présenté. lorsque la mise à jour d’un pare-feu (firewall) installé sur une machine sensible a échoué. « Nos efforts pour corriger le problème ne nous ont pas permis de trouver une solution sur un court laps de temps », souligne Guillaume Jacque-moud. « Nous avons donc choisi de démarrer la dernière version sauvegardée de la machine qui dysfonctionnait, sans que la production ne s’en trouve perturbée ». Les processus visant à déclencher le PRA sont en outre bien huilés. « Un numéro nous permet d’appeler le support, qui redirige l’appel vers l’expert le plus compétent à l’instant T « , conclut le spécialiste. « En cas d’urgence, je sais que je peux aussi compter sur les référents réseau et hébergement de l’opérateur. »

raccourci windows lancement ssh avec commande

Cette astuce permet depuis un raccourci windows d’exécuter une commande DOS qui lancera une connexion SSH avec des commande dedans. (c’est du lourd!)

Pré-requis

  • Pouvoir lancer une commande ssh dans l’invite de commande DOS
  • Pourvoir se connecter au serveur ssh avec un certificat (sinon la connexion automatique ne marchera pas (tuto à  venir si j’ai le temps)

Continuer la lecture de « raccourci windows lancement ssh avec commande »

VBA macro afficher nom de cellule dans colonne à  côté

Voici une petite macro qui permet d’afficher les noms de cellule d’une colonne dans une autre colonne.

Pratique pour le développement.

Macro excel liste des cellules et plages nommées d’un classeur excel

Une petite macro vraiment intéressante.

Explication  : La macro suivante liste les cellules et les plages nommées, dans l’ordre d’index des feuilles, et crée une table des matières avec liens hypertextes.

Attention à  l’exécuter sur une feuille vierge  !

Git : astuces

Installation

apt-get install git-core

 

Configuration

 

  • Fichier /etc/gitconfig  : Contient les valeurs pour tous les utilisateurs et tous les dépôts du système. Si vous passez l’option –system à  git config, il lit et écrit ce fichier spécifiquement.
  • Fichier ~/.gitconfig  : Spécifique à  votre utilisateur. Vous pouvez forcer Git à  lire et écrire ce fichier en passant l’option –global.
  • Fichier config dans le répertoire Git (c’est à  dire .git/config) du dépôt en cours d’utilisation  : spécifique au seul dépôt en cours. Chaque niveau surcharge le niveau précédent, donc les valeurs dans .git/config surchargent celles de /etc/gitconfig.

Sur les systèmes Windows, Git recherche le fichier .gitconfig dans le répertoire $HOME (C:\Documents and Settings\$USER la plupart du temps). Il recherche tout de même /etc/gitconfig, bien qu’il soit relatif à  la racine MSys, qui se trouve o๠vous aurez décidé d’installer Git sur votre système Windows.

 

Collé à  partir de <http://git-scm.com/book/fr/D%C3%A9marrage-rapide-Param%C3%A9trage-%C3%A0-la-premi%C3%A8re-utilisation-de-Git>

 

configurer un utilisateur

afin d’identifier qui fait quoi

git config –global user.name   « Guillaume Jacquemoud »

git config –global user.email « g.jacquemoud@ultimeo.com »

git config –global core.editor nano

git config –global –add color.ui true

git config alias.st status

git config alias.ct commit

git config alias.ck checkout

git config alias.br branch

 

lister la config

git config –list

 

alias]

st = status

ct = commit

ck = checkout

br = branch

 

 

 

Ignorer les fichiers inutiles

 

Le fait d’indiquer à  Git d’ignorer des fichiers inutiles permet de ne conserver la trace que des modifications apportés au code lui-même.

 

Les changements dans les fichiers temporaires par exemple sont trop fréquents et inintéressants. Nous allons donc tout bonnement ignorer ces fichiers.

Voici une liste non exhaustive de fichiers à  ignorer :

 

  •       des fichiers temporaires : logs, cache…
  •       des fichiers uploadés par les utilisateurs
  •       des fichiers dépendant de l’environnement : configuration de la base de données, index.php, .htaccess…

 

Git stocke la liste des fichiers à  ignorer dans un fichier .gitignore situé à  la racine de l’application. Nous créons ce fichier et y ajoutons le contenu suivant :

 

# .gitignore

tmp/**/*

tmp/**/**/*

.htaccess

config/core.php

config/config.php

config/database.php

webroot/.htaccess

webroot/index.php

webroot/test.php

!.gitignore

 

La syntaxe avec les étoiles permet d’ignorer tous les sous-répertoires de tmp.

Enfin, dernière chose, nous devons également indiquer à  Git de ne pas ignorer les fichiers .gitignore présents dans les répertoires vides. Nous ajoutons pour cela en fin de fichier .gitignore la ligne

 

!.gitignore

 

 

Configurer un dépôt privé

  • Il faut avoir déjà  un projet de créé dans un dossier ex : /var/www/projet1/
  • Avoir fait un git init et des commits
  • Allez dans votre dossier o๠stocker les repositories ex : /var/repos/
  • Faire

git clone –bare /var/www/projet1/.git   /var/repos/mondepot.git

 

Collé à  partir de <http://www.alexgirard.com/git-book/4_configurer_un_d%25C3%25A9p%25C3%25B4t_priv%25C3%25A9.html>

 

Configurer un serveur remote

git remote add ‘prod’ /var/www/repository/ultimeo/tgit/master.git

 

Les commandes

 

Initialisation

 

Sur un projet

Allez dans un dossier de développement (/var/www/projet1/) et en shell taper :

git init

 

Pour un repository

Initialise un repo git vide

Allez dans un dossier de accessible (/home/phpuser/git/) et en shell taper :

mkdir projet1.git

cd projet1.git

git –bare init

 

Ajouter un remote (repository) à  son instance git

git remote add prod /var/www/repository/ultimeo/tgit/master.git

git remote add   origin ssh://phpuser@web1.toto.fr:1987/home/phpuser/git/projet1.git

 

 

Commit

 

git add .

 

git commit -am « message du commit »

 

Réparer une erreur non-committée

Si vous vous êtes embrouillé dans votre répertoire de travail, mais que vous n’avez pas encore committé vos erreurs, vous pouvez retrouver l’état dans lequel était votre répertoire après le dernier commit en utilisant  :

 

$ git reset –hard HEAD

Cela effacera toutes les modifications que vous avez ajouté à  l’index git ainsi que les changements qui sont présents dans votre répertoire de travail mais qui n’ont pas été ajoutés à  l’index. En d’autres termes, après cette commande, le résultat de git diff et git diff –cached sera vide.

Si vous ne voulez restaurer qu’un seul fichier, par exemple hello.rb, utiliser plutôt git checkout  :

 

$ git checkout — hello.rb
$ git checkout HEAD hello.rb

La première commande restaure hello.rb à  la version de l’index afin que git diff hello.rb ne retourne aucune différence. La seconde commande restaurera hello.rb à  la version de la révision HEAD afin que git diff hello.rb et git diff –cached hello.rb ne retourne aucune différence.

 

Réparer une erreur committée

Si vous avez déjà  committé ce que vous n’auriez pas dà», il y a deux faà§ons fondamentalement différentes de régler le problème  :

  1. Vous pouvez créer un nouveau commit qui annule les changements du dernier commit. C’est la manière correcte de s’y prendre si votre erreur est déjà  publique.
  2. Vous pouvez revenir en arrière et modifier l’ancien commit. Vous ne devriez jamais faire à§a si vous avez déjà  rendu l’historique public. Git n’est pas conà§u pour que l’historique d’un projet change et ne peut pas effectuer correctement des fusions répétés sur depuis une branche qui a vu son historique modifié.

 

Réparer une erreur sur un nouveau commit

Il est facile de créer un nouveau commit qui annule les changements d’un commit précédent. Utilisez la commande git revert avec la référence du mauvais commit, par exemple, pour revenir au commit le plus récent  :

 

$ git revert HEAD

Cela créera un nouveau commit qui annulera les changements dans HEAD. Vous pourrez éditer le message de ce nouveau commit.

Vous pouvez aussi revenir sur des changements plus anciens, par exemple, sur l’avant-dernier changement  :

 

$ git revert HEAD^

Dans ce cas, git essayera d’annuler l’ancien changement en gardant intactes les modifications faites depuis. Si plus d’un changement se superpose sur les changements à  annuler, vous aurez à  régler les conflits manuellement, de la même faà§on que quand vous réglez une fusion.

 

Réparer une erreur en modifiant le commit

Si vous venez de committer quelque chose mais que vous vous rendez compte que vous devez réparer ce commit, les versions récentes de git commit vous donnent accès à  l’option –amend qui demande à  git de remplacer le commit de HEAD par un autre, basé sur le contenu actuel de l’index. Cela vous donne l’opportunité d’ajouter de fichiers que vous avez oubliés ou de corriger des erreurs de typo dans le message du commit, avant de publier les changements pour les autre développeurs.

 

Si vous trouvez une erreur dans un ancien commit, mais que vous ne l’avez toujours pas publié, utilisez le mode interactif de git rebase, avec git rebase -i en marquant les changements qui doivent être corrigés avec edit. Cela vous permettra de modifier le commit pendant le processus de recombinaison.

 

Collé à  partir de <http://www.alexgirard.com/git-book/4_r%25C3%25A9paration_avec_git_%25E2%2580%2594_reset%252C_checkout_et_revert.html>

 

 

 

Branches

 

Lister les branches existantes

  •  en local

git branch

  • local + celles des remotes

git branch -a

 

Créer une branche

git banch mabranche

 

Changer de branche

git checkout mabranche

 

pousser une branche

git push prod mabranche

 

tirer une branche (sur la branche en cours)

git pull prod mabranche

 

Merger une branche depuis une autre

ex : on a la branche master et une branche de dev mabranche. On corrige un bug sur le master pour remonter cette correction sur mabranche on fait:

 

se mettre sur la branche de destination

git checkout mabranche

git merge master

 

Dans la plus part des cas on sera dans le cas inverse : le dev sur mabranche est fini, on le fusionne avec le master:

 

git checkout master

git merge mabranche

 

Recombinaison (rebase)

 

Cette commande va retirer chacun de vos commit sur ‘mywork’, en les sauvegardant temporairement comme des patches (dans le dossier « .git/rebase »), puis mettre à  jour la branche ‘mywork’ avec la dernière version de la branche ‘origin’, et enfin appliquer chaque patch sauvegardé à  cette nouvelle version de ‘mywork’.

 

Une fois que la référence (‘mywork’) est mise à  jour jusqu’au dernier objet commit créé, vos anciens commits seront abandonnés. Ils seront sà»rement effacer si vous lancer la commande de ramasse-miettes. (voir git gc)

 

Dans le processus d’une recombinaison, des conflits peuvent se produire. Dans ce cas, le processus s’arrêtera et vous permettra de réparer ces conflits; après les avoir fixés, utilisez « git-add » pour mettre à  jour l’index avec ce nouveau contenu, puis, au lieu de lancer git-commit, lancez juste:

 

$ git rebase –continue

 

et git continuera d’appliquer le reste des patches.

à€ n’importe quel moment, vous pouvez utiliser l’option –abort pour annuler le processus et retourner au même état de ‘mywork’ qu’au démarrage de la recombinaison:

 

$ git rebase –abort

 

Collé à  partir de <http://alx.github.com/gitbook/4_recombinaison_(rebase).html>

 

 

 

 

Supprimer une branche

  • se mettre sur une autre branche !

git branch -d mabranche

 

 

 

Afficher les logs formatés :

git log –pretty=format: »%h par %an, %ar, => %s »

git log –pretty=format: »%h par %an, %ar, => %s » –graph

 

http://www.alexgirard.com/git-book/3_analyser_l%25E2%2580%2599historique_%25E2%2580%2594_git_log.html

http://git-scm.com/book/fr/Les-bases-de-Git-Visualiser-l%27historique-des-validations

 

=> pour sortir de git log : q

 

Git Status

La commande git status vous indique les fichiers que vous avez modifiés récemment

 

 

Cloner un repo

git clone monrepo

 

clone une branche spécifique

git clone -b nomdebranche monrepo

 

Virer les infos git :

find $TARGET -name .git | xargs rm -rf –

find $TARGET -name .gitignore | xargs rm -rf –

find $TARGET -name .gitmodules | xargs rm -rf –

find $TARGET -name .svn | xargs rm -rf –

 

Collé à  partir de <http://www.alexgirard.com/git-book/3_analyser_l%25E2%2580%2599historique_%25E2%2580%2594_git_log.html>

Time lapse : compte à  rebours javascript pour les interros

J’ai développé ce petit script pour ma femme qui est professeur et qui en avait marre, pendant ses interros, que ses élèves lui demandent :

– Il reste combien de temps ?

Le principe est simple vous entrez l’heure de fin de l’examen, puis vous cliquez sur commencer.

Le compte à  rebours commence. A la fin l’écran clignote rouge !

=> Télécharger le script : timelapses <=

Ref technique :

 

VBA : changer nom cellule de manière récursive

Petite macro VBA qui permet de changer de manière récursive le nom des cellules (le nom pas les valeurs).

Cette exemple

  • Boucle sur la première ligne A1, B2, C3 …
  • Vérifie si le contenu de ce champ
  • Si non vide, il renomme la cellule juste en dessous (A2, B2, C2 …) avec le contenu de la cellule initiale.

Nota la fonction offset(x,y) permet de se déplacer de de x,y depuis la cellule en focus.

Installation d’un serveur ubuntu lamp

Installer ubuntu normalement (ne pas faireles pré-installations proposé (ex : lamp))

 

Activer le compte root

Installer ssh

Mettre une IP statique

Modifier comme suit :

redémarrer le service réseau :

Installer le LAMP

Créer un utilisateur php (ex : phpuser)

Personnellement je me crée un utilisateur phpuser qui appartient au groupe www-data et qui à  le droit de se connecter en ssh.
Ensuite pour développer je me connecte avec ce compte il suffit que dans le www
– les dossiers soient en chmod 775 au lieu de 755
– les fichiers soient en chmod 664 au lieu de 644
on résout ainsi les problèmes de droit d’exécution des fichiers tout en maintenant la sécurité

PROCEDURE :

#créer le user :

#Ajouter le user dans le groupe www-data :

#Pour vérifier les groupes du user :

#forcer le user phpuser à  écrire en 775/664 plutôt que 755/644

#forcer le user www-data à  écrire en 775/664 plutôt que 755/644

#on se déplace vers /var

#on change le groupe du www

#On positionne le GID bit : les fichiers et dossiers créés appartiendront au groupe www-data

on met à  jour les droits sur les fichiers & dossier existant s’il y en a

OPTIONNEL : ajout du de votre certificat ssl pour le user

#copier la clé publique

Import et mappage de xml dans fichier excel 2010

Il est intéressant d’importer des fichiers xml dans un fichier excel pour les consulter et travailler sur leurs données.

Pour ce faire il vous faut

Voici une macro qui lié à  un bouton vous permet de mettre à  jour les données du fichier excel à  partir d’un xml qui respecte le mappage créé ci-dessus et dont l’url est connu dans par exemple  la cellule excel de votre classeur que l’on nommera « xmlUrl »