Spring Cloud AWS - EC2

Dans l'article précédent, nous nous concentrons sur S3; nous allons maintenant nous concentrer sur Elastic Compute Cloud - communément appelé EC2.

Série de contenu: cet article fait partie d'une série: • Spring Cloud AWS - S3

• Spring Cloud AWS - EC2 (article actuel) • Spring Cloud AWS - RDS

• Spring Cloud AWS - Prise en charge de la messagerie

1. Accès aux métadonnées EC2

La classe AWS EC2MetadataUtils fournit des méthodes statiques pour accéder aux métadonnées d'instance telles que l'ID AMI et le type d'instance. Avec Spring Cloud AWS, nous pouvons injecter ces métadonnées directement à l'aide de l' annotation @Value .

Cela peut être activé en ajoutant l' annotation @EnableContextInstanceData sur l'une des classes de configuration:

@Configuration @EnableContextInstanceData public class EC2EnableMetadata { // }

Dans un environnement Spring Boot, les métadonnées d'instance sont activées par défaut, ce qui signifie que cette configuration n'est pas requise .

Ensuite, nous pouvons injecter les valeurs:

@Value("${ami-id}") private String amiId; @Value("${hostname}") private String hostname; @Value("${instance-type}") private String instanceType; @Value("${services/domain}") private String serviceDomain;

1.1. Balises personnalisées

De plus, Spring prend également en charge l'injection de balises définies par l'utilisateur. Nous pouvons activer cela en définissant un attribut user-tags-map dans context-instance-data en utilisant la configuration XML suivante:

Maintenant, injectons les balises définies par l'utilisateur à l'aide de la syntaxe d'expression Spring:

@Value("#{instanceData.myTagKey}") private String myTagValue;

2. Client EC2

De plus, s'il y a des balises utilisateur configurées pour l'instance, Spring créera un client AmazonEC2 que nous pourrons injecter dans notre code en utilisant @Autowired :

@Autowired private AmazonEC2 amazonEc2;

Veuillez noter que ces fonctionnalités ne fonctionnent que si l'application s'exécute sur une instance EC2.

3. Conclusion

Il s'agissait d'une introduction rapide et précise à l'accès aux données EC2d avec Spring Cloud AWS.

Dans le prochain article de la série, nous explorerons le support RDS.

Comme d'habitude, les exemples sont disponibles à l'adresse over sur GitHub.

Suivant » Spring Cloud AWS - RDS « Précédent Spring Cloud AWS - S3