Memigrasikan solusi e-niaga Anda ke Azure

Pendahuluan

Memindahkan solusi e-niaga yang ada ke cloud memberikan banyak manfaat bagi perusahaan: memungkinkan skalabilitas, menawarkan aksesibilitas 24/7 kepada pelanggan, dan menjadi lebih mudah untuk mengintegrasikan layanan cloud. Tetapi pertama-tama, untuk memindahkan solusi e-niaga ke cloud adalah tugas yang signifikan, dengan biaya yang harus dipahami oleh pembuat keputusan. Dokumen ini menjelaskan cakupan migrasi Azure dengan tujuan memberi tahu Anda tentang opsi. Fase pertama dimulai dengan IT Pro memindahkan komponen ke cloud. Setelah Anda berada di Azure, kami menjelaskan langkah-langkah yang dapat dilakukan tim e-niaga untuk meningkatkan pengembalian investasi (ROI) Anda dan untuk memanfaatkan cloud.

Di persimpangan

Meskipun transaksi e-niaga global hanya memperhitungkan sebagian kecil dari total penjualan ritel, saluran ini terus melihat pertumbuhan tahun ke tahun yang stabil. Pada 2024, penjualan e-niaga mencapai seperlima dari total penjualan ritel, naik dari 8,6% pada tahun 2016 ( sumber). Karena e-niaga telah matang, bersama dengan munculnya komputasi cloud, peritel berada di persimpangan jalan. Ada pilihan yang harus dibuat. Mereka dapat membayangkan model bisnis mereka dengan kemampuan baru yang dimungkinkan dengan mengembangkan teknologi; dan mereka dapat merencanakan modernisasi mereka mengingat jejak kemampuan mereka saat ini.

Meningkatkan perjalanan pelanggan

E-niaga, yang terutama berfokus pada perjalanan pelanggan, memiliki banyak atribut yang berbeda. Atribut ini dapat dikelompokkan ke dalam empat area utama: penemuan, evaluasi, pembelian, dan pasca-pembelian.

Perilaku pelanggan ditangkap sebagai data. Corong belanja adalah kumpulan titik koneksi ke aplikasi yang digunakan untuk melihat data produk, transaksi, inventarisasi, pengiriman, pemenuhan pesanan, profil pelanggan, keranjang belanja, dan rekomendasi produk, untuk beberapa nama.

Bisnis ritel yang khas bergantung pada kumpulan besar solusi perangkat lunak yang berkisar dari aplikasi yang menghadap pelanggan, melalui tumpukan hingga aplikasi dasar. Gambar berikut menunjukkan tampilan fungsionalitas yang ada dalam bisnis ritel biasa.

Diagram membandingkan fungsionalitas yang terlihat secara eksternal dengan fungsionalitas inti.

Cloud menyajikan kesempatan untuk menggeser cara organisasi mendapatkan, menggunakan, dan mengelola teknologi. Manfaat lainnya termasuk: mengurangi biaya pemeliharaan pusat data, peningkatan keandalan dan performa, dan fleksibilitas untuk menambahkan layanan lain. Dalam kasus penggunaan ini, kita melihat jalur yang dapat diambil bisnis ritel untuk memigrasikan infrastruktur yang ada ke Azure. Kami juga memanfaatkan lingkungan baru menggunakan pendekatan rehost, refaktor, dan pembangunan ulang bertahas. Meskipun banyak organisasi dapat mengikuti jalur seri ini ke modernisasi, dalam kebanyakan kasus, organisasi dapat turun ke fase apa pun sebagai titik awal mereka. Organisasi dapat memilih untuk melakukan rehosting ulang aplikasi mereka saat ini di Azure, dan langsung melompat ke refaktor atau bahkan membangun kembali. Keputusan ini akan unik untuk aplikasi, dan organisasi untuk memenuhi kebutuhan modernisasi mereka dengan sebaik-baiknya.

Rehost

Juga disebut sebagai "angkat dan geser," tahap ini memerlukan migrasi server fisik dan VM apa adanya ke cloud. Dengan hanya mengalihkan lingkungan server Anda saat ini langsung ke IaaS, Anda menuai manfaat penghematan biaya, keamanan, dan peningkatan keandalan. Penghematan berasal dari teknik seperti menjalankan beban kerja pada VM berukuran tepat. Saat ini, kemampuan VM lokal dan mesin fisik sering melebihi kebutuhan pengecer sehari-hari. VM harus dapat menangani puncak bisnis musiman yang hanya terjadi beberapa kali setahun. Oleh karena itu Anda membayar kemampuan yang tidak digunakan selama musim sibuk. Dengan Azure, Anda memilih VM berukuran tepat berdasarkan permintaan untuk siklus bisnis saat ini.

Untuk menghosting ulang di Azure, ada tiga fase:

  • Analisis : Mengidentifikasi dan menginventarasikan sumber daya lokal seperti aplikasi, beban kerja, jaringan, dan keamanan. Pada akhir fase ini, Anda memiliki dokumentasi lengkap tentang sistem yang ada.
  • Migrasi : Pindahkan setiap subsistem dari lokal ke Azure. Selama tahap ini, Anda akan menggunakan Azure sebagai ekstensi pusat data Anda dengan aplikasi yang terus berkomunikasi.
  • Pengoptimalan : Saat sistem berpindah ke Azure, pastikan bahwa hal-hal berukuran benar. Jika lingkungan menunjukkan bahwa terlalu banyak sumber daya dialokasikan untuk beberapa VM, ubah jenis VM menjadi yang memiliki kombinasi CPU, memori, dan penyimpanan lokal yang lebih tepat.

Menganalisis

Lakukan langkah-langkah berikut:

  1. Cantumkan server dan aplikasi lokal. Proses ini bergantung pada agen atau alat manajemen untuk mengumpulkan metadata tentang server, aplikasi yang berjalan di server, penggunaan server saat ini, dan bagaimana server dan aplikasinya dikonfigurasi. Hasilnya adalah laporan semua server dan aplikasi di lingkungan.
  2. Identifikasi dependensi. Anda dapat menggunakan alat untuk mengidentifikasi server mana yang berbicara satu sama lain, dan aplikasi yang berkomunikasi satu sama lain. Hasilnya adalah peta—atau peta—dari semua aplikasi dan beban kerja. Peta ini disalurkan ke dalam perencanaan migrasi.
  3. Analisis konfigurasi. Tujuannya adalah untuk mengetahui jenis VM apa yang Anda butuhkan setelah berjalan di Azure. Hasilnya adalah laporan tentang semua aplikasi yang dapat berpindah ke Azure. Mereka dapat diklasifikasikan lebih lanjut sebagai memiliki:
    1. Tidak ada modifikasi
    2. Modifikasi dasar seperti penamaan perubahan
    3. Modifikasi kecil, seperti sedikit perubahan kode
    4. Beban kerja yang tidak kompatibel yang memerlukan upaya ekstra untuk bergerak
  4. Buat anggaran Anda. Anda sekarang memiliki daftar yang menghitung setiap CPU—memori, dan sebagainya—dan persyaratan untuk setiap aplikasi. Tempatkan beban kerja tersebut pada VM berukuran benar. Biaya tagihan platform cloud didasarkan pada penggunaan. Alat ada untuk memetakan kebutuhan Anda ke Azure VM berukuran tepat. Jika Anda memigrasikan VM Windows atau SQL Server, Anda juga harus melihat Azure Hybrid Benefit, yang mengurangi pengeluaran Anda di Azure.

Microsoft menyediakan beberapa alat untuk menganalisis dan membuat katalog sistem Anda. Jika Anda menjalankan VMware, Anda dapat menggunakan Azure Migrate untuk membantu penemuan dan penilaian. Alat ini mengidentifikasi mesin yang dapat dipindahkan ke Azure, merekomendasikan jenis VM untuk dijalankan, dan memperkirakan biaya beban kerja. Untuk lingkungan Hyper-V, gunakan Perencana Penyebaran Azure Site Recovery. Untuk migrasi besar di mana Anda perlu memindahkan ratusan atau lebih VM, Anda dapat bekerja dengan mitra migrasi Azure. Mitra ini memiliki keahlian dan pengalaman untuk memindahkan beban kerja Anda.

Migrate

Mulai merencanakan layanan mana yang akan dipindahkan ke cloud dan dalam urutan apa. Karena tahap ini melibatkan pemindahan beban kerja, ikuti urutan ini:

  1. Bangun jaringan.
  2. Menggabungkan sistem identitas (ID Microsoft Entra).
  3. Memprovisikan potongan penyimpanan di Azure.

Selama migrasi, lingkungan Azure adalah ekstensi dari jaringan lokal Anda. Anda dapat menyambungkan jaringan logis dengan Azure Virtual Network. Anda dapat memilih untuk menggunakan Azure ExpressRoute untuk menjaga komunikasi antara jaringan Anda dan Azure pada koneksi privat yang tidak pernah menyentuh Internet. Anda juga dapat menggunakan VPN situs-ke-situs tempat Azure VPN Gateway berbicara dengan perangkat VPN lokal Anda dengan semua lalu lintas yang dikirim dengan aman menggunakan komunikasi terenkripsi antara Azure dan jaringan Anda. Kami telah menerbitkan arsitektur referensi yang merinci cara menyiapkan jaringan hibrid di sini.

Setelah jaringan dikonfigurasi, rencanakan kelangsungan bisnis. Rekomendasinya adalah menggunakan replikasi real time untuk memindahkan data lokal Anda ke cloud dan untuk memastikan bahwa cloud dan data yang ada sama. Toko e-niaga tidak pernah tutup; duplikasi menyediakan kemampuan untuk beralih dari lokal ke Azure dengan dampak minimal kepada pelanggan Anda.

Mulai pindahkan data, aplikasi, dan server terkait ke Azure. Banyak perusahaan menggunakan layanan Azure Site Recovery untuk bermigrasi ke Azure. Layanan ini menargetkan kelangsungan bisnis dan pemulihan bencana (BCDR). Ini sempurna untuk migrasi dari lokal ke Azure. Tim implementasi Anda dapat membaca detail cara memigrasikan VM lokal dan server fisik ke Azure di sini.

Setelah subsistem dipindahkan ke Azure, uji untuk memastikan bahwa semuanya berfungsi seperti yang diharapkan. Setelah semua masalah ditutup, pindahkan beban kerja ke Azure.

Optimalkan

Pada titik ini, Anda akan terus memantau lingkungan dan mengubah opsi komputasi yang mendasar agar sesuai dengan beban kerja saat lingkungan berubah. Siapa apa pun memantau kesehatan lingkungan harus mengawasi berapa banyak setiap sumber daya yang digunakan. Tujuannya harus memiliki pemanfaatan 75-90% pada sebagian besar VM. Pada VM yang memiliki pemanfaatan yang sangat rendah, pertimbangkan untuk mengemasnya dengan lebih banyak aplikasi, atau bermigrasi ke VM dengan biaya terendah di Azure yang mempertahankan tingkat performa yang tepat.

Azure menyediakan alat untuk mengoptimalkan lingkungan juga. Azure Advisor memantau komponen lingkungan Anda dan memberikan rekomendasi yang dipersonalisasi berdasarkan praktik terbaik. Rekomendasi ini membantu meningkatkan performa, keamanan, dan ketersediaan sumber daya yang digunakan dalam aplikasi Anda. portal Azure juga mengekspos informasi tentang kesehatan aplikasi Anda. VM Anda harus memanfaatkan ekstensi komputer virtual Azure untuk Linux dan Windows. Ekstensi tersebut menyediakan konfigurasi pasca penyebaran, antivirus, pemantauan aplikasi, dan banyak lagi. Anda juga dapat memanfaatkan banyak layanan Azure lainnya untuk diagnostik jaringan, penggunaan layanan, dan pemberitahuan melalui layanan seperti Network Watcher, Service Map, Application Insights, dan Log Analytics.

Sementara bagian organisasi mengoptimalkan sistem sekarang di Azure, tim pengembangan dapat mulai pindah ke fase pasca-migrasi: refaktor.

Menentukan faktor kembali

Setelah migrasi selesai, aplikasi e-niaga Anda dapat mulai memanfaatkan rumah barunya di Azure. Fase refaktor tidak harus menunggu hingga seluruh lingkungan dipindahkan. Jika tim CMS Anda telah bermigrasi, tetapi tim ERP belum, tidak ada masalah. Tim CMS masih dapat memulai upaya refaktor mereka. Tahap ini melibatkan penggunaan layanan Azure tambahan untuk mengoptimalkan biaya, keandalan, dan performa dengan merefaktor aplikasi Anda. Di mana dalam lift dan shift, Anda hanya memanfaatkan perangkat keras dan OS yang dikelola penyedia, dalam model ini Anda juga memanfaatkan layanan cloud untuk menurunkan biaya. Anda terus menggunakan aplikasi Anda saat ini apa adanya, dengan beberapa kode aplikasi kecil atau perubahan konfigurasi, dan menghubungkan aplikasi Anda ke layanan infrastruktur baru seperti kontainer, database, dan sistem manajemen identitas.

Upaya pemfaktoran ulang mengubah kode dan konfigurasi yang sangat sedikit. Anda akan memfokuskan lebih banyak waktu pada otomatisasi sebagian besar karena teknologi yang diadopsi pada fase ini mengandalkan pembuatan skrip untuk membangun dan menyebarkan sumber daya; instruksi penyebaran adalah skrip.

Meskipun banyak layanan Azure dapat digunakan, kami akan fokus pada layanan paling umum yang digunakan dalam fase refaktor: kontainer, layanan aplikasi, dan layanan database. Mengapa kita melihat pemfaktoran ulang? Pemfaktoran ulang memberikan fondasi kode yang kuat yang menurunkan biaya jangka panjang dengan menjaga utang kode dalam alasan.

Kontainer menyediakan cara untuk menggabungkan aplikasi. Karena cara kontainer memvirtualisasikan sistem operasi, Anda dapat mengemas beberapa kontainer ke dalam satu VM. Anda dapat memindahkan aplikasi ke kontainer dengan nol hingga beberapa perubahan kode; Anda mungkin memerlukan perubahan konfigurasi. Upaya ini juga mengarah pada penulisan skrip yang menggabungkan aplikasi ke dalam kontainer. Tim pengembangan Anda akan menghabiskan waktu refaktor mereka untuk menulis dan menguji skrip ini. Azure mendukung kontainerisasi melalui Azure Kubernetes Service (AKS) dan Azure Container Registry terkait yang dapat Anda gunakan untuk mengelola gambar kontainer.

Untuk layanan aplikasi, Anda dapat memanfaatkan berbagai layanan Azure. Misalnya, infrastruktur Anda yang ada dapat menangani pesanan pelanggan dengan menempatkan pesan ke dalam antrean seperti RabbitMQ. (Misalnya, satu pesan adalah menagih pelanggan, yang kedua adalah mengirim pesanan.) Saat menghosting ulang, Anda menempatkan RabbitMQ di VM terpisah. Selama refaktor, Anda dapat menambahkan antrean atau topik Bus Layanan ke solusi. Pada titik ini, Anda dapat menulis ulang kode RabbitMQ Dan berhenti menggunakan VM yang melayani fungsionalitas antrean. Jika tidak memungkinkan untuk menulis ulang semua kode Anda sekaligus, Anda dapat menggunakan pola seperti jembatan olahpesan untuk menjembatani kesenjangan antara antrean olahpesan. Ini memungkinkan Anda untuk memigrasikan titik akhir Anda satu per satu daripada sekaligus. Bagaimanapun, ketika semua titik akhir pada akhirnya dipindahkan ke Azure Bus Layanan, ini mengganti sekumpulan VM dengan layanan antrean pesan yang selalu aktif dengan biaya yang lebih rendah. Layanan aplikasi lain dapat ditemukan di portal Azure.

Untuk database, Anda bisa memindahkan database Anda dari VM ke layanan. Azure mendukung beban kerja SQL Server dengan Azure SQL Database dan Azure SQL Database Managed Instance. Layanan Migrasi Data menilai database Anda, memberi tahu Anda tentang pekerjaan yang perlu terjadi sebelum migrasi, lalu memindahkan database dari VM Anda ke layanan. Azure juga mendukung MySQL, PostgreSQL, dan layanan mesin database lainnya.

Membangun kembali

Hingga saat ini, kami mencoba meminimalkan perubahan pada sistem e-niaga—kami meninggalkan sistem kerja saja. Sekarang, mari kita bahas cara benar-benar memanfaatkan cloud. Tahap ini berarti untuk merevisi aplikasi yang ada dengan mengadopsi PaaS secara agresif atau bahkan layanan dan arsitektur SaaS. Proses ini mencakup revisi utama untuk menambahkan fungsionalitas baru atau merancang ulang aplikasi untuk cloud. API terkelola adalah konsep baru yang memanfaatkan sistem cloud. Kami dapat membuat sistem kami lebih mudah diperbarui, dengan membuat API untuk komunikasi antar layanan. Manfaat kedua adalah kemampuan untuk mendapatkan wawasan tentang data yang kita miliki. Kami melakukan ini dengan pindah ke layanan mikro ditambah arsitektur API dan menggunakan pembelajaran mesin dan alat lain untuk menganalisis data.

Layanan mikro + API

Layanan mikro berkomunikasi melalui API yang menghadap secara eksternal. Setiap layanan mandiri dan harus menerapkan satu kemampuan bisnis, misalnya: merekomendasikan item kepada pelanggan, memelihara keranjang belanja, dan sebagainya. Menguraikan aplikasi menjadi layanan mikro membutuhkan waktu dan perencanaan. Meskipun tidak ada aturan keras untuk mendefinisikan layanan mikro, ide umum melibatkan pengurangan unit yang dapat disebarkan ke serangkaian komponen yang hampir selalu berubah bersama-sama. Layanan mikro memungkinkan Anda untuk menyebarkan perubahan sesering yang diperlukan sambil mengurangi beban pengujian untuk aplikasi keseluruhan. Beberapa layanan mungkin sangat kecil. Bagi mereka, menjadi tanpa server dengan Azure Functions berfungsi dengan baik untuk menskalakan ke penelepon sebanyak yang diperlukan sambil tidak menggunakan sumber daya saat tidak digunakan. Layanan lain akan dipecah seputar kemampuan bisnis: mengelola produk, menangkap pesanan pelanggan, dan sebagainya.

Mekanisme tanpa server memang memiliki kelemahan: ketika di bawah beban ringan, mereka dapat lambat merespons karena beberapa server di cloud membutuhkan waktu beberapa detik untuk mengonfigurasi dan menjalankan kode Anda. Untuk bagian lingkungan Anda yang banyak digunakan oleh pelanggan, Anda ingin memastikan bahwa mereka dapat menemukan produk, melakukan pemesanan, pengembalian permintaan, dan sebagainya dengan kecepatan dan kemudahan. Setiap kali performa melambat, Anda berisiko kehilangan pelanggan di corong belanja. Jika Anda memiliki fungsionalitas yang harus merespons dengan cepat, bangun kembali fungsionalitas tersebut sebagai unit yang dapat disebarkan secara individual di Azure Kubernetes Service. Untuk kasus lain, seperti layanan yang memerlukan beberapa kombinasi banyak memori, beberapa CPU, dan banyak penyimpanan lokal, mungkin masuk akal untuk menghosting layanan mikro di VM sendiri.

Setiap layanan menggunakan API untuk interaksi. Akses ke API dapat diarahkan ke layanan mikro, tetapi ini mengharuskan siapa pun berkomunikasi dengan layanan untuk mengetahui topologi aplikasi. Layanan seperti API Management memberi Anda cara terpusat untuk menerbitkan API. Semua aplikasi hanya terhubung ke layanan API Management. Pengembang dapat menemukan API apa yang tersedia. Layanan API Management juga menyediakan kemampuan untuk membuat lingkungan ritel Anda berkinerja baik. Layanan ini dapat membatasi akses ke API oleh berbagai bagian aplikasi (untuk mencegah hambatan), respons cache terhadap nilai yang berubah lambat, mengonversi dari JSON ke XML, dan banyak lagi. Daftar lengkap kebijakan dapat ditemukan di sini.

Memanfaatkan data dan Marketplace Azure Anda

Karena Anda memiliki semua data dan sistem di Azure, Anda dapat dengan mudah menggabungkan solusi SaaS lainnya ke dalam bisnis Anda. Anda dapat melakukan beberapa hal segera. Misalnya, gunakan Power BI untuk menggabungkan berbagai sumber data untuk membuat visualisasi dan laporan—dan mendapatkan wawasan.

Selanjutnya, lihat penawaran di Marketplace Azure yang dapat membantu Anda melakukan hal-hal seperti mengoptimalkan inventarisasi, mengelola kampanye berdasarkan atribut pelanggan, dan menyajikan item yang tepat kepada setiap pelanggan berdasarkan preferensi dan riwayat mereka. Harap luangkan waktu untuk mengonfigurasi data Anda untuk bekerja di penawaran Marketplace.

Komponen

Digunakan selama rehost:

  • Azure Advisor adalah konsultan cloud yang dipersonalisasi yang membantu Anda mengikuti cara terbaik untuk mengoptimalkan pengoperasian Azure Anda.
  • Layanan Azure Migrate menilai beban kerja lokal untuk migrasi ke Azure.
  • Azure Site Recovery mengatur dan mengelola pemulihan bencana untuk Azure VM, serta VM lokal dan server fisik.
  • Azure Virtual Network memungkinkan banyak jenis sumber daya Azure, seperti Azure Virtual Machines (VM), untuk berkomunikasi satu sama lain dengan aman, internet, dan jaringan lokal.
  • Azure ExpressRoute memungkinkan Anda memperluas jaringan lokal ke cloud Microsoft melalui koneksi privat yang difasilitasi oleh penyedia konektivitas.

Digunakan selama refaktor:

  • Azure Kubernetes Service mengelola lingkungan Kubernetes yang dihosting, membuatnya cepat dan mudah untuk menyebarkan dan mengelola aplikasi kontainer tanpa keahlian orkestrasi kontainer.
  • Azure SQL Database adalah layanan terkelola database relasional tujuan umum di Microsoft Azure. Ini mendukung struktur seperti data relasional, JSON, spasial, dan XML. SQL Database menawarkan database SQL tunggal terkelola, database SQL terkelola dalam kumpulan elastis, dan SQL Managed Instances.

Digunakan selama pembangunan ulang:

  • Azure API Management membantu organisasi menerbitkan API ke pengembang eksternal, mitra, dan internal untuk membuka potensi data dan layanan mereka.
  • Azure Functions adalah solusi untuk dengan mudah menjalankan potongan kecil kode, atau "fungsi," di cloud.
  • Power BI adalah rangkaian alat analisis bisnis yang memberikan wawasan ke seluruh organisasi Anda.

Kesimpulan

Memindahkan sistem e-niaga Anda ke Azure mengambil analisis, perencanaan, dan pendekatan yang ditentukan. Kami melihat pendekatan tiga fase rehost, refaktor, dan pembangunan ulang. Ini memungkinkan organisasi untuk berpindah dari satu status kerja ke status kerja lainnya sambil meminimalkan jumlah perubahan di setiap langkah. Peritel juga dapat memilih untuk merefaktor atau bahkan membangun kembali komponen, melewati rehosting sama sekali. Sering kali, Anda akan memiliki jalur yang jelas ke depan untuk modernisasi—lakukan kapan saja. Saat mendapatkan pengalaman berjalan di Azure, Anda akan melihat lebih banyak peluang untuk menambahkan kemampuan baru, mengurangi biaya, dan meningkatkan sistem secara keseluruhan.

Kontributor

Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.

Penulis utama:

Langkah berikutnya

Banyak tim pengembangan tergoda untuk melakukan rehost dan refaktor secara bersamaan untuk mengatasi utang teknis dan kapasitas leverage yang lebih baik. Ada manfaat untuk menghosting ulang sebelum melompat ke langkah-langkah berikutnya. Setiap masalah dalam penyebaran ke lingkungan baru akan lebih mudah didiagnosis dan diperbaiki. Ini pada gilirannya memberi tim pengembangan dan dukungan Anda waktu untuk meningkatkan azure sebagai lingkungan baru. Saat Anda mulai merefaktor dan membangun kembali sistem, Anda membangun aplikasi yang stabil dan berfungsi. Ini memungkinkan perubahan yang lebih kecil dan ditargetkan dan pembaruan yang lebih sering.

Dokumentasi produk: