DEVOPS (DEVELOPMENT AND IT OPERATIONS)
DevOps adalah gabungan dari Development dan Operations.
Kombinasi tersebut dirancang supaya dapat meningkatkan kemampuan sebuah
perusahaan yang proses delivery aplikasi dengan kecepatan tinggi.
- Sejarah
DevOps dimulai pada tahun 2007, di mana saat itu Patrick
Debois (seorang konsultan development) mempunyai tujuan untuk mempelajari
berbagai aspek tentang IT. Ia merasa terganggu dengan perbedaan antara cara tim
development dan tim operations bekerja. Lalu Patrick dipertemukan dengan Andrew
Shafer untuk memulai Agile System Administration.
Tahun 2010 pembahasan mengenai DevOps mulai gencar di
seluruh dunia dengan tagar DevOpsDays bermunculan di media sosial. Hingga tahun
2014 perusahaan besar seperti Target, Nordstrom, dan LEGO menjadi perusahaan
pertama yang menerapkan prinsip DevOps ke perusahaannya.
Melalui berbagai referensi, ternyata banyak sekali tools
implementasi DevOps yang harus Anda ketahui.
- Tujuan
tujuan DevOps yaitu untuk meningkatkan kolaborasi antara tim
development dan tim operation dari mulai perencanaan hingga aplikasi/fitur
ter-deliver ke pengguna. Semua itu harus dilakukan secara otomatis agar:
1) Bisa meningkatkan deployment
frequency.
2) Meningkatkan waktu
pemasaran.
3) Menurunkan tingkat kegagalan
pada rilisan terbaru.
4) Mempersingkat waktu
perbaikan.
5) Meningkatkan waktu
pemulihan.
- tools yang digunakan devops
1 Kelola kode sumber
pengembang dapat menguji dan juga memodifikasi
kode tanpa harus membuatnya sendiri. Kontrol sumber mungkin telah ada selama 0
tahun, tetapi ini adalah komponen kunci dari integrasi berkelanjutan atau CI.
Contoh produk yang berfungsi seperti SCM adalah Git, Subversion, Cloudforce,
Bitbucket, dan TFS.
2 Bangun server
alat ini merupakan otomatisasi yang mengkompilasi kode
dalam Source Code Repository(SCR) ke basis kode yang dapat dieksekusi.
Anda dapat menemukan alat ini seperti Jenkins, SonarQube dan Artifactory.
3 Manajemen Konfigurasi
Manajemen konfigurasi berguna untuk mendefinisikan
konfigurasi yang ada di server atau lingkungannya. Alat umum yang sering Anda temukan
seperti Wayang dan Koki.
- Fase Fase DevOps Pipeline
Pipeline DevOps merupakan sekumpulan proses yang
memungkinkan tim developer dan tim IT operations dapat bekerja sama untuk
membangun dan menerapkan kode ke production environment. Meskipun setiap
perusahaan yang menjalankan model DevOps ini dapat bekerja dengan proses yang
berbeda-beda, namun secara garis besar mereka akan mengikuti fase DevOps
pipeline berikut:
a) Plan
Fase ini melibatkan cara perencanaan untuk seluruh alur
kerja yang dibutuhkan sebelum tim pengembang mulai menulis kode. Dalam tahap
ini, manajer produk dan manajer proyek akan memainkan peran penting. Mereka
akan bekerjasama untuk mengumpulkan requirements dan feedback dari klien
ataupun stakeholders
b) Code
Setelah rencana dibuat, tim developer dapat mulai menulis
kode yang dibutuhkan untuk mengembangkan produk. Tim developer biasanya akan
menggunakan seperangkat plugin standar yang dipasang di lingkungan pengembangan
mereka untuk membantu proses pengembangan, membantu menerapkan gaya kode yang
konsisten, serta menghindari kelemahan keamanan umum dan anti-pattern.
c) Build
Setelah tim developer selesai menulis kode yang dibutuhkan,
mereka akan memasukan kode tersebut ke dalam shared code repository. Developer
akan mengirimkan pull request, setelah developer yang lain akan mereview
perubahan yang telah dilakukan. Jika kode tidak memiliki masalah, maka developer
tersebut akan menyetujui pull request yang telah dikirim sebelumnya.
d) Test
Langkah selanjutnya adalah melakukan pengujian. Jika
ada masalah yang ditemukan pada fase ini, maka masalah tersebut akan dikirim langsung
kembali ke tim developer untuk diselesaikan.
e) Release
Fase release menjadi tonggak penting dalam DevOps pipeline.
Pada tahap ini, setiap perubahan kode telah melewati serangkaian pengujian dan
tim IT operations telah memastikan bahwa masalah yang merusak dan regresi sudah
teratasi dengan baik.
f) Deploy
Tahap selanjutnya adalah deployment. Setelah production
environment dibuat dan dikonfigurasi maka versi terakhir dari pengembangan yang
telah dilakukan akan diterapkan.
g) Monitor
Pada tahap terakhir ini, tim IT operations akan terus
bekerja keras untuk memantau infrastruktur, sistem, dan aplikasi. Hal ini
dilakukan untuk memastikan bahwa produk atau aplikasi yang dikembangkan dapat
berjalan dengan lancar. Mereka juga mengumpulkan data-data penting dari log,
analitik, sistem monitoring, serta melihat feedback dari pengguna untuk
mengetahui jika ada masalah pada kinerja aplikasi.
Komentar
Posting Komentar