

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

# Menggunakan OpsWorks Stacks Agent CLI
<a name="troubleshoot-debug-cli"></a>

**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 Dukungan Tim di [AWS re:Post](https://repost.aws/) atau melalui [AWS Dukungan](https://aws.amazon.com/support) Premium.

**catatan**  
Agen CLI hanya tersedia di instance Linux.

Pada setiap contoh online, OpsWorks Stacks menginstal agen, yang berkomunikasi dengan layanan. Layanan 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](workinginstances-ssh.md). 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](workingcookbook-json.md).

Untuk informasi selengkapnya tentang cara mengatur koneksi SSH ke sebuah instance, lihat[Login dengan SSH](workinginstances-ssh.md). Anda juga harus memiliki [izin SSH dan sudo](opsworks-security-users.md) untuk tumpukan.

Bagian ini menjelaskan cara menggunakan agen CLI untuk pemecahan masalah. Untuk informasi selengkapnya dan referensi perintah lengkap, lihat[OpsWorks Agen Tumpukan CLI](agent.md).

**Topics**
+ [Mengeksekusi Resep](#troubleshoot-debug-cli-recipes)
+ [Menampilkan Log Chef](#troubleshoot-debug-cli-log)
+ [Menampilkan Konfigurasi Stack dan Deployment JSON](#troubleshoot-debug-cli-json)

## Mengeksekusi Resep
<a name="troubleshoot-debug-cli-recipes"></a>

[`run_command`](agent-run.md)Perintah 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](workingstacks-commands.md) atau CLI yang setara atau tindakan API ([https://docs.aws.amazon.com/cli/latest/reference/opsworks/create-deployment.html](https://docs.aws.amazon.com/cli/latest/reference/opsworks/create-deployment.html)dan [https://docs.aws.amazon.com/opsworks/latest/APIReference/API_CreateDeployment.html](https://docs.aws.amazon.com/opsworks/latest/APIReference/API_CreateDeployment.html)).

`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 menggunakan`run_command`, Anda dapat menjalankan resep acara tertentu sesering yang Anda butuhkan tanpa harus memulai atau menghentikan instance.

**catatan**  
OpsWorks Stacks menjalankan resep dari cache buku masak instance, bukan repositori buku masak. 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](workingstacks-commands.md) stack untuk memperbarui cache buku masak dengan versi terbaru dari repositori.

Agen hanya menyimpan perintah terbaru. Anda dapat mencantumkannya dengan menjalankan [`list_commands`](agent-list.md), 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](workingcookbook-json.md) 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
<a name="troubleshoot-debug-cli-log"></a>

[`show_log`](agent-show.md)Perintah 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`](agent-list.md), yang mengembalikan daftar perintah yang di-cache dan waktu dilakukannya. Sebagai contoh, lihat [Mengeksekusi Resep](#troubleshoot-debug-cli-recipes).

Untuk menampilkan log untuk eksekusi terbaru dari perintah tertentu, jalankan yang berikut ini:

```
sudo opsworks-agent-cli show_log command
```

Parameter perintah dapat diatur ke`setup`,`configure`,`deploy`,`undeploy`,`start`,`stop`, atau`restart`. 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](#troubleshoot-debug-cli-recipes).
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
<a name="troubleshoot-debug-cli-json"></a>

Sebagian besar data yang digunakan oleh resep berasal dari [konfigurasi tumpukan dan penerapan JSON](workingcookbook-json.md), 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, OpsWorks Stacks menginstal JSON yang mewakili status tumpukan dan penerapan pada saat perintah. Untuk informasi selengkapnya, lihat [Konfigurasi Stack dan Atribut Deployment](workingcookbook-json.md).

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_json`](agent-json.md)perintah 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 ke`setup`,`configure`,`deploy`,`undeploy`,`start`,`stop`, atau`restart`. 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:

1. Jalankan`list_commands`, yang mengembalikan daftar perintah yang telah dijalankan pada instance, dan tanggal setiap perintah dijalankan.

1. Salin tanggal untuk perintah yang sesuai dan gunakan sebagai `get_json` *date* argumen.