Must Read

Lebih Dekat Dengan DevOps

Mengenal Istilah DevOps

DevOps atau Development Operations sendiri dimulai pada tahun 2007, Patrick Debois ( Konsultan Development ) yang memiliki tujuan untuk mempelajari berbagai aspek tentang
IT, yang terganggu dengan perbedaan cara kerja tim development dan tim operation. Dipertemukanlah Patrick Debois dengan Andrew Shafer untuk memulai Agile System Administration. Pada tahun 2010, DevOps sudah mulai gencar diperbincangkan di seluruh dunia, hingga tahun 2014 perusahaan-perusahaan besar seperti Target, LEGO dan Nordstrom menjadi perusahaan pertama yang menerapkan prinsip DevOps di perusahaannya.

Cara kerja DevOps adalah dengan menggabungkan sistem development dan sistem operasi yang efektif dan efisien. Koordinasi antar tim tidak perlu banyak pertanyaan dan debat,
hanya perlu mengkonfigurasikan beberapa alur atau komponen prosedur yang dibutuhkan pada project itu sendiri.

Tujuan DevOps

Dengan pola pikir DevOps yang efektif dan efisien, tentunya DevOps harus bekerja secara otomatis dan cepat, agar tujuan DevOps tercapai seperti,

  1. Meningkatkan deployment frequency
  2. Meningkatkan waktu pemasaran.
  3. Menurunkan tingkat kegagalan pada rilisan terbaru.
  4. Mempersingkat waktu perbaikan.
  5. Meningkatkan waktu pemulihan.

Berdasarkan laporan State of DevOps di tahun 2015, organisasi IT yang menerapkan sistem ini memiliki kinerja 30x lebih tinggi dengan 200x efisiensi waktu, kegagalan 60x
lebih sedikit, dan proses pemulihan 168x lebih cepat.

Apa saja yang dilakukan DevOps ?

Continous Integration (CI)

Continuous Integration adalah layanan yang melakukan build dan pengujian otomatis, yang terintegrasi dengan hosting repository source code (seperti Github, Gitlab, atau
Bitbucket). Di mana setiap kita melakukan push commit-commit baru, atau ada pull request ke dalam repository project, layanan ini langsung menjalankan automated build dan test, sehingga jika ada error atau kegagalan test akan segera ketahuan. Jika terjadi kesalahan/bug dalan build/test, Development Team dapat dengan cepat melakukan perbaikan code sehingga kesalahan yang terjadi dapat di tanggulangi dan mengurangi waktu untuk melakukan validasi sebuah update.

Continous Delivery (CD)

Continuous Delivery adalah praktek di dalam software development dimana para Software Developer yang melakukan perubahan pada kode, sudah melakukan build & test yang
dijalankan otomatis oleh Continuous Integration dan siap untuk deploy ke environment production namun memilih untuk tidak men-deploy pada umumnya. Ketika Continuous Delivery dijalankan dengan baik, tim Software Developer akan selalu memiliki sebuah bagian aplikasi atau aplikasi itu sendiri yang siap untuk di deploy ke environment production. Ini dilakukan untuk membantu mengurangi biaya, waktu, dan risiko dalam perubahan aplikasi dengan memungkinkan untuk menambah update lebih banyak untuk aplikasi yang sedang berjalan. Sebuah proses penyebaran langsung dan berulang sangat penting dalam Continuous Delivery (CD).

Berikut beberapa aplikasi gratis yang populer untuk CI/CD diantaranya,

  1. Jenkins,
  2. Gitlab CI/CD
  3. Bitbucket Pipeline,
  4. Semaphore CI,
  5. Travis CI,
  6. Circle CI,
  7. AWS Code Build
  8. AWS Code Pipeline.

Continous Deployment

Setelah proses Continuous Integration-Delivery sudah dinyatakan dengan baik, tim development dapat melihat perubahan yang terjadi pada environment test / environment
development / environment production.

Configuration Management

Proses ini berkaitan dengan system engineering yang bertujuan untuk maintain konfigurasi sebuah produk. Configuration Management memungkinkan otomatisasi dan standardisasi
konfigurasi produk.

Aplikasi populer yang mendukung dalam Configuration Management diantaranya,

  1. Ansible
  2. Chef
  3. Puppet
  4. Capistrano
  5. Fabric
  6. SaltStack

Infrastructure as a Code (IAAC)

IAAC adalah pekerjaan yang mana infrastruktur suatu produk didefinisikan melalui kode yang dapat diprogram, distandarisasi, dan mudah dalam duplikasi. Melalui IAAC, tim
development dapat menambah mesin melalui satu baris kode.

Aplikasi populer yang mendukung IAAC diantaranya,

  1. Terraform
  2. Ansible Tower
  3. Chef
  4. Puppet
  5. SaltStack
  6. AWS CloudFormation

Monitoring

Produk IT menjadi sangat baik karena adanya proses monitoring saat produk tersebut digunakan oleh pengguna. Tujuannya adalah untuk mengetahui bagaimana perubahan yang ada
pada kode cukup berdampak pada produk dan penggunanya.

Aplikasi monitoring yang populer diantaranya,

  1. Nagios
  2. Zabbix
  3. Sensu
  4. Cacti
  5. OpenNMS
  6. Icinga
  7. Prometheus
  8. Grafana
  9. AWS CloudWatch

Logging

Centralized logging menjadi hal yang tidak dapat dipisahkan dari kegiatan DevOps. Dengan menerapkan log aplikasi, kita developer bisa mengetahui produk yang dibuat berjalan
dengan baik atau tidak.

Aplikasi logging yang populer diantaranya,

  1. ElasticSearch + Logstash + Kibana
  2. Splunk
  3. Graylog
  4. AWS Cloudwatch
  5. AWS Kinesis Data Firehose

Apakah Memilih DevOps sebagai karir pilihan yang tepat?

DevOps memiliki masa depan yang menjanjikan, menurut statistik pencarian google DevOps pada lima tahun terakhir meningkat pesat 40% – 45% dan bisa naik lebih tinggi lagi,
dengan munculnya Artificial Intelligence dan Machine Learning, DevOps semakin menarik dan dibutuhkan karena pekerjaannya yang automatis. Selain dari statistik pencarian, trending market aplikasi DevOps juga diprediksi meningkat drastis dari tahun 2018 yang mencapai $5.2 billion, dan diperkirakan pada tahun 2023 akan mencapai $15 billion

Kesimpulan

DevOps adalah cara kerja yang efektif dan efisian pada project dengan mengurangi pembahasan atau pertanyaan yang tidak dibutuhkan dan mempercepat alur development sampai
operasional. Memilih DevOps sebagai karir juga tidak salah, dengan data yang dilampirkan di atas sudah terbukti bahwa DevOps memiliki karir yang menjanjikan, tapi tentu saja pilihan tetap di tangan kamu, karena pekerjaan yang dipaksakan akan memiliki hasil yang terpaksa juga.

 

Sumber

https://www.dicoding.com/blog/apa-itu-devops/
https://medium.com/programmer-geek/apa-itu-devops-dca7c1c2dc92
https://staragile.com/blog/devops-future
https://www.researchgate.net/publication/302566896_2015_State_of_DevOps_Report
https://www.akamai.com/uk/en/solutions/performance/devops.jsp

Related posts

Teknologi Virtual Reality dalam Dunia Kesehatan

Darryl Elgiva

React Native 101 – #3 Contoh Proses Development

Rochman Ramadhani

Kenalan Lebih Dekat dengan Data Mining

Ramdhan Rizki

Leave a Comment