O AWS SDK para Java 1.x entrou no modo de manutenção em 31 de julho de 2024 e chegará end-of-support
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Gerenciando Amazon EC2 instâncias
Criar uma instância
Crie uma nova Amazon EC2 instância chamando o runInstances
método do Amazon EC2 Client, fornecendo a ele uma imagem de máquina da Amazon (AMI) RunInstancesRequestcontendo a Amazon Machine Image (AMI) a ser usada e um tipo de instância.
Importações
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
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 o exemplo completo
Iniciar uma instância
Para iniciar uma Amazon EC2 instância, chame o startInstances
método do Amazon EC2 Client, fornecendo a ele um StartInstancesRequestcontendo o ID da instância a ser iniciada.
Importações
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.StartInstancesRequest;
Código
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); StartInstancesRequest request = new StartInstancesRequest() .withInstanceIds(instance_id); ec2.startInstances(request);
Consulte o exemplo completo
Interromper uma instância
Para interromper uma Amazon EC2 instância, chame o stopInstances
método do Amazon EC2 Client, fornecendo a ele um StopInstancesRequestcontendo o ID da instância a ser interrompida.
Importações
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.StopInstancesRequest;
Código
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); StopInstancesRequest request = new StopInstancesRequest() .withInstanceIds(instance_id); ec2.stopInstances(request);
Consulte o exemplo completo
Como reinicializar uma instância
Para reinicializar uma Amazon EC2 instância, chame o rebootInstances
método do Amazon EC2 Client, fornecendo a ele um RebootInstancesRequestcontendo o ID da instância a ser reinicializada.
Importações
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
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); RebootInstancesRequest request = new RebootInstancesRequest() .withInstanceIds(instance_id); RebootInstancesResult response = ec2.rebootInstances(request);
Consulte o exemplo completo
Descrever instâncias
Para listar suas instâncias, crie um DescribeInstancesRequeste chame o describeInstances
método do Amazon EC2 Client. Ele retornará um DescribeInstancesResultobjeto que você pode usar para listar as Amazon EC2 instâncias da sua conta e região.
As instâncias são agrupadas por reserva. Cada reserva corresponde à chamada a startInstances
que iniciou a instância. Para listar as instâncias, você deve primeiro chamar a classe DescribeInstancesResult
getReservations' method, and then call `getInstances
em cada objeto Reservation retornado.
Importações
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
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; } }
Os resultados são paginados. É possível obter mais resultados passando o valor retornado do método getNextToken
do objeto resultante para o método setNextToken
do objeto de solicitação original e usando o mesmo objeto de solicitação na próxima chamada para describeInstances
.
Consulte o exemplo completo
Monitorar uma instância
Você pode monitorar vários aspectos de suas Amazon EC2 instâncias, como utilização da CPU e da rede, memória disponível e espaço em disco restante. Para saber mais sobre o monitoramento de instâncias, consulte Monitoramento Amazon EC2 no Guia Amazon EC2 do usuário para instâncias Linux.
Para começar a monitorar uma instância, você deve criar uma MonitorInstancesRequestcom o ID da instância a ser monitorada e passá-la para o monitorInstances
método do Amazon EC2 Client.
Importações
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.MonitorInstancesRequest;
Código
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); MonitorInstancesRequest request = new MonitorInstancesRequest() .withInstanceIds(instance_id); ec2.monitorInstances(request);
Consulte o exemplo completo
Interromper monitoramento de instâncias
Para parar de monitorar uma instância, crie uma UnmonitorInstancesRequestcom o ID da instância para interromper o monitoramento e passe-a para o unmonitorInstances
método do EC2 cliente Amazon.
Importações
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.UnmonitorInstancesRequest;
Código
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); UnmonitorInstancesRequest request = new UnmonitorInstancesRequest() .withInstanceIds(instance_id); ec2.unmonitorInstances(request);
Consulte o exemplo completo
Mais informações
-
RunInstancesna Referência da Amazon EC2 API
-
DescribeInstancesna Referência da Amazon EC2 API
-
StartInstancesna Referência da Amazon EC2 API
-
StopInstancesna Referência da Amazon EC2 API
-
RebootInstancesna Referência da Amazon EC2 API
-
MonitorInstancesna Referência da Amazon EC2 API
-
UnmonitorInstancesna Referência da Amazon EC2 API