Alat DevOps yang harus dipelajari semua orang pada tahun 2020

Mulailah menerapkan alat DevOps terbaik hari ini!





Revolusi DevOps akhirnya mengambil alih dunia dan alat DevOps menjadi sangat populer. Menurut Google Trends , jumlah permintaan untuk "alat DevOps" terus bertambah, dan tren ini terus berlanjut.



Metodologi DevOps mencakup seluruh siklus pengembangan perangkat lunak, sehingga para ahli dapat memilih dari berbagai alat. Namun, seperti yang Anda ketahui, tidak ada satu alat pun yang dapat menjadi alat universal untuk semua orang. Namun, beberapa solusi menawarkan berbagai fitur sehingga mereka dapat menangani hampir semua tugas.



Mari kita uraikan alat DevOps ke dalam kategori dan bandingkan dengan analog:



  • pengembangan dan membangun alat
  • uji alat otomasi
  • alat untuk mengatur penerapan
  • Alat runtime
  • alat kolaborasi.


Penerapan DevOps yang berhasil dan cerdas mencakup alat dari kelima grup yang tercantum di atas. Analisis kumpulan alat saat ini dalam project Anda agar tidak melewatkan elemen penting dari pipeline CI / CD.



Pengembangan dan Alat Bangun





Ini adalah inti dari tumpukan pipeline CI / CD. Semuanya dimulai di sini! Alat terbaik dalam kategori ini dapat mengelola banyak aliran acara dan dengan mudah diintegrasikan dengan produk lain.



Pada tahap development life cycle ini, terdapat tiga kelompok alat:



  • sistem kontrol versi (SCM)
  • integrasi berkelanjutan (CI)
  • manajemen data


Pada tahun 2020, GIT hanya membuktikan dirinya di sisi positif, jadi alat SCM Anda seharusnya memiliki dukungan GIT yang sempurna. Untuk CI, prasyaratnya adalah kemampuan untuk mengeksekusi dan menjalankan rakitan di lingkungan container yang terisolasi. Berkenaan dengan manajemen data, diperlukan kemampuan untuk membuat perubahan pada skema database dan memelihara database sesuai dengan versi aplikasi.



Alat SCM + CI # 1



Pemenang: GitLab dan GitLab-CI





Alat terbaik dalam siklus DevOps 2020 tidak diragukan lagi adalah GitLab, dan itu pasti akan tetap menjadi pemimpin inovasi dalam waktu dekat.



Fungsi utama GitLab adalah menyediakan manajemen repositori Git yang nyaman. Antarmuka web intuitif dan mudah digunakan. GitLab menyediakan semua yang Anda butuhkan dalam versi gratis dan hadir dalam SaaS dan lokal (menggunakan sumber daya Anda sendiri untuk menghosting perangkat lunak).



Tidak ada alat SCM lain yang menggunakan integrasi berkelanjutan (CI) secara langsung di repositori Anda, dan GitLab telah melakukannya untuk waktu yang lama. Untuk menggunakan GitLab-CI, Anda harus menambahkan file .gitlab-ci.yml ke root kode sumber Anda, dan setiap perubahan pada proyek akan memicu tindakan berdasarkan apa yang Anda tentukan. GitLab dan GitLab-CI memang pantas diakui sebagai pemimpin di bidang integrasi berkelanjutan (CI-as-code).



Kunci Keuntungan



  • Keandalan - Produk telah dipasarkan sejak 2013; stabil; terawat dengan baik.
  • Open Source - Versi gratis GitLab tidak membatasi fungsionalitas inti yang dibutuhkan tim pengembangan. Paket layanan berbayar menyediakan fitur berguna tambahan untuk perusahaan dengan ukuran dan kebutuhan berbeda.
  • Engrained CI - Tidak ada alat lain di pasaran yang telah membangun integrasi berkelanjutan langsung ke SCM seperti GitLab-CI. Menggunakan Docker menyediakan build tanpa kerumitan, sandbox, dan laporan bawaan memudahkan untuk men-debug (debug). Kami tidak memerlukan integrasi dan pengelolaan yang rumit dari beberapa alat pada saat yang bersamaan.
  • Integrasi tak terbatas - GitLab menyediakan integrasi mudah dari semua alat DevOps yang Anda butuhkan. Hal ini memungkinkan tim pengembangan dan pemeliharaan untuk menggunakan satu sumber informasi tentang aplikasi mereka di lingkungan mana pun.


Pesaing



Berkelahi, tetapi tidak menang



Ada alat populer lainnya dalam kategori ini, tetapi tidak sebagus GitLab. Inilah alasannya:



GitHub- Ini adalah sistem kontrol versi SaaS yang bagus untuk perusahaan kecil dan tahap awal pengembangan. Untuk perusahaan besar yang perlu menyimpan alamat IP di jaringan mereka sendiri, satu-satunya solusi di GitHub adalah mesin virtual .OVA tanpa dukungan HA. Hal ini menyulitkan pengelolaan di lokasi, selain itu, .OVA hanya cocok untuk bisnis menengah, jika tidak, server akan mogok karena beban berat. Kurangnya GitHub Actions (hingga saat ini dan belum on-prem) atau CI-as-code berarti Anda harus memilih alat CI terpisah dan kemudian mengelola integrasi ini. Terakhir, GitHub jauh lebih mahal daripada versi GitLab mana pun.



Jenkins- Meskipun Jenkins dianggap sebagai standar di antara alat integrasi berkelanjutan secara default, Jenkins selalu kekurangan kemampuan kontrol versi. Ternyata Anda menggunakan Jenkins plus beberapa jenis alat SCM. Terlalu sulit ketika GitLab dapat melakukan keduanya. Desain UX biasa-biasa saja tidak bagus untuk aplikasi web modern dan meninggalkan banyak hal yang diinginkan.



BitBucket / Bamboo - Saya harus mengakui bahwa ini adalah pecundang otomatis: mengapa dua alat saat GitLab melakukan semuanya sendiri. BitBucket Cloud mendukung fungsionalitas GitLab-CI / GitHub Action, tetapi tidak ada perusahaan yang lebih besar dari startup yang dapat dengan mudah mengimplementasikannya. Server BitBucket lokal bahkan tidak mendukung pipeline BitBucket!



Alat Manajemen Data # 1



Pemenang: FlywayDB





Dalam pengembangan aplikasi web, otomasi database biasanya diabaikan. Ide untuk menerapkan perubahan pada skema database untuk versi baru aplikasi datang dengan penundaan. Perubahan skema sering kali mengakibatkan penambahan dan penggantian nama kolom atau tabel. Jika versi aplikasi tidak cocok dengan versi skema, aplikasi mungkin macet. Selain itu, mengatur perubahan database saat memperbarui aplikasi dapat menjadi tantangan karena ada dua sistem yang berbeda. FlyWayDB memecahkan semua masalah ini.



Kunci Keuntungan



  • Pembuatan versi database - Flyway memungkinkan Anda membuat versi database, melacak migrasi database, melakukan migrasi atau rollback perubahan skema dengan mudah tanpa alat tambahan untuk ini.
  • โ€” : Flyway . Flyway , . cmd line ad-hoc, .


Kompetitor



Berpartisipasi dalam pertempuran, tetapi tidak menang



Tidak banyak alat di area ini. Mari kita lihat beberapa di antaranya:



LiquiBase - Liquibase menyerupai FlywayDB. Saya ingin memasangnya di atas Flyway jika ada spesialis dalam tim saya yang memiliki lebih banyak pengalaman dengan Liquibase.



Flocker - Hanya dapat bekerja untuk aplikasi dalam container. Semuanya harus direncanakan dengan sempurna untuk keberhasilan peluncuran database dalam kontainer. Saya merekomendasikan menggunakan RDS (Relational Database Service) untuk database dan tidak merekomendasikan menyimpan informasi sensitif dalam wadah.



Uji alat otomasi





Mari kita mulai diskusi kita tentang alat otomatisasi pengujian dengan mengklasifikasikannya berdasarkan piramida pengujian.



Piramida pengujian (tes) memiliki 4 tingkatan:



  • - โ€” . - . -, , ( ยซยป) .
  • โ€” โ€” / . , .
  • โ€” , .
  • โ€” . , , .


Karena pengujian unit dan pengujian komponen hanya dilakukan oleh pengembang dan sering kali bergantung pada bahasa, kami tidak akan mengevaluasi alat ini untuk domain DevOps.



Alat Pengujian Integrasi # 1



Pemenang: Mentimun





Mentimun menggabungkan spesifikasi dan dokumentasi pengujian menjadi satu dokumen hidup. Spesifikasi selalu terkini karena secara otomatis diuji oleh Mentimun. Jika Anda ingin membangun framework pengujian otomatis dari awal dan mensimulasikan perilaku pengguna dalam aplikasi web, Selenium WebDriver dengan Java dan Cucumber BDD adalah cara terbaik untuk mempelajari dan mengimplementasikan Ketimun dalam sebuah proyek.



Kunci Keuntungan



  • BDD- (Behavior Driven Development โ€” โ€œ โ€ โ€œ โ€) โ€” Cucumber BDD-, .
  • โ€” โ€” ! , Cucumber , , .
  • โ€” , Cucumber , .


Kompetitor



Berpartisipasi dalam pertempuran, tetapi tidak menang



Di antara kerangka kerja dan alat khusus teknologi lainnya, hanya Mentimun yang dapat dianggap sebagai solusi universal.



Alat pengujian ujung ke ujung



Saat melakukan pengujian ujung ke ujung, ada dua poin utama yang harus difokuskan:



  • pengujian fungsional
  • Pengujian Stres.


Dalam pengujian fungsional, kami memeriksa apakah yang kami inginkan benar-benar terjadi. Misalnya, ketika saya mengklik elemen tertentu dari SPA saya (Aplikasi Halaman Tunggal), mengisi formulir dan memilih "Kirim", data muncul di DB dan pesan "Berhasil!"



Penting juga bagi kami untuk memeriksa bahwa sejumlah pengguna yang bekerja dalam skenario yang sama dapat ditangani tanpa kesalahan.



Tidak adanya 2 jenis pengujian ini akan menjadi kelemahan signifikan dalam pipeline CI / CD Anda.



Alat Pengujian Ujung-ke-Ujung # 1. Pengujian fungsional



Pemenang: SoapUI Pro





SoapUI telah lama berada di area pengujian API sejak layanan web berbasis SOAP menjadi standar. Meskipun kami tidak lagi membuat layanan SOAP baru, dan nama alat tidak berubah, ini tidak berarti alat tersebut tidak berevolusi. SoapUI menyediakan kerangka kerja yang sangat baik untuk membangun tes backend fungsional otomatis. Pengujian dapat dengan mudah digabungkan dengan alat integrasi berkelanjutan dan digunakan sebagai bagian dari pipeline CI / CD.



Kunci Keuntungan



  • Dokumentasi terperinci - SoapUI telah ada di pasaran sejak lama, begitu banyak sumber daya online telah dibuat untuk membantu Anda memahami cara menyiapkan pengujian.
  • Kemudahan Penggunaan - Meskipun alat ini mendukung banyak protokol untuk menguji API, SoapUI memiliki antarmuka umum untuk beberapa layanan, membuatnya lebih mudah untuk menulis pengujian.


Pesaing



Berjuang, tetapi tidak mengalahkan



Selenium - alat hebat lainnya di grup ini. Saya merekomendasikan menggunakannya jika Anda sedang membangun dan menjalankan aplikasi berbasis Java. Namun, jika Anda membangun aplikasi web lengkap dengan banyak teknologi, ini bisa menjadi berat untuk komponen non-Java.



Alat pengujian ujung-ke-ujung # 1. Pengujian Stres



Pemenang: LoadRunner





Penjelasan: Ketika tiba saatnya untuk memuat pengujian setiap elemen aplikasi, hanya LoadRunner yang dapat melakukan tugas ini. Ya, ini agak mahal dan sulit pada awalnya, tetapi LoadRunner adalah satu-satunya alat yang memberi saya, sebagai arsitek teknis, keyakinan penuh bahwa kode baru akan berfungsi di bawah tekanan yang ekstrim. Juga, saya pikir sudah waktunya untuk menempatkan LoadRunner di tim pengembangan, bukan tim penguji.



Kunci Keuntungan



  • Dokumentasi Ekstensif - LoadRunner telah ada di pasar sejak lama, begitu banyak sumber daya online telah dibuat untuk membantu Anda memahami cara menyiapkan pengujian beban.
  • Dukungan Protokol - Dukungan Load Runner dari ODBC ke AJAX, HTTPS, dan protokol non-sepele lainnya yang dapat digunakan aplikasi Anda. Kami mencoba untuk tidak menggunakan beberapa alat untuk pengujian beban, karena ini hanya memperumit proses.


Pesaing



Berpartisipasi dalam Perebutan, Tapi Tidak Menang



Lagi, tidak banyak alat universal di bidang ini, jadi solusi terbaik adalah yang akan bekerja di lingkungan apa pun dengan teknologi apa pun.



Alat penyebaran





Alat penyebaran mungkin adalah aspek pengembangan yang paling tidak dipahami. Sulit bagi tim operasi untuk menggunakan alat tersebut tanpa pemahaman yang mendalam tentang kode aplikasi dan fungsionalitas. Bagi pengembang, mengelola penerapan adalah tanggung jawab baru, jadi mereka belum memiliki cukup pengalaman dengan alat semacam itu.



Pertama-tama, mari bagi semua alat penerapan menjadi tiga subkategori:



  • manajemen artefak
  • manajemen konfigurasi
  • menyebarkan.


Alat Manajemen Artefak # 1



Pemenang: Nexus





Nexus Artifact Repository mendukung hampir semua teknologi utama, mulai dari Java hingga NPM hingga Docker. Kita bisa menggunakan alat ini untuk menyimpan semua artefak bekas. Proxying remote package manager juga secara dramatis mempercepat proses build CI dengan membuat paket lebih tersedia untuk dibuat. Keuntungan lainnya adalah kemampuan untuk mendapatkan gambaran lengkap dari semua paket yang digunakan dalam beberapa proyek perangkat lunak dengan memblokir paket open source yang tidak aman (mereka dapat bertindak sebagai vektor serangan).



Kunci Keuntungan



  • Dukungan teknis - Produk yang dapat diandalkan; terawat dengan baik.
  • Open Source - Versi gratis tidak membatasi fungsionalitas dasar yang dibutuhkan tim pengembangan.


Alat Manajemen Konfigurasi # 1



Pemenang: Ansible



Ansible adalah pemimpin karena satu alasan sederhana: tanpa kewarganegaraan. Sebelumnya, alat semacam itu berfokus pada pengelolaan status konfigurasi. Saat diluncurkan, alat semacam itu, setelah menerima konfigurasi yang diinginkan, akan mencoba memperbaiki konfigurasi aplikasi saat ini. Dan dengan pendekatan baru, hanya ada komponen tanpa negara. Versi baru kode adalah artefak yang disebarkan untuk menggantikan yang sudah ada. Ini dapat dianggap sebagai lingkungan yang fana dan berjangka pendek.



Kunci Keuntungan



  • Stateless - Playbook diluncurkan dari mesin penerapan dan dijalankan pada server target. Saya tidak khawatir tentang status objek jarak jauh dengan menggunakan alat seperti Packer untuk membuat objek yang dapat diterapkan.
  • โ€” CentOS, Ansible RedHat. , .
  • Molecule ( Ansible) โ€” โ€” , , . Molecule Ansible , , CI/CD-, .
  • YAML โ€” , YAML . , , , DevOps-, โ€” .


Pesaing Berkelahi



tetapi tidak mengalahkan



OpsCode Chef - Saya memulai karir DevOps saya sebagai pengembang buku masak. Ruby dan Chef, tentu saja, sangat disayangi, tetapi mereka tidak menyelesaikan masalah aplikasi modern berbasis cloud dan tanpa kewarganegaraan. OpsCode Chef adalah alat yang hebat untuk aplikasi yang lebih tradisional, dan dalam artikel ini kami berfokus pada masa depan.



Puppet - Puppet memang tidak pernah memiliki banyak penggemar, apalagi jika dibandingkan dengan Chef dan Ansible. Ini bagus untuk menyediakan dan bekerja dengan perangkat keras, tetapi tidak memiliki dukungan manajemen konfigurasi modern untuk aplikasi web.



Terapkan alat # 1



Pemenang: Terraform





Terraform memecahkan masalah dalam mendeskripsikan infrastruktur Anda sebagai kode, dari komponen jaringan hingga image server lengkap. Produk ini telah berkembang pesat sejak rilis pertama, dengan sejumlah besar plugin dan komunitas yang kuat sehingga pasti akan membantu Anda dengan skenario penerapan apa pun. Kemampuan untuk mendukung semua jenis lingkungan (on-premise, di cloud, atau di tempat lain) tidak ada bandingannya. Terakhir, versi terbaru menyediakan sebagian besar fungsi dan kelas logika yang sama di HCL seperti bahasa pemrograman tradisional lainnya - pengembang cepat memahami dan dapat menguasai Terraform dengan mudah.



Kunci Keuntungan



  • Environment Independent - Terraform menggunakan fungsi yang berfungsi sebagai antarmuka antara kode Terraform Anda, semua API, dan logika internal untuk berkomunikasi dengan penyedia infrastruktur. Ini berarti saya hanya akan mempelajari satu alat dan kemudian saya dapat bekerja di mana saja.
  • Open Source - Alat gratis yang sulit dikalahkan! Dukungan komunitas di tingkat tertinggi.


Pesaing



Berpartisipasi dalam scrum, tetapi tidak mengalahkan



AWS CloudFormation - Meskipun Anda hanya bekerja di lingkungan cloud AWS, pekerjaan Anda berikutnya mungkin memiliki alat yang berbeda. Mendedikasikan semua waktu dan energi Anda hanya untuk satu platform adalah keputusan yang picik. Selain itu, banyak layanan AWS baru sering kali tersedia sebagai modul Terraform sebelum tersedia di CloudFormation.



Alat runtime







Tujuan akhir dari setiap proyek pengembangan adalah meluncurkan aplikasi ke dalam produksi. Di dunia DevOps, kami ingin mendapatkan informasi lengkap tentang semua kemungkinan masalah dengan lingkungan kami, dan kami juga ingin meminimalkan intervensi manual. Memilih rangkaian fitur Runtime yang tepat sangat penting untuk mencapai nirwana saat mengembangkan aplikasi Anda.



Subkategori Alat Runtime:



  • X-as-a-service (XaaS)
  • orkestrasi
  • pemantauan
  • penebangan.


Alat X-as-a-Service # 1



Pemenang: Amazon Web Services





Amazon selalu menjadi pemimpin dalam teknologi cloud, tetapi tidak berhenti di situ: variasi layanan baru untuk pengembang sangat mempesona. Transfer teknologi dan templat apa pun ke AWS dan itu akan dibuat dan diluncurkan. Biaya alat ini cukup masuk akal: bandingkan dengan merakit, mengelola, dan memelihara peralatan di pusat data Anda sendiri. Versi gratis memungkinkan Anda untuk bereksperimen dan membuat keputusan yang tepat sebelum mengeluarkan uang.



Kunci Keuntungan



  • Prevalensi - Jika Anda memiliki pengalaman membuat aplikasi di AWS, Anda dapat bekerja di mana saja. Bisnis menyukai AWS, dan startup juga menghargai biayanya yang rendah.
  • โ€” , AWS . , , , - . .


Pesaing



Berkelahi, tetapi tidak mengalahkan



Azure - Azure telah berkembang pesat sejak rilis pertama, dan itu terpuji. Meski demikian, keinginan untuk tampil beda dari teman sebaya memunculkan nama-nama yang aneh untuk layanan, yang seringkali mempersulit pekerjaan. Apa yang dimaksud dengan penyimpanan blob? Dan meskipun kode .NET berkinerja lebih baik di ekosistem Microsoft, kecil kemungkinannya Anda hanya akan menggunakan .NET untuk setiap komponen aplikasi Anda.



Heroku - Saya tidak akan pernah menjalankan apa pun selain proyek pribadi di Heroku karena tingkat keandalan dan transparansi yang rendah, jadi perusahaan tidak boleh menggunakannya sebagai platform. Heroku sangat bagus untuk mendemonstrasikan sesuatu di blog, tetapi untuk penggunaan praktis - "Tidak, terima kasih!".



Instrumen Orkestrasi No.1



Pemenang: OpenShift





Anda mungkin menggunakan Docker atau kontainer lain di tumpukan aplikasi Anda. Aplikasi tanpa server memang bagus, tetapi mungkin tidak cocok untuk semua arsitektur. Menjalankan container tanpa framework orkestrasi tidak akan berfungsi. Inti Kubernetes (K8) tidak tertandingi dalam hal keamanan dan instrumentasi. OpenShift adalah satu-satunya platform berbasis Kubernetes yang dapat membangun Source2Image, mendukung otomatisasi penerapan pod, serta pelacakan dan pemantauan. OpenShift dapat dijalankan secara on-prem, di cloud atau on-prem dan di cloud pada saat yang bersamaan.



Kunci Keuntungan



  • โ€” K8s . ! , OpenShift, .
  • ยซ ยป โ€” K8s, , OpenShift . , CI/CD, , . - , , API, , . K8s, OpenShift Kubernetes. !


Pesaing Berjuang,



tetapi tidak mengalahkan



Docker Swarm - Docker Swarm mencoba menyederhanakan K8 dengan menyingkirkan banyak hal. Ini berfungsi dengan baik untuk aplikasi kecil, tetapi tidak berfungsi untuk aplikasi perusahaan. Selain itu, solusi seperti AWS ECS mengambil pendekatan serupa tetapi membuatnya lebih mudah untuk bekerja dengan layanan lain yang juga dapat saya gunakan untuk berinteraksi (Lambda, IAM, dll.).



Alat pemantauan # 1



Pemenang: Relik Baru





Rilis awal New Relic melakukan satu hal dengan baik - Application Performance Monitoring (APM). Ini sekarang menjadi alat pemantauan berfitur lengkap untuk memantau server, wadah, kinerja database, pemantauan pengalaman pengguna akhir dan tentu saja pemantauan kinerja aplikasi.



Kunci Keuntungan



  • Kemudahan Penggunaan - Ketika saya adalah seorang insinyur sistem, saya menggunakan banyak alat pemantauan, tetapi tidak pernah menemukan sesuatu yang sederhana dan mudah digunakan sebagai New Relic. Ini adalah SaaS, jadi Anda tidak perlu menginstalnya sendiri.
  • โ€” . , , , . New Relic , .


Pesaing



Berpartisipasi dalam pertempuran, tetapi tidak memenangkan



Zabbix - Sistem pemantauan pertama dan favorit saya, tetapi tetap di masa lalu karena kurangnya pengembangan dalam teknologi cloud dan di bidang pemantauan kinerja aplikasi APM. Zabbix masih berkinerja baik dengan pemantauan infrastruktur server tradisional, tetapi hanya itu saja.



DataDog - Terlalu banyak fokus pada proses pengelolaan lingkungan produksi aplikasi, dan bukan pada kode itu sendiri. Dengan tim DevOps yang melibatkan pengembang, kami tidak harus bergantung pada alat yang rumit untuk memberikan dukungan terbaik.



Alat pencatatan # 1



Pemenang: Splunk





Splunk sulit untuk bersaing! Untuk waktu yang lama dia tetap menjadi pemimpin dalam penebangan, terus melakukan yang terbaik. Dengan penawaran on-prem dan SaaS, Anda dapat menggunakan Splunk di mana saja. Kelemahan utama adalah harganya: Splunk masih sangat mahal!



Kunci Keuntungan



  • Prevalensi - Bisnis menyukai Splunk dan perusahaan punya uang untuk membelinya.
  • Meskipun para pemula mencoba untuk menutup biaya, banyak fitur yang dapat diselesaikan berkat rekan-rekan open source mereka.
  • Pemeliharaan - Sederhananya, Splunk berfungsi dan melakukannya dengan baik. Muncul dengan banyak default dan fitur yang siap digunakan. Tidak perlu membuang waktu membaca dokumentasi dan mencoba membuat Splunk berfungsi atau mendekripsi apa pun.


Pesaing Berjuang



tetapi tidak mengalahkan



ELK Stack (ElasticSearch, LogStash, dan Kibana) - Alat ini sepertinya favorit karena Anda bahkan tidak perlu menjual hati untuk menggunakannya. Namun, dengan pertumbuhan kumpulan log dan peningkatan jumlah aplikasi di papan, pekerjaan menjadi semakin sulit. Dibandingkan dengan Splunk, dengan ELK Stack, saya menghabiskan lebih banyak waktu untuk menyiapkan toolkit sebelum membuat dasbor apa pun daripada sebelumnya.



Alat kolaborasi





DevOps terutama tentang perubahan budaya dalam sebuah organisasi. Membeli alat apa pun tidak akan mengubah praktik kebiasaan dalam semalam, tetapi tentu saja dapat mendorong kolaborasi dan cara baru untuk berinteraksi.



Subkategori Alat Kolaborasi:



  • pelacakan tugas
  • ChatOps
  • dokumentasi.


Pelacak Masalah # 1



Pemenang: Jira





Jira mempertahankan posisi terdepan, meski persaingan di bidang ini semakin meningkat. Fleksibilitas Jira yang luar biasa memungkinkan tim pengembangan dan pemeliharaan untuk mengelola pekerjaan proyek dan tugas sprint. Standar bawaan menggunakan terminologi Agile membuatnya mudah untuk beralih dari cara kerja tradisional ke proses yang lebih efisien.



Kunci Keuntungan



  • Popularitas - Seperti banyak alat lainnya, Jira digunakan hampir di mana-mana. Tim kecil menggunakan versi yang lebih murah dan lebih terjangkau dan mendapatkan semua yang mereka butuhkan, sementara perusahaan besar dapat membeli lisensi yang lebih tinggi.
  • โ€” Jira โ€” . , Jira , , . Jira , , .


Pesaing



Punya Perebutan, Tapi Tidak



Mengalahkan Trello - Trello dengan cepat mendapatkan popularitas berkat alat Kanban gratisnya. Namun, begitu skala proses dan Anda beralih dari lusinan tugas ke ribuan, Trello sulit dinavigasi, dicari, dan dilaporkan.



Pivotal Tracker - Saya adalah penggemar berat alat ini ketika saya bekerja untuk sebuah startup. Namun, Pivotal Tracker lebih fokus pada manajemen produk daripada tugas teknis. Meskipun mengelola produk di Jira sedikit lebih kompleks, namun tetap dapat diterapkan di sana tanpa menggunakan alat tambahan.



Alat ChatOps # 1



Pemenang: MatterMost





Penjelasan: Mungkin kejutan terbesar untuk Anda dalam koleksi saya, dan ini adalah berita bagus! MatterMost mendapatkan popularitas dengan mengambil yang terbaik dari instrumen sebelumnya, tetapi memasukkannya secara on-prem. Ini sangat penting bagi perusahaan: MatterMost memungkinkan Anda mengontrol data, dan juga membantu mengintegrasikannya dengan alat yang bekerja di lokasi. Kami tidak perlu lagi keluar dari firewall untuk memeriksa obrolan kerja.



Kunci Keuntungan



  • Open Source - MatterMost versi open source berfungsi baik untuk tim menengah dan besar. Tidak seperti paket Slack gratis, yang menghapus riwayat pesan Anda, menjalankan server Anda sendiri berarti Anda menyimpan semua data Anda.
  • Integrasi - Karena API hampir 100% didasarkan pada Slack API, hampir semua integrasi Slack dapat digunakan langsung dengan MatterMost.


Pesaing



Berpartisipasi dalam pertempuran, tetapi tidak mengalahkan



Slack - Slack memang keren, tetapi orang-orang ini telah berkembang pesat sehingga mereka mulai mencari untung. Tahap pengembalian bisnis semakin dekat, yang menghilangkan nilai utama mereka: Slack menyediakan layanan secara gratis; kelemahan terpenting dari versi gratis ini adalah menghapus riwayat obrolan.



Microsoft Teams - Cobalah mengintegrasikan produk Microsoft dengan sesuatu yang bukan Microsoft ... Semoga berhasil! Hanya itu yang ingin saya katakan tentang alat ini!



Alat Dokumentasi # 1



Pemenang: Confluence





Membuat dan memelihara dokumentasi teknis yang berkualitas adalah proses yang kompleks, apa pun alat yang Anda gunakan. Meskipun ada banyak alat dokumentasi SaaS di pasaran akhir-akhir ini, akan sulit bagi saya untuk melakukan outsourcing penyimpanan dokumentasi teknis untuk aplikasi penting kepada pihak ketiga. Menyimpan data dan dokumen lebih disukai daripada on-prem, dan berikut ini cara Confluence menyelesaikannya.



Kunci Keuntungan



  • Kemudahan Pengoperasian - Sebagian besar alat mandiri mungkin agak sulit disiapkan dan dioperasikan dan memerlukan pengetahuan untuk memeliharanya. Confluence Server bekerja dengan sangat baik untuk 10 atau 10.000 pengguna.
  • Plugin - Terima kasih kepada Confluence karena memiliki navigasi yang bagus dan mudah di luar kotak, dan kemampuan menambahkan plugin untuk apa saja membuka potensi sebagai Wiki.


Pesaing



Berkelahi, tetapi tidak menang



Baca dokumen - Keren untuk open source, tetapi jangan pernah berpikir untuk menyimpan pengetahuan penting di sini.



MarkDown - Sangat bagus untuk mendokumentasikan kode, tetapi sulit untuk menghosting arsitektur, proses, atau jenis dokumentasi lainnya di sini karena pemformatan spesifik MarkDown.



Jekyll - Saat mendokumentasikan pengetahuan teknis, saya tidak ingin membuat situs statis baru yang akan terbuka pada setiap perubahan. Sistem kontrol versi Confluence yang sederhana sangat menyederhanakan dokumentasi internal.



Mari kita simpulkan



Ada ratusan alat DevOps di pasaran, sehingga sulit untuk mengetahui mana yang harus digunakan dan pada titik mana alat tersebut harus diterapkan. Ikuti panduan sederhana ini untuk memilih alat DevOps untuk pipeline CI / CD lengkap.



Jangan lupa untuk memilih alat dari kelima kategori:



  • pengembangan dan membangun alat
  • uji alat otomasi
  • alat penyebaran
  • Alat runtime
  • alat kolaborasi.


Rekomendasi teratas: Otomatiskan semuanya!



Terima kasih kepada Zach Shapiro!



All Articles