Tutorial Jenkins | Integrasi Berkelanjutan Menggunakan Jenkins | Edureka



Tutorial Jenkins adalah blog kedua dari seri blog Jenkins. Blog ini membahas tentang arsitektur terdistribusi Jenkins dan cara membuat build menggunakan Jenkins.

Tutorial Jenkins

Jenkins adalah salah satu alat terpenting di . Saya harap Anda telah membaca blog saya sebelumnya di . Di blog Tutorial Jenkins ini, saya akan fokus pada arsitektur Jenkins dan Jenkins membangun pipeline bersama dengan itu saya akan menunjukkan cara membuat build di Jenkins.

Sebelum kita melanjutkan dengan Tutorial Jenkins, kunci utama dari blog sebelumnya adalah:





  • Jenkins digunakan untuk mengintegrasikan semua tahapan DevOps dengan bantuan plugin.
  • Plugin Jenkins yang umum digunakan adalah Git, Amazon EC2, proyek Maven 2, penerbit HTML, dll.
  • Jenkins memiliki lebih dari 1000 plugin dan147.000 penginstalan aktif bersama dengan lebih dari 1 juta pengguna di seluruh dunia.
  • Dengan Integrasi Berkelanjutan, setiap perubahan dilakukan pada kode sumberaku sdibangun di. Itu melakukan fungsi lain juga,yang bergantung pada alat yang digunakan untuk Integrasi Berkelanjutan.
  • Nokia beralih dari Nightly build ke Continuous Integration.
  • Proses sebelum Integrasi Berkelanjutan memiliki banyak kekurangan. Akibatnya, tidak hanya pengiriman perangkat lunak yang lambat tetapi kualitas perangkat lunak juga tidak sesuai dengan standar. Pengembang juga mengalami kesulitan dalam menemukan dan memperbaiki bug.
  • Integrasi Berkelanjutan dengan Jenkins mengatasi kekurangan ini dengan terus-menerus memicu pembuatan dan pengujian untuk setiap perubahan yang dibuat dalam kode sumber.

Sekarang adalah waktu yang tepat untuk memahami arsitektur Jenkins.

Arsitektur Jenkins

Izinkan kami merevisi arsitektur Jenkins mandiri yang telah saya jelaskan kepada Anda di , diagram di bawah ini menggambarkan hal yang sama.



Jenkins Standalone Architecture - Apa itu Jenkins - Edureka

Server Jenkins tunggal ini tidak cukup untuk memenuhi persyaratan tertentu seperti:

  • Terkadang Anda mungkin memerlukan beberapa lingkungan berbeda untuk menguji build Anda. Ini tidak dapat dilakukan oleh satu server Jenkins.
  • Jika proyek yang lebih besar dan lebih berat dibangun secara teratur, maka satu server Jenkins tidak dapat begitu saja menangani seluruh beban.

Untuk memenuhi kebutuhan yang disebutkan di atas, arsitektur terdistribusi Jenkins diperkenalkan.



Arsitektur Terdistribusi Jenkins

Jenkins menggunakan arsitektur Master-Slave untuk mengelola build terdistribusi. Dalam arsitektur ini, Master dan Slave berkomunikasi melalui protokol TCP / IP.

Jenkins Master

Server utama Jenkins Anda adalah Master. Tugas Master adalah menangani:

  • Menjadwalkan pekerjaan pembuatan.
  • Mengirim build ke budak untuk eksekusi sebenarnya.
  • Pantau para budak (mungkin membawanya online dan offline sesuai kebutuhan).
  • Merekam dan mempresentasikan hasil build.
  • Instance Master Jenkins juga dapat menjalankan tugas build secara langsung.

Jenkins Slave

Slave adalah executable Java yang dijalankan pada mesin jarak jauh. Berikut adalah ciri-ciri dari Jenkins Slaves:

  • Ia mendengar permintaan dari instance Jenkins Master.
  • Budak dapat dijalankan di berbagai sistem operasi.
  • Pekerjaan seorang Budak adalah melakukan apa yang diperintahkan, yang melibatkan pelaksanaan pekerjaan pembangunan yang dikirim oleh Tuan.
  • Anda dapat mengonfigurasi proyek agar selalu berjalan di mesin Slave tertentu, atau jenis mesin Slave tertentu, atau cukup biarkan Jenkins memilih Slave berikutnya yang tersedia.

Diagram di bawah ini sudah cukup jelas. Ini terdiri dari Jenkins Master yang mengelola tiga Jenkins Slave.

Sekarang mari kita lihat contoh di mana Jenkins digunakan untuk pengujian di lingkungan yang berbeda seperti: Ubuntu, MAC, Windows dll.

Diagram di bawah mewakili hal yang sama:

Fungsi berikut ini dilakukan pada gambar di atas:

  • Jenkins memeriksa repositori Git secara berkala untuk setiap perubahan yang dibuat dalam kode sumber.
  • Setiap build memerlukan lingkungan pengujian berbeda yang tidak mungkin dilakukan untuk satu server Jenkins. Untuk melakukan pengujian di lingkungan yang berbeda, Jenkins menggunakan berbagai Slave seperti yang ditunjukkan dalam diagram.
  • Jenkins Master meminta Slave ini untuk melakukan pengujian dan menghasilkan laporan pengujian.

Jenkins Build Pipeline

Ini digunakan untuk mengetahui tugas mana yang sedang dijalankan Jenkins. Seringkali beberapa perubahan berbeda dibuat oleh beberapa pengembang sekaligus, jadi sangat berguna untuk mengetahui perubahan mana yang sedang diuji atau perubahan mana yang berada dalam antrian atau build mana yang rusak. Di sinilah pipeline muncul. Pipeline Jenkins memberi Anda gambaran tentang di mana pengujian akan dilakukan. Dalam pipeline build, build secara keseluruhan dipecah menjadi beberapa bagian, seperti fase pengujian unit, pengujian penerimaan, pengemasan, pelaporan, dan penerapan. Fase pipeline dapat dijalankan secara seri atau paralel, dan jika satu fase berhasil, secara otomatis berpindah ke fase berikutnya (oleh karena itu relevansi nama 'pipeline'). Gambar di bawah ini menunjukkan bagaimana tampilan Pipeline multipel.

Harap Anda memahami konsep teoretis. Sekarang, mari bersenang-senang dengan praktik langsung.

Saya akan membuat pekerjaan baru di Jenkins, itu adalah Proyek Gaya Bebas . Namun, ada 3 opsi lagi yang tersedia. Mari kita lihat jenis pekerjaan build yang tersedia di Jenkins.

Proyek Gaya Bebas:

Pekerjaan membangun gaya bebas adalah pekerjaan pembangunan tujuan umum, yang memberikan fleksibilitas maksimum.Pekerjaan membangun gaya bebas adalah opsi yang paling fleksibel dan dapat dikonfigurasi, dan dapat digunakan untuk semua jenis proyek. Ini relatif mudah untuk disiapkan, dan banyak opsi yang kami konfigurasikan di sini juga muncul di pekerjaan build lainnya.

Tugas Multikonfigurasi:

'Proyek multikonfigurasi' (juga disebut sebagai 'proyek matriks') memungkinkan Anda menjalankan pekerjaan build yang sama di lingkungan yang berbeda. Ini digunakan untuk menguji aplikasi di lingkungan yang berbeda, dengan database yang berbeda, atau bahkan pada mesin build yang berbeda.

Pantau Pekerjaan Eksternal:

Tugas build 'Pantau pekerjaan eksternal' memungkinkan Anda mengawasi proses non-interaktif, seperti tugas cron.

Proyek Maven:

'Proyek maven2 / 3' adalah pekerjaan pembangunan yang secara khusus disesuaikan dengan proyek Maven. Jenkins memahami file pom Maven dan struktur proyek, dan dapat menggunakan informasi yang diperoleh dari file pom untuk mengurangi pekerjaan yang perlu Anda lakukan untuk menyiapkan proyek Anda.

Berikut adalah video tentang tutorial Jenkins untuk pemahaman yang lebih baik tentang Jenkins. Lihat video tutorial Jenkins ini.

Memulai Dengan Jenkins | Tutorial Jenkins dan DevOps | Jenkins untuk Pemula | Edureka

Membuat Build Menggunakan Jenkins

Langkah 1: Dari beranda antarmuka Jenkins, pilih Barang baru.

Langkah 2: Masukkan nama dan pilih Proyek gaya bebas .

apa 6 cara menggunakan kata kunci ini?

Langkah 3: Halaman selanjutnya ini adalah tempat Anda menentukan konfigurasi pekerjaan. Seperti yang akan Anda amati dengan cepat, ada sejumlah setelan yang tersedia saat Anda membuat proyek baru.Di halaman konfigurasi ini, Anda juga memiliki opsi untuk Tambahkan langkah membangun untuk melakukan tindakan ekstra seperti menjalankan skrip. Saya akan menjalankan skrip shell.

Ini akan memberi Anda kotak teks di mana Anda dapat menambahkan perintah apa pun yang Anda butuhkan. Anda dapat menggunakan skrip untuk menjalankan berbagai tugas seperti pemeliharaan server, kontrol versi, membaca pengaturan sistem, dll. Saya akan menggunakan bagian ini untuk menjalankan skrip sederhana.

Langkah 4: Simpan proyek, dan Anda akan dibawa ke halaman ikhtisar proyek. Di sini Anda dapat melihat informasi tentang proyek, termasuk sejarah yang dibangunnya.

Langkah 5: Klik Bangun Sekarang di sisi kiri untuk memulai pembuatan.

Langkah 6: Untuk melihat informasi lebih lanjut, klik build itu di area histori build, lalu Anda akan dibawa ke halaman dengan ringkasan informasi build tersebut.

Langkah 7: Itu Output Konsol link di halaman ini sangat berguna untuk memeriksa hasil pekerjaan secara detail.

Langkah 8: Jika Anda kembali ke beranda Jenkins, Anda akan melihat ikhtisar dari semua proyek dan informasinya, termasuk status.

Status bangunan ditunjukkan dengan dua cara, dengan ikon cuaca dan dengan bola berwarna. Ikon cuaca sangat membantu karena menampilkan catatan beberapa bangunan dalam satu gambar.

Seperti yang Anda lihat pada gambar di atas, matahari menunjukkan bahwa semua bangunan saya berhasil. Warna bola memberi kita status dari bangunan tersebut, pada gambar di atas warna bola adalah biru yang berarti bangunan tersebut berhasil.

Dalam Tutorial Jenkins ini, saya baru saja memberikan contoh pengantar. Di blog saya berikutnya, saya akan menunjukkan kepada Anda cara menarik dan membangun kode dari repositori GitHub menggunakan Jenkins.

Jika Anda menemukan ini Tutorial Jenkins relevan, lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Kursus Pelatihan Sertifikasi DevOps Edureka membantu pelajar mendapatkan keahlian dalam berbagai proses dan alat DevOps seperti Puppet, Jenkins, Nagios, dan GIT untuk mengotomatiskan beberapa langkah di SDLC.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar dan kami akan menghubungi Anda kembali.