AWS OpsWorks Tumpukan - AWS OpsWorks

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

AWS OpsWorks Tumpukan

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 atau melalui AWS Dukungan Premium.

Komputasi berbasis cloud biasanya melibatkan grup sumber daya AWS, seperti instans Amazon EC2 dan instans Amazon Relational Database Service (RDS), yang harus dibuat dan dikelola secara kolektif. Misalnya, aplikasi web biasanya membutuhkan server aplikasi, server database, penyeimbang beban, dan sebagainya. Kelompok contoh ini biasanya disebut tumpukan; tumpukan server aplikasi sederhana mungkin terlihat seperti berikut ini.

Diagram showing users connecting to app servers through internet and load balancer, with a shared database.

Selain membuat instance dan menginstal paket yang diperlukan, Anda biasanya memerlukan cara untuk mendistribusikan aplikasi ke server aplikasi, memantau kinerja tumpukan, mengelola keamanan dan izin, dan sebagainya.

AWS OpsWorks Stacks menyediakan cara sederhana dan fleksibel untuk membuat dan mengelola tumpukan dan aplikasi.

Berikut adalah bagaimana tumpukan server aplikasi dasar mungkin terlihat dengan AWS OpsWorks Stacks. Ini terdiri dari sekelompok server aplikasi yang berjalan di belakang penyeimbang beban Elastic Load Balancing, dengan server database Amazon RDS backend.

AWS OpsWorks stack with load balancer, application servers, and Amazon RDS instance.

Meskipun relatif sederhana, tumpukan ini menunjukkan semua fitur AWS OpsWorks Stacks utama. Begini caranya disatukan.

Tumpukan

Tumpukan adalah komponen AWS OpsWorks Stacks inti. Ini pada dasarnya adalah wadah untuk AWS Resources—instans Amazon EC2, instans database Amazon RDS, dan sebagainya—yang memiliki tujuan bersama dan harus dikelola secara logis bersama. Tumpukan membantu Anda mengelola sumber daya ini sebagai grup dan juga menentukan beberapa pengaturan konfigurasi default, seperti sistem operasi instans dan wilayah AWS. Jika Anda ingin mengisolasi beberapa komponen tumpukan dari interaksi pengguna langsung, Anda dapat menjalankan tumpukan di VPC.

Lapisan

Anda menentukan konstituen tumpukan dengan menambahkan satu atau lebih lapisan. Lapisan mewakili satu set instans Amazon EC2 yang melayani tujuan tertentu, seperti melayani aplikasi atau hosting server database.

Anda dapat menyesuaikan atau memperluas lapisan dengan memodifikasi konfigurasi default paket, menambahkan resep Chef untuk melakukan tugas-tugas seperti menginstal paket tambahan, dan banyak lagi.

Untuk semua tumpukan, AWS OpsWorks Stacks menyertakan lapisan layanan, yang mewakili layanan AWS berikut.

  • Amazon Relational Database Service

  • Penyeimbang Beban Elastis

  • Amazon Elastic Container Service

Lapisan memberi Anda kontrol penuh atas paket mana yang diinstal, bagaimana mereka dikonfigurasi, bagaimana aplikasi digunakan, dan banyak lagi.

Resep dan LifeCycle Acara

Lapisan bergantung pada resep Chef untuk menangani tugas seperti menginstal paket pada instance, menerapkan aplikasi, menjalankan skrip, dan sebagainya. Salah satu fitur utama AWS OpsWorks Stacks adalah serangkaian peristiwa siklus hidup —Setup, Configure, Deploy, Undeploy, dan Shutdown—yang secara otomatis menjalankan serangkaian resep tertentu pada waktu yang tepat pada setiap instance.

Setiap lapisan dapat memiliki satu set resep yang ditetapkan untuk setiap peristiwa siklus hidup, yang menangani berbagai tugas untuk acara dan lapisan itu. Misalnya, setelah instance milik lapisan server web selesai booting, AWS OpsWorks Stacks melakukan hal berikut.

  1. Menjalankan resep Setup layer, yang dapat melakukan tugas-tugas seperti menginstal dan mengkonfigurasi server web.

  2. Menjalankan resep Deploy layer, yang menyebarkan aplikasi layer dari repositori ke instance dan melakukan tugas terkait, seperti memulai ulang layanan.

  3. Menjalankan resep Konfigurasi pada setiap instance di tumpukan sehingga setiap instance dapat menyesuaikan konfigurasinya sesuai kebutuhan untuk mengakomodasi instance baru.

    Misalnya, pada instance yang menjalankan penyeimbang beban, resep Configure dapat memodifikasi konfigurasi load balancer untuk menyertakan instance baru.

Jika sebuah instance milik beberapa lapisan, AWS OpsWorks Stacks menjalankan resep untuk setiap lapisan sehingga Anda dapat, misalnya, memiliki instance yang mendukung server aplikasi PHP dan server database MySQL.

Jika Anda telah menerapkan resep, Anda dapat menetapkan setiap resep ke lapisan dan acara yang sesuai dan AWS OpsWorks Stacks secara otomatis menjalankannya untuk Anda pada waktu yang tepat. Anda juga dapat menjalankan resep secara manual, kapan saja.

Instans

Instance mewakili sumber daya komputasi tunggal, seperti instans Amazon EC2. Ini mendefinisikan konfigurasi dasar sumber daya, seperti sistem operasi dan ukuran. Pengaturan konfigurasi lainnya, seperti alamat IP Elastis atau volume Amazon EBS, ditentukan oleh lapisan instans. Resep lapisan menyelesaikan konfigurasi dengan melakukan tugas-tugas seperti menginstal dan mengonfigurasi paket dan menerapkan aplikasi.

Anda dapat menggunakan AWS OpsWorks Stacks untuk membuat instance dan menambahkannya ke layer. Saat memulai instance, AWS OpsWorks Stacks meluncurkan instans Amazon EC2 menggunakan pengaturan konfigurasi yang ditentukan oleh instance dan lapisannya. Setelah instans Amazon EC2 selesai booting, AWS OpsWorks Stacks menginstal agen yang menangani komunikasi antara instans dan layanan dan menjalankan resep yang sesuai sebagai respons terhadap peristiwa siklus hidup.

AWS OpsWorks Stacks mendukung jenis contoh berikut, yang ditandai dengan bagaimana mereka dimulai dan dihentikan.

  • Instance 24/7 dimulai secara manual dan dijalankan sampai Anda menghentikannya.

  • Instans berbasis waktu dijalankan oleh AWS OpsWorks Stacks pada jadwal harian dan mingguan yang ditentukan.

    Mereka memungkinkan tumpukan Anda untuk secara otomatis menyesuaikan jumlah instance untuk mengakomodasi pola penggunaan yang dapat diprediksi.

  • Instans berbasis beban secara otomatis dimulai dan dihentikan oleh AWS OpsWorks Stacks, berdasarkan metrik beban yang ditentukan, seperti pemanfaatan CPU.

    Mereka memungkinkan tumpukan Anda untuk secara otomatis menyesuaikan jumlah instance untuk mengakomodasi variasi lalu lintas masuk. Instans berbasis beban hanya tersedia untuk tumpukan berbasis Linux.

AWS OpsWorks Stacks mendukung penyembuhan otomatis instance. Jika agen berhenti berkomunikasi dengan layanan, AWS OpsWorks Stacks secara otomatis berhenti dan memulai ulang instance.

Anda juga dapat menggabungkan sumber daya komputasi berbasis Linux ke dalam tumpukan yang dibuat di luar Stacks. AWS OpsWorks

  • Instans Amazon EC2 yang Anda buat langsung menggunakan konsol Amazon EC2, CLI, atau API.

  • Instans lokal yang berjalan di perangkat keras Anda sendiri, termasuk instance yang berjalan di mesin virtual.

Setelah Anda mendaftarkan salah satu contoh ini, itu menjadi instance AWS OpsWorks Stacks dan Anda dapat mengelolanya dengan cara yang sama seperti contoh yang Anda buat dengan Stacks. AWS OpsWorks

Aplikasi

Anda menyimpan aplikasi dan file terkait dalam repositori, seperti bucket Amazon S3. Setiap aplikasi diwakili oleh aplikasi, yang menentukan jenis aplikasi dan berisi informasi yang diperlukan untuk menyebarkan aplikasi dari repositori ke instance Anda, seperti URL repositori dan kata sandi. Saat Anda menerapkan aplikasi, AWS OpsWorks Stacks akan memicu peristiwa Deploy, yang menjalankan resep Deploy pada instance tumpukan.

Anda dapat menerapkan aplikasi dengan cara berikut:

  • Secara otomatis—Saat memulai instance, AWS OpsWorks Stacks secara otomatis menjalankan resep Deploy instans.

  • Secara manual—Jika Anda memiliki aplikasi baru atau ingin memperbarui aplikasi yang sudah ada, Anda dapat menjalankan resep Deploy instans online secara manual.

Anda biasanya memiliki AWS OpsWorks Stacks menjalankan resep Deploy di seluruh tumpukan, yang memungkinkan instance lapisan lain untuk memodifikasi konfigurasi mereka dengan tepat. Namun, Anda dapat membatasi penerapan ke subset instance jika, misalnya, Anda ingin menguji aplikasi baru sebelum menerapkannya ke setiap instance server aplikasi.

Menyesuaikan Stack Anda

AWS OpsWorks Stacks menyediakan berbagai cara untuk menyesuaikan lapisan untuk memenuhi kebutuhan spesifik Anda:

  • Anda dapat mengubah cara AWS OpsWorks Stacks mengonfigurasi paket dengan mengganti atribut yang mewakili berbagai pengaturan konfigurasi, atau bahkan dengan mengganti templat yang digunakan untuk membuat file konfigurasi.

  • Anda dapat memperluas lapisan yang ada dengan menyediakan resep Anda sendiri untuk melakukan tugas-tugas seperti menjalankan skrip atau menginstal dan mengkonfigurasi paket yang tidak standar.

Semua tumpukan dapat mencakup satu atau lebih lapisan, yang dimulai dengan hanya satu set resep minimal. Anda menambahkan fungsionalitas ke lapisan dengan menerapkan resep untuk menangani tugas-tugas seperti menginstal paket, menerapkan aplikasi, dan sebagainya. Anda mengemas resep khusus dan file terkait Anda dalam satu atau beberapa buku masak dan menyimpan buku masak di repositori seperti Amazon S3 atau Git.

Anda dapat menjalankan resep secara manual, tetapi AWS OpsWorks Stacks juga memungkinkan Anda mengotomatiskan proses dengan mendukung serangkaian lima peristiwa siklus hidup:

  • Pengaturan terjadi pada instance baru setelah berhasil boot.

  • Konfigurasi terjadi pada semua instance tumpukan saat instance masuk atau keluar dari status online.

  • Deploy terjadi saat Anda menerapkan aplikasi.

  • Undeploy terjadi saat Anda menghapus aplikasi.

  • Shutdown terjadi ketika Anda menghentikan sebuah instance.

Setiap lapisan dapat memiliki sejumlah resep yang ditetapkan untuk setiap acara. Ketika peristiwa siklus hidup terjadi pada instance layer, AWS OpsWorks Stacks menjalankan resep terkait. Misalnya, saat peristiwa Deploy terjadi pada instance server aplikasi, AWS OpsWorks Stacks menjalankan resep Deploy layer untuk mengunduh aplikasi atau melakukan tugas terkait.

Manajemen Sumber Daya

Anda dapat memasukkan sumber daya AWS lainnya, seperti alamat IP Elastic, ke dalam tumpukan Anda. Anda dapat menggunakan konsol AWS OpsWorks Stacks atau API untuk mendaftarkan sumber daya dengan tumpukan, melampirkan sumber daya terdaftar ke atau melepaskannya dari instance, dan memindahkan sumber daya dari satu instance ke instance lainnya.

Keamanan dan Izin

AWS OpsWorks Stacks terintegrasi dengan AWS Identity and Access Management (IAM) untuk menyediakan cara yang kuat untuk mengontrol cara pengguna mengakses AWS OpsWorks Stacks, termasuk yang berikut:

  • Bagaimana pengguna individu dapat berinteraksi dengan setiap tumpukan, seperti apakah mereka dapat membuat sumber daya tumpukan seperti lapisan dan instance, atau apakah mereka dapat menggunakan SSH atau RDP untuk terhubung ke instans Amazon EC2 tumpukan.

  • Bagaimana AWS OpsWorks Stacks dapat bertindak atas nama Anda untuk berinteraksi dengan sumber daya AWS seperti instans Amazon EC2.

  • Bagaimana aplikasi yang berjalan pada instans AWS OpsWorks Stacks dapat mengakses sumber daya AWS seperti bucket Amazon S3.

  • Cara mengelola kunci SSH publik pengguna dan kata sandi RDP dan terhubung ke sebuah instance.

Pemantauan dan Pencatatan

AWS OpsWorks Stacks menyediakan beberapa fitur untuk membantu Anda memantau tumpukan Anda dan memecahkan masalah dengan tumpukan Anda dan resep apa pun. Untuk semua tumpukan:

  • AWS OpsWorks Stacks menyediakan satu set CloudWatch metrik kustom untuk tumpukan Linux, yang dirangkum untuk kenyamanan Anda di halaman Monitoring.

    AWS OpsWorks Stacks mendukung CloudWatch metrik standar untuk tumpukan Windows. Anda dapat memantaunya dengan CloudWatch konsol.

  • CloudTrail log, yang merekam panggilan API yang dilakukan oleh atau atas nama AWS OpsWorks Stacks di akun AWS Anda.

  • Log peristiwa, yang mencantumkan semua peristiwa di tumpukan Anda.

  • Chef mencatat detail apa yang terjadi untuk setiap peristiwa siklus hidup pada setiap instance, seperti resep mana yang dijalankan dan kesalahan mana yang terjadi.

Tumpukan berbasis Linux juga dapat menyertakan lapisan master Ganglia, yang dapat Anda gunakan untuk mengumpulkan dan menampilkan data pemantauan terperinci untuk instance di tumpukan Anda.

CLI, SDK, dan Template AWS CloudFormation

Selain konsol, AWS OpsWorks Stacks juga mendukung antarmuka baris perintah (CLI) dan SDK untuk beberapa bahasa yang dapat digunakan untuk melakukan operasi apa pun. Pertimbangkan fitur-fitur ini:

Anda juga dapat menggunakan AWS CloudFormation templat untuk menyediakan tumpukan. Untuk beberapa contoh, lihat AWS OpsWorks Snippets.