2011-12-07 3 views
5

Je souhaite exécuter une instance ponctuelle Amazon EC2 en tant que serveur CI. Afin de conserver les informations historiques, je souhaite conserver toutes les données sur un volume EBS distinct car le volume EBS de l'instance spot sera supprimé chaque fois qu'il sera terminé.Liaison d'EBS au démarrage de l'instance ponctuelle Amazon EC2

Comment puis-je monter le volume EBS au démarrage?

Merci, Ido.

Répondre

5

vous pouvez avoir un script init qui fixe le déjà disponible le volume, en utilisant cette commande:

ec2-attach-volume volume_id --instance instance_id --device device 

pour que cela fonctionne, vous avez besoin de

  1. EC2-API installé sur la machine

  2. vous devez avoir EC2_PRIVATE_KEY et EC2_CERT comme variable d'environnement ou devra passer explicitement.

  3. Le volume que vous essayez de joindre devrait être disponible. Ou, facultativement, vous pouvez d'abord forcer detach the volume.

  4. Vous pouvez utiliser curl http://169.254.169.254/latest/meta-data/instance-id pour obtenir l'instance_id de l'instance en cours.

Référez:

Hope this helps.

+0

Y at-il un moyen de le faire avec le volume racine? Vraisemblablement, vous ne pouvez pas utiliser le script init car s'il utilise déjà le disque racine pour exécuter le script, alors il est déjà trop tard pour que le disque racine EBS existant soit le volume racine? –

+0

Sachez également que les scripts init sont exécutés par root, donc vos informations d'identification doivent être ajoutées en tant que root. awscli a besoin de ceci en particulier. Après avoir attaché l'appareil, il peut être nécessaire de le monter explicitement. – mckenzm

2

Vous pouvez utiliser l'API EC2 et la connaissance de vos ID de volume EBS pour ce faire.

Les étapes exactes dépendent de votre système d'exploitation. Voici un lien qui montre comment le faire sur Linux

http://ec2dream.blogspot.com/search/label/EBS

Ce script particulier est en Ruby, que vous devrez peut-être installer en fonction de votre distribution Linux. Les principaux peuvent être facilement transférés, par ex. bash.

Si votre instance exécute Windows, voir ceci:

Automount EBS volume in Amazon EC2 Windows Instance