Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memahami IIS ke pemetaan migrasi Elastic Beanstalk
Migrasi dari IIS ke Elastic Beanstalk melibatkan pemetaan konfigurasi server Windows lokal Anda ke sumber daya cloud. AWS Memahami pemetaan ini sangat penting untuk keberhasilan migrasi dan manajemen pasca-migrasi.
Situs dan aplikasi IIS di Elastic Beanstalk
Dalam IIS, situs web mewakili kumpulan aplikasi web dan direktori virtual, masing-masing dengan konfigurasi dan kontennya sendiri. Saat bermigrasi ke Elastic Beanstalk, komponen-komponen ini diubah sebagai berikut:
- Situs web IIS
-
Situs web IIS Anda menjadi aplikasi dalam Elastic Beanstalk. Setiap konfigurasi situs web, termasuk binding, kumpulan aplikasi, dan pengaturan otentikasi, dipertahankan melalui manifes penyebaran () Elastic Beanstalk.
aws-windows-deployment-manifest.json
Misalnya, jika Anda memiliki beberapa situs seperti Situs Web Default dan IntranetSite, eb migrate paket konten dan konfigurasi setiap situs sambil mempertahankan isolasi mereka.
Perintah ini membuat aturan pendengar Application Load Balancer (ALB) yang sesuai untuk menangani permintaan perutean ke aplikasi Anda. Ini juga mengkonfigurasi grup keamanan untuk memastikan akses port yang tepat berdasarkan binding IIS asli Anda.
- Kolam aplikasi
-
Kumpulan aplikasi IIS menyediakan isolasi proses pekerja, manajemen runtime, dan kemampuan daur ulang untuk aplikasi Anda. Dalam Elastic Beanstalk, ini dipetakan ke proses lingkungan yang ditentukan
aws:elasticbeanstalk:environment:process
melalui namespace dan dikonfigurasi melalui IIS pada instance. EC2Migrasi mempertahankan setelan kumpulan aplikasi penting termasuk yang berikut ini:
-
Konfigurasi model proses - Identitas (ApplicationPoolIdentity, NetworkService, atau akun khusus), pengaturan batas waktu idle, dan interval daur ulang proses
-
Pengaturan versi.NET CLR - Mempertahankan versi.NET Framework yang ditentukan (v2.0, v4.0, atau No Managed Code) untuk memastikan kompatibilitas aplikasi
-
Mode pipeline terkelola - Mempertahankan pengaturan mode pipeline Terintegrasi atau Klasik untuk mempertahankan arsitektur pemrosesan permintaan HTTP Anda
-
Pengaturan lanjutan - Panjang antrian, batas CPU, ambang batas perlindungan yang cepat gagal, dan batas waktu startup
eb migratePerintah mempertahankan pemetaan antara situs dan kumpulan aplikasi selama migrasi ke lingkungan Elastic Beanstalk Anda.
Jika kumpulan aplikasi Anda menggunakan jadwal daur ulang kustom (waktu tertentu atau ambang batas memori), ini diimplementasikan melalui PowerShell skrip dalam paket penerapan yang mengonfigurasi pengaturan IIS yang sesuai pada instance. EC2
-
- Binding situs web
-
Binding situs web IIS, yang menentukan bagaimana klien mengakses aplikasi Anda, diubah menjadi konfigurasi Application Load Balancer (ALB) berikut:
-
Binding port dipetakan ke aturan pendengar ALB yang sesuai
-
Konfigurasi header host diterjemahkan ke dalam aturan perutean ALB
-
Situs berkemampuan SSL menggunakan AWS Certificate Manager (ACM) untuk manajemen sertifikat
-
Direktori virtual dan manajemen jalur aplikasi
Direktori dan aplikasi virtual IIS menyediakan pemetaan jalur URL ke direktori fisik. Elastic Beanstalk mempertahankan hubungan ini melalui konstruksi berikut:
- Direktori virtual
-
Proses migrasi mempertahankan jalur fisik direktori virtual Anda dalam paket penyebaran.
Pemetaan jalur dikonfigurasi dalam konfigurasi IIS pada EC2 instance, memastikan bahwa struktur URL Anda tetap utuh setelah migrasi.
- Jalur fisik penggerak non-sistem
-
penting
Secara default, lingkungan Elastic Beanstalk Windows hanya menyediakan drive C:\ (volume root). Dalam versi saat ini, aplikasi dengan konten pada drive non-sistem (D:\, E:\, dll.) Tidak didukung untuk migrasi.
eb migratePerintah secara otomatis mendeteksi jalur fisik yang terletak di drive non-sistem dan memperingatkan Anda tentang potensi masalah seperti contoh berikut:
ERROR: Detected physical paths on drive D:\ which are not supported in the current version: - D:\websites\intranet - D:\shared\images Migration of content from non-system drives is not supported. Please relocate this content to the C:\ drive before migration. Otherwise, select only those sites that are on C:\.
Jika aplikasi Anda memiliki dependensi pada drive non-sistem, Anda perlu memodifikasi aplikasi Anda untuk menyimpan semua konten di drive C:\ sebelum migrasi.
- Aplikasi bersarang
-
Aplikasi yang bersarang di bawah situs web digunakan dengan konfigurasi jalur yang benar dan penugasan kumpulan aplikasi yang sesuai. Proses migrasi mempertahankan semua
web.config
pengaturan, memastikan bahwa konfigurasi khusus aplikasi terus berfungsi seperti yang diharapkan di lingkungan cloud.
Penulisan ulang URL dan perutean permintaan aplikasi (ARR)
Jika penyebaran IIS Anda menggunakan URL Rewrite atau Application Request Routing (ARR), eb migrate menangani konfigurasi ini melalui aturan dan konfigurasi berikut:
- Aturan penulisan ulang URL
-
Aturan penulisan ulang URL dari
web.config
file Anda diterjemahkan ke dalam aturan perutean ALB jika memungkinkan. Misalnya, entri berikut menjadi aturan pendengar ALB yang mengarahkan lalu lintas berdasarkan header host dan pola jalur. :<!-- Original IIS URL Rewrite Rule --> <rule name="Redirect to WWW" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern="^example.com$" /> </conditions> <action type="Redirect" url="http://www.example.com/{R:1}" /> </rule>
- Perutean permintaan aplikasi
-
Konfigurasi ARR dipertahankan melalui instalasi fitur ARR pada instance. EC2 Proses migrasi menyelesaikan tugas-tugas berikut:
-
Mengonfigurasi pengaturan proxy agar sesuai dengan lingkungan sumber Anda
-
Mempertahankan aturan penulisan ulang URL yang terkait dengan ARR
-
Struktur artefak migrasi
Ketika Anda menjalankaneb migrate, itu membuat direktori terstruktur yang berisi semua komponen penyebaran yang diperlukan. Daftar berikut menjelaskan struktur direktori:
C:\migration_workspace\
└── .\migrations\latest\
└── upload_target\
├── [SiteName].zip # One ZIP per IIS site
├── aws-windows-deployment-manifest.json
└── ebmigrateScripts\
├── site_installer.ps1 # Site installation scripts
├── arr_configuration.ps1 # ARR configuration scripts
├── permission_handler.ps1 # Permission management
└── firewall_config.ps1 # Windows Firewall rules
aws-windows-deployment-manifest.json
File ini adalah file konfigurasi inti yang menginstruksikan Elastic Beanstalk cara menerapkan aplikasi Anda. Lihat contoh struktur berikut:
{ "manifestVersion": 1, "deployments": { "msDeploy": [ { "name": "Primary Site", "parameters": { "appBundle": "DefaultWebSite.zip", "iisPath": "/", "iisWebSite": "Default Web Site" } } ], "custom": [ { "name": "ConfigureARR", "scripts": { "install": { "file": "ebmigrateScripts\\arr_configuration.ps1" }, "uninstall": { "file": "ebmigrateScripts\\noop.ps1" }, "restart": { "file": "ebmigrateScripts\\noop.ps1" } } } ] } }
Manifes ini memastikan hasil ini untuk migrasi Anda:
-
Aplikasi digunakan untuk memperbaiki jalur IIS
-
Konfigurasi kustom diterapkan
-
Pengaturan khusus situs dipertahankan
-
Urutan penyebaran dipertahankan