

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

# Langkah 3: Tambahkan Toko Data Back-end
<a name="gettingstarted-db"></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.

[Langkah 2.1: Buat Stack - Chef 11](gettingstarted-simple-stack.md)menunjukkan cara membuat tumpukan yang melayani aplikasi PHP. Namun, itu adalah aplikasi yang sangat sederhana yang tidak lebih dari menampilkan beberapa teks statis. Aplikasi produksi biasanya menggunakan penyimpanan data back-end, menghasilkan konfigurasi tumpukan sesuatu seperti ilustrasi berikut.

![\[AWS OpsWorks stack architecture diagram showing PHP app, MySQL, and user interactions.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/php_walkthrough_arch_3.png)


Bagian ini menunjukkan cara memperluas MyStack untuk menyertakan server database MySQL back-end. Anda perlu melakukan lebih dari sekadar menambahkan server MySQL ke tumpukan. Anda juga harus mengonfigurasi aplikasi untuk berkomunikasi dengan benar dengan server database. OpsWorks Tumpukan tidak melakukan ini untuk Anda; Anda perlu menerapkan beberapa resep khusus untuk menangani tugas itu.

**Topics**
+ [Langkah 3.1: Tambahkan Database Back-end](gettingstarted-db-db.md)
+ [Langkah 3.2: Perbarui Sederhana PHPApp](gettingstarted-db-update.md)
+ [Penyimpangan Singkat: Buku Masak, Resep, dan Atribut Tumpukan OpsWorks](gettingstarted-db-recipes.md)
+ [Langkah 3.3: Tambahkan Buku Masak Kustom ke MyStack](gettingstarted-db-cookbooks.md)
+ [Langkah 3.4: Jalankan Resep](gettingstarted-db-lifecycle.md)
+ [Langkah 3.5: Menyebarkan SederhanaPHPApp, Versi 2](gettingstarted-db-deploy.md)
+ [Langkah 3.6: Jalankan Sederhana PHPApp](gettingstarted-db-run.md)

# Langkah 3.1: Tambahkan Database Back-end
<a name="gettingstarted-db-db"></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.

Versi baru Simple PHPApp menyimpan datanya dalam database back-end. OpsWorks Stacks mendukung dua jenis server database:
+ Lapisan [OpsWorks MySQL Stacks](workinglayers-db-mysql.md) adalah cetak biru untuk membuat EC2 instance Amazon yang menjadi tuan rumah master database MySQL.
+ Lapisan layanan Amazon RDS menyediakan cara untuk menggabungkan [instance Amazon RDS ke dalam tumpukan](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html).

[Anda juga dapat menggunakan database lain, seperti Amazon DynamoDB, atau membuat lapisan khusus untuk mendukung database seperti MongoDB.](http://www.mongodb.org/) Untuk informasi selengkapnya, lihat [Menggunakan Back-end Data Store](customizing-rds.md).

Contoh ini menggunakan layer MySQL.

**Untuk menambahkan lapisan MySQL ke MyStack**

1. Pada halaman **Layers**, klik **\$1 Layer**.

1. **Pada halaman **Add Layer**, untuk **tipe Layer**, pilih **MySQL**, terima pengaturan default, dan klik Add Layer.**  
![\[Add Layer interface for MySQL with options to set pengguna root password and apply to all instances.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/gsb3.png)

**Untuk menambahkan instance ke lapisan MySQL**

1. Pada baris **MySQL** halaman **Layers**, **klik** Add an instance.

1. **Pada halaman **Instances**, di bawah **MySQL**, klik Add an instance.**

1. Terima default dan klik **Add instance**, tetapi jangan memulainya.

**catatan**  
OpsWorks Stacks secara otomatis membuat database bernama menggunakan nama pendek aplikasi, simplephpapp untuk contoh ini. Anda akan memerlukan nama ini jika Anda ingin menggunakan [resep Chef](http://docs.chef.io/recipes.html) untuk berinteraksi dengan database.

# Langkah 3.2: Perbarui Sederhana PHPApp
<a name="gettingstarted-db-update"></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.

Untuk memulai, Anda memerlukan versi baru Simple PHPApp yang menggunakan penyimpanan data back-end. Dengan OpsWorks Stacks, mudah untuk memperbarui aplikasi. Jika Anda menggunakan repositori Git atau Subversion, Anda dapat memiliki cabang repositori terpisah untuk setiap versi aplikasi. Contoh aplikasi menyimpan versi aplikasi yang menggunakan database back-end di cabang version2 repositori Git. Anda hanya perlu memperbarui konfigurasi aplikasi untuk menentukan cabang baru dan menerapkan ulang aplikasi.

**Untuk memperbarui Sederhana PHPApp**

1. 

**Buka Halaman Edit Aplikasi**

   Di panel navigasi, klik **Aplikasi** dan kemudian klik **edit** di kolom **Tindakan PHPApp** baris **sederhana**.

1. 

**Perbarui Konfigurasi Aplikasi**

   Ubah pengaturan berikut.  
**Cabang/Revisi**  
Pengaturan ini menunjukkan cabang repositori aplikasi. Versi pertama Simple PHPApp tidak terhubung ke database. Untuk menggunakan versi aplikasi yang diaktifkan database, tetapkan nilai ini ke. **version2**  
**Akar dokumen**  
Setelan ini menentukan folder root aplikasi Anda. Versi pertama Simple PHPApp menggunakan pengaturan default, yang menginstal `index.php` di folder root standar server (`/srv/www`untuk aplikasi PHP). Jika Anda menentukan subfolder di sini—hanya namanya, tidak ada '/' terkemuka —OpsWorks Tumpukan menambahkannya ke jalur folder standar. Versi 2 dari Simple PHPApp harus masuk`/srv/www/web`, jadi atur **root Document** ke**web**.  
**Jenis sumber data**  
Setelan ini mengaitkan server database dengan aplikasi. Contoh menggunakan instance MySQL yang Anda buat pada langkah sebelumnya, jadi **atur tipe sumber Data** OpsWorks ke **dan instance Database** ke instance yang Anda buat pada langkah sebelumnya**, db-master1** (mysql). Biarkan **nama Database** kosong; OpsWorks Stacks akan membuat database di server bernama dengan nama pendek aplikasi, simplephpapp.

   Kemudian klik **Menyimpan** untuk menyimpan konfigurasi baru.  
![\[Add App form with settings for SimplePHP application and OpsWorks data source.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/gsb2.png)

1. Mulai contoh MySQL.

Setelah memperbarui aplikasi, OpsWorks Stacks akan secara otomatis menerapkan versi aplikasi baru ke instance server aplikasi baru saat Anda memulainya. Namun, OpsWorks Stacks tidak secara otomatis menerapkan versi aplikasi baru ke instance server yang ada; Anda harus melakukannya secara manual, seperti yang dijelaskan dalam. [Langkah 2.4: Membuat dan Menyebarkan Aplikasi - Chef 11](gettingstarted-simple-app.md) Anda dapat menerapkan Simple yang diperbarui PHPApp sekarang, tetapi untuk contoh ini, lebih baik menunggu sebentar.

# Penyimpangan Singkat: Buku Masak, Resep, dan Atribut Tumpukan OpsWorks
<a name="gettingstarted-db-recipes"></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.

Anda sekarang memiliki server aplikasi dan database, tetapi mereka tidak cukup siap untuk digunakan. Anda masih perlu menyiapkan database dan mengonfigurasi pengaturan koneksi aplikasi. OpsWorks Stacks tidak menangani tugas-tugas ini secara otomatis, tetapi mendukung buku masak Chef, resep, dan atribut dinamis. Anda dapat menerapkan sepasang resep, satu untuk menyiapkan database dan satu lagi untuk mengonfigurasi pengaturan koneksi aplikasi, dan meminta OpsWorks Stacks menjalankannya untuk Anda.

Buku masak phpapp, yang berisi resep yang diperlukan, sudah diterapkan dan siap digunakan; Anda bisa langsung melompat ke [Langkah 3.3: Tambahkan Buku Masak Kustom ke MyStack](gettingstarted-db-cookbooks.md) jika Anda mau. Jika Anda ingin tahu lebih banyak, bagian ini memberikan beberapa latar belakang tentang buku masak dan resep dan menjelaskan cara kerja resep. Untuk melihat buku masak itu sendiri, buka buku masak [phpapp](https://github.com/amazonwebservices/opsworks-example-cookbooks/tree/master/phpapp).

**Topics**
+ [Resep dan Atribut](#gettingstarted-db-recipes-attributes)
+ [Mengatur Database](#gettingstarted-db-recipes-dbsetup)
+ [Connect Aplikasi ke Database](#gettingstarted-db-recipes-appsetup)

## Resep dan Atribut
<a name="gettingstarted-db-recipes-attributes"></a>

Resep Chef pada dasarnya adalah aplikasi Ruby khusus yang melakukan tugas-tugas pada instance seperti menginstal paket, membuat file konfigurasi, menjalankan perintah shell, dan sebagainya. Kelompok resep terkait diatur ke dalam *buku masak*, yang juga berisi file pendukung seperti templat untuk membuat file konfigurasi.

OpsWorks Stacks memiliki satu set buku masak yang mendukung lapisan bawaan. Anda juga dapat membuat buku masak khusus dengan resep Anda sendiri untuk melakukan tugas khusus pada instance Anda. Topik ini memberikan pengantar singkat tentang resep dan menunjukkan cara menggunakannya untuk menyiapkan database dan mengonfigurasi setelan koneksi aplikasi. Untuk informasi lebih lanjut tentang buku masak dan resep, lihat [Buku Masak dan Resep](workingcookbook.md) atau[Menyesuaikan Tumpukan OpsWorks](customizing.md).

Resep biasanya bergantung pada *atribut* Chef untuk data input: 
+ Beberapa atribut ini didefinisikan oleh Chef dan memberikan informasi dasar tentang instance seperti sistem operasi. 
+ OpsWorks Stacks mendefinisikan sekumpulan atribut yang berisi informasi tentang tumpukan—seperti konfigurasi lapisan—dan tentang aplikasi yang digunakan—seperti repositori aplikasi.

  Anda dapat menambahkan atribut kustom ke set ini dengan menetapkan [JSON kustom](workingstacks-json.md) ke tumpukan atau penerapan.
+ Buku masak Anda juga dapat menentukan atribut, yang khusus untuk buku masak. 

  Atribut buku masak phpapp didefinisikan dalam. `attributes/default.rb`

Untuk daftar lengkap atribut OpsWorks Stacks, lihat [Konfigurasi Stack dan Atribut Deployment: Linux](attributes-json-linux.md) dan[Atribut Buku Masak Bawaan](attributes-recipes.md). Untuk informasi selengkapnya, lihat [Mengesampingkan Atribut](workingcookbook-attributes.md).

Atribut diatur dalam struktur hierarkis, yang dapat direpresentasikan sebagai objek JSON.

Anda memasukkan data ini ke dalam aplikasi Anda dengan menggunakan sintaks simpul Chef, seperti berikut ini:

```
[:deploy][:simplephpapp][:database][:username]
```

`deploy`Node ini memiliki satu node aplikasi,`simplephpapp`, yang berisi informasi tentang database aplikasi, repositori Git, dan sebagainya. Contoh ini mewakili nilai nama pengguna database, yang memutuskan untuk. `root`

## Mengatur Database
<a name="gettingstarted-db-recipes-dbsetup"></a>

Resep Pengaturan bawaan lapisan MySQL secara otomatis membuat database untuk aplikasi yang diberi nama dengan nama pendek aplikasi, jadi untuk contoh ini Anda sudah memiliki database bernama simplephpapp. Namun, Anda harus menyelesaikan pengaturan dengan membuat tabel untuk aplikasi untuk menyimpan datanya. Anda dapat membuat tabel secara manual, tetapi pendekatan yang lebih baik adalah menerapkan resep khusus untuk menangani tugas, dan meminta OpsWorks Stacks menjalankannya untuk Anda. Bagian ini menjelaskan bagaimana resep,`dbsetup.rb`, diimplementasikan. Prosedur untuk menjalankan resep OpsWorks Stacks dijelaskan nanti.

[Untuk melihat resep di repositori, buka dbsetup.rb.](https://github.com/amazonwebservices/opsworks-example-cookbooks/blob/master/phpapp/recipes/dbsetup.rb) Contoh berikut menunjukkan `dbsetup.rb` kode. 

`execute`adalah *sumber daya Chef* yang menjalankan perintah tertentu. Dalam hal ini, itu adalah perintah MySQL yang membuat tabel. `not_if`Arahan memastikan bahwa perintah tidak berjalan jika tabel yang ditentukan sudah ada. Untuk informasi selengkapnya tentang sumber daya Chef, lihat [Tentang Sumber Daya dan Penyedia](https://docs.chef.io/resource.html).

Resep menyisipkan nilai atribut ke dalam string perintah, menggunakan sintaks node dibahas sebelumnya. Misalnya, berikut ini menyisipkan nama pengguna database.

```
#{deploy[:database][:username]}
```

Mari kita bongkar kode yang agak samar ini:
+ Untuk setiap iterasi, `deploy` disetel ke node aplikasi saat ini, sehingga diselesaikan menjadi. `[:deploy][:app_name]` Untuk contoh ini, ia memutuskan untuk. `[:deploy][:simplephpapp]`
+ Menggunakan nilai atribut deployment yang ditunjukkan sebelumnya, seluruh node menyelesaikannya. `root`
+ Anda membungkus node di \$1 \$1\$1 untuk memasukkannya ke dalam string.

Sebagian besar node lain menyelesaikan dengan cara yang sama. Pengecualiannya adalah`#{node[:phpapp][:dbtable]}`, yang didefinisikan oleh file atribut buku masak kustom dan diselesaikan ke nama tabel,. `urler` Oleh karena itu, perintah aktual yang berjalan pada instance MySQL adalah:

```
"/usr/bin/mysql 
    -uroot
    -pvjud1hw5v8
    simplephpapp
    -e'CREATE TABLE urler(
       id INT UNSIGNED NOT NULL AUTO_INCREMENT,
       author VARCHAR(63) NOT NULL,
       message TEXT,
       PRIMARY KEY (id))'
"
```

Perintah ini membuat tabel bernama `urler` dengan id, author, dan bidang pesan, menggunakan kredensyal dan nama database dari atribut deployment.

## Connect Aplikasi ke Database
<a name="gettingstarted-db-recipes-appsetup"></a>

Bagian kedua dari teka-teki adalah aplikasi, yang membutuhkan informasi koneksi seperti kata sandi database untuk mengakses tabel. Sederhana PHPApp secara efektif hanya memiliki satu file yang berfungsi,`app.php`; semua yang `index.php` dilakukan adalah memuat`app.php`. 

`app.php`termasuk`db-connect.php`, yang menangani koneksi database, tetapi file itu tidak ada dalam repositori. Anda tidak dapat membuat `db-connect.php` terlebih dahulu karena mendefinisikan database berdasarkan instance tertentu. Sebagai gantinya, `appsetup.rb` resep menghasilkan `db-connect.php` menggunakan data koneksi dari atribut penerapan.

[Untuk melihat resep di repositori, buka appsetup.rb.](https://github.com/amazonwebservices/opsworks-example-cookbooks/blob/master/phpapp/recipes/appsetup.rb) Contoh berikut menunjukkan `appsetup.rb` kode. 

Seperti`dbsetup.rb`, `appsetup.rb` mengulangi aplikasi di `deploy` simpul—hanya simplephpapp lagi—. Ini menjalankan blok kode dengan `script` sumber daya dan `template` sumber daya.

Sumber `script` daya menginstal [Composer](http://www.getcomposer.org) —manajer ketergantungan untuk aplikasi PHP. Kemudian menjalankan `install` perintah Composer untuk menginstal dependensi untuk aplikasi sampel ke direktori root aplikasi.

`template`Sumber daya menghasilkan `db-connect.php` dan memasukkannya`/srv/www/simplephpapp/current`. Perhatikan hal-hal berikut:
+ Resep menggunakan pernyataan bersyarat untuk menentukan pemilik file, yang tergantung pada sistem operasi instance.
+ `only_if`Arahan memberitahu Chef untuk menghasilkan template hanya jika direktori yang ditentukan ada.

`template`Sumber daya beroperasi pada template yang pada dasarnya memiliki konten dan struktur yang sama dengan file terkait tetapi menyertakan placeholder untuk berbagai nilai data. `source`Parameter menentukan template,`db-connect.php.erb`, yang ada di `templates/default` direktori buku masak phpapp, dan berisi yang berikut:

Ketika Chef memproses template, itu menggantikan `<%= =>` placeholder dengan nilai variabel yang sesuai dalam sumber daya template, yang pada gilirannya diambil dari atribut deployment. Oleh karena itu, file yang dihasilkan adalah:

# Langkah 3.3: Tambahkan Buku Masak Kustom ke MyStack
<a name="gettingstarted-db-cookbooks"></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.

Anda menyimpan buku masak khusus di repositori, seperti aplikasi. Setiap tumpukan dapat memiliki repositori yang berisi satu set buku masak khusus. Anda kemudian mengarahkan OpsWorks Stacks untuk menginstal buku masak khusus Anda pada instance tumpukan.

1. Klik **Stack** di panel navigasi untuk melihat halaman untuk tumpukan saat ini.

1. Klik **Pengaturan Stack**, lalu klik **Edit**. 

1. Ubah konfigurasi tumpukan sebagai berikut:
   + **Gunakan Buku Masak Koki khusus** **- Ya**
   + **Jenis repositori** **- Git**
   + **URL Repositori** — **git://github.com/amazonwebservices/opsworks-example-cookbooks.git**

1. Klik **Simpan** untuk memperbarui konfigurasi tumpukan.  
![\[Configuration options for custom Chef cookbooks with Git repository settings.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/gsb6.png)

OpsWorks Stacks kemudian menginstal isi repositori buku masak Anda di semua instance tumpukan. Jika Anda membuat instance baru, OpsWorks Stacks secara otomatis menginstal repositori buku masak.

**catatan**  
Jika Anda perlu memperbarui salah satu buku masak Anda, atau menambahkan buku masak baru ke repositori, Anda dapat melakukannya tanpa menyentuh pengaturan tumpukan. OpsWorks Stacks akan secara otomatis menginstal buku masak yang diperbarui pada semua instance baru. Namun, OpsWorks Stacks tidak secara otomatis menginstal buku masak yang diperbarui pada instance online stack. Anda harus secara eksplisit mengarahkan OpsWorks Stacks untuk memperbarui buku masak dengan menjalankan perintah stack. `Update Cookbooks` Untuk informasi selengkapnya, lihat [Jalankan Perintah Stack](workingstacks-commands.md).

# Langkah 3.4: Jalankan Resep
<a name="gettingstarted-db-lifecycle"></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.

Setelah Anda memiliki buku masak khusus Anda, Anda perlu menjalankan resep pada contoh yang sesuai. Anda bisa [menjalankannya secara manual](workingcookbook-manual.md). Namun, resep biasanya harus dijalankan pada titik yang dapat diprediksi dalam siklus hidup instance, seperti setelah instance boot atau saat Anda menerapkan aplikasi. Bagian ini menjelaskan pendekatan yang jauh lebih sederhana: minta OpsWorks Stacks menjalankannya secara otomatis untuk Anda pada waktu yang tepat.

OpsWorks Stacks mendukung serangkaian [peristiwa siklus hidup](workingcookbook-events.md) yang menyederhanakan menjalankan resep. Misalnya, peristiwa Penyetelan terjadi setelah instance selesai booting dan peristiwa Deploy terjadi saat Anda menerapkan aplikasi. Setiap lapisan memiliki satu set resep bawaan yang terkait dengan setiap peristiwa siklus hidup. Ketika peristiwa siklus hidup terjadi pada sebuah instance, agen menjalankan resep terkait untuk setiap lapisan instance. Agar OpsWorks Stacks menjalankan resep khusus secara otomatis, tambahkan ke acara siklus hidup yang sesuai pada lapisan yang sesuai dan agen akan menjalankan resep setelah resep bawaan selesai.

Untuk contoh ini, Anda perlu menjalankan dua resep, `dbsetup.rb` pada contoh My SQLinstance dan `appsetup.rb` pada PHP App Server.

**catatan**  
Anda menentukan resep di konsol dengan menggunakan *recipe\$1name* format*cookbook\$1name*::, di mana *recipe\$1name* tidak termasuk ekstensi.rb. Misalnya, Anda merujuk `dbsetup.rb` sebagai**phpapp::dbsetup**.

**Untuk menetapkan resep kustom ke peristiwa siklus hidup**

1. **Pada halaman **Layers**, untuk MySQL, **klik Resep dan kemudian klik** Edit.**

1.  Di bagian **Resep Koki Kustom**, masukkan [**phpapp::dbsetup**](gettingstarted-db-recipes.md#gettingstarted-db-recipes-dbsetup)untuk **Menerapkan**.   
![\[Custom Chef recipes section with Repository URL and three configuration steps.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/gsb6a.png)

1. Klik ikon **\$1** untuk menetapkan resep ke acara dan klik **Simpan** untuk menyimpan konfigurasi layer baru.

1. Kembali ke halaman **Layers** dan ulangi prosedur untuk menetapkan **phpapp::appsetup** ke event **Deploy** layer **PHP App Server**.

# Langkah 3.5: Menyebarkan SederhanaPHPApp, Versi 2
<a name="gettingstarted-db-deploy"></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.

Langkah terakhir adalah menerapkan versi baru SimplePHPApp.

**Untuk menyebarkan Sederhana PHPApp**

1. Di halaman **Aplikasi**, klik **terapkan** di **Tindakan PHPApp** aplikasi **Sederhana**.  
![\[Apps page showing SimplePHPApp with deploy, edit, and delete options in the Actions column.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/gsb6aa.png)

1. **Terima default dan klik Deploy.**  
![\[Deploy App interface with settings for SimplePHPApp and instance selection options.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/gs17a.png)

   Saat Anda mengklik **Deploy** di halaman **Deploy App**, Anda akan memicu peristiwa siklus hidup Deploy, yang memberi tahu agen untuk menjalankan resep Deploy mereka. Secara default, Anda memicu peristiwa pada semua instance tumpukan. Resep Deploy bawaan menerapkan aplikasi hanya ke instance yang sesuai untuk jenis aplikasi, instance PHP App Server dalam kasus ini. Namun, seringkali berguna untuk memicu peristiwa Deploy pada instance lain, untuk memungkinkan mereka merespons penerapan aplikasi. Dalam hal ini, Anda juga ingin memicu Deploy pada instance MySQL untuk mengatur database. 

   Perhatikan hal-hal berikut:
   + Agen pada instance PHP App Server menjalankan resep bawaan layer, diikuti oleh`appsetup.rb`, yang mengonfigurasi koneksi database aplikasi.
   + Agen pada instance MySQL tidak menginstal apa pun, tetapi `dbsetup.rb` berjalan untuk membuat tabel urler.

   Ketika penyebaran selesai, **Status** akan berubah menjadi **sukses** di halaman **Deployment**.

# Langkah 3.6: Jalankan Sederhana PHPApp
<a name="gettingstarted-db-run"></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.

Setelah status penerapan berubah menjadi **sukses**, Anda dapat menjalankan PHPApp versi Simple baru, sebagai berikut.

**Untuk menjalankan Sederhana PHPApp**

1. Pada halaman **Instances**, klik alamat IP publik di baris **php-app1**.

   Anda akan melihat halaman berikut di browser Anda.  
![\[Text input field labeled "Your Thoughts" with a "Share Your Thought" button above.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/gsb7.png)

1. Klik **Bagikan Pemikiran Anda** dan ketikkan sesuatu seperti **Hello world\$1** untuk **Pikiran Anda** dan nama **Anda untuk Nama Anda**. Kemudian klik **Kirim Pikiran Anda** untuk menambahkan pesan ke database.  
![\[Form with success message, text input fields for thought and name, and submit buttons.\]](http://docs.aws.amazon.com/id_id/opsworks/latest/userguide/images/gsb8.png)

1. Klik **Kembali** untuk melihat semua pesan dalam database.