La AWS SDK for Java 1.x se alcanzó end-of-support el 31 de diciembre de 2025. Le recomendamos que migre a AWS SDK for Java 2.x para seguir recibiendo nuevas características, mejoras de disponibilidad y actualizaciones de seguridad.
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Administración de instancias de Amazon EC2
Crear una instancia
Cree una nueva instancia de Amazon EC2 llamando al método runInstances de AmazonEC2Client, proporcionando un objeto RunInstancesRequest que contenga la Imagen de máquina de Amazon (AMI) que se va a usar y un tipo de instancia.
Importaciones
import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.InstanceType; import com.amazonaws.services.ec2.model.RunInstancesRequest; import com.amazonaws.services.ec2.model.RunInstancesResult; import com.amazonaws.services.ec2.model.Tag;
Código de
RunInstancesRequest run_request = new RunInstancesRequest() .withImageId(ami_id) .withInstanceType(InstanceType.T1Micro) .withMaxCount(1) .withMinCount(1); RunInstancesResult run_response = ec2.runInstances(run_request); String reservation_id = run_response.getReservation().getInstances().get(0).getInstanceId();
Consulte el ejemplo completo
Iniciar una instancia
Para iniciar una instancia Amazon EC2, llame al método startInstances de AmazonEC2Client, proporcionando un objeto StartInstancesRequest que contenga el ID de la instancia que se va a iniciar.
Importaciones
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.StartInstancesRequest;
Código de
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); StartInstancesRequest request = new StartInstancesRequest() .withInstanceIds(instance_id); ec2.startInstances(request);
Consulte el ejemplo completo
Detener una instancia
Para detener una instancia Amazon EC2, llame al método stopInstances de AmazonEC2Client, proporcionando un objeto StopInstancesRequest que contenga el ID de la instancia que se va a detener.
Importaciones
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.StopInstancesRequest;
Código de
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); StopInstancesRequest request = new StopInstancesRequest() .withInstanceIds(instance_id); ec2.stopInstances(request);
Consulte el ejemplo completo
Reiniciar una instancia
Para reiniciar una instancia Amazon EC2, llame al método rebootInstances de AmazonEC2Client, proporcionando un objeto RebootInstancesRequest que contenga el ID de la instancia que se va a reiniciar.
Importaciones
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.RebootInstancesRequest; import com.amazonaws.services.ec2.model.RebootInstancesResult;
Código de
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); RebootInstancesRequest request = new RebootInstancesRequest() .withInstanceIds(instance_id); RebootInstancesResult response = ec2.rebootInstances(request);
Consulte el ejemplo completo
Describir instancias
Para enumerar sus instancias, cree un objeto DescribeInstancesRequest y llame al método describeInstances de AmazonEC2Client. Se devolverá un objeto DescribeInstancesResult que puede utilizar para mostrar las instancias Amazon EC2 de su cuenta y región.
Las instancias se agrupan por reserva. Cada reserva se corresponde con la llamada a startInstances que lanzó la instancia. Para mostrar sus instancias, primero debe llamar al método getReservations' method, and then call `getInstances de la clase DescribeInstancesResult en cada objeto Reservation devuelto.
Importaciones
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.DescribeInstancesRequest; import com.amazonaws.services.ec2.model.DescribeInstancesResult; import com.amazonaws.services.ec2.model.Instance; import com.amazonaws.services.ec2.model.Reservation;
Código de
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); boolean done = false; DescribeInstancesRequest request = new DescribeInstancesRequest(); while(!done) { DescribeInstancesResult response = ec2.describeInstances(request); for(Reservation reservation : response.getReservations()) { for(Instance instance : reservation.getInstances()) { System.out.printf( "Found instance with id %s, " + "AMI %s, " + "type %s, " + "state %s " + "and monitoring state %s", instance.getInstanceId(), instance.getImageId(), instance.getInstanceType(), instance.getState().getName(), instance.getMonitoring().getState()); } } request.setNextToken(response.getNextToken()); if(response.getNextToken() == null) { done = true; } }
Los resultados se paginan; puede obtener más resultados pasando el valor devuelto del método getNextToken del objeto resultante al método setNextToken del objeto de la solicitud original, usando el mismo objeto de la solicitud en la siguiente llamada a describeInstances.
Consulte el ejemplo completo
Monitorizar una instancia
Puede monitorizar distintos aspectos de las instancias Amazon EC2, como el uso de la CPU y la red, la memoria disponible y el espacio en disco restante. Para obtener más información sobre la supervisión de instancias, consulte Supervisión Amazon EC2 en la Guía del usuario de Amazon EC2 para instancias Linux.
Para iniciar la monitorización de una instancia, debe crear un objeto MonitorInstancesRequest con el ID de la instancia que se va a monitorizar y pasarlo al método monitorInstances de AmazonEC2Client.
Importaciones
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.MonitorInstancesRequest;
Código de
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); MonitorInstancesRequest request = new MonitorInstancesRequest() .withInstanceIds(instance_id); ec2.monitorInstances(request);
Consulte el ejemplo completo
Detener la monitorización de instancias
Para detener la monitorización de una instancia, cree un objeto UnmonitorInstancesRequest con el ID de la instancia cuya monitorización se va a detener y pase el objeto al método de AmazonEC2Client.
Importaciones
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.UnmonitorInstancesRequest;
Código de
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); UnmonitorInstancesRequest request = new UnmonitorInstancesRequest() .withInstanceIds(instance_id); ec2.unmonitorInstances(request);
Consulte el ejemplo completo
Más información
-
RunInstances en la referencia de la API de Amazon EC2
-
DescribeInstances en la referencia de la API de Amazon EC2
-
StartInstances en la referencia de la API de Amazon EC2
-
StopInstances en la referencia de la API de Amazon EC2
-
RebootInstances en la referencia de la API de Amazon EC2
-
MonitorInstances en la referencia de la API de Amazon EC2
-
UnmonitorInstances en la referencia de la API de Amazon EC2