Saya baru saja mendaftar untuk penawaran Pohon Kacang Elastis Amazon yang baru. Apa yang saya tidak tahu adalah bagaimana SSH ke instance Beanstalk. Saya tidak memiliki kunci pribadi karena Beanstalk membuat instance atas nama saya.
amazon-web-services
amazon-ec2
ssh
amazon-elastic-beanstalk
Benno Waldmann
sumber
sumber
eb ssh
Jawaban:
Saya menemukan ini sebagai proses 2 langkah. Ini mengasumsikan bahwa Anda telah mengatur keypair untuk mengakses instance EC2 di wilayah yang relevan.
Konfigurasikan Grup Keamanan
elasticbeanstalk-default
grup keamanan jika Anda telah meluncurkan mesin Beanstalk yang elastis di wilayah itu.Edit grup keamanan untuk menambahkan aturan untuk akses SSH. Di bawah ini akan menguncinya hanya untuk memungkinkan masuknya dari alamat IP tertentu.
Konfigurasikan lingkungan Aplikasi Pohon Kacang Elastis Anda
Existing Key Pair
bidang.Setelah instance diluncurkan kembali, Anda perlu mendapatkan nama host dari tab instance instance AWS Console EC2, atau melalui API. Anda kemudian dapat ssh ke server.
Catatan: Untuk menambahkan keypair ke konfigurasi lingkungan, perlindungan terminasi instance harus dimatikan karena Beanstalk akan mencoba untuk menghentikan instance saat ini dan memulai instance baru dengan KeyPair.
Catatan: Jika ada yang tidak berfungsi, periksa tab "Acara" di aplikasi / lingkungan Beanstalk dan cari tahu apa yang salah.
sumber
Pohon kacang elastis CLI v3 sekarang mendukung SSH langsung dengan perintah
eb ssh
. MisalnyaTidak perlu repot membuat grup keamanan untuk menemukan alamat instance EC2.
Ada juga trik keren ini:
Itu sementara akan memaksa port 22 terbuka ke 0.0.0.0, dan tetap buka sampai Anda
exit
. Ini memadukan sedikit manfaat dari jawaban teratas, tanpa kerumitan. Anda dapat memberikan sementara kepada orang lain selain Anda akses untuk debugging dan yang lainnya. Tentu saja Anda masih perlu mengunggah kunci publik mereka ke host agar mereka memiliki akses. Setelah Anda melakukan itu (dan selama Anda berada di dalameb ssh
), orang lain dapat melakukannyasumber
eb ssh production
,. Anda juga dapat mengatur lingkungan tertentu dengan opsi pengaturan:eb ssh production --setup
Pengalaman saya pada Agustus 2013 dengan klien linux dan instalasi AWS Beanstalk sederhana (instance EC2 tunggal) adalah sebagai berikut (berdasarkan Komunitas Wiki di atas)
Konfigurasikan Grup Keamanan
awsweb...
grup keamanan dan detailnya akan ditampilkan di dasar halamanBuat Pasangan Kunci Publik-Pribadi
Mengasosiasikan Pasangan Kunci Privat Publik dengan Elastic Beanstalk EC2 Server
Terhubung ke AWS EC2 Instance menggunakan SSH
Semoga berhasil
sumber
Saya telah bermain dengan ini juga.
Layanan akan diluncurkan kembali sehingga membuat kopi selama 5 menit
Pada tab EC2 Anda untuk wilayah yang sama Anda akan melihat instance berjalan baru Anda. ssh ke nama dns publik sebagai ec2-user menggunakan kunci yang ditambahkan dalam 3 misalnya ssh [email protected]
sumber
Ada opsi 'Connect' yang praktis di menu 'Instance Actions' untuk instance EC2. Ini akan memberi Anda perintah SSH yang tepat untuk mengeksekusi dengan url yang benar untuk instance. Instruksi keseluruhan Jabley benar.
sumber
Jawaban di atas agak tua.
Pertama-tama buat pasangan kunci dan kemudian pasangkan ke lingkungan Elastic Beanstalk.
Langkah-langkah untuk membuat pasangan kunci
Langkah-langkah untuk memasang pasangan kunci yang dibuat ke lingkungan Elastic Beanstalk
AWS -> Layanan -> Elastic Beanstalk
Pilih lingkungan Anda dan klik konfigurasi di sebelah kiri.
Dalam Ikhtisar konfigurasi, pilih modifikasi dari Keamanan.
Di bawah Izin mesin virtual pilih pasangan kunci yang kami buat.
Klik simpan dan kemudian simpan konfigurasi.
Ini akan memakan waktu untuk merefleksikan instance EC2 Anda.
sumber
Jika Anda menggunakan kacang elastis dan EB CLI, cukup gunakan
eb ssh
untuk masuk ke instance. Anda dapat menggunakan opsi seperti yang ditentukan dalam tautan berikut http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-ssh.htmlsumber
Anda harus terhubung ke instance EC2 secara langsung menggunakan alamat ip publiknya. Anda tidak dapat terhubung menggunakan url elasticbeanstalk.
Anda dapat menemukan contoh alamat ip dengan mencarinya di konsol EC2.
Anda juga perlu memastikan port 22 terbuka. Secara default EB CLI menutup port 22 setelah koneksi ssh selesai. Anda dapat memanggil eb ssh -o untuk menjaga port tetap terbuka setelah sesi ssh selesai.
Peringatan: Anda harus tahu bahwa beanstalk elastis dapat menggantikan instance Anda kapan saja. Status tidak dijamin pada salah satu contoh batang elastis Anda. Mungkin lebih baik menggunakan ssh hanya untuk tujuan pengujian dan debugging, karena apa pun yang Anda modifikasi dapat hilang kapan saja.
sumber
Arah untuk menetapkan pasangan kunci untuk instance ElasticBeanstalk ec2 dengan UI saat ini adalah: Peringatan: Ini akan memerlukan pembaruan instance EC2 di Aplikasi ElasticBeanstalk Anda. Catatan: Anda harus membuat pasangan kunci di dasbor EC2 sebelum ini.
1) Di AWS Dashboard, Pilih layanan ElasticBeanstalk 2) Pilih Aplikasi yang ingin Anda gunakan. 3) Pilih 'Konfigurasi' 4) Pilih ikon roda gigi (pengaturan) pada kotak konfigurasi 'Instances'. 5) Ini akan membawa Anda ke halaman berjudul 'Server', di mana Anda dapat memperbarui bidang drop-down 'pasangan kunci EC2' dengan pasangan kunci yang Anda inginkan dan pilih 'Simpan'.
Satu hal yang perlu diperhatikan adalah bahwa ini mungkin tidak berfungsi untuk Aplikasi dengan banyak contoh (tapi saya percaya kemungkinan jika mereka semua berada di wilayah yang sama dengan pasangan kunci).
sumber
Saya datang ke sini mencari cara untuk menambahkan kunci ke contoh yang dibuat Beanstalk selama penyediaan (kami menggunakan Terraform). Anda dapat melakukan hal berikut di Terraform:
Anda kemudian dapat menggunakan kunci itu untuk SSH ke dalam kotak.
sumber
Jika Anda telah mengatur CLI gunakan
eb init
untuk lingkungan Anda maka itu harus sesederhanaeb ssh --setup
yang akan memungkinkan Anda untuk membuat pasangan kunci baru atau menggunakan yang sudah ada jika ada.Anda mungkin juga bisa terhubung dengan lingkungan yang ada
eb use
walaupun saya belum melakukannya.Untuk detail tentang menginstal CLI - https://docs.aws.amazon.com/console/elasticbeanstalk/eb-cli-install
sumber
Di mac Anda dapat menginstal cli menggunakan brew:
Dengan alat baris perintah maka Anda dapat ssh dengan:
dan juga melakukan operasi lain. Ini mengasumsikan Anda telah menambahkan grup keamanan yang memungkinkan ssh dari ip Anda.
sumber
Bergantung pada konfigurasi lingkungan Anda, Anda mungkin tidak memiliki alamat IP publik pada instance EC2 yang dibuat untuk lingkungan Anda. Anda dapat memeriksa dengan:
Terakhir, pilih EIP baru Anda dan pilih Alamat asosiasi dari menu tindakan. Kaitkan IP itu dengan instance EC2 Anda. Anda harus dapat terhubung menggunakan
eb ssh
sekarang.Anda dapat mengatur ulang detail koneksi dengan menjalankan
eb ssh --setup
.sumber
Saya juga mengalami masalah yang sama beberapa waktu lalu. Saya ingin menggunakan file kunci, tetapi Amazon mengatakan di suatu tempat bahwa Anda tidak dapat menambahkan file kunci ke server EC2 yang ada. Untuk aplikasi Beanstalk pertama, Amazon melakukan pra-konfigurasi aplikasi untuk Anda. Anda perlu membuat aplikasi baru, dan Anda dapat mengkonfigurasi server EC2 yang menjalankan aplikasi Beanstalk untuk menggunakan file pem yang lama (ppk jika menggunakan Putty), atau Anda dapat membuat yang baru. Sekarang Anda harus dapat SSH.
Kemudian konfigurasikan, lalu hapus aplikasi lama Anda.
sumber