Meningkatkan antarmuka jaringan instans kontainer Amazon ECS Linux - Amazon Elastic Container Service

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

Meningkatkan antarmuka jaringan instans kontainer Amazon ECS Linux

catatan

Fitur ini tidak tersedia di Fargate.

Setiap tugas Amazon ECS yang menggunakan mode awsvpc jaringan menerima elastic network interface (ENI) miliknya sendiri, yang dilampirkan ke instance container yang menghostingnya. Ada batasan default untuk jumlah antarmuka jaringan yang dapat dilampirkan ke instans Amazon EC2, dan antarmuka jaringan utama dihitung sebagai satu. Sebagai contoh, secara default instans c5.large mungkin memiliki hingga tiga ENI yang dilampirkan. Antarmuka jaringan utama untuk instans dihitung sebagai satu, sehingga Anda dapat melampirkan dua ENI tambahan ke instans. Karena setiap tugas yang menggunakan mode awsvpc jaringan memerlukanENI, Anda biasanya hanya dapat menjalankan dua tugas tersebut pada jenis instance ini.

Amazon ECS mendukung peluncuran instans kontainer dengan peningkatan ENI kepadatan menggunakan jenis instans Amazon EC2 yang didukung. Saat Anda menggunakan jenis instans ini dan mengaktifkan setelan awsvpcTrunking akun, ENI tambahan tersedia pada instance container yang baru diluncurkan. Konfigurasi ini memungkinkan Anda untuk menempatkan lebih banyak tugas pada setiap instance kontainer. Untuk informasi tentang pengaturan awsvpcTrunking akun, lihatAkses fitur Amazon ECS dengan pengaturan akun.

Misalnya, c5.large contoh dengan awsvpcTrunking memiliki ENI batas peningkatan dua belas. Instance container akan memiliki antarmuka jaringan utama dan Amazon ECS membuat dan melampirkan antarmuka jaringan “trunk” ke instance container. Jadi, konfigurasi ini mengizinkan Anda meluncurkan sepuluh tugas pada instans kontainer, tidak hanya dua tugas seperti saat ini.

Antarmuka jaringan trunk dikelola sepenuhnya oleh Amazon ECS dan dihapus saat Anda menghentikan atau membatalkan pendaftaran instance container dari cluster. Untuk informasi selengkapnya, lihat Opsi jaringan tugas Amazon ECS untuk jenis peluncuran EC2.

Pertimbangan

Pertimbangkan hal berikut saat menggunakan fitur ENI trunking.

  • Hanya varian Linux dari AMI Amazon ECS yang dioptimalkan, atau varian Amazon Linux lainnya dengan versi 1.28.1 atau yang lebih baru dari agen kontainer dan versi 1.28.1-2 atau yang lebih baru dari paket ecs-init, yang mendukung peningkatan batas. ENI Jika Anda menggunakan varian Linux terbaru dari AMI Amazon ECS yang dioptimalkan, persyaratan ini akan dipenuhi. Kontainer Windows tidak didukung saat ini.

  • Hanya instans Amazon EC2 baru yang diluncurkan setelah mengaktifkan awsvpcTrunking menerima peningkatan ENI batas dan antarmuka jaringan trunk. Instans yang diluncurkan sebelumnya tidak menerima fitur ini tanpa memperhatikan tindakan yang dilakukan.

  • Instans Amazon EC2 harus menonaktifkan permintaan DNS IPv4 berbasis sumber daya. Untuk menonaktifkan opsi ini, pastikan opsi Aktifkan permintaan DNS IPV4 (Catatan) berbasis sumber daya tidak dipilih saat membuat instance baru menggunakan konsol Amazon EC2. Untuk menonaktifkan opsi ini menggunakan AWS CLI, gunakan perintah berikut.

    aws ec2 modify-private-dns-name-options --instance-id i-xxxxxxx --no-enable-resource-name-dns-a-record --no-dry-run
  • Instans Amazon EC2 di subnet bersama tidak didukung. Instans tersebut akan gagal untuk didaftarkan pada klaster jika instans digunakan.

  • Tugas Amazon ECS Anda harus menggunakan mode awsvpc jaringan dan jenis peluncuran EC2. Tugas yang menggunakan tipe peluncuran Fargate selalu menerima dedicated ENI terlepas dari berapa banyak yang diluncurkan, jadi fitur ini tidak diperlukan.

  • Tugas Amazon ECS Anda harus diluncurkan di VPC Amazon yang sama dengan instans penampung Anda. Tugas Anda akan gagal untuk dimulai bersama dengan sebuah kesalahan pada atribut jika tugas tersebut tidak berada dalam VPC yang sama.

  • Ketika meluncurkan sebuah instans kontainer yang baru, transisi instans menuju status REGISTERING sementara antarmuka jaringan elastis torso telah disediakan untuk instans. Jika pendaftaran gagal, transisi instans menuju status REGISTRATION_FAILED. Anda dapat memecahkan masalah pada gagalnya pendaftaran dengan menjelaskan instans kontainer untuk melihat bidang statusReason yang menjelaskan alasan pada kegagalan. instans kontainer kemudian secara manual dapat membatalkan pendaftaran atau mengakhirinya. Setelah instance container berhasil dideregistrasi atau dihentikan, Amazon ECS akan menghapus bagasi. ENI

    catatan

    Amazon ECS memancarkan peristiwa perubahan status instans kontainer yang dapat Anda pantau untuk instance yang bertransisi ke status. REGISTRATION_FAILED Untuk informasi selengkapnya, lihat Acara perubahan status instans penampung Amazon ECS.

  • Setelah instans kontainer dihentikan, transisi instans menuju status DEREGISTERING sementara torso pada antarmuka jaringan elastis telah dicabut. Instans tersebut kemudian melakukan transisi menuju status INACTIVE.

  • Jika instance kontainer di subnet publik dengan ENI batas yang meningkat dihentikan dan kemudian dimulai ulang, instance kehilangan alamat IP publiknya, dan agen kontainer kehilangan koneksinya.

  • Saat Anda mengaktifkanawsvpcTrunking, instance container menerima tambahan ENI yang menggunakan grup keamanan default VPC, dan dikelola oleh Amazon ECS.

Prasyarat

Sebelum Anda meluncurkan instance kontainer dengan ENI batas yang meningkat, prasyarat berikut harus diselesaikan.

  • Peran terkait layanan untuk Amazon ECS harus dibuat. Peran terkait layanan Amazon ECS memberi Amazon ECS izin untuk melakukan panggilan ke layanan lain AWS atas nama Anda. Peran ini dibuat untuk Anda secara otomatis ketika Anda membuat sebuah klaster, atau jika Anda membuat atau memperbarui layanan di AWS Management Console. Untuk informasi selengkapnya, lihat Menggunakan peran terkait layanan untuk Amazon ECS. Anda juga dapat membuat peran terkait layanan dengan perintah berikut AWS CLI .

    aws iam create-service-linked-role --aws-service-name ecs.amazonaws.com
  • Peran IAM instans akun atau kontainer Anda harus mengaktifkan pengaturan awsvpcTrunking akun. Kami menyarankan Anda membuat 2 container instance role (ecsInstanceRole). Anda kemudian dapat mengaktifkan pengaturan awsvpcTrunking akun untuk satu peran dan menggunakan peran tersebut untuk tugas yang memerlukan trunking ENI. Untuk informasi tentang peran instance container, lihatPeran IAM instans wadah Amazon ECS.

Setelah prasyarat terpenuhi, Anda dapat meluncurkan instance container baru menggunakan salah satu jenis instans Amazon EC2 yang didukung, dan instans akan memiliki batas yang ditingkatkan. ENI Untuk daftar tipe data yang didukung, lihat Instans yang didukung untuk peningkatan antarmuka jaringan kontainer Amazon ECS. instans kontainer harus memiliki versi 1.28.1 atau yang lebih baru dari agen kontainer dan versi 1.28.1-2 atau yang lebih baru dari paket ecs-init. Jika Anda menggunakan varian Linux terbaru dari AMI Amazon ECS yang dioptimalkan, persyaratan ini akan dipenuhi. Untuk informasi selengkapnya, lihat Meluncurkan instans penampung Amazon ECS Linux.

penting

Instans Amazon EC2 harus menonaktifkan permintaan DNS IPv4 berbasis sumber daya. Untuk menonaktifkan opsi ini, pastikan opsi Aktifkan permintaan DNS IPV4 (Catatan) berbasis sumber daya tidak dipilih saat membuat instance baru menggunakan konsol Amazon EC2. Untuk menonaktifkan opsi ini menggunakan AWS CLI, gunakan perintah berikut.

aws ec2 modify-private-dns-name-options --instance-id i-xxxxxxx --no-enable-resource-name-dns-a-record --no-dry-run
Untuk melihat instance penampung Anda dengan ENI batas yang ditingkatkan dengan AWS CLI

Setiap instans kontainer memiliki antarmuka jaringan default, yang disebut sebagai antarmuka jaringan torso. Gunakan perintah berikut untuk membuat daftar instance kontainer Anda dengan ENI batas yang ditingkatkan dengan menanyakan ecs.awsvpc-trunk-id atribut, yang menunjukkan bahwa ia memiliki antarmuka jaringan trunk.

  • daftar-atribut (AWS CLI)

    aws ecs list-attributes \ --target-type container-instance \ --attribute-name ecs.awsvpc-trunk-id \ --cluster cluster_name \ --region us-east-1
  • Dapatkan-ECS (AttributeList)AWS Tools for Windows PowerShell

    Get-ECSAttributeList -TargetType container-instance -AttributeName ecs.awsvpc-trunk-id -Region us-east-1