Bagikan melalui


Menilai beban kerja Anda untuk migrasi cloud

Fase penilaian memastikan Anda memiliki visibilitas penuh ke setiap komponen, dependensi, dan persyaratan sebelum pindah ke Microsoft Azure. Dengan mengumpulkan informasi terperinci tentang arsitektur, performa, keamanan, kode, dan database, Anda dapat mengantisipasi masalah, meminimalkan risiko, dan membuat keputusan migrasi berdasarkan informasi.

Tipe beban kerja Alat penemuan Alat penilaian Examples
On-premises Azure Migrate Azure Migrate
Dr Migrasi
• Server fisik
• VMware VM
• VM Hyper-V
• Database SQL
• Aplikasi web
Infrastruktur AWS (IaaS) Azure Migrate Azure Migrate
Panduan AWS ke Azure
• Instans AWS EC2
• Database AWS RDS
• Volume AWS EBS
Infrastruktur Google Cloud (IaaS) Azure Migrate Azure Migrate
Panduan migrasi Google Cloud ke Azure
• VM Google Cloud Compute Engine
• Google Cloud SQL
• Disk Persisten Google Cloud
Layanan platform AWS (PaaS) AWS Resource Explorer Panduan migrasi AWS ke Azure
Perbandingan layanan AWS dan Azure
Cloudockit
• AWS Lambda
• AWS Elastic Beanstalk
• AWS DynamoDB
Layanan platform Google Cloud (PaaS) Google Cloud Asset Inventory (Inventaris Aset Google Cloud) Panduan Google Cloud ke Azure
Perbandingan layanan Google Cloud dan Azure
Cloudockit
• Google Cloud BigQuery
• Google Cloud App Engine
• Fungsi Google Cloud Run
Kode aplikasi Sorotan CAST
Dr Migrasi
Dr Migrasi
CloudPilot
SOROTAN CAST
CloudAtlas
GitHub Copilot
• GitHub
• Azure Repos
• GitLab

Menilai arsitektur beban kerja

Penilaian arsitektur lengkap memberi Anda visibilitas ke semua komponen beban kerja dan bagaimana mereka berinteraksi. Visibilitas ini mendukung perencanaan migrasi yang akurat dengan mengidentifikasi komponen apa yang perlu bergerak bersama dan komponen apa yang mungkin memerlukan modifikasi.

  1. Gunakan alat penilaian. Alat seperti Azure Migrate atau produk lain mengotomatiskan penemuan komponen dan konfigurasi beban kerja. Alat-alat ini mengurangi upaya manual dan menyediakan pengumpulan data yang konsisten di seluruh lingkungan Anda, meskipun mungkin melewatkan dependensi yang tidak terdokumentasi. Anda dapat menggunakan alat seperti Cloudockit untuk menghasilkan diagram Anda. Anda juga dapat membuat diagram Anda sendiri dengan menggunakan ikon Azure atau mengubah diagram yang dapat diunduh di Azure Architecture Center.

  2. Validasi arsitektur dengan keahlian subjek. Pemilik beban kerja dapat mengonfirmasi temuan alat dan mengidentifikasi informasi yang hilang atau kedaluarsa. Lakukan wawancara atau sesi tinjauan arsitektur untuk menutup celah dalam data penemuan otomatis.

  3. Arsitektur dokumen. Menyimpan diagram arsitektur, daftar komponen, dan data konfigurasi dalam format yang mendukung perencanaan dan validasi. Gunakan alat seperti Microsoft Visio, spreadsheet, atau wiki Azure DevOps untuk mempertahankan informasi ini.

Menilai komponen beban kerja

Untuk setiap beban kerja, kumpulkan performa dasar terperinci dan metrik penggunaan dari lingkungan saat ini. Data ini sangat penting untuk menentukan ukuran yang tepat bagi sumber daya Azure dan untuk membandingkan performa setelah migrasi.

  1. Mengumpulkan metrik beban kerja. Lacak penggunaan CPU, penggunaan memori, I/O disk (baca/tulis, IOPS), throughput jaringan, dan penggunaan puncak atau beban pengguna. Identifikasi puncak harian atau mingguan untuk memahami kebutuhan kapasitas. Mengukur waktu respons rata-rata untuk transaksi pengguna, throughput pekerjaan yang diproses per jam, dan metrik terkait SLA apa pun. Informasi ini membantu memastikan beban kerja yang dimigrasikan memenuhi persyaratan performa bisnis yang sama.

  2. Menangkap detail konfigurasi. Perhatikan konfigurasi penskalakan, ukuran komputer virtual (VM) saat ini, spesifikasi server fisik (inti CPU, RAM), jenis dan versi OS, jenis penyimpanan (SSD/HDD) dan kapasitas, dan perangkat keras khusus seperti GPU. Detail ini menginformasikan pilihan ukuran Azure VM atau layanan PaaS. Rekam juga info lisensi perangkat lunak. Info ini mungkin mengaktifkan penggunaan Azure Hybrid Benefit atau memerlukan migrasi lisensi.

  3. Dokumentasikan semua konfigurasi keamanan dan identitas. Persediaan semua konfigurasi keamanan dan identitas: mencantumkan akun layanan, kredensial yang dikodekan secara permanen, metode enkripsi yang digunakan, dan aturan firewall. Konfigurasi ini perlu direplikasi atau disesuaikan di Azure.

    Komponen Keamanan Action Purpose
    Inventaris identitas Merekam semua akun layanan, akun pengguna, dan kunci API yang digunakan aplikasi untuk autentikasi Memengaruhi urutan migrasi saat Anda memilih antara pendekatan lift-and-shift atau modernisasi.
    Dokumentasi enkripsi Mendokumentasikan metode enkripsi saat ini untuk data yang tersimpan dan data yang ditransmisikan. Petakan persyaratan ini ke layanan enkripsi Azure untuk mempertahankan standar keamanan
    Konfigurasi keamanan jaringan Mengambil aturan keamanan jaringan, konfigurasi firewall, dan daftar kontrol akses Gunakan informasi ini untuk merancang grup keamanan jaringan Azure dan kebijakan akses
  4. Identifikasi masalah kompatibilitas. Alat otomatis menyediakan analisis sistematis sistem operasi, middleware, dan kerangka kerja aplikasi terhadap kebijakan dukungan Azure. Alat-alat ini menandai komponen yang tidak didukung, tidak digunakan lagi, atau mendekati akhir dukungan. Alat seperti Azure Migrate dan alat penilaian lainnya dapat mendeteksi masalah ini di seluruh lingkungan Anda tanpa tinjauan konfigurasi manual.

  5. Mencantumkan remediasi yang diperlukan. Buat daftar komprehensif semua masalah kompatibilitas dan persyaratan remediasinya. Prioritaskan yang harus diperbaiki sebelum migrasi (pemblokir) dan yang dapat ditangani setelah migrasi jika diperlukan. Libatkan vendor jika perlu untuk memahami jalur peningkatan untuk perangkat lunak komersial.

Memetakan dependensi internal dan eksternal

  1. Memetakan dependensi internal. Petakan bagaimana komponen beban kerja berkomunikasi satu sama lain dan dengan sistem lain dalam organisasi Anda. Gunakan alat pemantauan jaringan atau pemantauan performa aplikasi untuk melihat koneksi runtime antar layanan. Pemetaan ini membantu Anda menentukan pengelompokan dalam gelombang migrasi. Misalnya, jika Aplikasi A terus-menerus memanggil Database B, Anda memigrasikannya bersama-sama atau menyediakan konektivitas jaringan antara Azure dan lingkungan sumber hingga keduanya berada di cloud.

  2. Identifikasi semua dependensi eksternal. Mencantumkan layanan eksternal apa pun yang berinteraksi dengan beban kerja. Dependensi ini termasuk platform SaaS, API mitra, sistem lokal, dan layanan pihak ketiga yang diperlukan aplikasi untuk berfungsi dengan baik. Anda harus membuat katalog semua integrasi hulu dan hilir, layanan bersama, dan alur data untuk memahami lanskap dependensi lengkap. API dokumen, sistem olahpesan, proses ETL, database bersama, metode autentikasi, pola pertukaran data, dan perjanjian tingkat layanan. Tinjau dokumentasi integrasi dan lakukan wawancara dengan pemilik aplikasi untuk memastikan visibilitas lengkap ke semua koneksi eksternal. Pemetaan komprehensif ini mencegah kegagalan integrasi dan mendukung urutan migrasi yang akurat.

  3. Libatkan pemilik beban kerja untuk memvalidasi dan menyelesaikan data dependensi. Pemilik beban kerja menawarkan wawasan penting tentang perilaku sistem, sumber daya bersama, dan integrasi informal yang mungkin tidak dideteksi alat. Anda harus melakukan wawancara terstruktur atau lokakarya dengan pemilik aplikasi dan beban kerja untuk memvalidasi data yang dihasilkan alat dan mengidentifikasi dependensi yang tidak terdokumentasi. Langkah ini memastikan kelengkapan dan akurasi peta dependensi dan membantu menangkap konteks bisnis yang menginformasikan pengurutan migrasi.

  4. Dokumentasikan semua dependensi di repositori pusat. Simpan data dependensi dalam format yang mendukung kolaborasi lintas tim dan perencanaan migrasi, seperti spreadsheet, diagram arsitektur, atau alat pemetaan dependensi. Pastikan repositori dapat diakses dan diperbarui secara teratur untuk mencerminkan perubahan selama proses migrasi.

  5. Gunakan dependensi untuk merencanakan migrasi. Atur beban kerja ke dalam gelombang migrasi yang meminimalkan dependensi yang rusak. Untuk informasi selengkapnya, lihat Perencanaan gelombang migrasi.

Menilai persyaratan kepatuhan dan operasional

  1. Identifikasi persyaratan kepatuhan terhadap peraturan. Pemahaman yang jelas tentang persyaratan kepatuhan peraturan memastikan bahwa arsitektur Azure Anda selaras dengan kewajiban hukum, industri, dan organisasi. Persyaratan ini memengaruhi pemilihan wilayah, ketersediaan layanan, perlindungan data, dan keputusan arsitektur. Standar peraturan dan kepatuhan termasuk kebijakan global, regional, khusus industri, dan internal. Standar ini mungkin termasuk GDPR, HIPAA, FedRAMP, ISO 27001, atau peraturan keuangan seperti SOX. Setiap standar memberlakukan persyaratan khusus tentang penanganan data, kontrol akses, enkripsi, dan auditabilitas. Anda harus mengidentifikasi semua standar yang berlaku untuk setiap beban kerja dengan berkonsultasi dengan pemangku kepentingan hukum, kepatuhan, dan keamanan.

  2. Dokumentasikan SLA, RPO, dan RTO. Perjanjian tingkat layanan (SLA), tujuan titik pemulihan (RPO), dan tujuan waktu pemulihan (RTO) menentukan tingkat ketersediaan dan kehilangan data yang dapat diterima. Metrik ini memandu desain strategi pencadangan, replikasi, dan failover. Anda harus mendokumenkan nilai-nilai ini untuk setiap beban kerja untuk memastikan bahwa arsitektur memenuhi ekspektasi kelangsungan bisnis. Lihat Menentukan persyaratan keandalan.

  3. Mengklasifikasikan setiap lingkungan beban kerja. Beban kerja biasanya berjalan di lingkungan produksi, pengujian, atau pengembangan. Setiap lingkungan memiliki ketersediaan, keamanan, dan persyaratan performa yang berbeda. Anda harus mendokumen klasifikasi lingkungan untuk setiap beban kerja untuk menginformasikan urutan migrasi, kontrol akses, dan alokasi sumber daya.

  4. Validasi integrasi ISV dengan Azure. Banyak beban kerja bergantung pada perangkat lunak dari vendor perangkat lunak independen (ISV). Anda harus mengonfirmasi bahwa semua perangkat lunak ISV kompatibel dengan Azure sebelum migrasi. Gunakan dokumentasi vendor, lingkungan pengujian, atau validasi langsung dengan ISV. Identifikasi pembaruan, penggantian, atau perubahan konfigurasi yang diperlukan. Tentukan juga apakah Azure Hybrid Benefit atau model lisensi lainnya berlaku. Sertakan biaya lisensi dan penyesuaian kompatibilitas dalam rencana migrasi Anda untuk penganggaran dan penjadwalan yang akurat.

Menilai kode aplikasi

Penilaian kode aplikasi mengidentifikasi masalah kompatibilitas dan peluang modernisasi yang dapat memengaruhi keberhasilan migrasi. Penilaian ini penting untuk memastikan aplikasi berjalan dengan andal di Azure dan merencanakan gelombang migrasi secara efektif. Anda harus menilai kode aplikasi untuk mendeteksi pemblokir lebih awal, mengurangi risiko kegagalan migrasi, dan menginformasikan keputusan arsitektur target.

Menggunakan alat otomatis untuk menilai kode aplikasi

  1. Gunakan alat modernisasi aplikasi GitHub Copilot (.NET dan Java). Modernisasi aplikasi GitHub Copilot menyediakan penilaian terperinci untuk beban kerja .NET dan Java. Ini menggabungkan kemampuan penilaian AppCAT dengan bantuan berbasis AI Copilot untuk membuat modernisasi lebih cepat dan lebih mudah. Integrasi ini bertindak sebagai mitra pengkodian, membantu Anda untuk:

    • Menangkap dependensi terkait aplikasi
    • Merevisi dan mengoptimalkan kode sumber untuk layanan Azure
    • Memperbarui kode dan mengatasi Kerentanan dan Paparan Umum (CVE)
    • Kontainerisasi aplikasi untuk penyebaran fleksibel
    • Membuat file implementasi untuk menyederhanakan migrasi
    • Kurangi upaya dengan pengkodan yang dibantu AI
  2. Gunakan alat pihak ketiga untuk bahasa aplikasi lain. Alat seperti CloudPilot dan CAST Highlight mendukung bahasa-bahasa seperti Python, JavaScript, Node.js, dan Go. Alat-alat ini mengidentifikasi perubahan tingkat kode yang diperlukan untuk kompatibilitas Azure dan memberikan wawasan modernisasi. Gunakan alat ini untuk menilai beban kerja non-.NET dan non-Java.

  3. Gunakan hasil penilaian untuk menginformasikan keputusan arsitektur target. Temuan kompatibilitas aplikasi dapat memengaruhi pemilihan layanan Azure. Misalnya, aplikasi yang tidak kompatibel dengan satu layanan mungkin kompatibel dengan layanan lain dengan perubahan kode minimal. Misalnya, layanan seperti Azure App Service biasanya memerlukan lebih sedikit perubahan kode sementara layanan platform kontainer mungkin memerlukan lebih banyak pembaruan kode sebelum penyebaran. Gunakan fleksibilitas ini untuk memigrasikan aplikasi lebih cepat dan menugaskan modernisasi kode ke fase selanjutnya. Pendekatan ini mengurangi risiko migrasi dan mempercepat waktu ke cloud.

Memvalidasi kerangka kerja dan kompatibilitas SDK

  1. Memahami kompatibilitas kode. Kompatibilitas Framework dan SDK memastikan bahwa aplikasi berjalan dengan andal di Azure. Versi yang tidak didukung atau SDK yang tidak kompatibel dapat menyebabkan kegagalan runtime atau memerlukan pengerjaan ulang yang signifikan. Anda harus memverifikasi bahwa Azure mendukung versi bahasa dan kerangka kerja aplikasi Anda.

  2. Periksa dukungan Azure untuk bahasa dan kerangka kerja aplikasi Anda. Konfirmasikan bahwa Azure mendukung versi .NET, Java, Python, JavaScript, Node.js, dan Go Anda. Gunakan dokumentasi Resmi Azure untuk memvalidasi kompatibilitas.

  3. Hindari perubahan kerangka kerja yang tidak perlu. Hanya migrasi ke kerangka kerja baru (seperti Microsoft .NET Framework ke .NET Core) jika ada pembenaran bisnis yang kuat. Perubahan kerangka kerja memerlukan upaya pengembangan dan pengujian yang signifikan.

Melakukan penilaian terhadap database

Dependensi database sering menentukan keberhasilan migrasi aplikasi. Database bersama, dependensi lintas aplikasi, dan pola integrasi dapat mempersulit perencanaan migrasi. Anda harus menilai database yang mendukung aplikasi Anda dan memahami dependensinya. Ikuti panduan ini:

  1. Identifikasi semua database yang digunakan oleh aplikasi. Buat inventaris lengkap semua database yang digunakan oleh aplikasi. Sertakan jenis mesin database (SQL Server, MySQL), versi, dan model hosting (misalnya, lokal, IaaS, PaaS). Gunakan alat, seperti Azure Migrate, untuk mengumpulkan informasi ini secara sistematis. Tentukan apakah database dihost sendiri, dihosting di komputer virtual, atau dikirimkan sebagai layanan terkelola. Informasi ini membantu menentukan kesiapan migrasi dan kompatibilitas platform target.

  2. Memetakan dependensi masuk dan keluar. Tampilan yang jelas tentang bagaimana data mengalir ke dan keluar dari setiap database sangat penting untuk mengurutkan migrasi dan menghindari gangguan layanan. Dependensi sering mencakup beberapa aplikasi, layanan, dan sistem eksternal. Sertakan aplikasi internal, API, pekerjaan batch, alat pelaporan, dan integrasi lainnya. Tentukan apakah dependensi bersifat baca-saja, tulis-saja, atau dua arah. Detail ini membantu memprioritaskan beban kerja dan mengidentifikasi potensi pemblokir migrasi.

  3. Tentukan strategi migrasi database. Tentukan apakah akan memindahkan database sebagai instans bersama atau membaginya berdasarkan beban kerja. Database bersama menyederhanakan manajemen tetapi dapat menunda migrasi jika beberapa aplikasi bergantung padanya. Memisahkan database memungkinkan migrasi independen tetapi memerlukan koordinasi dan pengujian yang cermat. Pastikan bahwa rencana migrasi database mendukung pengurutan pemindahan aplikasi dan meminimalkan gangguan waktu henti atau layanan.

Membuat dan memelihara register risiko

Register risiko adalah dokumen atau alat yang Anda gunakan untuk mengidentifikasi, menilai, memprioritaskan, dan memantau potensi risiko yang dapat memengaruhi adopsi cloud. Ini menguraikan strategi mitigasi. Mempertahankan register ini memastikan manajemen risiko proaktif.

  1. Tetapkan daftar risiko untuk semua beban kerja. Catat risiko yang terkait dengan faktor teknis, operasional, dan organisasi. Register ini memberikan visibilitas ke pemblokir potensial dan nilainya.

  2. Tentukan strategi mitigasi dan lacak statusnya. Untuk setiap risiko, mendokumentasikan tindakan mitigasi, pihak yang bertanggung jawab, dan jangka waktu penyelesaian. Pelacakan ini memastikan bahwa Anda secara aktif mengelola dan menyelesaikan risiko.

Untuk informasi selengkapnya, lihat CaF Govern - Menilai risiko cloud

Sumber daya dan alat Azure

Category Tool Description
Penemuan dan Penilaian Azure Migrate Penemuan dan penilaian komprehensif untuk server, database, dan aplikasi lokal
Server dengan dukungan Arc Busur Azure Memperluas manajemen Azure ke lingkungan lokal dan multicloud
Penilaian Kode GitHub Copilot Analisis kompatibilitas otomatis untuk aplikasi .NET dan Java
Migrasi Database Asisten Migrasi Data Alat penilaian dan migrasi untuk database SQL Server
Pemetaan multicloud Pemetaan layanan AWS ke Azure Panduan perbandingan layanan untuk migrasi AWS ke Azure
Pemetaan multicloud Pemetaan layanan Google Cloud ke Azure Panduan perbandingan layanan untuk migrasi Google Cloud ke Azure
Pengembangan Azure .NET pada Azure Panduan untuk mengakses layanan Azure dari aplikasi .NET
Pengembangan Azure Java di Azure Sumber daya untuk pengembang Java yang dibangun di Azure
Pengembangan Azure Python di Azure Sumber daya untuk pengembang Python yang dibangun di Azure
Pengembangan Azure JavaScript dan Node.js di Azure Panduan untuk pengembangan JavaScript dan Node.js di Azure
Pengembangan Azure Lanjutkan ke Azure Sumber daya untuk pengembang Go yang dibangun di Azure
Kerangka Kerja Adopsi Cloud Menentukan persyaratan keandalan Panduan untuk menentukan persyaratan keandalan untuk beban kerja cloud

Langkah selanjutnya