La AWS SDK for Java versione 1.x è entrata in modalità manutenzione il 31 luglio 2024 e sarà disponibile il 31 end-of-support
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Gestione di istanze Amazon EC2
Creazione di un'istanza
Creazione di un nuovoAmazon EC2istanza chiamando AmazonEC2ClientrunInstances
metodo, fornendogli unRunInstancesRequestcontenenteAmazon Machine Image (AMI)da usare e untipo di istanza.
Importazioni
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;
Codice
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();
Consulta ilEsempio completo
Avvio di un'istanza
Per avviare unAmazon EC2istanza, chiama AmazonEC2ClientstartInstances
metodo, fornendogli unStartInstancesRequestcontenente l'ID dell'istanza da avviare.
Importazioni
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.StartInstancesRequest;
Codice
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); StartInstancesRequest request = new StartInstancesRequest() .withInstanceIds(instance_id); ec2.startInstances(request);
Consulta ilEsempio completo
Arresto di un'istanza
Per arrestare unAmazon EC2istanza, chiama AmazonEC2ClientstopInstances
metodo, fornendogli unStopInstancesRequestcontenente l'ID dell'istanza da arrestare.
Importazioni
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.StopInstancesRequest;
Codice
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); StopInstancesRequest request = new StopInstancesRequest() .withInstanceIds(instance_id); ec2.stopInstances(request);
Consulta ilEsempio completo
Riavvio di un'istanza
Per riavviare unAmazon EC2istanza, chiama AmazonEC2ClientrebootInstances
metodo, fornendogli unRebootInstancesRequestcontenente l'ID dell'istanza da riavviare.
Importazioni
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;
Codice
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); RebootInstancesRequest request = new RebootInstancesRequest() .withInstanceIds(instance_id); RebootInstancesResult response = ec2.rebootInstances(request);
Consulta ilEsempio completo
Descrizione delle istanze
Per elencare le istanze, crea unDescribeInstancesRequeste chiama il client AmazonEC2describeInstances
Metodo. Restituirà unDescribeInstancesResultoggetto che è possibile utilizzare per elencare ilAmazon EC2istanze per l'account e la regione.
Le istanze sono raggruppate in base alla prenotazione. Ogni prenotazione corrisponde alla chiamata a startInstances
che ha avviato l'istanza. Per elencare le istanze, devi prima chiamare ilDescribeInstancesResult
classe»getReservations' method, and then call `getInstances
su ogni restituitoPrenotazioneoggetto.
Importazioni
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;
Codice
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; } }
I risultati vengono paginati; puoi ottenere altri risultati passando il valore restituito dall'oggetto risultantegetNextToken
metodo per il tuo oggetto richiesta originalesetNextToken
metodo, quindi utilizzando lo stesso oggetto richiesta nella prossima chiamata adescribeInstances
.
Consulta ilEsempio completo
Monitoraggio di un'istanza
Puoi monitorare diversi aspetti delle istanze Amazon EC2, ad esempio utilizzo della CPU e della rete, memoria disponibile e spazio su disco rimanente. Per ulteriori informazioni sul monitoraggio delle istanze, consultaMonitoraggioAmazon EC2nellaAmazon EC2Guida per l'utente di istanze Linux.
Per iniziare a monitorare un'istanza, è necessario creare unMonitorInstancesRequestcon l'ID dell'istanza da monitorare e passarlo a quello di AmazonEC2ClientmonitorInstances
Metodo.
Importazioni
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.MonitorInstancesRequest;
Codice
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); MonitorInstancesRequest request = new MonitorInstancesRequest() .withInstanceIds(instance_id); ec2.monitorInstances(request);
Consulta ilEsempio completo
Arresto del monitoraggio delle istanze
Per interrompere il monitoraggio di un'istanza, creare unUnmonitorInstancesRequestcon l'ID dell'istanza di cui interrompere il monitoraggio e passarlo a AmazonEC2ClientunmonitorInstances
Metodo.
Importazioni
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.UnmonitorInstancesRequest;
Codice
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); UnmonitorInstancesRequest request = new UnmonitorInstancesRequest() .withInstanceIds(instance_id); ec2.unmonitorInstances(request);
Consulta ilEsempio completo
Ulteriori informazioni
-
RunInstancesnellaAmazon EC2Documentazione di riferimento API
-
DescribeInstancesnellaAmazon EC2Documentazione di riferimento API
-
StartInstancesnellaAmazon EC2Documentazione di riferimento API
-
StopInstancesnellaAmazon EC2Documentazione di riferimento API
-
RebootInstancesnellaAmazon EC2Documentazione di riferimento API
-
MonitorInstancesnellaAmazon EC2Documentazione di riferimento API
-
UnmonitorInstancesnellaAmazon EC2Documentazione di riferimento API