Sumber daya yang dibuat oleh layanan Amazon ECS Express Mode - Amazon Elastic Container Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Sumber daya yang dibuat oleh layanan Amazon ECS Express Mode

Layanan Mode Ekspres mengurangi kerumitan penerapan aplikasi kontainer dengan menyediakan default yang masuk akal dan mengotomatiskan konfigurasi layanan pendukung. AWS Alih-alih mengelola ratusan parameter konfigurasi di beberapa layanan, layanan Mode Ekspres hanya memerlukan image kontainer, peran eksekusi tugas, dan peran infrastruktur untuk memulai.

Layanan Mode Ekspres memiliki prosedur yang disederhanakan untuk penyediaan dan konfigurasi Layanan Amazon ECS yang menggabungkan infrastruktur pilihan untuk menjalankan aplikasi web produksi. Layanan Mode Ekspres secara otomatis menggabungkan praktik terbaik operasional dan konfigurasi. Sumber daya berikut dibuat:

  • Cluster default ECS (jika belum ada) dengan penyedia kapasitas Fargate

  • Definisi tugas dengan kontainer, logging, dan konfigurasi jaringan

  • Layanan dengan penyebaran kenari dan penskalaan otomatis

  • Application Load Balancer dengan pendengar HTTPS, aturan pendengar, dan grup target

  • Grup keamanan dengan masuknya minimal yang diperlukan

  • Peran Tertaut Layanan untuk auto-scaling dan load balancing

  • Application Auto Scaling target scalable dan target tracking scaling policy.

    Kebijakan penskalaan menambahkan atau menghapus tugas layanan sebagaimana diperlukan untuk menjaga metrik pada, atau mendekati nilai target yang ditentukan. Selain menjaga agar metrik tetap mendekati nilai target, kebijakan penskalaan pelacakan target juga menyesuaikan dengan fluktuasi metrik akibat pola beban yang berfluktuasi, serta meminimalkan fluktuasi yang cepat dalam jumlah tugas yang berjalan di layanan Anda.

  • Grup log khusus untuk layanan

  • Alarm metrik untuk mendeteksi penerapan yang salah

  • Sertifikat ACM

Gunakan default untuk memulai layanan Mode Ekspres, atau konfigurasikan aplikasi Anda menggunakan seperangkat parameter minimal.

Default cluster

Default berikut dapat dikonfigurasi dari dalam Mode Ekspres untuk Cluster:

  • ClusterName: Menggunakan cluster. default

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menentukancreate-express-gateway-service --cluster.

Default berikut diatur oleh Mode Ekspres tetapi dapat diperbarui di Cluster secara langsung.

  • CapacityProviders: ["FARGATE"] - Menggunakan Fargate

Default definisi tugas

Default berikut dapat dikonfigurasi dari dalam Mode Ekspres untuk definisi tugas:

  • cpu: 1024 - 1 unit vCPU dialokasikan untuk tugas

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menjalankancreate-express-gateway-service --cpu.

  • memori: 2048 - 2 GB memori dialokasikan untuk tugas

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menjalankancreate-express-gateway-service --memory.

Default berikut diatur oleh Mode Ekspres tetapi dapat diperbarui dalam Definisi Tugas secara langsung.

  • NetworkMode: “awsvpc” - Menggunakan mode jaringan awsvpc

  • operatingSystemFamily: “LINUX” - Berjalan pada sistem operasi Linux

  • CPUArchitecture: “X86_64" - Menggunakan arsitektur prosesor x86_64

  • RequiresCompatibilities: ["FARGATE"] - Kompatibel dengan tipe peluncuran Fargate

  • PlatformVersion: “TERBARU” - Menggunakan versi platform Fargate terbaru

Default definisi kontainer

Default berikut dapat dikonfigurasi dari dalam Mode Ekspres untuk wadah:

  • port: 80 - Port default untuk lalu lintas kontainer

Default berikut diatur oleh Mode Ekspres tetapi dapat diperbarui dalam Definisi Tugas - Definisi Kontainer secara langsung:

  • esensial: benar - Wadah ditandai sebagai penting untuk kesehatan tugas

  • protokol: “tcp” - Protokol default untuk komunikasi penyeimbang beban

  • name: “Main” - Nama default untuk wadah utama

    Mengubah nama kontainer default dapat memengaruhi kemampuan Mode Ekspres untuk membuat pembaruan berikutnya pada layanan Anda. Ini tidak disarankan jika Anda berniat untuk terus menggunakan Konsol Mode Ekspres atau APIs

  • VersionConsistency: diaktifkan - Menyelesaikan tag gambar untuk dicerna untuk penerapan yang konsisten IDs

  • initProcessEnabled: true - Mengaktifkan dukungan proses init Docker.

  • StopTimeout: 30 detik - Waktu antara sinyal SIGTERM dan SIGKILL.

Logging default

Default berikut dapat dikonfigurasi dari dalam Mode Ekspres untuk Log: CloudWatch

  • awslogs-group: “/aws/ecs/<cluster>/<name>-####” - Nama grup log berasal dari klaster dan nama layanan

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menjalankancreate-express-gateway-service --primary-container “awsLogsConfiguration”=[{“logGroup”=“/my/logGroup/”}].

  • awslogs-stream-prefix: “ecs” - Awalan untuk nama aliran log

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menjalankancreate-express-gateway-service --primary-container “awsLogsConfiguration”=[{“logStreamPrefix”=“myprefix”}].

Default berikut diatur oleh Mode Ekspres tetapi dapat diperbarui dalam Definisi Tugas - Konfigurasi Log secara langsung:

  • LogDriver: “awslogs” - Menggunakan Log CloudWatch

  • awslogs-region: Wilayah saat ini - Menggunakan Wilayah yang sama dengan layanan Mode Ekspres

  • mode: “non-blocking” - Mode logging diatur ke non-blocking

  • max-buffer-size: “25m” - Ukuran buffer maksimum untuk penulisan log

Default layanan

Default berikut dapat dikonfigurasi dari dalam Mode Ekspres untuk Layanan Amazon ECS:

  • ServiceName: Layanan Mode Ekspres → Nama - Nama layanan (pelanggan disediakan atau berasal dari nama gambar)

    Nama hanya dapat dikonfigurasi saat membuat, dan tidak tersedia untuk dikonfigurasi pada pembaruan.

  • cluster: Layanan Mode Ekspres → Cluster - Cluster ECS untuk layanan ini (disediakan pelanggan atau default)

    Cluster hanya dapat dikonfigurasi saat membuat, dan tidak tersedia untuk dikonfigurasi pada pembaruan.

  • DesiredCount: Layanan Mode Ekspres → MinTasks - Hitungan yang diinginkan untuk layanan (defaultnya adalah 1)

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menjalankan create-express-gateway-service --scaling-target ‘{“minTaskCount”=3}',

  • Tags: Layanan Mode Ekspres Tag untuk AWS penandaan (disediakan pelanggan)

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menjalankancreate-express-gateway-service --tags. Tag hanya dapat ditambahkan pada pembuatan sumber daya baru.

Default berikut diatur oleh Mode Ekspres tetapi dapat diperbarui di Layanan Amazon ECS secara langsung:

  • availabilityZoneRebalancing: true - Mengaktifkan penyeimbangan ulang AZ otomatis

  • CapacityProviderStrategy: {"base”: 1, “CapacityProvider”: “FARGATE”, “weight”: 1} - Menggunakan Fargate untuk kapasitas komputasi

  • DeploymentConfiguration: Canary secara default - Layanan Mode Ekspres menggunakan penerapan Canary

    Perhatikan bahwa strategi penyebaran tidak dapat diperbarui pada layanan Mode Ekspres.

  • aktifkan ECSManaged Tags: true - Mengaktifkan penandaan sumber daya yang dikelola ECS

  • healthCheckGracePeriodSeconds: 300 - Masa tenggang sebelum Scheduler melihat pemeriksaan kesehatan ELB atau Lattice (sejalan dengan default tenggang pemeriksaan kesehatan ELB)

  • LaunchType: <Not set>- Menggunakan penyedia kapasitas

  • LoadBalancers: Konfigurasi penyeimbang beban ditangani oleh ECS

    Perhatikan bahwa konfigurasi penyeimbang beban tidak dapat diperbarui pada layanan Mode Ekspres.

  • PlacementStrategy: Tidak disetel - Menggunakan Fargate saat peluncuran (harus selalu AZ Spread)

  • PlatformVersion: TERBARU - Versi platform Fargate (kode keras ke TERBARU)

  • PropagateTags: “LAYANAN” - Menyebarkan tag dari layanan ke tugas

  • SchedulingStrategy: “REPLICA” - Layanan Mode Ekspres adalah layanan REPLIKA

  • TaskDefinition: Layanan Mode Ekspres dibuat - Definisi tugas yang akan digunakan (disediakan oleh layanan Mode Ekspres)

Default konfigurasi jaringan

Default berikut dapat dikonfigurasi dari dalam Mode Ekspres untuk Layanan Amazon ECS - Konfigurasi Jaringan:

  • NetworkConfiguration.subnets: Jika tidak ada yang disediakan, Mode Ekspres akan menggunakan subnet publik default di VPC default.

    VPC default harus memiliki setidaknya dua subnet publik, setidaknya dalam dua zona ketersediaan, dengan setidaknya 8 gratis IPs tersedia, per blok CIDR yang ditetapkan, per subnet.

    Jika Anda menyediakan subnet publik khusus, Mode Ekspres akan menyediakan ALB yang menghadap ke internet dan mengaktifkan AssignPublicIP untuk tugas Anda. Jika Anda menyediakan subnet pribadi (subnet tanpa gateway internet di tabel rute mereka), Mode Ekspres akan menyediakan ALB internal.

    Jika Anda menentukan subnet, layanan Mode Ekspres pertama untuk VPC mendefinisikan subnet yang terkait dengan penyeimbang beban yang menghadap ke internet atau internal untuk VPC tersebut. Layanan Mode Ekspres berikutnya yang diluncurkan di VPC yang sama harus memiliki subnet yang sesuai dengan zona ketersediaan yang didukung oleh penyeimbang beban. Karena itu, kami sarankan untuk membuat layanan Mode Ekspres dengan subnet dari semua zona ketersediaan.

  • NetworkConfiguration. SecurityGroups: Jika tidak ada yang disediakan, Mode Ekspres membuat Grup Keamanan Layanan dan Grup Keamanan Load Balancer

    Grup Keamanan Layanan memungkinkan lalu lintas keluar ke internet publik, tetapi ini mungkin dibatasi tergantung pada aspek lain dari jaringan Anda, seperti konfigurasi subnet Anda.

    Grup Keamanan Load Balancer Grup Keamanan Load Balancer memungkinkan lalu lintas masuk untuk resolusi HTTPS dan lalu lintas keluar ke Grup Keamanan Layanan Anda pada port kontainer yang Anda tentukan (default 80). Dan diperbarui secara otomatis agar sesuai dengan port kontainer yang disediakan dalam panggilan Buat atau Perbarui Mode Ekspres Anda.

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menjalankancreate-express-gateway-service --network-configuration '{"securityGroup": ["sg-xxxxxxx"]}'. Ketika Anda menyediakan grup keamanan, Anda menyediakan jalur masuk tambahan ke layanan Anda.

Default berikut diatur oleh Mode Ekspres tetapi dapat diperbarui di Layanan Amazon ECS - Konfigurasi Jaringan secara langsung:

  • assignPublicIp: Berdasarkan jenis subnet - Diaktifkan untuk subnet publik untuk memastikan pengguna VPC default dapat mengakses internet publik, kami mengaktifkan publik IPs pada setiap tugas secara default. Ini dinonaktifkan jika Anda menyediakan subnet pribadi, dan Anda kemudian bertanggung jawab untuk mengonfigurasi gateway NAT jika tugas Anda memerlukan akses internet.

Default peran IAM

Peran IAM berikut dapat dikonfigurasi untuk Layanan Mode Ekspres dengan pembuatan otomatis peran terkait layanan jika sesuai.

  • executionRoleArn: Peran Eksekusi Tugas (parameter yang diperlukan)

    Meskipun izin yang diperlukan ada dalam kebijakan terkelola, kebijakan dan izin tambahan dapat dilampirkan. Detail tambahan tentang Amazon ECSTask ExecutionRolePolicy dalam Panduan Referensi Kebijakan AWS Terkelola

  • infrastructureRoleArn: Peran Infrastruktur untuk Layanan Gateway Ekspres (parameter wajib)

    Meskipun izin yang diperlukan ada dalam kebijakan terkelola, kebijakan dan izin tambahan dapat dilampirkan. Detail tambahan tentang Kebijakan ECSInfrastructure RoleforExpressGatewayServices Terkelola Amazon dalam Panduan Referensi Kebijakan AWS Terkelola

  • taskRoleArn: Peran Tugas untuk panggilan dari kode aplikasi kontainer (opsional)

    Anda dapat menyesuaikan opsi ini dengan menggunakan opsi Konfigurasi tambahan di konsol, atau dengan menjalankancreate-express-gateway-service --task-role-arn.

    Anda harus membuat peran IAM baru sebelum membuat atau memperbarui layanan Mode Ekspres.

Peran IAM berikut dikonfigurasi oleh Mode Ekspres secara otomatis.

  • ecsServiceRoleForecS: Memungkinkan Amazon ECS mengelola klaster Anda

  • AWSServiceRoleForElasticLoadBalancing: Memanggil AWS layanan lain untuk Anda atas nama Anda - dibuat secara otomatis oleh Elastic Load Balancing

  • AWSServiceRoleForApplicationAutoScaling_ECSService: Memanggil AWS layanan lain atas nama Anda - dibuat secara otomatis oleh Application Auto Scaling

Default Application Auto Scaling

Pengaturan Application Auto Scaling berikut dapat dikonfigurasi dalam Mode Ekspres:

  • autoScalingTargetNilai: 60 - Target persentase pemanfaatan CPU untuk penskalaan

  • autoScalingMetric: "CPUUtilization" - Metrik yang digunakan untuk keputusan penskalaan otomatis

  • desiredMinTaskHitung: 1 - Jumlah tugas minimum yang harus dipertahankan

  • desiredMaxTaskHitungan: 20 - Jumlah tugas maksimum yang akan diskalakan (dapat ditingkatkan atau dikurangi)

Pengaturan berikut dapat digabungkan di Application Auto Scaling secara langsung:

  • PolicyType: "TargetTrackingScaling" - Menggunakan kebijakan penskalaan pelacakan target

  • disableScaleIn: false - Memungkinkan penskalaan turun saat permintaan menurun

Default target penskalaan aplikasi

Target Application Auto Scaling menentukan batas sumber daya dan kapasitas yang dapat diskalakan untuk operasi penskalaan otomatis. Berikut ini dapat dimodifikasi dalam Mode Ekspres:

  • MaxCapacity: Layanan Mode Ekspres → MaxTasks - Tugas maksimum yang akan ditingkatkan oleh layanan (default dari CreateLoadBalancedService atau disediakan pelanggan)

  • MinCapacity: Layanan Mode Ekspres → MinTasks - Tugas minimum layanan akan diturunkan ke (default dari CreateLoadBalancedService atau disediakan pelanggan)

  • ScalableDimension: ecs:service: DesiredCount - Properti untuk skala

  • Tags: Berasal dari tag yang diteruskan CreateLoadBalancedService - Tag sumber daya untuk sumber daya ini

Default berikut dapat dimodifikasi dalam target scalable Application Auto Scaling:

  • DynamicScalingInSuspended: false - Menunjukkan jika penskalaan ditangguhkan

  • DynamicScalingOutSuspended: false - Menunjukkan jika penskalaan ditangguhkan

  • ScheduledScalingSuspended: false - Menunjukkan jika penskalaan terjadwal ditangguhkan

Default kebijakan penskalaan aplikasi

Kebijakan penskalaan menerapkan algoritma pelacakan target yang memantau pemanfaatan CPU dan menyesuaikan jumlah tugas untuk mempertahankan kinerja optimal. Berikut ini dapat dimodifikasi dari Mode Ekspres:

  • TargetValue: 60% - Nilai target untuk kebijakan pelacakan (layanan Mode Ekspres → scaling-target-value)

  • PredefinedMetricType: ECSService Rata-rata CPUUtilization - Jenis nama metrik yang dilacak (layanan Mode Ekspres → penskalaan-metrik)

    Mode Ekspres menyediakan metrik penskalaan untuk Rata-rata CPUUtilization, Pemanfaatan Memori Rata-rata, dan Hitungan Permintaan per Target. Jumlah Permintaan per Target berasal dari Application Load Balancer dan dapat diatur hingga 65536 permintaan per target per detik, yang merupakan Layanan Amazon ECS Anda di grup target Application Load Balancer.

Default berikut diatur oleh Mode Ekspres tetapi dapat diubah dalam kebijakan Application Auto Scaling:

  • PolicyName: < ServiceName ><” TargetMetric “> - Nama kebijakan penskalaan ini (berasal dari nama Layanan ECS dan Metrik Target)

  • PolicyType: TargetTrackingScaling - Jenis penskalaan yang dilakukan (standar standar)

  • ScalableDimension: “ecs:service:DesiredCount" - Properti yang akan diskalakan (standar standar)

  • DisableScaleIn: false - Menunjukkan jika skala dalam dinonaktifkan

Default Application Load Balancer

Default Application Load Balancer berikut dapat dikonfigurasi dalam Mode Ekspres:

  • skema: tergantung pada subnet - Membuat penyeimbang beban yang menghadap Internet dengan alamat IP publik saat subnet publik disediakan. Membuat penyeimbang beban internal dengan alamat IP pribadi saat subnet pribadi disediakan.

  • ip-address-type: tergantung pada subnet - Membuat Application Load Balancer IPv4 satu-satunya saat alamatnya. IPv4 Ketika ada subnet IPv6 yang diaktifkan, Application Load Balancer dual-stack akan dibuat. Perhatikan bahwa jika Anda memiliki subnet IPv6 yang diaktifkan, layanan Mode Ekspres pertama di VPC mendefinisikan penyeimbang beban internal atau yang menghadap ke internet untuk VPC tersebut. Karena itu, kami sarankan untuk membuat subnet IPv6 -only Anda terlebih dahulu, atau di VPC baru.

Default berikut diatur dalam Mode Ekspres dan dapat dikonfigurasi di Application Load Balancer:

  • desync-mitigation-mode: Mati - mitigasi desync HTTP dinonaktifkan

  • access-logs.enabled: false - Pencatatan akses dinonaktifkan

  • listener-configurations.protocol: komunikasi https - Uses HTTPS protocol for secure com

  • listener-configurations.port: 443 - Mendengarkan pada port HTTPS standar

  • listener-configurations.rule-type: host-header - Merutekan lalu lintas berdasarkan aturan header host

Default grup sasaran

Default Grup EC2 Target Amazon berikut dapat dikonfigurasi dalam Mode Ekspres:

  • health-check-path: (default “/”) Jalur pemeriksaan kesehatan layanan Mode Ekspres - jalur URL untuk permintaan pemeriksaan kesehatan

  • port: (default 80) - Port tempat target menerima lalu lintas

  • health-check-port: (default 80) - Port untuk permintaan pemeriksaan kesehatan

Default berikut diatur oleh Mode Ekspres dan dapat dikonfigurasi di Grup Target Amazon EC2 :

  • protokol: HTTP - Protokol untuk merutekan lalu lintas ke target

  • protocol-version: HTTP1 - Versi protokol HTTP untuk komunikasi

  • vpc-id: default adalah VPC default - pengidentifikasi Virtual Private Cloud untuk grup target, tetapi akan diturunkan dari subnet yang disediakan

  • health-check-protocol: Sama seperti Protokol - Protokol untuk permintaan pemeriksaan kesehatan

  • health-check-enabled: Selalu diaktifkan - Pemeriksaan kesehatan diaktifkan secara otomatis

  • health-check-interval-seconds: 30 - Waktu antara pemeriksaan kesehatan target individu

  • health-check-timeout-seconds: 5 - Durasi batas waktu untuk tanggapan pemeriksaan kesehatan

  • healthy-threshold-count: 5 - Pemeriksaan kesehatan yang berhasil berturut-turut diperlukan untuk status sehat

  • unhealthy-threshold-count: 2 - Pemeriksaan kesehatan gagal berturut-turut diperlukan untuk status tidak sehat

  • target-type: ip - Target terdaftar berdasarkan alamat IP

  • ip-address-type: ipv4 - Menggunakan IPv4 alamat untuk pendaftaran target

Berbagi sumber daya dan optimalisasi biaya

Layanan Mode Ekspres secara otomatis berbagi sumber daya bila memungkinkan untuk mengoptimalkan biaya:

  • Berbagi penyeimbang beban - Hingga 25 layanan Mode Ekspres di VPC yang sama dapat berbagi Application Load Balancer. Mode Ekspres akan menyediakan Application Load Balancer tambahan seperlunya tergantung pada jumlah layanan Mode Ekspres yang telah Anda sediakan. Dan saat Anda mengurangi jumlah layanan Mode Ekspres di VPC Anda, Mode Ekspres juga akan menghentikan penyediaan Penyeimbang Beban Aplikasi yang tidak digunakan. Berbagi ini mengurangi biaya efektif per aplikasi saat Anda menggunakan lebih banyak layanan Mode Ekspres.

  • Berbagi cluster - Layanan Mode Ekspres dapat dikelompokkan bersama di Amazon ECS Clusters. Layanan Mode Ekspres juga dapat berbagi Amazon ECS Cluster dengan Layanan Amazon ECS yang tidak dikelola oleh Mode Ekspres.