Bagaimana cara meningkatkan batas waktu penyebaran Elastic Beanstalk?

13

Sebagai bagian dari penyebaran aplikasi saya, saya punya beberapa commandsdi .ebextensionsfile konfigurasi saya . Mungkin perlu 20 menit atau lebih untuk menyelesaikan semua perintah, pertama kali perintah dijalankan (kloning repositori besar).

Sayangnya, ini memicu batas waktu selama penerapan:

INFO Deploying new version to instance(s).
WARN The following instances have not responded in the allowed command
     timeout time (they might still finish eventually on their own).
INFO Command execution completed. Summary: [Successful: 0, TimedOut: 1].

Apakah mungkin untuk menambah batas waktu ini? Saya tidak dapat menemukan opsi di pengaturan lingkungan saya.

Benjamin
sumber
1
GIYF, Anda dapat menggunakan ebextensions: stackoverflow.com/questions/25557874/…
Lucas Carvalho
Terima kasih untuk penunjuknya, jika Anda menambahkan ringkasan jawaban yang ditautkan di bawah, saya akan menandai jawaban Anda sebagai diterima!
Benjamin

Jawaban:

11

Anda dapat menambahkan file konfigurasi AWS Elastic Beanstalk (.ebextensions) ke kode sumber aplikasi web Anda untuk mengonfigurasi lingkungan Anda dan menyesuaikan sumber daya AWS yang dikandungnya.

The option_settingsbagian dari file konfigurasi mendefinisikan nilai-nilai untuk pilihan konfigurasi . Opsi konfigurasi memungkinkan Anda mengkonfigurasi lingkungan Elastic Beanstalk Anda, sumber daya AWS di dalamnya, dan perangkat lunak yang menjalankan aplikasi Anda.

Tambahkan file konfigurasi ke kode sumber Anda dalam folder bernama .ebextensions dan sebarkan di bundel sumber aplikasi Anda.

Contoh:

option_settings:
    - namespace: aws:elasticbeanstalk:command
      option_name: Timeout
      value: 1000

* "value" menunjukkan lamanya waktu sebelum batas waktu dalam detik.

Referensi: Official AWS elastis Pohon Kacang Lingkungan Konfigurasi dan Opsi Umum untuk Semua Lingkungan , ini jawaban stackoverflow dan ini posting AWS Developers Forum.

Lucas Carvalho
sumber
0

Anda dapat memanggang repos ke dalam AMI dan menggunakan beanstalk elastis. Dengan begitu checkout tidak terlalu lama.

Pada catatan lain, apa yang Anda lakukan kloning repo besar-besaran sebagai bagian dari penyebaran ?

Alex
sumber
Saya selalu enggan menggunakan AMI khusus, untuk membuatnya tetap sederhana. Catatan terakhir Anda adalah poin yang bagus. Aplikasi saya memiliki generator logo built-in, yang membutuhkan daftar font yang luas untuk ditawarkan kepada pengguna. Saya tidak ingin menggabungkan font-font ini dengan aplikasi saya untuk menjaga ukurannya dalam batas yang masuk akal, jadi skrip penerapan saya mengkloning repositori besar begitu aplikasi didorong ke server. Ini mungkin bukan pendekatan terbaik, tapi ini yang terbaik yang saya temukan sejauh ini.
Benjamin