Il y a 3 machines impliquées dans ma tâcheComment télécharger des données par programme vers l'instance AWS EC2?
A
: mon bureauB
: instance EC2 filé parA
C
: un serveur linux à distance où les données se trouve et je n'ai lu privilège
La tâche a essentiellement trois étapes
- de spin up
B
deA
- données de téléchargement de
C
-B
à un endroit précis - de changer certaines des données téléchargées sur
B
Je sais comment faire 1 en utilisant awscli ou boto3. Les étapes 2 et 3 sont faciles si je ssh à l'instance EC2 manuellement. Le problème est que si cette tâche doit être automatisée, comment puis-je gérer les informations d'identification de connexion. Plus précisément, je pense utiliser user_data
pour exécuter des scripts shell après la naissance de l'instance EC2, mais le téléchargement de données utilise scp
qui nécessite un mot de passe. Ensuite, je pourrais télécharger un fichier d'informations d'identification ssh à l'instance EC2, mais je ne peux pas utiliser user_data
pour exécuter le script pour l'étape 2 et 3.
Donc, ma solution actuelle est tout de script shell
- spin up
B
deA
- téléchargement des titres ssh
A
-B
- ssh
A
-B
avec des commandes de shell attachés où les étapes 2 et 3 pour la tâche sont effectuées
Cette solution semble vraiment moche pour moi. Y a-t-il une meilleure pratique dans ce cas?
Avez-vous essayé les rôles ec2 sur B? –
Les rôles ec2 fonctionneraient-ils si 'C' n'est pas une instance aws? – nos