Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menerapkan layanan mikro Java di Amazon ECS menggunakan AWS Fargate
Vijay Thompson dan Sandeep Bondugula, Amazon Web Services
Ringkasan
Pola ini memberikan panduan untuk menerapkan layanan mikro Java dalam peti kemas di Amazon Elastic Container Service (Amazon ECS) Container Service (Amazon ECS) dengan menggunakan AWS Fargate. Polanya tidak menggunakan Amazon Elastic Container Registry (Amazon ECR) Registry (Amazon ECR) untuk manajemen kontainer; sebagai gantinya, gambar Docker ditarik dari hub Docker.
Prasyarat dan batasan
Prasyarat
Aplikasi microservices Java yang ada di hub Docker
Sebuah repositori Docker publik
Akun AWS yang aktif
Keakraban dengan layanan AWS, termasuk Amazon ECS dan Fargate
Kerangka kerja Docker, Java, dan Spring Boot
Amazon Relational Database Service (Amazon RDS) aktif dan berjalan (opsional)
Virtual private cloud (VPC) jika aplikasi memerlukan Amazon RDS (opsional)
Arsitektur
Tumpukan teknologi sumber
Layanan mikro Java (misalnya, diimplementasikan di Spring Boot) dan digunakan di Docker
Arsitektur sumber

Tumpukan teknologi target
Cluster Amazon ECS yang menampung setiap layanan mikro dengan menggunakan Fargate
Jaringan VPC untuk meng-host cluster Amazon ECS dan grup keamanan terkait
cluster/task Definisi untuk setiap layanan mikro yang memutar kontainer dengan menggunakan Fargate
Arsitektur target

Alat
Alat
Amazon ECS menghilangkan kebutuhan untuk menginstal dan mengoperasikan perangkat lunak orkestrasi kontainer Anda sendiri, mengelola dan menskalakan sekelompok mesin virtual, atau menjadwalkan kontainer pada mesin virtual tersebut.
AWS Fargate membantu Anda menjalankan container tanpa perlu mengelola server atau instans Amazon Elastic Compute Cloud (Amazon). EC2 Ini digunakan bersama dengan Amazon Elastic Container Service (Amazon ECS).
Docker
adalah platform perangkat lunak yang memungkinkan Anda membangun, menguji, dan menyebarkan aplikasi dengan cepat. Docker mengemas perangkat lunak ke dalam unit standar yang disebut kontainer yang memiliki semua yang dibutuhkan perangkat lunak untuk dijalankan, termasuk perpustakaan, alat sistem, kode, dan runtime.
Kode Docker
Dockerfile berikut menentukan versi Java Development Kit (JDK) yang digunakan, di mana file arsip Java (JAR) ada, nomor port yang terbuka, dan titik masuk untuk aplikasi.
FROM openjdk:11 ADD target/Spring-docker.jar Spring-docker.jar EXPOSE 8080 ENTRYPOINT ["java","-jar","Spring-docker.jar"]
Epik
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Buat definisi tugas. | Menjalankan wadah Docker di Amazon ECS memerlukan definisi tugas. Buka konsol Amazon ECS di https://console.aws.amazon.com/ecs/ | Administrator sistem AWS, Pengembang aplikasi |
Pilih jenis peluncuran. | Pilih Fargate sebagai tipe peluncuran. | Administrator sistem AWS, Pengembang aplikasi |
Konfigurasikan tugas. | Tentukan nama tugas dan konfigurasikan aplikasi dengan jumlah memori tugas dan CPU yang sesuai. | Administrator sistem AWS, Pengembang aplikasi |
Tentukan wadahnya. | Tentukan nama wadah. Untuk gambar, masukkan nama situs Docker, nama repositori, dan nama tag image Docker (). | Administrator sistem AWS, Pengembang aplikasi |
Buat tugas. | Saat konfigurasi tugas dan wadah sudah ada, buat tugas. Untuk petunjuk terperinci, lihat tautan di bagian Sumber daya terkait. | Administrator sistem AWS, Pengembang aplikasi |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Buat dan konfigurasikan cluster. | Pilih Jaringan hanya sebagai tipe cluster, konfigurasikan nama, lalu buat cluster atau gunakan cluster yang ada jika tersedia. Untuk informasi selengkapnya, lihat dokumentasi Amazon ECS. | Administrator sistem AWS, Pengembang aplikasi |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Buat tugas. | Di dalam cluster, pilih Jalankan tugas baru. | Administrator sistem AWS, Pengembang aplikasi |
Pilih jenis peluncuran. | Pilih Fargate sebagai tipe peluncuran. | Administrator sistem AWS, Pengembang aplikasi |
Pilih definisi tugas, revisi, dan versi platform. | Pilih tugas yang ingin Anda jalankan, revisi definisi tugas, dan versi platform. | Administrator sistem AWS, Pengembang aplikasi |
Pilih cluster. | Pilih cluster tempat Anda ingin menjalankan tugas. | Administrator sistem AWS, Pengembang aplikasi |
Tentukan jumlah tugas. | Konfigurasikan jumlah tugas yang harus dijalankan. Jika Anda meluncurkan dengan dua tugas atau lebih, penyeimbang beban diperlukan untuk mendistribusikan lalu lintas di antara tugas-tugas. | Administrator sistem AWS, Pengembang aplikasi |
Tentukan kelompok tugas. | (Opsional) Tentukan nama grup tugas untuk mengidentifikasi serangkaian tugas terkait sebagai kelompok tugas. | Administrator sistem AWS, Pengembang aplikasi |
Konfigurasikan VPC cluster, subnet, dan grup keamanan. | Konfigurasikan VPC cluster dan subnet tempat Anda ingin menyebarkan aplikasi. Buat atau perbarui grup keamanan (HTTP, HTTPS, dan port 8080) untuk menyediakan akses ke koneksi masuk dan keluar. | Administrator sistem AWS, Pengembang aplikasi |
Konfigurasikan pengaturan IP publik. | Aktifkan atau nonaktifkan IP publik, tergantung pada apakah Anda ingin menggunakan alamat IP publik untuk tugas Fargate. Opsi default yang direkomendasikan adalah Diaktifkan. | Administrator sistem AWS, Pengembang aplikasi |
Tinjau pengaturan dan buat tugas | Tinjau pengaturan Anda, lalu pilih Jalankan Tugas. | Administrator sistem AWS, Pengembang aplikasi |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Salin URL aplikasi. | Ketika status tugas telah diperbarui ke Running, pilih tugas. Di bagian Jaringan, salin IP publik. | Administrator sistem AWS, Pengembang aplikasi |
Uji aplikasi Anda. | Di browser Anda, masukkan IP publik untuk menguji aplikasi. | Administrator sistem AWS, Pengembang aplikasi |
Sumber daya terkait
Dasar-Dasar Docker untuk Amazon ECS (dokumentasi Amazon ECS)
Amazon ECS di AWS Fargate (dokumentasi Amazon ECS)
Membuat Definisi Tugas (dokumentasi Amazon ECS)
Membuat Cluster (dokumentasi Amazon ECS)
Mengkonfigurasi Parameter Layanan Dasar (dokumentasi Amazon ECS)
Mengkonfigurasi Jaringan (dokumentasi Amazon ECS)