Script sh qui automatise création et configuration VM
Résolu
Bonjour à tous
Pour l'une des taches de mon stage, je dois créer un script sh en mode automatisé qui provisionne puis configure une VM chez Scaleway (provider cloud) : Jusque là, je suis arrivé à automatiser l'installation de l'outil CLI de scaleway puis d'y créer une VM, mais là le script s'arrête quand je log via ssh à la VM distante que je viens de créer
En gros, voici la dernière commande qui s'exécute :
ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no root@$var
dans la variable var j'ai mis l'adresse IP de la nouvelle VM
Après je ne sais plus quoi faire pour que le script continue d'éxecuter les commandes qui suivent.
Merci de votre réponse !
Pour l'une des taches de mon stage, je dois créer un script sh en mode automatisé qui provisionne puis configure une VM chez Scaleway (provider cloud) : Jusque là, je suis arrivé à automatiser l'installation de l'outil CLI de scaleway puis d'y créer une VM, mais là le script s'arrête quand je log via ssh à la VM distante que je viens de créer
En gros, voici la dernière commande qui s'exécute :
ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no root@$var
dans la variable var j'ai mis l'adresse IP de la nouvelle VM
Après je ne sais plus quoi faire pour que le script continue d'éxecuter les commandes qui suivent.
Merci de votre réponse !
1 réponse
-
Bonjour,
En toute rigueur, il faudrait éviter les optionsStrictHostKeyChecking=no
. Tu peux éviter l'option -i dansssh
si tu as lancéssh-add
au préalable (il faut que ssh-agent tourne). Note au passage que se logguer en root en ssh n'est pas recommandé par les grandes marques (et souvent interdit dans la configuration de base de ssh).
Ensuite, il faut que toute les commandes exécutées sur la machine déportée soient écrite à la suite de la commande ssh (sinon, elles sont exécutées en local).
Exemple :
ip addr # Récupère les information sur la machine locale ssh login@machine ip addr # Récupère les information sur la machine distante
.
Si tu en as beaucoup à lancer, une bonne idée peut être d'uploader sur la machine distante un script dans/tmp/toto.sh
à l'aide de la commandescp
, puis d'exécuter le script uploadé avecssh login@machine sh /tmp/toto.sh
.
Exemple :
ssh-add scp /home/toto/toto.sh login@machine:/tmp ssh login@machine /tmp/toto.sh
Bonne chance-
- De rien, j'en déduis que ton problème peut être marqué comme résolu ?
-