Cambio de un tipo de instancia de Amazon EC2 con un script de Bash en la AWS CLI
Este ejemplo de scripting de Bash para Amazon EC2 cambia el tipo de instancia de una instancia de Amazon EC2 con el método AWS Command Line Interface (AWS CLI). Detiene la instancia si se está ejecutando, cambia el tipo de instancia y, a continuación, si se solicita, reinicia la instancia. Los scripts de shell son programas diseñados para ejecutarse en una interfaz de línea de comandos.
nota
Para ver ejemplos de comandos adicionales, consulte la AWS CLIguía de referencia de
Antes de comenzar
Antes de que pueda ejecutar cualquiera de los siguientes ejemplos, se debe completar lo siguiente.
Instalar y configurar la AWS CLI. Para obtener más información, consulte Instalación o actualización de la versión más reciente de AWS CLI y Credenciales de autenticación y acceso para la AWS CLI.
-
El perfil que utilice debe tener permisos que permitan que se realicen las operaciones de la AWS mediante ejemplos.
-
Una instancia de Amazon EC2 en ejecución en la cuenta para la que tiene permiso para detener y modificar. Si ejecuta el script de prueba, inicia una instancia, prueba el cambio del tipo y, a continuación, termina la instancia.
-
Como práctica recomendada de AWS, conceda privilegios mínimos a este código o solo los permisos necesarios para llevar a cabo una tarea. Para obtener más información, consulte Otorgar privilegios mínimos en la Guía del usuario de AWS Identity and Access Management (IAM).
-
Este código no ha sido probado en todas las regiones de AWS. Algunos servicios de AWS solo están disponibles en regiones específicas. Para obtener más información, consulte Puntos de enlace de servicio y cuotas en la Guía de referencia general de AWS.
-
La ejecución de este código puede resultar en cargos en su cuenta de AWS. Es su responsabilidad asegurarse de que los recursos creados por este script se eliminen cuando haya terminado con ellos.
Acerca de este ejemplo
Este ejemplo se escribe como una función en el archivo de script de shell change_ec2_instance_type.sh
que puede source
desde otro script o desde la línea de comandos. Cada archivo de script contiene comentarios que describen cada una de las funciones. Una vez la función esté en la memoria, puede invocarla desde la línea de comandos. Por ejemplo, los siguientes comandos cambian el tipo de instancia especificada a t2.nano
:
$
source ./change_ec2_instance_type.sh
$
./change_ec2_instance_type -i *instance-id* -t new-type
Para obtener el ejemplo completo y los archivos de script descargables, consulte el Cambio del tipo de instancia de Amazon EC2
Parámetros
-i-(string) Especifica el ID de instancia que se va a modificar.
-t-(string)Especifica el tipo de instancia de Amazon EC2 al que se va a cambiar.
-r-(switch) De forma predeterminada, no se establece. Si se configura -r
, reinicia la instancia después del modificador de tipo.
-f-(switch) De forma predeterminada, el script solicita al usuario que confirme el cierre de la instancia antes de realizar el cambio. Si se configura -f
, la función no le pide al usuario antes de apagar la instancia para hacer el cambio de tipo
-v-(switch) De forma predeterminada, el script funciona silenciosamente y muestra la salida solo en caso de error. Si se configura -v
, la función muestra el estado a lo largo de su operación.
Archivos
change_ec2_instance_type.sh
-
El archivo de script principal contiene la función
change_ec2_instance_type()
que realiza las siguientes tareas:-
Comprueba que existe la instancia de Amazon EC2 especificada.
-
A menos que se seleccione
-f
, advierte al usuario antes de detener la instancia. -
Cambia el tipo de instancia
-
Si configura
-r
, reinicia la instancia y confirma que la instancia se está ejecutando
Ver el código de
change_ec2_instance_type.sh
en GitHub. -
test_change_ec2_instance_type.sh
-
El script del archivo
test_change_ec2_instance_type.sh
prueba las diversas rutas de código para la función dechange_ec2_instance_type
. Si todos los pasos del script de prueba funcionan correctamente, este elimina todos los recursos que ha creado.Puede ejecutar el script de prueba con los siguientes parámetros:
-
-v-(switch)Cada prueba muestra un estado de superación/fallo a medida que se ejecutan. De forma predeterminada, las pruebas se ejecutan silenciosamente y la salida incluye solo el estado final de aprobado o error.
-
-i-(switch) El script se detiene después de cada prueba para permitirle examinar los resultados intermedios de cada paso. Le permite examinar el estado actual de la instancia mediante la consola de Amazon EC2. El script pasa al siguiente paso después de presionar ENTER (INTRO) en el símbolo del sistema.
Ver el código de
test_change_ec2_instance_type.sh
en GitHub. -
awsdocs_general.sh
-
El archivo de script
awsdocs_general.sh
contiene funciones de uso general utilizadas en ejemplos avanzados para el AWS CLI.Ver el código de
awsdocs_general.sh
en GitHub.
Referencias
referencia de AWS CLI:
Otra referencia:
-
Para ver y contribuir al AWS SDK y los ejemplos de código de AWS CLI, consulte el Repositorio de ejemplos de código de AWS
en GitHub.