Bagikan melalui


Berpindah dari satu lingkungan ke lingkungan lain untuk Azure DevOps lokal

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

Skenario pemindahan berbasis lingkungan yang paling umum adalah mengubah domain penyebaran Azure DevOps Server, baik itu perubahan nama domain atau dari grup kerja ke domain.

Penting

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

Selain itu, mengubah identitas dalam Azure DevOps Server sebagai bagian dari langkah lingkungan adalah aspek yang paling sering menyebabkan konflik atau masalah. Perintah Identitas adalah alat yang kuat, tetapi memiliki batasan tertentu. Pelajari 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 dipetakan akun lain ke dalamnya. Misalnya, jika Anda memindahkan DomainA/UserA ke DomainB/UserB, perintah Identitas hanya akan berfungsi untuk melakukan migrasi 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, buka di sini untuk deskripsi terperinci tentang bagaimana perubahan identitas dalam Azure DevOps Server bekerja, termasuk batasan alat.

Kami akan menelusuri langkah-langkah untuk mengubah lingkungan penyebaran Azure DevOps Server Anda di bagian berikut:

  1. Periksa izin dan akun
  2. Menghentikan layanan Azure DevOps Server
  3. Backup Data
  4. Bergabung dengan Azure DevOps Server ke domain barunya
  5. Memindahkan akun pengguna dan layanan Azure DevOps Server
  6. Melakukan Konfigurasi Reporting dan Analysis Services
  7. Hidupkan ulang layanan Azure DevOps Server

Memeriksa izin dan akun

Agar berhasil mengubah lingkungan untuk Azure DevOps Server, Anda harus menjadi administrator baik di komputer lokal maupun untuk Azure DevOps Server dan semua perangkat lunak tempat penyebaran Anda bergantung: SQL Server, pelaporan, dan perangkat lunak lain yang bekerja sama dengan penyebaran Anda, seperti Project Server. Namun, semua anggota grup Administrator lokal secara otomatis disertakan dalam Azure DevOps Server, yang dapat menyebabkan masalah saat mencoba melakukan migrasi akun. Oleh karena itu, Anda harus menggunakan akun yang tidak ingin Anda migrasikan sebagai bagian dari pemindahan lingkungan. Pertimbangkan untuk menambahkan akun administratif khusus untuk pemindahan, dan gunakan akun tersebut untuk melakukan migrasi.

Untuk 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: sysadmin

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

Sekarang setelah Anda yakin menggunakan akun yang memiliki semua izin yang diperlukan, saatnya untuk mulai memeriksa akun untuk melihat apakah mungkin ada konflik dengan nama atau grup di lingkungan tujuan. Kita sudah tahu bahwa akun yang merupakan anggota grup Administrator lokal tidak dapat dimigrasikan, jadi mari kita hapus akun tersebut terlebih dahulu.

Menghapus akun yang akan dimigrasikan dari grup Administrator lokal

  • Buka grup Administrator lokal dan hapus akun apa pun yang ingin Anda migrasikan ke lingkungan baru. Ulangi langkah ini untuk grup lain yang mungkin terpengaruh.

Sekarang periksa daftar identitas di lingkungan Azure DevOps Server saat ini dan cari potensi masalah dengan grup atau akun pengguna individual yang mungkin ada di lingkungan baru.

Tip

Pertimbangkan untuk membuat tabel atau peta migrasi identitas yang akan dipindahkan sebagai bagian dari pemindahan lingkungan, termasuk detail akun mana yang mungkin tidak dapat dimigrasikan secara otomatis.

Memeriksa 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
    
  2. Daftar identitas akan ditampilkan. Periksa pengguna dan grup ini untuk memastikan bahwa tidak ada potensi duplikat atau masalah dengan identitas di lingkungan tempat Anda akan memindahkan Azure DevOps Server, dan ambil langkah-langkah untuk mengurangi potensi konflik.

Menghentikan layanan

Menghentikan layanan membantu memastikan bahwa pengguna tidak dapat membuat perubahan pada item kerja atau memeriksa kode sumber ke penyebaran asli selama atau setelah proses pemindahan.

  1. Pada komputer tingkat aplikasi, buka jendela Prompt Perintah, dan ubah direktori ke Drive:\%programfiles%\TFS 12.0\Tools.

  2. Ketik perintah sebagai berikutTFSServiceControl:

    TFSServiceControl quiesce

Mencadangkan database dan kunci enkripsi SQL Server Reporting Services

  1. Buka konsol administrasi untuk Azure DevOps Server kemudian pada halaman Backup Terjadwal, lakukan backup menyeluruh. Cadangan akan mencadangkan semua yang Anda konfigurasikan untuk cadangan dalam rencana pencadangan, namun hal ini akan dilakukan, di luar waktu yang dijadwalkan dalam rencana. Jika penyebaran Anda menggunakan pelaporan, Anda bisa mencadangkan kunci enkripsi sebagai bagian dari kumpulan cadangan ini.

    Anda dapat menutup jendela saat pekerjaan selesai

    (Jika Anda tidak memiliki cadangan yang dikonfigurasi, Anda harus membuat sebuah rencana sebelum Anda dapat mengambil cadangan penuh.)

  2. Setelah pencadangan selesai, verifikasi bahwa cadangan tersedia di perangkat penyimpanan atau berbagi jaringan, dan Anda bisa mengakses cadangan ini dari perangkat keras baru.

Menggabungkan server tingkat aplikasi ke domain barunya

  1. Pada setiap server, buka properti untuk komputer.

  2. Ubah pengaturan untuk komputer ke domain atau grup kerja tempat Anda ingin bergabung dengan server.

    Jika Anda diminta untuk memberikan nama pengguna dan kata sandi akun yang memiliki izin untuk bergabung dengan komputer ini ke domain, berikan kredensial yang sesuai.

  3. Mulai ulang komputer agar perubahan domain berlaku.

    Catatan

    Setelah Anda memulai ulang komputer, peringatan mungkin muncul bahwa layanan atau driver tidak dapat dimulai. Lanjutkan dengan prosedur selanjutnya.

Memindahkan akun pengguna dan akun layanan

Seperti disebutkan di awal topik ini, memindahkan akun adalah waktu ketika Anda kemungkinan besar mengalami kesulitan, terutama jika Anda belum merencanakan migrasi pengguna dengan hati-hati. Perintah Identitas TFSConfig tidak dapat melakukan migrasi akun apa pun ke akun yang sudah ada di Azure DevOps Server.

Jika nama akun sama di kedua domain, dan satu-satunya perbedaan adalah nama domain, maka Anda dapat menggunakan mode batch identitas TFSConfig untuk mengubah semua identitas sekaligus. Jika tidak, Anda harus mengubah identitas satu per satu dan menentukan nama akun target yang berbeda, seperti yang dijelaskan di bawah ini.

  1. Di server tingkat aplikasi untuk Azure DevOps, buka jendela Perintah dengan izin administratif, navigasikan ke %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools, dan jalankan perintah berikut untuk mengubah ID layanan (SID) untuk 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 langsung memigrasikan akun layanan, karena akun sistem dengan nama yang sama ada di lingkungan baru. Anda harus melakukan perubahan proses dua tahap. Lihat contoh dalam Perintah Identitas.

  2. Untuk melakukan migrasi semua akun yang memiliki nama yang sama di lingkungan baru, ketik perintah berikut:

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

    Ini akan memproses akun berdasarkan batch.

  3. Jika domain baru Anda berisi satu atau beberapa identitas di mana nama berubah antar lingkungan, Anda harus memperbarui SID secara manual untuk setiap identitas tersebut. Misalnya, jika akun pengguna Christie Church adalah Fabrikam\CChurch di lingkungan sebelumnya, tetapi di lingkungan baru adalah NewFabrikam\ChristieC, Anda harus memperbarui SID-nya secara manual. Untuk setiap akun yang memiliki persyaratan seperti ini, ketik perintah berikut:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName /account:OldAccountName /toaccount:NewAccountName
    
  4. Sekarang jalankan perintah berikut untuk memperbarui akun layanan:

    TFSConfig Accounts /change /AccountType:ApplicationTier /account:AccountName /password:Password
    
  5. Jika penyebaran Anda menggunakan pelaporan, jalankan perintah berikut untuk memperbarui akun sumber data yang digunakan untuk pelaporan:

    TFSConfig Accounts /change /AccountType:ReportingDataSource /account:AccountName /password:Password
    
  6. Jika penyebaran Anda menggunakan server proksi Azure DevOps, jalankan perintah berikut untuk memperbarui akun layanan yang digunakan untuk proksi:

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

    Catatan

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

  7. Jika penyebaran Anda terintegrasi dengan Project Server, Anda mungkin perlu melakukan langkah-langkah tambahan untuk melakukan konfigurasi akun layanan dengan izin yang diperlukan untuk operasi. Untuk informasi selengkapnya, lihat Tetapkan izin untuk mendukung integrasi Server TFS-Project dan integrasi ConfigureTFS-Project Server.

Mengonfigurasi Pelaporan dan Analysis Services

Anda dapat melewati prosedur ini jika Anda tidak menggunakan pelaporan sebagai bagian dari penyebaran Anda.

Jika Anda mengganti nama server laporan sebagai bagian dari jenis pemindahan ini, Anda harus mengalihkan Azure DevOps Server ke server laporan di lokasi barunya. Anda juga harus memulai ulang gudang dan membangun kembali database secara manual untuk Analysis Services.

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

    Laporan masih menunjuk ke server lama

  2. Ubah nilai pada ketiga tab sehingga menyertakan nama server baru. Pastikan Anda memberikan informasi yang benar untuk akun sumber data di lingkungan yang 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.

Mengonfigurasi cadangan

Jika nama berbagi jaringan atau perangkat penyimpanan berubah bersama perubahan nama domain, Anda harus memperbarui rencana backup terjadwal untuk menunjuk ke sumber daya yang diganti namanya.

  • Di konsol administrasi, buka simpul Backup Terjadwal dan konfigurasi ulang backup terjadwal untuk mencadangkan database Azure DevOps Server di server baru. Untuk informasi selengkapnya, lihat Membuat jadwal serta rencana pencadangan.

Memulai ulang layanan

Setelah Anda memperbarui Azure DevOps Server dengan semua informasi untuk lingkungan baru, mulai ulang layanan.

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

  2. Ketik perintah sebagai berikutTFSServiceControl:

    TFSServiceControl unquiesce

T & J

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

J: Ya. Itu disebut pemindahan berbasis perangkat keras, dan langkah-langkahnya disediakan dalam Memindahkan atau mengkloning 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, kemudian ubah lingkungan.