Bagikan melalui


Berpindah dari satu lingkungan ke lingkungan lain untuk Azure DevOps lokal

Azure DevOps Server |Azure DevOps Server |Azure DevOps Server 2022 | Azure DevOps Server 2020

Artikel ini menjelaskan cara memindahkan penyebaran Azure DevOps Server dari satu lingkungan ke lingkungan lain, seperti mengubah nama domain atau berpindah dari grup kerja ke domain. Pemindahan berbasis lingkungan umum terjadi ketika organisasi merestrukturisasi infrastruktur TI mereka, memperbarui nama domain, atau mengonsolidasikan sumber daya.

Anda dapat menemukan panduan langkah demi langkah untuk menyiapkan penyebaran Anda, memperbarui izin dan akun, menghentikan layanan, mencadangkan data, bergabung dengan domain baru, memigrasikan akun pengguna dan layanan, mengonfigurasi layanan pelaporan dan analisis, memperbarui paket cadangan, dan memulai ulang layanan.

Mengubah lingkungan untuk Azure DevOps Server memerlukan perencanaan yang cermat, terutama sekeliling manajemen akun dan identitas, untuk menghindari konflik dan memastikan transisi yang lancar. Artikel ini menyediakan praktik terbaik dan instruksi terperinci untuk membantu Anda berhasil menyelesaikan pemindahan.

Penting

Dalam beberapa situasi, Anda mungkin ingin mengubah domain penyebaran Azure DevOps Server dan perangkat kerasnya. Mengubah perangkat keras adalah pemindahan berbasis pemulihan, dan Anda tidak boleh menggabungkan dua jenis pemindahan. Pertama-tama selesaikan pemindahan perangkat keras, lalu ubah lingkungan.

Mengubah identitas di Azure DevOps Server sebagai bagian dari pemindahan lingkungan adalah aspek yang paling sering menyebabkan konflik atau masalah. Perintah Identitas adalah alat yang kuat, tetapi memiliki batasan tertentu. Baca tentang hal itu sebagai bagian dari perencanaan pemindahan Anda. Untuk membantu memastikan keberhasilan pemindahan, pastikan Anda memahami persyaratan berikut:

  • Setelah akun pengguna ada di Azure DevOps Server, akun tersebut tidak dapat dihapus atau akun lain dipetakan ke akun tersebut. Misalnya, jika Anda memindahkan DomainA/UserA ke DomainB/UserB, perintah Identitas hanya akan berfungsi untuk memigrasikan pengguna jika DomainB/UserB belum ada di Azure DevOps Server.
  • Karena anggota grup Administrator lokal secara otomatis ditambahkan ke Azure DevOps Server, pastikan untuk menghapus akun apa pun yang ingin Anda migrasikan dari grup tersebut sebelum Anda mengubah domain atau lingkungan.

Untuk informasi latar belakang lebih lanjut, lihat posting blog ini.

1. Periksa izin dan akun

Untuk mengubah lingkungan untuk Azure DevOps Server, masuk sebagai administrator di komputer lokal, Azure DevOps Server, SQL Server, pelaporan, dan perangkat lunak dependen lainnya (seperti Project Server). Hindari menggunakan akun yang Anda rencanakan untuk dimigrasikan—anggota grup Administrator lokal secara otomatis ditambahkan ke Azure DevOps Server, yang dapat menyebabkan masalah migrasi. Gunakan akun administratif khusus untuk pemindahan guna mencegah konflik.

Memverifikasi izin tingkat administrator

  • Pastikan akun yang Anda gunakan adalah anggota grup berikut:
    • Server: Administrator (grup Administrator lokal atau yang setara)
    • Azure DevOps Server: Administrator Team Foundation dan Pengguna Konsol Admin
    • SQL Server: administrator sistem

Jika Anda bukan anggota dari satu atau beberapa grup ini, dapatkan izin sekarang.

Setelah mengonfirmasi akun Anda memiliki semua izin yang diperlukan, periksa potensi konflik dengan nama akun atau grup di lingkungan target. Karena akun di grup Administrator lokal tidak dapat dimigrasikan, hapus akun apa pun yang Anda rencanakan untuk dimigrasikan dari grup tersebut sebelum melanjutkan.

Menghapus akun yang akan dimigrasikan dari grup Administrator lokal

Buka grup Administrator lokal dan hapus akun apa pun yang Anda rencanakan untuk dimigrasikan ke lingkungan baru. Ulangi proses ini untuk grup lain yang dapat terpengaruh.

Selanjutnya, tinjau daftar identitas di lingkungan Azure DevOps Server Anda saat ini. Identifikasi potensi konflik dengan grup atau akun pengguna yang mungkin sudah ada di lingkungan baru.

Petunjuk / Saran

Buat tabel atau peta migrasi identitas yang akan dipindahkan. Sertakan detail tentang akun yang tidak dapat dimigrasikan secara otomatis untuk membantu melacak dan mengatasi masalah selama pemindahan.

Periksa identitas

  1. Di server tingkat aplikasi untuk Azure DevOps, buka jendela Prompt Perintah dengan izin administratif, navigasikan ke %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools, dan jalankan perintah berikut untuk melihat identitas yang saat ini ada di sistem:

    TFSConfig Identities
    

Daftar identitas ditampilkan.

  1. Tinjau pengguna dan grup untuk mengidentifikasi identitas duplikat atau bertentangan di lingkungan target sebelum memindahkan Azure DevOps Server. Atasi potensi konflik untuk memastikan migrasi yang lancar.

2. Hentikan layanan

Menghentikan layanan mencegah pengguna membuat perubahan pada item kerja atau memeriksa kode sumber ke penyebaran asli selama atau setelah proses pemindahan.

  1. Buka jendela Prompt Perintah pada komputer tingkat aplikasi dan ubah direktori menjadi Drive:\\%programfiles%\\TFS 12.0\\Tools.

  2. Masukkan perintah TFSServiceControl berikut:

    TFSServiceControl quiesce
    

3. Lakukan pencadangan terhadap database dan kunci enkripsi untuk SQL Server Reporting Services

  1. Buka konsol administrasi untuk Azure DevOps Server dan buka halaman Pencadangan Terjadwal . Lakukan cadangan lengkap untuk mencadangkan segera segala sesuatu yang telah ditentukan dalam rencana pencadangan Anda. Jika penyebaran Anda menggunakan pelaporan, sertakan kunci enkripsi dalam kumpulan cadangan ini.

    Anda dapat menutup jendela saat pekerjaan selesai

    Nota

    Jika Anda tidak pernah mengonfigurasi cadangan, buat rencana pencadangan sebelum mengambil cadangan penuh.

  2. Setelah pencadangan selesai, konfirmasikan bahwa cadangan tersedia di perangkat penyimpanan atau berbagi jaringan Anda, dan verifikasi bahwa Anda dapat mengaksesnya dari perangkat keras baru.

4. Menyesuaikan server tingkat aplikasi ke domain barunya

  1. Pada setiap server, buka properti komputer.

  2. Ubah pengaturan komputer untuk bergabung dengan domain atau grup kerja yang diinginkan.

    Jika diminta, masukkan kredensial akun yang memiliki izin untuk menghubungkan komputer ke domain.

  3. Mulai ulang komputer untuk menerapkan perubahan domain.

    Nota

    Setelah memulai ulang, Anda mungkin melihat peringatan bahwa beberapa layanan atau driver tidak dapat dimulai. Anda dapat melanjutkan prosedur berikutnya dengan aman.

5. Pindahkan akun pengguna dan akun layanan

Migrasi akun sering menjadi bagian yang paling menantang dari perubahan lingkungan, terutama jika Anda tidak merencanakan migrasi pengguna dengan hati-hati. Perintah Identitas TFSConfig tidak dapat memigrasikan akun ke akun target yang sudah ada di Azure DevOps Server.

Jika nama akun identik di kedua domain (hanya dengan nama domain yang berbeda), Anda dapat menggunakan mode batch Identitas TFSConfig untuk memperbarui semua identitas sekaligus. Jika nama akun berbeda antara lingkungan, Anda harus memperbarui setiap identitas satu per satu dan menentukan nama akun target baru, seperti yang dijelaskan di bawah ini.

  1. Di server tingkat aplikasi Azure DevOps, buka jendela Prompt Perintah dengan hak administratif. Navigasi ke %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools, dan jalankan perintah berikut untuk memperbarui SID akun layanan ke domain baru:

    TFSConfig identities /change /fromdomain:OldComputerorDomainName /todomain:NewDomainName /account:OldTFSServiceAccount /toaccount:NewTFSServiceAccount
    

    Peringatan

    Jika akun layanan Anda adalah akun sistem (seperti Layanan Jaringan), Anda tidak dapat memigrasikannya secara langsung karena akun sistem dengan nama yang sama ada di lingkungan baru. Anda harus mengikuti proses dua tahap. Lihat contoh dalam Perintah Identitas.

  2. Untuk memigrasikan semua akun dengan nama yang sama di lingkungan baru, jalankan:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName
    

    Perintah ini memproses akun secara batch.

  3. Jika domain baru Anda berisi identitas dengan nama yang berbeda antar lingkungan, perbarui SID secara manual untuk masing-masing. Misalnya, jika akun Christie Church adalah Fabrikam\CChurch di lingkungan lama dan menjadi NewFabrikam\ChristieC di lingkungan yang baru, perbarui SID mereka sebagai berikut:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName /account:OldAccountName /toaccount:NewAccountName
    
  4. Perbarui akun layanan dengan menjalankan:

    TFSConfig Accounts /change /AccountType:ApplicationTier /account:AccountName /password:Password
    
  5. Jika penyebaran Anda menggunakan pelaporan, perbarui akun sumber data:

    TFSConfig Accounts /change /AccountType:ReportingDataSource /account:AccountName /password:Password
    
  6. Jika penyebaran Anda menggunakan Server Proksi Azure DevOps, perbarui akun layanan proksi:

    TFSConfig Accounts /change /AccountType:Proxy /account:AccountName /password:Password
    

    Nota

    Jika Anda pindah ke domain yang tidak tepercaya, Anda mungkin juga perlu menambahkan pengguna dan grup secara manual ke tim, proyek, koleksi, dan Azure DevOps Server itu sendiri. Untuk informasi selengkapnya, lihat Menambahkan pengguna ke proyek, Mengatur izin administrator untuk koleksi proyek, dan Mengatur izin administrator untuk Azure DevOps Server.

  7. Jika penyebaran Anda terintegrasi dengan Project Server, Anda mungkin perlu melakukan langkah lain untuk mengonfigurasi akun layanan dengan izin yang diperlukan. Untuk informasi selengkapnya, lihat Menetapkan izin untuk mendukung integrasi TFS-Project Server dan Mengonfigurasi integrasi server TFS-Project.

6. Mengonfigurasi Reporting and Analysis Services

Lewati prosedur ini jika implementasi Anda tidak menggunakan pelaporan.

Jika Anda mengganti nama server laporan selama pemindahan, perbarui Server Azure DevOps untuk menunjuk ke lokasi server laporan baru. Anda juga perlu menghidupkan ulang gudang dan membangun kembali database Analysis Services secara manual.

  1. Buka konsol administrasi untuk Azure DevOps, buka simpul Pelaporan , dan edit pengaturan.

    Laporan masih menunjuk ke server lama

  2. Perbarui nilai pada ketiga tab untuk mencerminkan nama server baru. Pastikan Anda memasukkan informasi akun sumber data yang benar untuk lingkungan baru.

    Pastikan informasi sudah benar pada semua 3 tab

  3. Pilih Mulai Pekerjaan untuk memulai ulang pelaporan.

  4. Pilih Mulai Bangun Ulang untuk membangun kembali gudang.

7. Mengonfigurasi pencadangan

Jika Anda mengubah nama berbagi jaringan atau perangkat penyimpanan selama perubahan nama domain, perbarui rencana pencadangan terjadwal Anda untuk mereferensikan sumber daya baru.

Di konsol administrasi, buka simpul Pencadangan Terjadwal dan konfigurasi ulang cadangan terjadwal untuk mencadangkan database Azure DevOps Server di server baru. Untuk detailnya, lihat Membuat jadwal dan rencana pencadangan.

8. Mulai ulang layanan

Sekarang setelah Anda memperbarui Azure DevOps Server dengan semua informasi untuk lingkungan baru, untuk memulai ulang layanan, lakukan langkah-langkah berikut:

  1. Pada komputer tingkat aplikasi Azure DevOps Server, buka jendela Prompt Perintah dengan izin administratif dan ubah direktori ke Drive:\%programfiles%\TFS 12.0\Tools.

  2. Masukkan perintah TFSServiceControl berikut:

    TFSServiceControl unquiesce
    

Tanya Jawab Umum (tanya jawab umum)

T: Saya ingin mengubah server fisik atau server untuk penyebaran saya, bukan domain. Dapatkah saya melakukannya?

A: Ya, tindakan ini disebut pemindahan berbasis perangkat keras, dan langkah-langkahnya disediakan di Pindahkan atau kloning dari satu perangkat keras ke perangkat keras lainnya. Anda tidak boleh mencoba menggabungkan pemindahan berbasis lingkungan dengan pemindahan berbasis perangkat keras. Pertama-tama selesaikan pemindahan perangkat keras, lalu ubah lingkungan.