Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan AWS OpsWorks Stacks Agent CLI
penting
AWS OpsWorks Stacks Layanan ini mencapai akhir masa pakai pada 26 Mei 2024 dan telah dinonaktifkan untuk pelanggan baru dan yang sudah ada. Kami sangat menyarankan pelanggan untuk memindahkan beban kerja mereka ke solusi lain sesegera mungkin. Jika Anda memiliki pertanyaan tentang migrasi, hubungi AWS Support Tim di AWS re:Post
catatan
Agen CLI hanya tersedia di instance Linux.
Pada setiap contoh online, AWS OpsWorks Stacks menginstal agen, yang berkomunikasi dengan layanan. Layanan AWS OpsWorks Stacks pada gilirannya mengirimkan perintah ke agen untuk melakukan tugas-tugas seperti memulai Chef berjalan pada instance ketika peristiwa siklus hidup terjadi. Pada instance Linux, agen mengekspos antarmuka baris perintah (CLI) yang sangat berguna untuk pemecahan masalah. Untuk menjalankan perintah CLI agen, gunakan SSH untuk terhubung ke sebuah instance. Anda kemudian dapat menjalankan perintah CLI agen untuk melakukan berbagai tugas, termasuk yang berikut ini:
-
Jalankan resep.
-
Tampilkan log Chef.
-
Menampilkan konfigurasi tumpukan dan penerapan JSON.
Untuk informasi selengkapnya tentang cara mengatur koneksi SSH ke sebuah instans, lihatLogin dengan SSH. Anda juga harus memiliki izin SSH dan sudo untuk tumpukan.
Bagian ini menjelaskan cara menggunakan agen CLI untuk pemecahan masalah. Untuk informasi selengkapnya dan referensi perintah lengkap, lihatAWS OpsWorks Agen Stacks CLI.
Mengeksekusi Resep
run_commandPerintah agen CLI mengarahkan agen untuk menjalankan kembali perintah yang dilakukan sebelumnya. Perintah yang paling berguna untuk pemecahan masalah—setup
,, configure
deploy
, dan undeploy
—masing-masing sesuai dengan peristiwa siklus hidup. Mereka mengarahkan agen untuk memulai lari Chef untuk mengeksekusi resep terkait.
catatan
run_command
Perintah ini terbatas untuk mengeksekusi kelompok resep yang dikaitkan dengan perintah tertentu, biasanya resep yang terkait dengan peristiwa siklus hidup. Anda tidak dapat menggunakannya untuk mengeksekusi resep tertentu. Untuk menjalankan satu atau beberapa resep yang ditentukan, gunakan perintah tumpukan Execute Recipes atau CLI yang setara atau tindakan API (create-deployment
dan CreateDeployment
).
run_command
Perintah ini cukup berguna untuk men-debug resep khusus, terutama resep yang ditetapkan ke peristiwa siklus hidup Pengaturan dan Konfigurasi, yang tidak dapat Anda picu langsung dari konsol. Dengan menggunakanrun_command
, Anda dapat menjalankan resep acara tertentu sesering yang Anda butuhkan tanpa harus memulai atau menghentikan instance.
catatan
AWS OpsWorks Stacks menjalankan resep dari cache buku masak instance, bukan repositori buku masak. AWS OpsWorks Tumpukan mengunduh buku masak ke cache ini saat instance dimulai, tetapi tidak secara otomatis memperbarui cache pada instance online jika Anda kemudian memodifikasi buku masak Anda. Jika Anda telah memodifikasi buku masak Anda sejak memulai instance, pastikan untuk menjalankan perintah tumpukan perintah Update Cookbooks stack untuk memperbarui cache buku masak dengan versi terbaru dari repositori.
Agen hanya menyimpan perintah terbaru. Anda dapat mencantumkannya dengan menjalankan list_commands, yang mengembalikan daftar perintah yang di-cache dan waktu dilakukannya.
sudo opsworks-agent-cli list_commands 2013-02-26T19:08:26 setup 2013-02-26T19:12:01 configure 2013-02-26T19:12:05 configure 2013-02-26T19:22:12 deploy
Untuk menjalankan kembali perintah terbaru, jalankan ini:
sudo opsworks-agent-cli run_command
Untuk menjalankan kembali instance terbaru dari perintah tertentu, jalankan ini:
sudo opsworks-agent-cli run_command
command
Misalnya, untuk menjalankan kembali resep Setup, Anda dapat menjalankan perintah berikut:
sudo opsworks-agent-cli run_command setup
Setiap perintah memiliki konfigurasi tumpukan terkait dan penerapan JSON yang mewakili status tumpukan dan penerapan pada saat perintah dijalankan. Karena data itu dapat berubah dari satu perintah ke perintah berikutnya, instance perintah yang lebih lama mungkin menggunakan data yang agak berbeda dari yang terbaru. Untuk menjalankan kembali instance tertentu dari sebuah perintah, salin waktu dari list_commands
output dan jalankan yang berikut:
sudo opsworks-agent-cli run_command
time
Contoh sebelumnya semua menjalankan kembali perintah menggunakan JSON default, yang merupakan JSON diinstal untuk perintah itu. Anda dapat menjalankan kembali perintah terhadap file JSON arbitrer sebagai berikut:
sudo opsworks-agent-cli run_command -f
/path/to/valid/json.file
Menampilkan Log Chef
show_logPerintah agen CLI menampilkan log tertentu. Setelah perintah selesai, Anda akan melihat akhir file. Oleh karena itu show_log
perintah menyediakan cara yang mudah untuk mengekor log, yang biasanya di mana Anda menemukan informasi kesalahan. Anda dapat menggulir ke atas untuk melihat bagian log sebelumnya.
Untuk menampilkan log perintah saat ini, jalankan ini:
sudo opsworks-agent-cli show_log
Anda juga dapat menampilkan log untuk perintah tertentu, tetapi perlu diketahui bahwa agen cache log hanya untuk tiga puluh perintah terakhir. Anda dapat membuat daftar perintah instance dengan menjalankan list_commands, yang mengembalikan daftar perintah yang di-cache dan waktu dilakukannya. Sebagai contoh, lihat Mengeksekusi Resep.
Untuk menampilkan log untuk eksekusi terbaru dari perintah tertentu, jalankan yang berikut ini:
sudo opsworks-agent-cli show_log
command
Parameter perintah dapat diatur kesetup
,configure
,deploy
,undeploy
,start
,stop
, ataurestart
. Sebagian besar perintah ini sesuai dengan peristiwa siklus hidup dan mengarahkan agen untuk menjalankan resep terkait.
Untuk menampilkan log untuk eksekusi perintah tertentu, salin tanggal dari list_commands
output dan jalankan:
sudo opsworks-agent-cli show_log
date
Jika perintah masih dijalankan, show_log
menampilkan status log saat ini.
catatan
Salah satu cara yang digunakan show_log
untuk memecahkan masalah kesalahan dan out-of-memory masalah adalah dengan mengekor log selama eksekusi, sebagai berikut:
-
Gunakan
run_command
untuk memicu peristiwa siklus hidup yang sesuai. Untuk informasi selengkapnya, lihat Mengeksekusi Resep. -
Berulang kali berlari
show_log
untuk melihat ekor log saat sedang ditulis.
Jika Chef kehabisan memori atau keluar secara tak terduga, log akan berakhir tiba-tiba. Jika resep gagal, log akan berakhir dengan pengecualian dan jejak tumpukan.
Menampilkan Konfigurasi Stack dan Deployment JSON
Sebagian besar data yang digunakan oleh resep berasal dari konfigurasi tumpukan dan penerapan JSON, yang mendefinisikan satu set atribut Chef yang memberikan deskripsi rinci tentang konfigurasi tumpukan, penerapan apa pun, dan atribut kustom opsional yang dapat ditambahkan pengguna. Untuk setiap perintah, AWS OpsWorks Stacks menginstal JSON yang mewakili status tumpukan dan penerapan pada saat perintah. Untuk informasi selengkapnya, lihat Konfigurasi Stack dan Atribut Deployment.
Jika resep kustom Anda memperoleh data dari konfigurasi tumpukan dan penerapan JSON, Anda dapat memverifikasi data dengan memeriksa JSON. Cara termudah untuk menampilkan konfigurasi tumpukan dan penyebaran JSON adalah dengan menjalankan get_jsonperintah agen CLI, yang menampilkan versi diformat dari objek JSON. Berikut ini menunjukkan beberapa baris pertama dari beberapa output tipikal:
{ "opsworks": { "layers": { "php-app": { "id": "4a2a56c8-f909-4b39-81f8-556536d20648", "instances": { "php-app2": { "elastic_ip": null, "region": "us-west-2", "booted_at": "2013-02-26T20:41:10+00:00", "ip": "10.112.235.192", "aws_instance_id": "i-34037f06", "availability_zone": "us-west-2a", "instance_type": "c1.medium", "private_dns_name": "ip-10-252-0-203.us-west-2.compute.internal", "private_ip": "10.252.0.203", "created_at": "2013-02-26T20:39:39+00:00", "status": "online", "backends": 8, "public_dns_name": "ec2-10-112-235-192.us-west-2.compute.amazonaws.com" ...
Anda dapat menampilkan konfigurasi tumpukan terbaru dan penyebaran JSON sebagai berikut:
sudo opsworks-agent-cli get_json
Anda dapat menampilkan konfigurasi tumpukan terbaru dan penyebaran JSON untuk perintah tertentu dengan menjalankan yang berikut:
sudo opsworks-agent-cli get_json
command
Parameter perintah dapat diatur kesetup
,configure
,deploy
,undeploy
,start
,stop
, ataurestart
. Sebagian besar perintah ini sesuai dengan peristiwa siklus hidup dan mengarahkan agen untuk menjalankan resep terkait.
Anda dapat menampilkan konfigurasi tumpukan dan penerapan JSON untuk eksekusi perintah tertentu dengan menentukan tanggal perintah seperti ini:
sudo opsworks-agent-cli get_json
date
Cara paling sederhana untuk menggunakan perintah ini adalah sebagai berikut:
-
Run
list_commands
, yang mengembalikan daftar perintah yang telah dijalankan pada instance, dan tanggal setiap perintah dijalankan. -
Salin tanggal untuk perintah yang sesuai dan gunakan sebagai argumen
get_json
tanggal
.