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.
Berpindah dari Azure DevOps Server ke Azure DevOps Services adalah langkah penting bagi organisasi yang ingin memanfaatkan kolaborasi, skalabilitas, dan fitur yang ditingkatkan berbasis cloud. Dalam gambaran umum ini, kami menjelajahi opsi untuk mentransfer data berharga Anda dari Azure DevOps Server lokal ke Azure DevOps Services berbasis cloud.
Terlepas dari opsi migrasi yang Anda pilih, kami sarankan Anda menentukan aset anda yang paling penting, seperti kode sumber dan item kerja. Anda harus memikirkan ukuran data, kompleksitas organisasi, dan memastikan bahwa Anda memiliki cukup waktu untuk uji coba sebelum migrasi aktual untuk transisi yang lancar dan sukses.
Pendekatan untuk migrasi
Sangat penting untuk menilai pro dan kontra dari setiap pendekatan migrasi, berdasarkan motivasi spesifik Anda untuk mengadopsi Layanan Azure DevOps. Strategi yang tepat tergantung pada konteks dan persyaratan unik Anda.
| Opsi | Skenario yang direkomendasikan | Batasan |
|---|---|---|
| 1: Migrasi manual | Gunakan untuk proyek yang lebih kecil atau subset data tertentu. | Tidak semua data dapat dimigrasikan dengan keakuratan penuh dan tunduk pada pembatasan. Migrasi ini tidak mendukung migrasi templat XML, jadi Anda perlu membuat ulang templat proses sebagai templat yang diwariskan. |
| 2: Alat Migrasi Data Azure DevOps | Gunakan untuk migrasi skala menengah hingga besar dengan berbagai jenis data dan struktur kompleks. | Anda hanya dapat "mengangkat dan menggeser" satu koleksi Azure DevOps Server ke satu organisasi Azure DevOps Services baru, tanpa modifikasi. Untuk informasi selengkapnya, lihat bagian Batasan. |
| 3: Migrasi berbasis API | Menawarkan fleksibilitas dan kustomisasi untuk organisasi dengan persyaratan migrasi atau kebutuhan otomatisasi yang unik. | Fidelitas rendah, kehilangan data, dan perubahan ID dapat terjadi. Untuk informasi selengkapnya, lihat bagian Batasan. |
Opsi 1: Migrasi manual
Misalnya, ketika tim Azure DevOps di Microsoft memilih untuk berpindah dari Azure DevOps Server ke Azure DevOps Services, kami juga memutuskan untuk berpindah dari Team Foundation Version Control (TFVC) ke Git. Migrasi memerlukan banyak perencanaan, tetapi ketika kami bermigrasi, kami membuat repositori Git baru menggunakan versi "tip" dari sumber TFVC kami dan meninggalkan riwayat kami di Azure DevOps Server. Kami juga memindahkan item kerja aktif kami, dan meninggalkan semua bug lama kami, menyelesaikan cerita dan tugas pengguna, dan sebagainya.
Proses migrasi manual
- Identifikasi aset terpenting yang perlu Anda migrasikan - biasanya kode sumber, item kerja, atau keduanya. Aset lain di Azure DevOps Server - membangun alur, menguji rencana, dan sebagainya - lebih sulit untuk bermigrasi secara manual.
- Identifikasi waktu yang sesuai untuk melakukan transisi.
- Siapkan organisasi target Anda. Buat organisasi dan proyek tim yang Anda butuhkan, provisikan pengguna, dan sebagainya.
- Migrasikan data Anda.
- Pertimbangkan untuk menjadikan penyebaran sumber Azure DevOps Server bersifat baca-saja. Anda dapat melakukannya dengan cara berikut:
- Menyesuaikan izin tingkat proyek: Atur izin untuk semua pengguna atau grup menjadi baca-saja di tingkat proyek, yang dapat Anda lakukan dengan memodifikasi peran keamanan di pengaturan Proyek.
- Ubah pengaturan repositori: Untuk setiap repositori, Anda dapat mengubah pengaturan untuk membuatnya baca-saja, yang melibatkan penyesuaian izin untuk setiap pengguna atau grup untuk hanya mengizinkan tindakan baca.
- Gunakan grup keamanan bawaan: Gunakan grup keamanan bawaan untuk mengelola izin secara lebih efisien. Anda dapat menetapkan pengguna ke grup seperti "Pembaca" untuk menyediakan akses baca-saja.
- Perubahan izin pembuatan skrip: Jika Anda memiliki banyak proyek atau repositori, Anda mungkin perlu membuat skripnya. Anda dapat menggunakan ekstensi Azure CLI DevOps untuk mencantumkan semua izin dan memperbaruinya sesuai kebutuhan.
- Nonaktifkan fitur repositori: Menonaktifkan akses ke repositori, termasuk permintaan build dan pull, tetapi membuat repositori dapat ditemukan dengan peringatan. Buka Pengaturan Proyek>Repositori> Anda, dan di samping Nonaktifkan Repositori, pindahkan tombol ke Nyalakan.
Opsi 2: Alat Migrasi Data Azure DevOps
Alat Migrasi Data Azure DevOps adalah sekumpulan utilitas yang disediakan oleh Microsoft untuk memfasilitasi migrasi data dari Azure DevOps Server ke Azure DevOps Services. Alat-alat ini menawarkan pendekatan yang disederhanakan untuk memigrasikan berbagai artefak, termasuk kode sumber, item kerja, kasus pengujian, dan data terkait proyek lainnya.
Sebelum Anda memulai proses migrasi, alat dapat melakukan analisis pramigrasi untuk menilai kesiapan lingkungan sumber dan mengidentifikasi potensi masalah atau dependensi yang mungkin memengaruhi migrasi. Menilai kesiapan, sehingga Anda dapat merencanakan dan mengurangi potensi tantangan sebelumnya.
Keterbatasan Alat Migrasi
Alat ini memungkinkan Anda untuk "mengangkat dan menggeser" satu Koleksi Server Azure DevOps ke satu Organisasi Layanan Azure DevOps baru, tanpa modifikasi karena alasan berikut:
Mengapa tidak ada modifikasi yang diizinkan
- Integritas dan konsistensi data: Modifikasi selama migrasi dapat menyebabkan kerusakan atau inkonsistensi data.
- Pelestarian data sumber: Alat ini dengan setia mereplikasi data sumber tanpa perubahan yang dapat menyebabkan perbedaan.
- Perilaku yang dapat diprediksi: Membatasi modifikasi memastikan hasil migrasi yang konsisten dan andal.
- Fokus migrasi, bukan transformasi: Alat memindahkan data; transformasi terjadi secara terpisah setelah migrasi.
Skenario migrasi yang tidak didukung
- Memindahkan proyek dari satu organisasi Azure DevOps Services ke organisasi Azure DevOps Services lainnya
- Migrasi dari satu instans Azure DevOps Server ke instans Azure DevOps Server lainnya
Batasan wilayah
Alat Migrasi Data hanya didukung di wilayah Azure tertentu. Organisasi harus dibuat di wilayah yang didukung, dan infrastruktur sementara apa pun (seperti komputer virtual SQL untuk migrasi besar) juga harus disebarkan di wilayah ini. Lihat Wilayah yang didukung untuk migrasi untuk daftar lengkap.
Proses Alat Migrasi
- Selesaikan prasyarat seperti memperbarui Azure DevOps Server ke salah satu dari dua rilis terbaru.
- Validasi setiap koleksi yang ingin Anda pindahkan ke Azure DevOps Services.
- Hasilkan file migrasi.
- Siapkan semuanya untuk eksekusi migrasi Anda.
- Lakukan uji coba.
- Melakukan migrasi.
- Konfirmasikan bahwa pengguna dan data Anda dimigrasikan, dan koleksi berfungsi seperti yang diharapkan.
Petunjuk / Saran
Anda dapat menghapus menyeluruh data yang tidak diperlukan sebelum atau sesudah migrasi untuk mengurangi waktu migrasi dan persyaratan penyimpanan.
Opsi 3: Migrasi berbasis API
Jika Anda tidak dapat menggunakan Alat Migrasi Data tetapi masih menginginkan migrasi keakuratan yang lebih tinggi daripada Opsi 2, pertimbangkan untuk menggunakan berbagai alat yang menggunakan API publik untuk memindahkan data. Alat-alat ini termasuk ekstensi yang tersedia di Visual Studio Marketplace.
Batasan migrasi berbasis API
Batasan berikut terjadi dengan migrasi berbasis API:
- Migrasi keakuratan rendah:
- Batasan: Alat berbasis API memberikan keakuratan yang lebih tinggi daripada penyalinan manual tetapi masih merupakan keakuratan yang relatif rendah.
- Implikasi: Meskipun alat-alat ini menawarkan beberapa keakuratan, alat ini tidak mempertahankan semua aspek data Anda.
- Contoh: Tidak satu pun dari mereka mempertahankan tanggal asli set perubahan TFVC (Kontrol Versi Team Foundation).
- Banyak yang juga tidak menyimpan tanggal revisi item kerja yang diubah.
- Kehilangan data dan perubahan ID:
- Batasan: Selama migrasi, alat-alat ini memproses ulang perubahan item kerja, perubahan himpunan TFVC, umpan paket, dan artefak pipeline.
- Implikasi: Proses ini dapat menyebabkan kehilangan data, menghasilkan ID baru, dan mengubah tanggal pembuatan, modifikasi, dan penutupan.
- Contoh: Konteks historis yang terkait dengan tanggal tertentu mungkin hilang, memengaruhi pelaporan dan keterlacakan.
Proses migrasi berbasis API
Secara umum, kami hanya merekomendasikan pendekatan ini jika keakuratan ekstra di luar salinan manual sangat penting. Jika Anda memutuskan untuk mengambil pendekatan ini, Anda mungkin mempertimbangkan untuk mempekerjakan konsultan yang memiliki pengalaman dengan satu atau beberapa alat dan melakukan migrasi pengujian sebelum migrasi akhir Anda.
Banyak organisasi membutuhkan migrasi keakuratan yang sangat tinggi hanya untuk sebagian pekerjaan mereka. Pekerjaan baru berpotensi dimulai langsung di Azure DevOps Services. Pekerjaan lain, dengan persyaratan keakuratan yang kurang ketat, dapat dimigrasikan menggunakan salah satu pendekatan lainnya.
Model proses yang didukung
Layanan Azure DevOps mendukung model proses berikut:
Secara default, XML yang Dihosting dinonaktifkan di Azure DevOps Services. Kami mengaktifkan model proses XML yang Dihosting selama migrasi hanya jika Anda menyesuaikan proyek di Azure DevOps Server. Setelah proyek Anda berada di Hosted XML, Anda dapat memutakhirkannya menjadi turunan setelah migrasi.
Prinsip utama
Saat bermigrasi ke Layanan Azure DevOps, ingatlah prinsip dan batasan utama berikut:
- Layanan Azure DevOps hanya dalam bahasa Inggris: Azure DevOps Server mendukung beberapa bahasa, namun saat ini, Azure DevOps Services hanya mendukung bahasa Inggris. Jika koleksi Anda menggunakan bahasa non-bahasa Inggris atau menggunakan bahasa non-bahasa Inggris di masa lalu dan Anda mengonversi bahasa ke bahasa Inggris selama peningkatan, Anda tidak dapat menggunakan Alat Migrasi Data.
- Pewarisan: Proyek, yang dibuat dari templat proses Agile, Scrum, atau CMMI dan tidak pernah disesuaikan, ada pada model proses Warisan setelah migrasi.
- XML yang dihosting: Proyek apa pun dengan kustomisasi menggunakan model proses XML yang dihosting.
- Proses per proyek yang disesuaikan: Meskipun Azure DevOps Services memungkinkan proyek berbagi proses, Alat Migrasi Data membuat proses XML yang Dihosting untuk setiap proyek tim yang disesuaikan. Misalnya, jika Anda memiliki 30 proyek yang disesuaikan, Anda memiliki 30 proses XML yang dihosting untuk dikelola. Jika Anda ingin mengkustomisasi lebih lanjut proses XML yang Dihosting untuk semua proyek, Anda harus memperbarui setiap proses XML yang Dihosting secara terpisah.
- Validasi proses: Validasi proses Alat Migrasi Data mendeteksi model proses target untuk setiap proyek. Sebelum dapat bermigrasi, Anda perlu memperbaiki kesalahan validasi proses apa pun untuk proyek XML yang Dihosting. Anda mungkin ingin mempertimbangkan untuk memperbarui proses proyek Anda agar sesuai dengan salah satu proses kami (Agile, Scrum, atau CMMI) untuk memanfaatkan model proses Warisan. Pelajari selengkapnya tentang jenis validasi proses dalam dokumentasi kami.