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