Spring Cloud AWS - EC2

Dalam artikel sebelumnya, kami memfokuskan pada S3; sekarang kita akan fokus pada Elastic Compute Cloud - yang biasanya dikenali sebagai EC2.

Siri Kandungan: Artikel ini adalah sebahagian daripada siri: • Spring Cloud AWS - S3

• Spring Cloud AWS - EC2 (artikel semasa) • Spring Cloud AWS - RDS

• Spring Cloud AWS - Sokongan Pemesejan

1. Akses Metadata EC2

Kelas AWS EC2MetadataUtils menyediakan kaedah statik untuk mengakses metadata instance seperti AMI Id dan jenis instance. Dengan Spring Cloud AWS kita dapat memasukkan metadata ini secara langsung menggunakan anotasi @Value .

Ini dapat diaktifkan dengan menambahkan anotasi @EnableContextInstanceData pada mana-mana kelas konfigurasi:

@Configuration @EnableContextInstanceData public class EC2EnableMetadata { // }

Dalam persekitaran Spring Boot, metadata contoh diaktifkan secara lalai yang bermaksud konfigurasi ini tidak diperlukan .

Kemudian, kita dapat memasukkan nilai:

@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. Tag Tersuai

Selain itu, Spring juga menyokong suntikan label yang ditentukan pengguna. Kami dapat mengaktifkannya dengan menentukan atribut -tag-map-user dalam konteks-instance-data menggunakan konfigurasi XML berikut:

Sekarang, mari kita suntikan teg yang ditentukan pengguna dengan bantuan sintaks ungkapan Spring:

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

2. Pelanggan EC2

Selanjutnya, jika ada tag pengguna yang dikonfigurasi untuk contohnya, Spring akan membuat klien AmazonEC2 yang dapat kami suntikan ke dalam kod kami menggunakan @Autowired :

@Autowired private AmazonEC2 amazonEc2;

Harap maklum bahawa ciri ini berfungsi hanya jika aplikasi berjalan pada EC2.

3. Kesimpulannya

Ini adalah pengenalan yang cepat dan tepat untuk mengakses data EC2d dengan Spring Cloud AWS.

Dalam artikel siri seterusnya, kami akan meneroka sokongan RDS.

Seperti biasa, contohnya terdapat di GitHub.

Seterusnya » Spring Cloud AWS - RDS « Spring Cloud AWS sebelumnya - S3