Industry

Technology

Hành trình dịch chuyển Microsoft workloads lên AWS

Nkid Group đang vận hành Microsoft workloads trên nhiều môi trường khác nhau như on-premises, các trung tâm dữ liệu đặt tại Vietnam, Microsoft Azure và AWS.

nkid_heading_logo1

LĨNH VỰC:

Retail

CÔNG NGHỆ:

AWS

THÁCH THỨC CỦA DOANH NGHIỆP

Với hơn 44 Trung tâm TiniWorld, 35 cửa hàng TiNiStore cũng như 2079 cửa hàng bán lẻ phục vụ 8 triệu khách hàng trên khắp Việt Nam. NKid đang ngày càng mở rộng với các trung tâm và cửa hàng mới để phục vụ khách hàng trên khắp đất nước.

Nkid đang vận hành Microsoft workloads trên nhiều môi trường khác nhau như on-premises, trung tâm dữ liệu tại Việt Nam, Microsoft Azure và AWS. Gần đây, doanh nghiệp muốn chuyển nhiều khối lượng công việc hơn sang AWS để tận dụng nhiều lợi ích từ AWS như khả năng mở rộng, ổn định và tích hợp nhiều dịch vụ. Ưu tiên chính là hai ứng dụng web .NET Core 2.2 đang chạy trên Windows Server 2016 với Database Microsoft SQL Server 2016 Standard. Hai ứng dụng web này đều chạy trên 2 máy ảo Windows tiêu chuẩn với server web IIS được thiết lập thủ công.

Nhu cầu khách hàng

  • Di chuyển Web server và Database server lên AWS Cloud
  • Giám sát và xử lý ngay lập tức sự cố phát sinh trên môi trường Production
  • Dễ dàng quản trị và bảo trì hạ tầng (không cần phải kết nối từ xa đến Windows Server và thiết lập IIS web server)
  • Tận dụng tối đa các dịch vụ từ AWS như dịch vụ kỹ thuật số và trực tuyến, kết nối từ xa và tự động hóa, giám sát và báo cáo.
  • Tự động co giãn linh hoạt theo theo nhu cầu
  • Tối ưu hóa chi phí cơ sở hạ tầng

Để đáp ứng những nhu cầu trên, chúng ta cần một dịch vụ hỗ trợ tự động mở rộng và cho phép khách hàng quản lý các server từ UI (Bảng điều khiển AWS) hỗ trợ tốt cho Microsoft Windows Server và IIS.

GIẢI PHÁP

Ứng dụng của doanh nghiệp được di chuyển lên EC2 cho Microsoft Windows Server, nơi mà tài nguyên được hỗ trợ bởi ứng dụng Elastic Beanstalk .NET trên Windows. Trên nền tảng được quản lý này, IIS web server được cấu hình để chạy các ứng dụng .NET Core bằng cách khai báo tập tin manifest.

Điểm nổi bật của giải pháp:

• Elastic Beanstalk hỗ trợ cho cả hai hoạt động .NET Core
+ Sử dụng nền tảng được quản lý toàn phần: .NET trên Windows Server

• Lợi ích từ Elastic Beanstalk
+ Được cấu hình sẵn để chạy .NET Core
+ Hỗ trợ cân bằng tải và mở rộng tự động
+ Giám sát UI từ AWS Console
+ Dễ dàng sử dụng cho người dùng

• RDS với MS SQL Server Standard
• Sử dụng RDS, Database được đảm bảo sao lưu và khả năng phục hồi
• Hỗ trợ sao lưu với S3, EBS snapshots và RDS snapshots
• CloudWatch để theo dõi, ghi nhận và báo cáo khi cần
• Lambda tích hợp với EventBridge để lên lịch sự kiện
• Dịch vụ VPC; Kết nối VPN và NAT Gateway

LỢI ÍCH MANG LẠI

Điện toán đám mây đã mang lại rất nhiều lợi ích cho Nkid. Với sự giám sát hoạt động hệ thống tốt hơn, kết hợp sự tự động, tính linh hoạt của môi trường giúp đáp ứng hai yêu cầu chính từ doanh nghiệp. Thứ nhất là hệ thống cần có khả năng đáp ứng linh hoạt khi tăng lưu lượng truy cập trong thời gian ngắn. Cho phép nó hoạt động tốt và vẫn giữ trải nghiệm người dùng tốt. Tương tự nó cũng tự động loại bỏ các tài nguyên dư thừa. Vì hệ thống có thể được thu nhỏ với số lượng phiên bản tối thiểu trong thời gian lưu lượng truy cập thấp và ngoài giờ hoạt động. Tối ưu hóa chi phí là lợi ích chính thứ hai mà hệ thống mang lại. Giám sát hệ thống CloudWatch cho phép Nkid cập nhật liên tục tình trạng hệ thống và phản hồi nhanh chóng đối với mọi sự cố gặp phải.

Việc tự động hóa bao gồm tất cả các tập lệnh, yaml files, mô hình mẫu CloudFormation và chi tiết triển khai được cung cấp bởi Renova Cloud. Giúp cho Nkid có cái nhìn tổng quát, đầy đủ và hiểu về các ứng dụng và hệ thống. Với mô hình Infrastructure as Code (IaC), mọi thứ trong hệ thống đều được tự động hóa. Nếu một tài nguyên có vấn đề, nó sẽ bị dừng lại và tài nguyên mới sẽ tự động được thiết lập. Do đó, không cần phải truy cập thủ công vào server web IIS web server hoặc ứng dụng trên hệ thống tệp vật lý trên Windows Server. Nhiều sự cố có thể được khắc phục với CloudWatch Logs. Thay vì phải truy cập từ xa vào server để phân tích trạng thái ứng dụng và tải xuống các đoạn log. Điều này làm giảm đáng kể khối lượng công việc của quản trị viên và cho phép nhóm tập trung vào các nhiệm vụ quan trọng khác.

Nkid Group và Renova Cloud đã thành công trong việc hợp tác di chuyển khối lượng công việc Microsoft lên AWS. Sẽ còn nhiều kế hoạch di chuyển cho các ứng dụng cũ .NET framework 4.5 sang Elastic Beanstalk .NET trên nền tảng Windows Server. Quá trình dịch chuyển cũng sẽ tương tự. Mặc dù nền tảng CI/CD được lựa chọn, nhưng Travis CI sẽ không được sử dụng vì nó chỉ hỗ trợ hệ điều hành Linux. Do đó, Jenkins trên Windows Server trong EC2 sẽ được xem xét trong dự án tiếp theo.

RELATED STORIES