Platform kustom Elastic Beanstalk (pensiun) - AWS Elastic Beanstalk

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

Platform kustom Elastic Beanstalk (pensiun)

catatan

Pada tanggal 18 Juli 2022, Elastic Beanstalk menetapkan status semua cabang platform berbasis Amazon Linux () untuk pensiun. AMI AL1 Ini termasuk platform khusus. Elastic Beanstalk tidak mendukung platform khusus. Untuk informasi lebih lanjut tentang pensiun Elastic Beanstalk dari Amazon LinuxAMI, lihat. FAQ Pensiun Platform

Topik ini tetap ada dalam dokumen ini sebagai referensi untuk setiap pelanggan yang menggunakan fitur platform khusus Elastic Beanstalk sebelum pensiun. Di masa lalu, platform kustom Elastic Beanstalk mendukung pembuatan AMI basis AMI Amazon RHEL Linux, RHEL 7, 6, atau Ubuntu 16.04. AMIs Sistem operasi ini tidak lagi didukung oleh Elastic Beanstalk. Untuk membaca lebih lanjut tentang fitur platform khusus, yang tidak lagi didukung, perluas topik berikut.

Platform khusus adalah kustomisasi yang lebih maju daripada citra kustom dalam beberapa cara. Platform khusus memungkinkan Anda mengembangkan seluruh platform baru dari scratch, menyesuaikan sistem operasi, perangkat lunak tambahan, dan skrip yang dijalankan Elastic Beanstalk pada instans platform. Fleksibilitas ini memungkinkan Anda untuk membangun platform untuk aplikasi yang menggunakan bahasa atau perangkat lunak infrastruktur lainnya, yang Elastic Beanstalk tidak sediakan platform yang terkelola. Bandingkan dengan gambar khusus, tempat Anda memodifikasi Amazon Machine Image (AMI) untuk digunakan dengan platform Elastic Beanstalk yang ada, dan Elastic Beanstalk masih menyediakan skrip platform dan mengontrol tumpukan perangkat lunak platform. Selain itu, dengan platform kustom Anda menggunakan cara otomatis dan skrip untuk membuat dan memelihara kustomisasi Anda, sedangkan dengan gambar kustom Anda membuat perubahan secara manual melalui instans yang sedang berjalan.

Untuk membuat platform khusus, Anda membuat AMI dari salah satu sistem operasi yang didukung—UbuntuRHEL, atau Amazon Linux (lihat flavor entri Format file Platform.yaml untuk nomor versi yang tepat) —dan menambahkan penyesuaian lebih lanjut. Anda membuat platform Elastic Beanstalk Anda sendiri menggunakan Packer, yang merupakan alat sumber terbuka untuk membuat gambar mesin untuk banyak platform, AMIs termasuk untuk digunakan dengan Amazon Elastic Compute Cloud (Amazon). EC2 Platform Elastic Beanstalk AMI terdiri dari konfigurasi untuk menjalankan satu set perangkat lunak yang mendukung aplikasi, dan metadata yang dapat menyertakan opsi konfigurasi khusus dan pengaturan opsi konfigurasi default.

Elastic Beanstalk mengelola Packer sebagai platform built-in yang terpisah, dan Anda tidak perlu khawatir tentang konfigurasi dan versi Packer.

Anda membuat platform dengan menyediakan Elastic Beanstalk dengan template Packer, dan skrip dan file yang dipanggil template untuk membangun. AMI Komponen-komponen ini dikemas dengan file definisi platform, yang menentukan template dan metadata, ke dalam arsip, yang dikenal sebagai ZIP arsip definisi platform.

Ketika Anda membuat platform kustom, Anda meluncurkan satu instans lingkungan tanpa Elastis IP yang menjalankan Packer. Packer kemudian meluncurkan instans lain untuk membangun sebuah gambar. Anda dapat menggunakan kembali lingkungan ini untuk beberapa platform dan beberapa versi dari setiap platform.

catatan

Platform khusus bersifat spesifik AWS Wilayah. Jika Anda menggunakan Elastic Beanstalk di beberapa Wilayah, Anda harus membuat platform Anda secara terpisah di setiap Wilayah.

Dalam keadaan tertentu, instans yang diluncurkan oleh Packer tidak dibersihkan dan harus dihentikan secara manual. Untuk mempelajari cara membersihkan instans secara manual, lihat Pembersihan instans Packer.

Pengguna di akun Anda dapat menggunakan platform khusus Anda dengan menentukan platform ARN selama pembuatan lingkungan. Ini ARNs dikembalikan oleh eb platform create perintah yang Anda gunakan untuk membuat platform khusus.

Setiap kali Anda membangun platform khusus Anda, Elastic Beanstalk menciptakan versi platform baru. Pengguna dapat menentukan platform dengan nama untuk mendapatkan hanya versi terbaru dari platform, atau menyertakan nomor versi untuk mendapatkan versi tertentu.

Misalnya, untuk menerapkan versi terbaru dari platform kustom dengan ARNMyCustomPlatformARN, yang bisa berupa versi 3.0, baris CLI perintah EB Anda akan terlihat seperti ini:

eb create -p MyCustomPlatformARN

Untuk menerapkan versi 2.1 baris CLI perintah EB Anda akan terlihat seperti ini:

eb create -p MyCustomPlatformARN --version 2.1

Anda dapat menerapkan tag ke versi platform kustom saat Anda membuatnya, dan mengedit tag dari versi platform kustom yang ada. Untuk detail selengkapnya, lihat Menandai versi platform khusus.

Membuat platform khusus

Untuk membuat platform kustom, akar aplikasi Anda harus menyertakan file definisi platform, platform.yaml, yang mendefinisikan jenis pembangun yang digunakan untuk membuat platform kustom. Format file ini diterangkan dalam Format file Platform.yaml. Anda dapat membuat platform kustom Anda dari scratch, atau menggunakan salah satu platform khusus sampel sebagai titik awal.

Menggunakan platform khusus sampel

Salah satu alternatif untuk membuat platform kustom Anda sendiri adalah dengan menggunakan salah satu instans arsip definisi platform untuk bootstrap platform kustom Anda. Satu-satunya item yang harus Anda konfigurasikan dalam sampel sebelum Anda dapat menggunakannya adalah sumber AMI dan Wilayah.

catatan

Jangan gunakan platform kustom sampel yang tidak dimodifikasi dalam produksi. Tujuan dari sampel adalah untuk menunjukkan beberapa fungsi yang tersedia untuk platform khusus, tetapi mereka belum dikeraskan untuk penggunaan produksi.

NodePlatform_Ubuntu.zip

Platform khusus ini didasarkan pada Ubuntu 16.04 dan mendukungNode.js 4.4.4. Kami menggunakan platform khusus ini untuk contoh di bagian ini.

NodePlatform_ RHEL .zip

Platform khusus ini didasarkan pada RHEL7.2 dan mendukung Node.js 4.4.4.

NodePlatform_ AmazonLinux .zip

Platform khusus ini didasarkan pada Amazon Linux 2016.09.1 dan mendukung Node.js 4.4.4.

TomcatPlatform_Ubuntu.zip

Platform khusus ini didasarkan pada Ubuntu 16.04 dan mendukung Tomcat 7/Java 8.

CustomPlatform_ NodeSampleApp .zip

Contoh Node.js yang menggunakan ekspres dan ejs untuk menampilkan halaman web statis.

CustomPlatform_ TomcatSampleApp .zip

Sampel Tomcat yang menampilkan halaman web statis saat di-deploy.

Unduh contoh platform definisi arsip: NodePlatform_Ubuntu.zip. File ini berisi file definisi platform, templat Packer, skrip yang dijalankan Packer selama pembuatan gambar, dan skrip dan file konfigurasi yang disalin Packer ke instans pembangun selama pembuatan platform.

contoh NodePlatform_Ubuntu.zip
|-- builder Contains files used by Packer to create the custom platform |-- custom_platform.json Packer template |-- platform.yaml Platform definition file |-- ReadMe.txt Briefly describes the sample

File definisi platform, platform.yaml, memberitahu Elastic Beanstalk nama templat Packer, custom_platform.json.

version: "1.0" provisioner: type: packer template: custom_platform.json flavor: ubuntu1604

Template Packer memberi tahu Packer bagaimana membangun platform, menggunakan Ubuntu AMI sebagai dasar untuk image platform untuk tipe HVM instance. AMIs Bagian provisioners memberitahu Packer untuk menyalin semua file di folder builder dalam arsip untuk instans, dan untuk menjalankan skrip builder.sh pada instans. Setelah skrip selesai, Packer membuat gambar dari instans yang dimodifikasi.

Elastic Beanstalk menciptakan tiga variabel lingkungan yang dapat digunakan untuk menandai di Packer: AMIs

AWS_EB_ _ PLATFORM ARN

Platform ARN kustom.

AWS_EB_ _ PLATFORM NAME

Nama platform kustom.

AWS_EB_ _ PLATFORM VERSION

Versi platform kustom.

Sampel file custom_platform.json menggunakan variabel-variabel ini untuk menentukan nilai-nilai berikut yang digunakan dalam skrip:

  • platform_name, yang ditetapkan oleh platform.yaml

  • platform_version, yang ditetapkan oleh platform.yaml

  • platform_arn, yang diatur oleh skrip build utama, builder.sh, yang ditampilkan pada akhir sampel file custom_platform.json.

File custom_platform.json berisi dua properti yang Anda harus berikan nilai untuk: source_ami dan region. Untuk detail tentang memilih nilai yang tepat AMI dan Region, lihat Memperbarui template Packer di eb-custom-platforms-samples GitHub repositori.

contoh custom_platform.json
{ "variables": { "platform_name": "{{env `AWS_EB_PLATFORM_NAME`}}", "platform_version": "{{env `AWS_EB_PLATFORM_VERSION`}}", "platform_arn": "{{env `AWS_EB_PLATFORM_ARN`}}" }, "builders": [ { ... "region": "", "source_ami": "", ... } ], "provisioners": [ {...}, { "type": "shell", "execute_command": "chmod +x {{ .Path }}; {{ .Vars }} sudo {{ .Path }}", "scripts": [ "builder/builder.sh" ] } ] }

Skrip dan file lain yang Anda sertakan dalam arsip definisi platform Anda akan sangat bervariasi tergantung pada modifikasi yang ingin Anda buat untuk instans. Instans platform mencakup skrip berikut:

  • 00-sync-apt.sh – Mengomentari: apt -y update. Kami mengomentari perintah karena meminta pengguna untuk input, yang merusak pembaruan paket otomatis. Ini mungkin masalah Ubuntu. Namun, menjalankan apt -y update masih direkomendasikan sebagai praktik terbaik. Untuk alasan ini, kami meninggalkan perintah dalam skrip contoh untuk referensi.

  • 01-install-nginx.sh – Memasang nginx.

  • 02-setup-platform.sh – Memasang wget, tree, dan git. Menyalin hook dan konfigurasi log untuk instans, dan membuat direktori berikut:

    • /etc/SampleNodePlatform – Di mana file konfigurasi kontainer diunggah selama deployment.

    • /opt/elasticbeanstalk/deploy/appsource/ – Di mana skrip 00-unzip.sh mengunggah kode sumber aplikasi selama deployment (lihat bagian Alat skrip platform untuk lingkungan Elastic Beanstalk Anda untuk informasi tentang skrip ini).

    • /var/app/staging/ – Di mana kode sumber aplikasi diproses selama deployment.

    • /var/app/current/ – Dimana kode sumber aplikasi berjalan setelah pemrosesan.

    • /var/log/nginx/healthd/ – Di mana agen kondisi yang ditingkatkan menulis log.

    • /var/nodejs – Di mana file Node.js diunggah selama deployment.

Gunakan EB CLI untuk membuat platform kustom pertama Anda dengan arsip definisi platform sampel.

Untuk membuat platform khusus
  1. Instal EB CLI.

  2. Buat direktori di mana Anda akan mengekstrak sampel kustom platform.

    ~$ mkdir ~/custom-platform
  3. Ekstrak NodePlatform_Ubuntu.zip ke direktori, dan kemudian mengubah ke direktori yang diekstrak.

    ~$ cd ~/custom-platform ~/custom-platform$ unzip ~/NodePlatform_Ubuntu.zip ~/custom-platform$ cd NodePlatform_Ubuntu
  4. Sunting file custom_platform.json, dan memberikan nilai untuk properti source_ami dan region. Untuk detailnya, lihat Memperbarui templat Packer.

  5. Jalankan eb platform init dan ikuti petunjuk untuk menginisialisasi repositori platform.

    Anda dapat mempersingkat eb platform ke ebp.

    catatan

    Windows PowerShell menggunakan ebp sebagai alias perintah. Jika Anda menjalankan EB CLI di Windows PowerShell, gunakan bentuk panjang dari perintah ini:eb platform.

    ~/custom-platform$ eb platform init

    Perintah ini juga membuat direktori .elasticbeanstalk dalam direktori saat ini dan menambahkan file konfigurasi config.yml ke direktori. Jangan mengubah atau menghapus file ini, karena Elastic Beanstalk bergantung padanya saat membuat platform khusus.

    Secara default, eb platform init menggunakan nama folder saat ini sebagai nama platform kustom, yang akan custom-platform dalam contoh ini.

  6. Jalankan eb platform createuntuk meluncurkan lingkungan Packer dan dapatkan platform khusus. ARN Anda akan memerlukan nilai ini nanti saat membuat lingkungan dari platform kustom.

    ~/custom-platform$ eb platform create ...

    Secara default, Elastic Beanstalk menciptakan profil instans aws-elasticbeanstalk-custom-platform-ec2-role untuk platform khusus. Jika Anda ingin menggunakan profil instans yang sudah ada, tambahkan opsi -ip INSTANCE_PROFILE ke perintah eb platform create.

    catatan

    Packer akan gagal untuk membuat platform kustom jika Anda menggunakan profil instans default Elastic Beanstalk aws-elasticbeanstalk-ec2-role.

    EB CLI menampilkan output acara dari lingkungan Packer hingga build selesai. Anda dapat keluar dari tampilan acara dengan menekan Ctrl+C.

  7. Anda dapat memeriksa log untuk kesalahan menggunakan perintah eb platform logs.

    ~/custom-platform$ eb platform logs ...
  8. Anda dapat memeriksa prosesnya nanti dengan eb platform events.

    ~/custom-platform$ eb platform events ...
  9. Periksa status platform Anda dengan eb platform status.

    ~/custom-platform$ eb platform status ...

Ketika operasi selesai, Anda memiliki platform yang dapat Anda gunakan untuk meluncurkan lingkungan Elastic Beanstalk.

Anda dapat menggunakan platform khusus saat membuat lingkungan dari konsol. Lihat Wizard pembuatan lingkungan baru.

Untuk meluncurkann lingkungan pada platform khusus anda
  1. Buat direktori untuk aplikasi Anda.

    ~$ mkdir custom-platform-app ~$ cd ~/custom-platform-app
  2. Inisialisasi repositori aplikasi.

    ~/custom-platform-app$ eb init ...
  3. Unduh contoh aplikasi NodeSampleApp.zip.

  4. Ekstrak sampel aplikasi.

    ~/custom-platform-app$ unzip ~/NodeSampleApp.zip
  5. Larieb create -p CUSTOM-PLATFORM-ARN, di mana CUSTOM-PLATFORM-ARN adalah yang ARN dikembalikan oleh eb platform create perintah, untuk meluncurkan lingkungan yang menjalankan platform kustom Anda.

    ~/custom-platform-app$ eb create -p CUSTOM-PLATFORM-ARN ...

Konten arsip definisi platform

Arsip definisi platform adalah platform yang setara dengan paket sumber aplikasi. Arsip definisi platform adalah ZIP file yang berisi file definisi platform, template Packer, dan skrip dan file yang digunakan oleh template Packer untuk membuat platform Anda.

catatan

Saat Anda menggunakan EB CLI untuk membuat platform khusus, EB CLI membuat arsip definisi platform dari file dan folder di repositori platform Anda, jadi Anda tidak perlu membuat arsip secara manual.

File definisi platform adalah file YAML berformat -yang harus diberi nama platform.yaml dan berada di root arsip definisi platform Anda. Lihat Membuat platform khusus untuk daftar kunci yang diperlukan dan opsional yang didukung dalam file definisi platform.

Anda tidak perlu menamai templat Packer dengan cara tertentu, tetapi nama file harus sesuai dengan templat penyedia yang ditentukan dalam file definisi platform. Lihat dokumentasi Packer yang resmi untuk petunjuk tentang cara membuat templat Packer.

File lain dalam arsip definisi platform Anda adalah skrip dan file yang digunakan oleh template untuk menyesuaikan instance sebelum membuat file. AMI

Hook platform khusus

Elastic Beanstalk menggunakan struktur direktori standar untuk hook pada platform khusus. Ini adalah skrip yang dijalankan selama peristiwa siklus hidup dan dalam menanggapi operasi manajemen: ketika instans di lingkungan Anda diluncurkan, atau ketika pengguna memulai deployment atau menggunakan fitur server aplikasi restart.

Letakkan skrip yang Anda inginkan hook untuk memicu di salah satu subfolder dari folder /opt/elasticbeanstalk/hooks/.

Awas

Menggunakan kait platform khusus pada platform terkelola tidak didukung. Hook platform khusus dirancang untuk platform khusus. Pada platform yang dikelola Elastic Beanstalk mereka mungkin bekerja secara berbeda atau memiliki beberapa masalah, dan perilaku mungkin berbeda di seluruh platform. Pada AMI platform Amazon Linux (sebelum Amazon Linux 2), mereka mungkin masih bekerja dengan cara yang berguna dalam beberapa kasus; gunakan dengan hati-hati.

Kait platform khusus adalah fitur warisan yang ada di platform Amazon LinuxAMI. Pada platform Amazon Linux 2, hook platform khusus di folder /opt/elasticbeanstalk/hooks/ sepenuhnya dihentikan. Elastic Beanstalk tidak membaca atau mengeksekusi mereka. Platform Amazon Linux 2 mendukung jenis hook platform baru, yang dirancang khusus untuk memperluas platform yang dikelola Elastic Beanstalk. Anda dapat menambahkan skrip khusus dan program langsung ke direktori kait dalam paket sumber aplikasi Anda. Elastic Beanstalk menjalankannya selama berbagai tahap penyediaan instans. Untuk informasi lebih lanjut, perluas bagian Hook Platform dalam Memperluas platform Linux Elastic Beanstalk.

Hook diatur ke dalam folder berikut:

  • appdeploy — Skrip berjalan selama deployment aplikasi. Elastic Beanstalk melakukan deployment aplikasi ketika instans baru diluncurkan dan ketika klien memulai deployment versi baru.

  • configdeploy — Skrip dijalankan ketika klien melakukan pembaruan konfigurasi yang mempengaruhi konfigurasi perangkat lunak pada instans, misalnya, dengan menetapkan properti lingkungan atau mengaktifkan rotasi log ke Amazon S3.

  • restartappserver — Skrip dijalankan saat klien melakukan operasi server aplikasi restart.

  • preinit — Skrip berjalan selama instans bootstrapping.

  • postinit — Skrip dijalankan setelah instans bootstrapping.

appdeploy, configdeploy, dan restartappserver berisi folder pre, enact, dan subfolder post. Dalam setiap fase operasi, semua skrip di folder pre dijalankan dalam urutan abjad, kemudian mereka dalam folder enact, dan kemudian di folder post.

Ketika sebuah instans diluncurkan, Elastic Beanstalk berjalan preinit, appdeploy, dan postinit, dalam urutan ini. Pada deployment berikutnya untuk instans berjalan, Elastic Beanstalk menjalankan hook appdeploy. hook configdeploy dijalankan ketika pengguna memperbarui pengaturan konfigurasi perangkat lunak instans. hook restartappserver dijalankan hanya ketika pengguna memulai restart server aplikasi.

Ketika skrip Anda mengalami kesalahan, mereka dapat keluar dengan status bukan nol dan menulis ke stderr untuk menggagalkan operasi. Pesan yang Anda tulis di stderr akan muncul dalam acara yang output ketika operasi gagal. Elastic Beanstalk juga menangkap informasi ini dalam file log /var/log/eb-activity.log Jika Anda tidak ingin gagal operasi, kembalikan 0 (nol). Pesan yang Anda tulis ke stderr atau stdout muncul di log deployment, tetapi tidak akan muncul dalam aliran kejadian kecuali operasi gagal.

Pembersihan instans Packer

Dalam keadaan tertentu, seperti menghentikan proses pembangun Packer sebelum selesai, instans yang diluncurkan oleh Packer tidak dibersihkan. Contoh ini bukan bagian dari lingkungan Elastic Beanstalk dan dapat dilihat dan dihentikan hanya dengan menggunakan layanan Amazon. EC2

Untuk membersihkan instans ini secara manual
  1. Buka EC2konsol Amazon.

  2. Pastikan Anda berada di AWS Wilayah yang sama di mana Anda membuat instance dengan Packer.

  3. Di bawah Sumber Daya, pilih N Menjalankan Instans, di mana N menunjukkan jumlah instance yang berjalan.

  4. Klik di kotak teks kueri.

  5. Pilih tag Nama.

  6. Masukkan packer.

    Kueri akan terlihat seperti: tag:Nama: packer

  7. Pilih setiap instans yang cocok dengan kueri.

  8. Jika Status Instans adalah berjalan, pilih Tindakan, Status Instans, Berhenti, dan kemudian Tindakan, Status Instans, Akhiri.

Format file Platform.yaml

File platform.yaml tersebut berisi format berikut.

version: "version-number" provisioner: type: provisioner-type template: provisioner-template flavor: provisioner-flavor metadata: maintainer: metadata-maintainer description: metadata-description operating_system_name: metadata-operating_system_name operating_system_version: metadata-operating_system_version programming_language_name: metadata-programming_language_name programming_language_version: metadata-programming_language_version framework_name: metadata-framework_name framework_version: metadata-framework_version option_definitions: - namespace: option-def-namespace option_name: option-def-option_name description: option-def-description default_value: option-def-default_value option_settings: - namespace: "option-setting-namespace" option_name: "option-setting-option_name" value: "option-setting-value"

Ganti placeholder dengan nilai-nilai ini:

version-number

Wajib. Versi YAML definisi. Harus berupa 1.0.

provisioner-type

Wajib. Jenis pembangun yang digunakan untuk membuat platform khusus. Harus packer.

provisioner-template

Wajib. JSONFile yang berisi pengaturan untuk provisioner-type.

provisioner-flavor

Tidak wajib. Sistem operasi dasar yang digunakan untukAMI. Salah satu dari yang berikut:

amazon (default)

Amazon Linux. Jika tidak ditentukan, versi terbaru Amazon Linux saat platform dibuat.

Amazon Linux 2 bukanlah varian sistem operasi yang didukung.

ubuntu1604

Ubuntu 16.04 LTS

rhel7

RHEL7

rhel6

RHEL6

metadata-maintainer

Tidak wajib. Informasi kontak untuk orang yang memiliki platform (100 karakter).

metadata-description

Tidak wajib. Deskripsi platform (2.000 karakter).

metadata-operating_system_name

Tidak wajib. Nama sistem operasi platform (50 karakter). Nilai ini tersedia saat memfilter output untuk file. ListPlatformVersionsAPI

metadata-operating_system_version

Tidak wajib. Versi sistem operasi platform (20 karakter).

metadata-programming_language_name

Tidak wajib. Bahasa pemrograman didukung oleh platform (50 karakter)

metadata-programming_language_version

Tidak wajib. Versi bahasa platform (20 karakter).

metadata-framework_name

Tidak wajib. Nama kerangka web yang digunakan oleh platform (50 karakter).

metadata-framework_version

Tidak wajib. Versi kerangka web platform (20 karakter).

option-def-namespace

Tidak wajib. Sebuah namespace dibawah aws:elasticbeanstalk:container:custom (100 karakter).

option-def-option_name

Tidak wajib. Nama opsi ini (100 karakter). Anda dapat menentukan hingga 50 opsi konfigurasi khusus yang disediakan platform untuk pengguna.

option-def-description

Tidak wajib. Deskripsi opsi (1.024 karakter).

option-def-default_value

Tidak wajib. Nilai default yang digunakan ketika pengguna tidak menentukannya.

Contoh berikut membuat opsi NPM_START.

options_definitions: - namespace: "aws:elasticbeanstalk:container:custom:application" option_name: "NPM_START" description: "Default application startup command" default_value: "node application.js"
option-setting-namespace

Tidak wajib. Namespace dari pilihan.

option-setting-option_name

Tidak wajib. Nama opsi. Anda dapat menentukan hingga 50 pilihan yang disediakan oleh Elastic Beanstalk.

option-setting-value

Tidak wajib. Nilai yang digunakan ketika pengguna tidak menentukannya.

Contoh berikut membuat opsi TEST.

option_settings: - namespace: "aws:elasticbeanstalk:application:environment" option_name: "TEST" value: "This is a test"

Menandai versi platform khusus

Anda dapat menerapkan tag ke versi platform AWS Elastic Beanstalk khusus Anda. Tag adalah pasangan nilai kunci yang terkait dengan AWS sumber daya. Untuk informasi tentang penandaan sumber daya Elastic Beanstalk, penggunaan kasus, kunci tag dan batasan nilai, dan jenis sumber daya yang didukung, lihat Pelabelan sumber daya aplikasi Elastic Beanstalk.

Anda dapat menentukan tag saat membuat versi platform khusus. Dalam versi platform khusus yang ada, Anda dapat menambahkan atau menghapus tag, dan memperbarui nilai tag yang ada. Anda dapat menambahkan hingga 50 tag ke setiap versi platform khusus.

Menambahkan tag selama pembuatan versi platform khusus

Jika Anda menggunakan EB CLI untuk membuat versi platform khusus Anda, gunakan --tags opsi eb platform create untuk menambahkan tag.

~/workspace/my-app$ eb platform create --tags mytag1=value1,mytag2=value2

Dengan AWS CLI atau klien API berbasis lainnya, tambahkan tag dengan menggunakan --tags parameter pada create-platform-version perintah.

$ aws elasticbeanstalk create-platform-version \ --tags Key=mytag1,Value=value1 Key=mytag2,Value=value2 \ --platform-name my-platform --platform-version 1.0.0 --platform-definition-bundle S3Bucket=amzn-s3-demo-bucket,S3Key=sample.zip

Mengelola tag dari versi platform khusus yang ada

Anda dapat menambahkan, memperbarui, dan menghapus tag dalam versi platform khusus Elastic Beanstalk yang ada.

Jika Anda menggunakan EB CLI untuk memperbarui versi platform kustom Anda, gunakan eb tags untuk menambah, memperbarui, menghapus, atau mencantumkan tag.

Misalnya, perintah berikut mencantumkan tag dalam versi platform khusus.

~/workspace/my-app$ eb tags --list --resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id:platform/my-platform/1.0.0"

Perintah berikut update tag mytag1 dan menghapus tag mytag2.

~/workspace/my-app$ eb tags --update mytag1=newvalue --delete mytag2 \ --resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id:platform/my-platform/1.0.0"

Untuk daftar lengkap opsi dan contoh lainnya, lihat eb tags.

Dengan AWS CLI atau klien API berbasis lainnya, gunakan list-tags-for-resource perintah untuk membuat daftar tag versi platform khusus.

$ aws elasticbeanstalk list-tags-for-resource --resource-arn "arn:aws:elasticbeanstalk:us-east-2:my-account-id:platform/my-platform/1.0.0"

Gunakan perintah update-tags-for-resource untuk menambahkan, memperbarui, atau menghapus tag dalam versi platform khusus.

$ aws elasticbeanstalk update-tags-for-resource \ --tags-to-add Key=mytag1,Value=newvalue --tags-to-remove mytag2 \ --resource-arn "arn:aws:elasticbeanstalk:us-east-2:my-account-id:platform/my-platform/1.0.0"

Tentukan kedua tag untuk menambahkan dan tag untuk memperbarui dalam parameter --tags-to-add dari update-tags-for-resource. Tag yang tidak ada ditambahkan, dan nilai tag yang ada diperbarui.

catatan

Untuk menggunakan beberapa EB CLI dan AWS CLI perintah dengan versi platform khusus Elastic Beanstalk, Anda memerlukan versi platform khusus. ARN Anda dapat mengambil ARN dengan menggunakan perintah berikut.

$ aws elasticbeanstalk list-platform-versions

Gunakan opsi --filters untuk memfilter output ke nama platform khusus Anda.