Spring Cloud AWS - EC2

I forrige artikkel fokuserer vi på S3; nå vil vi fokusere på Elastic Compute Cloud - kjent som EC2.

Content Series: Denne artikkelen er en del av en serie: • Spring Cloud AWS - S3

• Spring Cloud AWS - EC2 (nåværende artikkel) • Spring Cloud AWS - RDS

• Spring Cloud AWS - Meldingsstøtte

1. Tilgang til EC2-metadata

AWS EC2MetadataUtils klasse gir statiske metoder for å få tilgang til forekomstmetadata som AMI Id og forekomsttype. Med Spring Cloud AWS kan vi injisere disse metadataene direkte ved hjelp av @Verdi kommentar.

Dette kan aktiveres ved å legge til @EnableContextInstanceData kommentar over noen av konfigurasjonsklassene:

@Configuration @EnableContextInstanceData offentlig klasse EC2EnableMetadata {//}

I et Spring Boot-miljø er metadata for eksempel aktivert som standard, noe som betyr at denne konfigurasjonen ikke er nødvendig.

Deretter kan vi injisere verdiene:

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

1.1. Egendefinerte tagger

I tillegg støtter Spring også injeksjon av brukerdefinerte koder. Vi kan aktivere dette ved å definere et attributt user-tags-map i kontekst-forekomst-data ved hjelp av følgende XML-konfigurasjon:

La oss nå injisere de brukerdefinerte kodene ved hjelp av Spring-syntaks:

@Value ("# {instanceData.myTagKey}") privat streng myTagValue;

2. EC2-klient

Videre, hvis det er brukerkoder konfigurert for forekomsten, oppretter Spring en AmazonEC2 klient som vi kan injisere i koden vår ved hjelp av @Autowired:

@Autowired privat AmazonEC2 amazonEc2;

Vær oppmerksom på at disse funksjonene bare fungerer hvis appen kjører på en EC2-forekomst.

3. Konklusjon

Dette var en rask og nøyaktig introduksjon til tilgang til EC2d-data med Spring Cloud AWS.

I neste artikkel i serien vil vi utforske RDS-støtten.

Som vanlig er eksemplene tilgjengelige på GitHub.

Neste » Spring Cloud AWS - RDS « Forrige Spring Cloud AWS - S3

$config[zx-auto] not found$config[zx-overlay] not found