AWS Thai Blog
Migration to AWS-การย้ายข้อมูลไปยัง AWS
การย้ายระบบงานไปยัง Cloud กลายเป็นกลยุทธ์สำคัญที่ช่วยให้องค์กรลดต้นทุน เพิ่มประสิทธิภาพ และสร้างนวัตกรรมได้อย่างรวดเร็ว AWS เป็นผู้ให้บริการ Cloud ชั้นนำที่มีประสบการณ์มากกว่า 19 ปี (เปิดตัวอย่างเป็นทางการในปี 2006) ในการช่วยเหลือองค์กรนับล้านทั่วโลกในการ Migration ด้วยเครื่องมือและแนวทางปฏิบัติที่ได้รับการพิสูจน์แล้ว
บทความนี้นำเสนอแนวทางการย้ายข้อมูลไปยัง AWS โดยเน้นที่สถาปัตยกรรมแบบ Three-Tier Architecture ซึ่งประกอบด้วย Presentation Layer, Application Layer และ Data Layer การย้ายระบบที่ใช้สถาปัตยกรรมนี้ไปยัง AWS จะช่วยให้องค์กรได้รับประโยชน์จากความยืดหยุ่น ความปลอดภัย และความสามารถในการขยายตัวของ Cloud
สำหรับบทความนี้ เราจะไม่ลงลึกไปถึง Serverless Architecture หรือ Container-based Architecture แต่จะมุ่งเน้นที่การย้ายระบบแบบดั้งเดิมที่ใช้ Virtual Machines และ Traditional Databases ไปยัง AWS ซึ่งเป็นจุดเริ่มต้นที่เหมาะสมสำหรับองค์กรที่กำลังเริ่มต้นการเดินทางสู่ Cloud คุณจะได้เรียนรู้กรอบการทำงานทั้ง 3 ขั้นตอน ได้แก่ Assess Phase, Mobilize Phase และ Migrate & Modernize Phase พร้อมเครื่องมือและบริการที่ AWS จัดเตรียมไว้เพื่อให้การ Migration ประสบความสำเร็จ
นอกจากนี้ ในบทความนี้ ยังมี Hand on lab แนะนำด้านล่างอีกด้วย
ก่อนที่เราจะไปถึงเนื้อหา มีtopic นึงที่สำคัญ จะต้องสนใจ คือการ Planning for a successful cloud migration โดยสามารถอ่านเพิ่มเติมได้ที่ Link
แนวทางสำหรับการ Migration ที่ประสบความสำเร็จ จาก AWS Prescriptive Guidance
- การ migrate workloads ไปยัง AWS Cloud ให้ประสบความสำเร็จต้องอาศัยการวางแผนและการดำเนินการที่เป็นระบบ AWS Prescriptive Guidance ได้จัดทำแนวทางที่ครอบคลุมเพื่อช่วยให้องค์กรสามารถดำเนินการได้อย่างมีประสิทธิภาพ
- การเตรียมการก่อนเริ่ม Migration
- ก่อนเริ่มกระบวนการ migrate องค์กรต้องสร้าง wave plan ที่ครอบคลุมพร้อมระบุ dependencies, tools, sprints และความรับผิดชอบอย่างชัดเจน การสร้าง account structure บน AWS ครอบคลุมการจัดการ access, security, network, connectivity และ automation pipelines รวมถึงการเตรียม landing zone ให้พร้อมใช้งาน นอกจากนี้ต้องเลือกและจัดหา migration tools ที่เหมาะสม พร้อมกำหนด change control และ impact assessment processes
- การดำเนินการ Migration
- เมื่อเข้าสู่ขั้นตอน implementation ทีมต้องตั้งค่า sprint schedules และกำหนดวัตถุประสงค์ที่ชัดเจน review epics และแยกเป็น user stories พร้อม acceptance criteria การจัดการ daily cadence meeting ช่วยให้ workflow ไม่หยุดชะงักและได้รับ feedback รวดเร็ว การสร้าง communications และ reporting plan พร้อมใช้ agile metrics ช่วยติดตามความคืบหน้าและพิสูจน์ว่าทีมกำลังส่งมอบคุณค่าตามที่คาดหวัง
- หลักการสำคัญ
- การเรียนรู้จากการปฏิบัติจริงเป็นหัวใจสำคัญ ทีมต้อง align ทิศทาง enable ความสามารถ และ mobilize workforce พร้อมทรัพยากร การเริ่มต้นเล็กและสร้างความสำเร็จในช่วงแรกจะสร้างความมั่นใจและโมเมนตัม การบันทึก outputs, best practices และ lessons learned จะเป็น building blocks สำหรับการ migrate ในวงกว้าง การสร้าง blueprints จาก Wave 1 เป็นรากฐานสำหรับการวางแผนต่อไป
- การจัดองค์กรและ Governance
- การสร้าง dedicated team ที่มี single-threaded ownership พร้อม executive sponsorship ที่แข็งแกร่งเป็นปัจจัยสำคัญต่อความสำเร็จ องค์กรต้องออกแบบทีมสำหรับ future state ของ operations และเริ่มสร้าง cloud governance model, standards, best practices และ guiding principles เพื่อให้การดำเนินงานเป็นไปในทิศทางเดียวกันและมีคุณภาพตามมาตรฐาน
หลังจากนั้น ผมขอพูดถึงกรอบการทำงานการย้ายข้อมูล: 3 ขั้นตอน (Assess/Mobilize/Migrate & Modernize Phase)

The three-phase migration process
[1]ขั้นตอนการประเมิน (Assess Phase): ขั้นตอนแรกนี้มุ่งเน้นการประเมินความพร้อมขององค์กรและสร้างกรณีทางธุรกิจที่น่าสนใจ องค์กรจะทำการประเมินความพร้อมในการย้ายข้อมูล (MRA) เพื่อระบุช่องว่างความสามารถใน 6 มิติของ AWS Cloud Adoption Framework ได้แก่ ธุรกิจ กระบวนการ บุคลากร แพลตฟอร์ม การดำเนินงาน และความปลอดภัย เครื่องมืออย่าง Migration Evaluator และ AWS Application Discovery Service ช่วยสร้างกรณีทางธุรกิจและโมเดลต้นทุนการเป็นเจ้าของทั้งหมด (TCO)
[2]ขั้นตอนการเตรียมความพร้อม (Mobilize Phase): ในระหว่างการเตรียมความพร้อม องค์กรจะสร้างรากฐานการดำเนินงานโดยแก้ไขช่องว่างความสามารถที่ระบุในระหว่างการประเมิน ขั้นตอนนี้รวมถึงการสร้าง Landing Zones โดยใช้ AWS Control Tower พัฒนาทักษะ Cloud ผ่านโปรแกรมการฝึกอบรม สร้างแผนการย้ายข้อมูลโดยละเอียด และดำเนินโครงการ Proof-of-Concept ขั้นตอนการเตรียมความพร้อมมักประกอบด้วยเวิร์กช็อปการวางแผนการย้ายข้อมูล Immersion Days และกิจกรรมเตรียมความพร้อมองค์กร
[3]ขั้นตอนการย้ายข้อมูลและปรับปรุง (Migrate & Modernize Phase): ขั้นตอนการดำเนินการที่องค์กรนำแผนการย้ายข้อมูลไปใช้ในวงกว้าง ซึ่งเกี่ยวข้องกับการใช้เครื่องมือย้ายข้อมูลของ AWS เช่น AWS Application Migration Service (MGN), AWS Database Migration Service (DMS) และ AWS DataSync เพื่อย้าย Workloads อย่างมีประสิทธิภาพในขณะที่รักษาความต่อเนื่องในการดำเนินงาน
[1] Assess Phase: เครื่องมือประเมินและโปรแกรมสำหรับการ Assessment (Tools and Services for Assessment):
1. AWS Optimization and Licensing Assessment (AWS OLA)
เครื่องมือประเมินแบบไม่มีค่าใช้จ่ายที่ช่วยวิเคราะห์การใช้งาน infrastructure ปัจจุบันและ licensing เพื่อหาวิธีประหยัดต้นทุนเมื่อ migrate ไป AWS โดยเฉพาะสำหรับ Microsoft Windows Server, SQL Server, VMware, และ Oracle
2. Migration Evaluator
เครื่องมือสร้าง business case แบบ data-driven เพื่อประเมินต้นทุนในอนาคตเมื่อ migrate ไป AWS โดยใช้ข้อมูลจริงจาก on-premises
3. AWS Migration Portfolio Assessment (AWS MPA)
Web-based tool ที่ช่วยวิเคราะห์ portfolio ของ on-premises, สร้าง business case, และวางแผน migration แบบ high-level
4. AWS Migration Acceleration Program (MAP)
โปรแกรมการ migrate แบบครอบคลุมที่ใช้ methodology 3 phases (Assess, Mobilize, Migrate & Modernize) พร้อมทั้งให้การสนับสนุนด้าน tools, training, partners, และ funding
[2] Mobilize Phase: การเตรียมความพร้อม
ขอเริ่มที่ กลยุทธ์การย้ายข้อมูล: 7 Rs
AWS กำหนดกลยุทธ์การย้ายข้อมูล 7 แนวทางเพื่อเป็นแนวทางในการตัดสินใจนำ Cloud มาใช้:
ยกเลิก (Retire): ปิดการใช้งานแอปพลิเคชันที่ไม่จำเป็นอีกต่อไป
เก็บไว้ (Retain): เก็บแอปพลิเคชันบางตัวไว้ใน On-premises ชั่วคราว
ย้ายตามเดิม (Rehost/Lift-and-Shift): ย้ายแอปพลิเคชันโดยไม่มีการแก้ไขเพื่อการย้ายที่รวดเร็ว
ย้ายที่ (Relocate): โอน Workloads ไปยัง AWS ด้วยการเปลี่ยนแปลงเพียงเล็กน้อย
ซื้อใหม่ (Repurchase): แทนที่แอปพลิเคชันที่มีอยู่ด้วยทางเลือก Cloud-native
ปรับแพลตฟอร์ม (Replatform/Lift-and-Reshape): ทำการปรับให้เหมาะสมแบบเจาะจงระหว่างการย้ายข้อมูล
ปรับโครงสร้างใหม่ (Refactor/Re-architect): ออกแบบแอปพลิเคชันใหม่ให้เป็น Cloud-native


หลังจากนั้น ก็ขอพูดถึง Landing Zones: การสร้างรากฐานที่ปลอดภัย
Landing Zone คืออะไร?
Landing Zone คือสภาพแวดล้อม AWS แบบหลายบัญชีที่ออกแบบมาอย่างดีซึ่งทำหน้าที่เป็นรากฐานที่ปลอดภัยสำหรับการปรับใช้ Workload AWS Control Tower ทำให้การตั้งค่า Landing Zone เป็นแบบอัตโนมัติ โดยให้การควบคุมการกำกับดูแล ความปลอดภัย และกรอบการปฏิบัติตามข้อกำหนดที่กำหนดค่าไว้ล่วงหน้าซึ่งสอดคล้องกับแนวทางปฏิบัติที่ดีที่สุด. For more info: [1]
แนะนำอ่านอันนี้เพิ่มครับ Landing Zone Accelerator on AWS
Usecase เช่น:
1. Large-Scale Migration (การ Migrate ขนาดใหญ่)
สรุป: Landing Zone ช่วยให้องค์กรสามารถ migrate workloads จำนวนมากได้อย่างรวดเร็วและปลอดภัย โดยสร้าง foundation ที่มีมาตรฐานไว้ล่วงหน้า ลดเวลาในการเตรียม infrastructure และเพิ่มโอกาสทางธุรกิจ ตัวอย่าง ธนาคาร: จัดการ compliance และ security ข้ามหลายทีม
2. Compliance และ Security Requirements
สรุป: Landing Zone Accelerator ช่วยให้องค์กรปฏิบัติตามข้อกำหนดด้านความปลอดภัยและกฎระเบียบที่ซับซ้อนได้อย่างอัตโนมัติ ลดเวลาในการ setup ตัวอย่าง: Company: จัดการ 74 accounts ตาม Standard ลดเวลาสร้าง account จากหลายสัปดาห์เหลือไม่กี่ชั่วโมง, Public Sector: Automate configuration มากกว่า 35 AWS services ตาม Regulation
3. Multi-Account Governance (การจัดการหลาย Account)
สรุป: Landing Zone ช่วยจัดการหลาย AWS accounts อย่างเป็นระบบ แยก environment ชัดเจน จัดสรรค่าใช้จ่ายได้ถูกต้อง และสร้าง account ใหม่ได้อัตโนมัติตามมาตรฐานที่กำหนด


เครื่องมือในการเตรียมความพร้อม (Mobilize Phase) รวมถึง การ Discovery Portfolio มีเครื่องมือหลายอย่าง:
- AWS Application Discovery Service ที่ช่วยวางแผน migration projects โดยรวบรวมข้อมูลเกี่ยวกับ on-premises data centers รวมถึง configuration, usage และ behavior data ของ servers เพื่อให้เข้าใจ workloads ได้ดีขึ้น สามารถค้นหา dependencies ระหว่าง applications, configurations และ performance metrics ได้อย่างละเอียด
- AWS Migration Hub Service ที่ automate การวางแผนและติดตามการ migrate applications ข้ามหลาย AWS และ partner tools ช่วยให้เลือก migration tools ที่เหมาะสมกับความต้องการได้ และมองเห็นความคืบหน้าของการ migrate ทั้งหมดในที่เดียว
- AWS Landing Zone Solution ที่ช่วยตั้งค่า secure multi-account AWS environment ตาม AWS best practices สร้าง initial security baseline สำหรับ core accounts และ resources ก่อนเริ่ม migrate applications
- AWS Control Tower Service ที่ให้ automated landing zone สำหรับจัดการ AWS environment ทั้งระหว่างและหลัง migration มี dashboards ที่ให้ continuous visibility ของ AWS environment และช่วยจัดการ governance อย่างเป็นระบบ
- AWS CloudFormation Service ที่ automate การ provision infrastructure และรับประกันความสม่ำเสมอ (consistency) ข้าม environments โดยใช้ Infrastructure as Code (IaC) ในการกำหนดและจัดการ resources
- AWS Systems Manager Service ที่ให้ operational insights และ automation capabilities สำหรับจัดการ AWS environment ช่วยในการ patch management, configuration management และ automation ของงานต่างๆ
ต่อมา [3] Migrate and Modernize Phase การวางแผน (Designing the Target Environment) และออกแบบการย้ายข้อมูล (Planning and Designing a Migration)
แนวทางปฏิบัติที่ดีที่สุดในการวางแผนการย้ายข้อมูล, การวางแผนการย้ายข้อมูลที่ประสบความสำเร็จเกี่ยวข้องกับองค์ประกอบสำคัญหลายประการ:
-การวางแผน Wave: จัดกลุ่มแอปพลิเคชันเป็น Migration Waves ตามการพึ่งพา ความซับซ้อน และลำดับความสำคัญทางธุรกิจ เริ่มต้นด้วยแอปพลิเคชันที่มีความเสี่ยงต่ำเพื่อสร้างความมั่นใจและสร้างรูปแบบ
-การออกแบบสถาปัตยกรรม: ออกแบบสถาปัตยกรรมเป้าหมายตามหลักการ AWS Well-Architected Framework ใน 6 เสาหลัก ได้แก่ ความเป็นเลิศในการดำเนินงาน ความปลอดภัย ความน่าเชื่อถือ ประสิทธิภาพ การเพิ่มประสิทธิภาพต้นทุน และความยั่งยืน ***แนะนำให้ศึกษาเพิ่มเติม AWS Well-Architected Framework เพราะมีประโยชน์มาก***
-การประสานงาน Workstream: สร้าง Workstreams แบบขนานสำหรับด้านต่างๆ รวมถึงการย้ายข้อมูลแอปพลิเคชัน การย้ายข้อมูลฐานข้อมูล การกำหนดค่าเครือข่าย การใช้งานความปลอดภัย และการตั้งค่าการดำเนินงาน
-การจัดการความเสี่ยง: ระบุความเสี่ยงที่อาจเกิดขึ้นและพัฒนากลยุทธ์การบรรเทา รวมถึงขั้นตอนการย้อนกลับและแผนฉุกเฉิน
การเลือก AWS migration services and tools: Link
- AWS Application Migration Service ที่ช่วย migrate applications จาก physical, virtual หรือ cloud infrastructure มายัง AWS โดยใช้วิธี rehost (lift-and-shift) แบบอัตโนมัติ ทำการ replicate source servers แบบ continuous และ convert ให้ทำงานบน AWS native ได้โดยไม่ต้องเปลี่ยนแปลง application
- AWS Database Migration Service สำหรับ migrate databases ไปยัง AWS โดย source database ยังคงทำงานได้ตลอดการ migrate รองรับการ migrate ระหว่าง database engines ต่างชนิดกัน (heterogeneous) และชนิดเดียวกัน (homogeneous) พร้อมทั้งสามารถทำ continuous data replication ได้
- AWS DataSync ที่ automate การ transfer ข้อมูลระหว่าง on-premises storage และ AWS storage services หรือระหว่าง AWS storage services ด้วยกัน ทำงานได้เร็วและปลอดภัย รองรับการ schedule transfers และ verify data integrity อัตโนมัติ
- Direct Connect ที่สร้าง dedicated network connection ระหว่าง on-premises กับ AWS โดยไม่ผ่าน internet ให้ bandwidth ที่สม่ำเสมอ latency ต่ำ และความปลอดภัยสูงกว่าการเชื่อมต่อผ่าน internet
- DMS Schema Conversion เครื่องมือที่ช่วย convert database schema และ code objects จาก source database engine ไปเป็น format ที่เข้ากันได้กับ target database engine ทำงานร่วมกับ AWS Database Migration Service เพื่อ migrate heterogeneous databases
- AWS Storage Gateway Hybrid cloud storage service ที่เชื่อมต่อ on-premises applications กับ AWS cloud storage ให้ on-premises applications สามารถใช้ AWS storage ได้เหมือนเป็น local storage รองรับหลาย protocols และ use cases
- AWS Transfer Family Service ที่ให้ fully managed support สำหรับการ transfer files เข้าและออกจาก Amazon S3 หรือ Amazon EFS โดยใช้ protocols ที่เป็นมาตรฐานอย่าง SFTP, FTPS และ FTP โดยไม่ต้องจัดการ infrastructure
- AWS Transform คือ service ที่ใช้ agentic AI ช่วยเร่งและทำให้การ transform infrastructure, applications และ code เป็นไปอย่างง่ายดาย โดยมี specialized tools สำหรับ streamline การ modernization และ migration ของ workloads ต่างๆ
รูปแบบการย้ายข้อมูล (Database and Data Migration Services) สามารถทำลองทำlab ได้โดยดูข้อมูลส่วน recommend lab
รูปแบบการย้ายข้อมูลทั่วไปประกอบด้วย:
- การย้ายข้อมูลฐานข้อมูลโดยใช้ AWS DMS ด้วย Downtime น้อยที่สุด
- การย้ายข้อมูลเซิร์ฟเวอร์โดยใช้ AWS Application Migration Service สำหรับการจำลองแบบต่อเนื่อง
- การย้ายข้อมูลที่จัดเก็บโดยใช้ AWS DataSync หรือ AWS Snow Family สำหรับชุดข้อมูลขนาดใหญ่
- การปรับปรุงแอปพลิเคชันโดยใช้ Containers (Amazon ECS/EKS) หรือ Serverless (AWS Lambda)
กรอบการดำเนินการ (Integrating, Validating, and Cutting Over Applications)
- การดำเนินการย้ายข้อมูลปฏิบัติตามแนวทางที่มีโครงสร้าง:
- การเตรียมการ: กำหนดค่าการจำลอง สร้างการเชื่อมต่อระหว่างสภาพแวดล้อมต้นทางและปลายทาง และเตรียม Landing Zones ด้วยการควบคุมความปลอดภัยที่เหมาะสม
- การจำลอง: ใช้บริการย้ายข้อมูลของ AWS เพื่อจำลองข้อมูลและแอปพลิเคชันด้วยการซิงโครไนซ์อย่างต่อเนื่อง ลด Downtime ระหว่างการตัดเปลี่ยน
- การทดสอบ: ทำการทดสอบอย่างครอบคลุมรวมถึงการตรวจสอบการทำงาน การทดสอบประสิทธิภาพ การตรวจสอบความปลอดภัย และการฝึกซ้อมการกู้คืนจากภัยพิบัติ
- การตัดเปลี่ยน: ดำเนินกิจกรรมการตัดเปลี่ยนตามแผนระหว่างช่วงการบำรุงรักษา รวมถึงการอัปเดต DNS การเปลี่ยนแปลงการกำหนดเส้นทางการรับส่งข้อมูล และการซิงโครไนซ์ข้อมูลขั้นสุดท้าย
- การตรวจสอบ: ทำการตรวจสอบหลังการย้ายข้อมูลโดยใช้การดำเนินการหลังการเปิดตัวที่กำหนดไว้ล่วงหน้าเพื่อตรวจสอบการทำงานของแอปพลิเคชัน ความสมบูรณ์ของข้อมูล และพื้นฐานประสิทธิภาพ

Recommend Lab Hand On ที่แนะนำ AWS Workshops Migration, Modernization Workshops
- Application Migration with AWS Workshops:
- Migration and Modernization Immersion Day1: Link
- Migration and Modernization Immersion Day2: Link
- Migration and Modernization Immersion Day3: Link
- AWS online data migration workshop: Link
- AWS Database Migration Workshop: Link
Post-Migration: Modernizing and Optimizing an Application Migration หัวข้อที่เราสามารถพูดถึงเพิ่มเติมได้
- การเพิ่มประสิทธิภาพหลังการย้ายข้อมูล
- การปรับปรุงอย่างต่อเนื่อง
- การย้ายข้อมูลไม่ใช่จุดสิ้นสุดแต่เป็นจุดเริ่มต้นของการเพิ่มประสิทธิภาพ Cloud องค์กรควร:
- ตรวจสอบประสิทธิภาพ: ใช้ Amazon CloudWatch, AWS X-Ray และเครื่องมือของบุคคลที่สามเพื่อติดตามประสิทธิภาพแอปพลิเคชันและระบุโอกาสในการเพิ่มประสิทธิภาพ
- เพิ่มประสิทธิภาพต้นทุน: ใช้ประโยชน์จาก AWS Cost Explorer, AWS Compute Optimizer และ Reserved Instances/Savings Plans เพื่อลดค่าใช้จ่ายในการดำเนินงาน
- เพิ่มความปลอดภัย: ใช้ AWS Security Hub, Amazon GuardDuty และ AWS Config สำหรับการตรวจสอบความปลอดภัยและการปฏิบัติตามข้อกำหนดอย่างต่อเนื่อง
- ปรับปรุงแอปพลิเคชัน: ค่อยๆ Refactor แอปพลิเคชันเพื่อใช้ประโยชน์จากบริการ Cloud-native, Containers และสถาปัตยกรรม Serverless เพื่อความคล่องตัวและนวัตกรรมที่มากขึ้น
Reference: