DevOps kultur baru pengembangan aplikasi
Apa Itu DevOps?
DevOps adalah kultur baru dimana tim developer dan operation bekerja sama dalam proses pembuatan aplikasi agar lebih cepat dan efisien. Pandangan lama dalam mendevelop aplikasi cenderung membagi tim menjadi 2, yaitu tim developer sebagai tukang koding dan tim operations memastikan koding dari tim developrs terpasang pada server dan dapat tampil disisi pengguna dengan baik.
Jika cermati, dengan terpisahnya tim developers dan tim operations membuat kedua tim saling ketergantungan dan membuat proses pengembangan jadi lebih lama, tidak efisien dan terlalu banyak birokrasi
.
Dengan adanya DevOps Tim developer tidak lagi hanya menjadi tukang koding dan tim operation tidak lagi hanya berwenang pada sisi server, tetapi mereka berkolaborasi dalam membangun sistem.
![]() |
| sumber: https://pakar.co.id/wp-content/uploads/2017/09/devops-process.png |
Developer bisa bebas mendeploy kode ke server kapanpun dan dimanapun, tanpa menunggu tim operation. Jika terjadi error maupun revisi kode, developer bisa langsung memperbaikinya dan melakukan rollback tanpa harus menunggu tim operation.
Tim Operation dari yang awalnya hanya berwenang pada sisi server, berubah menjadi tim otomatisasi dan menciptakan sistem baru yang kontinyu serta terintegrasi. Sistem dibuat agar developer mampu dengan bebas mengupload kode yang telah mereka kerjakan tanpa bergantung kepada tim operation lagi.
Keuntungan DevOps
1. Kecepatan
Bergerak dengan kecepatan tinggi sehingga perusahaan dapat berinovasi
untuk pelanggan lebih cepat, beradaptasi dengan perubahan pasar dengan
lebih baik, dan tumbuh lebih efisien dalam mengarahkan hasil bisnis.
Model DevOps memungkinkan pengembang dan tim operasi perusahaan mencapai
hasil ini. Misalnya, layanan microservices dan continuous delivery
memungkinkan tim mengambil kepemilikan atas layanan dan kemudian merilis
pembaruan kepada pelanggan lebih cepat.
2. Rapid Delivery
Tingkatkan frekuensi dan kecepatan rilis sehingga perusahaan dapat
berinovasi dan meningkatkan produk lebih cepat. Semakin cepat merilis
fitur baru dan memperbaiki bug, semakin cepat pula perusahaan dapat
merespon kebutuhan pelanggan dan membangun keunggulan yang kompetitif.
Continuous integration dan continuous delivery adalah praktik yang
mengotomatiskan proses rilis perangkat lunak, mulai dari build hingga
deploy.
3. Reliability
Pastikan kualitas pembaruan aplikasi dan perubahan infrastruktur
sehingga perusahaan dapat melakukan pengiriman dengan lebih cepat dengan
andal sambil mempertahankan pengalaman positif bagi pengguna akhir.
Gunakan praktik seperti continuous integration dan continuous delivery
untuk menguji bahwa setiap perubahan berfungsi dan aman. Praktik
monitoring dan logging membantu perusahaan tetap mendapatkan informasi
tentang kinerja secara langsung (real-time).
4. Scale
Operasikan dan kelola infrastruktur dan proses pengembangan dalam skala
besar. Otomatisasi dan konsistensi membantu perusahaan mengelola sistem
yang kompleks atau berubah secara efisien dan dengan risiko yang
berkurang. Misalnya, Infrastruktur sebagai Kode (Infrastructure as Code)
membantu mengelola development environment, testing, dan production
environment secara berulang dan lebih efisien.
5. Improved Collaboration
Membangun tim yang lebih efektif di bawah model DevOps, yang menekankan
nilai-nilai seperti kepemilikan dan akuntabilitas. Pengembang dan tim
operasi berkolaborasi secara erat, berbagi banyak tanggung jawab, dan
menggabungkan alur kerja mereka. Ini mengurangi inefisiensi dan
menghemat waktu (misalnya, periode serah terima yang dikurangi antara
pengembang dan operasi, menulis kode yang memperhitungkan environment di
mana kode dijalankan).
6. Security
Bergerak cepat sambil mempertahankan kontrol dan menjaga kepatuhan.
Perusahaan dapat mengadopsi model DevOps tanpa mengorbankan keamanan
dengan menggunakan kebijakan kepatuhan otomatis (automated compliance
policies), fine-grained controls, dan teknik manajemen konfigurasi.
Sebagai contoh, menggunakan infrastructure as code dan policy as code,
perusahaan dapat menentukan dan kemudian melacak kepatuhan.
DevOps Tools
Beberapa tools yang digunakan dalam model DevOps:- Planning Tools: JIRA, Redmine, Trac, Rally, dsb.
- Building Tools: Apache Maven, Apache Ant, Gulp, Travis CI, dsb.
- CI/CD: Jenkins, Bamboo, Circle CI, Travis CI, Codeship, dsb.
- Version Control & Repository Tools: Git, GitHub, Bitbucket, GitLab.
- Configuration Management Tools: Ansible, Salt, Chef, Puppet, dsb.
- Container Tools: Docker, Kubernetes, LXD, OpenVZ, Apache Mesos, dsb.
- Monitoring Tools: New Relic, ElasticSearch, Kibana, Graphite, Icinga, dsb.
- Log Management Tools: Graylog, Logsense, Sentry, Logstash, Loggly, dsb.
- Communication/Collaboration Tools: Asana, Slack, GoToMeeting, Trello, Basecamp, Microsoft Teams, dsb.
Referensi:
https://blog.cilsy.id/2018/07/apa-itu-devops.html
https://aws.amazon.com/devops/what-is-devops/
https://en.wikipedia.org/wiki/DevOps
https://aws.amazon.com/devops/what-is-devops/
https://en.wikipedia.org/wiki/DevOps

Komentar
Posting Komentar