Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini memberikan pertimbangan dan rekomendasi untuk DevOps di zona pendaratan Azure.
Apa itu DevOps
DevOps adalah penyatuan orang, proses, dan teknologi yang memberikan nilai berkelanjutan untuk pengembangan (dev) dan operasi (ops). Pendekatan DevOps mendorong kolaborasi tim yang menciptakan proses berulang untuk membantu organisasi beroperasi secara efisien dan dalam skala besar.
Dalam konteks zona pendaratan Azure, DevOps menjadi kerangka kerja yang memandu tim Anda (atau tim) yang bertanggung jawab atas seluruh manajemen siklus hidup zona pendaratan Azure Anda di area seperti:
- Cara mengatur sendiri dan menentukan batasan dengan tim lain untuk mencapai keseimbangan yang sesuai antara otonomi dan tata kelola
- Cara terus mengembangkan desain arsitektur zona pendaratan Azure (Hukum Conway)
- Cara merencanakan, memprioritaskan, dan melakukan iterasi implementasi arsitektur yang dirancang
- Cara menerapkan kontrol versi, integrasi berkelanjutan, dan penyebaran berkelanjutan untuk kode zona pendaratan Azure
- Cara mengoperasikan dan menanggapi insiden untuk sistem dan platform yang Anda miliki
- Tingkat otomatisasi yang Anda terapkan pada penyediaan zona pendaratan Azure dan pemulihan otomatis.
- Cara berkolaborasi dengan tim lain di organisasi Anda dengan cara yang tangkas dan berorientasi pada hasil
- Cara menciptakan budaya keamanan, kualitas, sentrisitas pengguna, dan pembelajaran berkelanjutan yang generatif
Keputusan yang Anda buat saat meninjau model operasi cloud dapat memengaruhi cara Anda menggunakan kerangka kerja DevOps Anda.
Pertimbangan desain DevOps
Tentukan kerangka kerja DevOps Anda, atau selaraskan dengan DevOps organisasi dan strategi adopsi cloud Anda. Sertakan definisi DevOps dan prinsip dan praktik yang harus diikuti tim Anda. Pastikan Anda menghubungkan strategi DevOps ke strategi bisnis Anda.
Menetapkan metrik yang memungkinkan tim Anda meningkatkan performa DevOps mereka. Tim berkinerja tinggi menggunakan hipotesis untuk menguji ide-ide mereka, mengukurnya untuk melihat cara kerja hipotesis, lalu membuat perubahan sesuai kebutuhan. Tujuan akhir DevOps adalah untuk meningkatkan aspek seperti frekuensi penyebaran, waktu rata-rata untuk menerapkan perubahan, atau waktu untuk memulihkan layanan yang terdegradasi. Anda harus merancang semua metrik ini untuk akhirnya memengaruhi performa bisnis secara keseluruhan.
Tentukan praktik DevOps yang harus diterapkan tim Anda terlebih dahulu berdasarkan keterampilan mereka saat ini, dan rancang peta strategi untuk menerapkan praktik baru secara bertahap yang membantu tim Anda meningkatkan metrik DevOps mereka. Berinvestasi dalam kemampuan teknik dan sumber daya sangat penting.
Tentukan toolchain DevOps yang harus digunakan tim Anda untuk menerapkan praktik DevOps. Pastikan bahwa alat konsisten dengan strategi DevOps Anda secara keseluruhan untuk menghindari skenario ekosistem DevOps heterogen yang meningkatkan kompleksitas zona pendaratan Azure atau penyebaran beban kerja.
Evaluasi efek yang dimiliki praktik DevOps yang Anda terapkan dan alat DevOps pada desain Zona Pendaratan Azure Anda.
Buat rencana kesiapan untuk terus mengembangkan keterampilan tim Anda. Pendekatan menyeluruh terhadap model DevOps tidak langsung membentuk tim DevOps yang kompeten.
Tentukan topologi tim yang paling sesuai dengan strategi DevOps dan model operasi cloud organisasi Anda, dan tetapkan batas, tanggung jawab, dan dependensi yang jelas antara tim.
Tentukan bagaimana tim yang bertanggung jawab atas Zona Pendaratan Azure harus berkolaborasi dengan tim lain di organisasi Anda untuk menangkap persyaratan Zona Pendaratan Azure baru untuk memperbarui desain dan implementasi, menyelesaikan insiden, meminimalkan dependensi, dan selaras dengan prioritas bisnis.
Rekomendasi DevOps
Bagian berikut berisi rekomendasi untuk membantu Anda menerapkan kerangka kerja DevOps dalam organisasi Anda.
Tentukan kerangka kerja DevOps Anda
Untuk membuat kerangka kerja DevOps Anda, pertimbangkan untuk menggunakan kerangka kerja yang sudah tersedia untuk memulai dengan serangkaian praktik terbukti yang telah ditentukan sebelumnya:
Pusat Sumber Daya Microsoft DevOps menyediakan serangkaian definisi, praktik, dan kemampuan yang kaya yang dapat Anda beradaptasi dengan manajemen siklus hidup Azure Landing Zone, termasuk:
Microsoft DevOps Dojo menetapkan taksonomi DevOps yang dibangun di atas empat pilar dasar dan delapan kemampuan:
Menentukan praktik DevOps untuk manajemen zona pendaratan Azure Anda
Pertimbangkan praktik DevOps berikut untuk zona pendaratan Azure Anda:
- Tinjau cara mengelola siklus hidup pengembangan zona pendaratan Azure sebagai kode.
- Tinjau pertimbangan keamanan untuk Zona Pendaratan Azure di ruang DevOps.
Merencanakan perjalanan implementasi DevOps Anda
Tentukan dan selaraskan perjalanan implementasi DevOps Anda dengan rencana adopsi cloud organisasi Anda.
- Tentukan di mana tim Anda berada hari ini di area berikut:
- Praktik DevOps yang telah diadopsi oleh tim Anda untuk manajemen Azure Landing Zones.
- Gunakan alat seperti Penilaian Kemampuan DevOps untuk menilai status status DevOps tim Anda saat ini.
- Struktur tim saat ini, termasuk peran dan tanggung jawab dan fungsi cloud yang dimiliki.
- Model operasi cloud mana yang saat ini diikuti tim Anda.
- Praktik DevOps yang telah diadopsi oleh tim Anda untuk manajemen Azure Landing Zones.
- Gunakan rencana adopsi cloud organisasi Anda untuk menentukan model yang diinginkan untuk tim Anda.
- Tetapkan peta jalan berulang untuk menerapkan model yang diinginkan dalam mode berulang dan bertahap yang selaras dengan garis waktu transformasi organisasi Anda.
Menerapkan metrik DevOps yang diinginkan
Identifikasi metrik mana yang akan Anda gunakan untuk mengukur performa DevOps tim Anda. Gunakan metrik untuk mendorong kebiasaan yang diinginkan dalam tim Anda yang terhubung dengan hasil bisnis. Tetapkan metrik untuk memungkinkan tim Anda mengukur dampak atas aktivitas. Buat metrik utama terlihat oleh semua, karena transparansi mempromosikan kepercayaan dan mendorong keselarasan dengan tujuan organisasi.
Contoh metrik yang mengukur performa DevOps untuk meningkatkan dampak bisnis meliputi:
Hasil Bisnis:
- Gunakan Objectives dan Key Results sebagai alat untuk menjauhkan tim Anda dari pola pikir "output" dan menuju pola pikir "hasil". Misalnya, Anda dapat menggunakan jumlah beban kerja yang meningkatkan penilaian kepatuhan mereka atas jumlah kebijakan yang disebarkan ke Azure.
- Kepuasan pelanggan atau pengguna akhir. Contohnya termasuk Net Promoter Score (NPS), survei, wawancara.
- Pertumbuhan bisnis. Contohnya termasuk peningkatan profitabilitas, peningkatan pendapatan, dan akuisisi sumber pendapatan baru.
- Metrik orang. Contohnya termasuk Skor Employee Net Promoter (eNPS), pemanfaatan, retensi, dan kepuasan.
- Biaya. Misalnya, Anda dapat menggunakan pengurangan biaya.
Performa pengiriman perangkat lunak:
- Waktu Penyelesaian Perubahan, waktu yang diperlukan untuk perbaikan bug, fitur baru, atau perubahan lainnya dari tahap ide hingga penyebaran ke produksi.
- Frekuensi Penyebaran, jumlah penyebaran per hari dari perubahan kode ke produksi.
- Waktu Rata-rata untuk Memulihkan, yaitu waktu yang diperlukan untuk memulihkan layanan dalam sistem produksi setelah insiden terjadi.
- Ubah Persentase Gagal, persentase perubahan pada produksi (seperti perubahan konfigurasi) yang menyebabkan kegagalan.
Kualitas:
- Tingkat pelarian cacat, jumlah cacat yang diidentifikasi oleh pengguna akhir Anda.
- Pekerjaan atau pengerjaan ulang yang tidak diencana, persentase waktu yang dihabiskan untuk melakukan pekerjaan atau pengerjaan ulang yang tidak diencana.
- Bug aktif, jumlah bug yang belum diperbaiki.
- Code Health, persentase kode yang belum pernah diuji unit.
Tentukan ekosistem teknologi DevOps Anda
Toolchain DevOps yang Anda pilih untuk mengelola siklus hidup Zona Pendaratan Azure Anda memengaruhi:
- Strategi Anda untuk menerapkan prinsip dan praktik DevOps
- Pertimbangan keamanan untuk siklus hidup DevOps Anda
- Desain arsitektur keseluruhan dari manajemen siklus hidup Azure Landing Zones Anda.
Gunakan kerangka kerja DevOps yang sebelumnya Anda tentukan untuk mengidentifikasi alat mana yang akan digunakan untuk setiap proses DevOps Anda. Pilih teknologi DevOps yang paling cocok untuk kebutuhan tim Anda, tetapi temukan keseimbangan yang memungkinkan Anda mencapai standardisasi di seluruh organisasi Anda tetapi menghindari terlalu banyak kompleksitas atau heterogenitas dalam ekosistem DevOps Anda.
Contoh teknologi DevOps di berbagai tahap DevOps meliputi:
- Perencanaan: Atlassian Jira, Atlassian Trello, Azure Boards, GitHub
- Integrasi berkelanjutan (CI) dan pengujian: Atlassian Bitbucket, Azure Repos, GitHub Repos, npm, NuGet, Selenium, SmartBear Cucumber, SonarSource SonarQube, Zed Attack Proxy
-
Pengiriman berkelanjutan (CD): Atlassian Bamboo, Azure Pipelines, GitHub Actions, Jenkins, Octopus Deploy, Perforce Puppet, RedHat Ansible
- Infrastruktur sebagai kode: Bicep, Pulumi, Terraform
- Bootstrap: ArgoCD GitOps, Flux GitOps, Progress Chef, PowerShell Desired State Configuration (DSC)
- Operasi: Azure Automation, Azure Monitor, CISCO Splunk, Grafana, Microsoft Power BI
- Kolaborasi dan umpan balik: Atlassian Confluence, Azure DevOps Wikis, GitHub Discussions, GitHub Wikis, Microsoft Teams, Slack, Stack Overflow
Diagram berikut menunjukkan contoh kerangka kerja DevOps dengan pilihan toolchain Azure DevOps:
Diagram berikut menunjukkan contoh kerangka kerja DevOps dengan azure DevOps dan pilihan toolchain GitHub: