OPS05-BP04 Menggunakan sistem manajemen build dan deployment - Kerangka Kerja AWS Well-Architected

OPS05-BP04 Menggunakan sistem manajemen build dan deployment

Gunakan sistem manajemen build dan deployment. Sistem ini mengurangi kesalahan yang disebabkan oleh proses manual dan meminimalkan tingkat upaya untuk melakukan deployment perubahan.

Di AWS, Anda dapat membangun pipeline continuous integration/continuous deployment (CI/CD) dengan menggunakan layanan-layanan seperti Alat Pengembang AWS (misalnya AWS CodeCommit, AWS CodeBuild, AWS CodePipeline, AWS CodeDeploy, dan AWS CodeStar).

Hasil yang diinginkan: Sistem manajemen build dan deployment Anda mendukung sistem integrasi berkelanjutan dan pengiriman berkelanjutan (CI/CD) yang ada di organisasi Anda yang menyediakan kemampuan-kemampuan untuk mengotomatisasi peluncuran yang aman dengan konfigurasi yang benar.

Anti-pola umum:

  • Setelah menyusun kode Anda pada sistem pengembangan, Anda menyalin file yang dapat dieksekusi ke sistem produksi namun file tersebut gagal memulai. File log lokal mengindikasikan bahwa kegagalan tersebut dikarenakan terjadinya kehilangan dependensi.

  • Anda berhasil membangun aplikasi Anda dengan fitur-fitur baru pada lingkungan pengembangan Anda dan memberikan kodenya ke tim jaminan kualitas (QA). Kode tersebut gagal dalam pengujian QA karena ada aset statis yang hilang.

  • Pada hari Jumat, setelah melakukan upaya keras, Anda berhasil membangun aplikasi Anda secara manual di lingkungan pengembangan Anda termasuk fitur-fitur yang baru Anda kodekan. Pada hari Senin, Anda tidak dapat mengulangi langkah-langkah yang membuat Anda berhasil membangun aplikasi tersebut.

  • Anda melakukan pengujian yang telah Anda siapkan untuk rilisan baru Anda. Kemudian Anda menghabiskan minggu selanjutnya untuk mempersiapkan lingkungan pengujian dan melakukan seluruh pengujian integrasi yang ada sekarang disusul dengan pengujian kinerja. Kode baru tersebut ternyata memiliki dampak kinerja yang tidak dapat diterima dan harus dikembangkan ulang dan kemudian diuji ulang.

Manfaat menerapkan praktik terbaik ini: Dengan menyediakan mekanisme untuk mengatasi aktivitas build dan deployment, Anda mengurangi upaya yang diperlukan untuk melakukan tugas-tugas berulang, membebaskan anggota tim Anda untuk fokus pada tugas-tugas kreatif mereka yang berharga, serta mengurangi terjadinya kesalahan akibat pelaksanaan prosedur yang dilakukan secara manual.

Tingkat risiko yang terjadi jika praktik terbaik ini tidak diterapkan: Sedang

Panduan implementasi

Sistem manajemen build dan deployment digunakan untuk melacak dan mengimplementasikan perubahan, mengurangi kesalahan yang disebabkan oleh proses yang dilakukan secara manual, dan mengurangi upaya yang diperlukan untuk melakukan deployment dengan aman. Lakukan otomatisasi sepenuhnya terhadap pipeline integrasi dan deployment dari check-in kode hingga build, pengujian, deployment, dan validasi. Hal ini akan mempersingkat waktu tunggu (lead time), mengurangi biaya, mendorong peningkatan frekuensi perubahan, mengurangi tingkat upaya, dan meningkatkan kolaborasi.

Langkah-langkah implementasi

Diagram yang menunjukkan pipeline CI/CD menggunakan AWS CodePipeline dan layanan terkait

Diagram yang menunjukkan pipeline CI/CD menggunakan AWS CodePipeline dan layanan terkait

  1. Gunakan AWS CodeCommit untuk melakukan kontrol versi, penyimpanan, dan pengelolaan aset (seperti dokumen, kode sumber, dan file biner).

  2. Gunakan CodeBuild untuk mengompilasikan kode sumber Anda, menjalankan pengujian unit, dan menghasilkan artefak yang siap untuk di-deploy.

  3. Gunakan CodeDeploy sebagai sebuah layanan deployment yang mengotomatiskan deployment aplikasi ke instans Amazon EC2, instans on-premise, fungsi AWS Lambda nirserver, atau Amazon ECS.

  4. Pantau deployment Anda.

Sumber daya

Praktik-praktik terbaik terkait:

Dokumen terkait:

Video terkait: