Usar regiões e zonas de disponibilidade - AWS SDK for Java 1.x

O AWS SDK for Java 1.x entrou no modo de manutenção em 31 de julho de 2024 e chegará end-of-supportem 31 de dezembro de 2025. Recomendamos que você migre para o AWS SDK for Java 2.xpara continuar recebendo novos recursos, melhorias de disponibilidade e atualizações de segurança.

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á.

Usar regiões e zonas de disponibilidade

Descrever regiões

Para listar as regiões disponíveis para a conta, chame o método describeRegions do AmazonEC2Client. Ele retorna um DescribeRegionsResult. Chame o método getRegions do objeto retornado para obter uma lista de objetos Region que representam cada região.

Importações

import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.DescribeRegionsResult; import com.amazonaws.services.ec2.model.Region; import com.amazonaws.services.ec2.model.AvailabilityZone; import com.amazonaws.services.ec2.model.DescribeAvailabilityZonesResult;

Código

DescribeRegionsResult regions_response = ec2.describeRegions(); for(Region region : regions_response.getRegions()) { System.out.printf( "Found region %s " + "with endpoint %s", region.getRegionName(), region.getEndpoint()); }

Consulte o exemplo completo.

Descrever zonas de disponibilidade

Para listar cada zona de disponibilidade disponível para a conta, chame o método describeAvailabilityZones do AmazonEC2Client. Ele retorna um DescribeAvailabilityZonesResult. Chame o método getAvailabilityZones para obter uma lista de objetos AvailabilityZone que representam cada zona de disponibilidade.

Importações

import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.DescribeRegionsResult; import com.amazonaws.services.ec2.model.Region; import com.amazonaws.services.ec2.model.AvailabilityZone; import com.amazonaws.services.ec2.model.DescribeAvailabilityZonesResult;

Código

DescribeAvailabilityZonesResult zones_response = ec2.describeAvailabilityZones(); for(AvailabilityZone zone : zones_response.getAvailabilityZones()) { System.out.printf( "Found availability zone %s " + "with status %s " + "in region %s", zone.getZoneName(), zone.getState(), zone.getRegionName()); }

Consulte o exemplo completo.

Descrever contas

Para descrever a conta, chame o método describeAccountAttributes do AmazonEC2Client. Esse método retorna um objeto DescribeAccountAttributesResult. Invoque o método getAccountAttributes desses objetos para obter uma lista de objetos AccountAttribute. É possível percorrer a lista para recuperar um objeto AccountAttribute.

Você pode obter os valores dos atributos da sua conta invocando o método getAttributeValues do objeto AccountAttribute. Esse método retorna uma lista de objetos AccountAttributeValue. É possível percorrer essa segunda lista para exibir o valor dos atributos (veja o exemplo de código a seguir).

Importações

import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.AccountAttributeValue; import com.amazonaws.services.ec2.model.DescribeAccountAttributesResult; import com.amazonaws.services.ec2.model.AccountAttribute; import java.util.List; import java.util.ListIterator;

Código

AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); try{ DescribeAccountAttributesResult accountResults = ec2.describeAccountAttributes(); List<AccountAttribute> accountList = accountResults.getAccountAttributes(); for (ListIterator iter = accountList.listIterator(); iter.hasNext(); ) { AccountAttribute attribute = (AccountAttribute) iter.next(); System.out.print("\n The name of the attribute is "+attribute.getAttributeName()); List<AccountAttributeValue> values = attribute.getAttributeValues(); //iterate through the attribute values for (ListIterator iterVals = values.listIterator(); iterVals.hasNext(); ) { AccountAttributeValue myValue = (AccountAttributeValue) iterVals.next(); System.out.print("\n The value of the attribute is "+myValue.getAttributeValue()); } } System.out.print("Done"); } catch (Exception e) { e.getStackTrace(); }

Veja o exemplo completo no GitHub.

Mais informações