![Search icon](https://hackernoon.imgix.net/search-new.png?w=19&h=19)
Trong thời gian làm việc tại Palantir, tôi đã dành nhiều thời gian triển khai phần mềm của chúng tôi trong môi trường đám mây và cũng dành nhiều thời gian triển khai phần mềm của chúng tôi trong môi trường tại chỗ (on-premise) (bao gồm cả việc thành lập một nhóm chỉ để làm điều đó). Tôi nhận thấy rằng mặc dù có sự ưa chuộng chung đối với việc triển khai đám mây, nhưng vẫn có những ưu điểm khi triển khai tại chỗ.
Sự chuyển đổi từ điện toán tại chỗ sang điện toán đám mây
Trong những năm gần đây, bối cảnh CNTT ngày càng ủng hộ điện toán đám mây, được thúc đẩy bởi tính linh hoạt của các dịch vụ Cơ sở hạ tầng dưới dạng dịch vụ (IaaS) và Nền tảng dưới dạng dịch vụ (PaaS). Thị trường điện toán đám mây toàn cầu đã tăng trưởng từ 24,63 tỷ đô la vào năm 2010 lên 156,4 tỷ đô la vào năm 2020 và xu hướng đó vẫn tiếp tục và được dự đoán sẽ vượt qua 1 nghìn tỷ đô la vào năm 2028. Sự gia tăng nhanh chóng này được thúc đẩy bởi cả nhu cầu điện toán mới của thế giới, nhưng cũng là sự di chuyển của các quy trình làm việc tại chỗ lên đám mây.
Có những lý do chính đáng cho sự thay đổi này, đám mây cho phép cung cấp tài nguyên nhanh chóng, dự phòng về mặt địa lý và chuyển từ chi phí vốn (CapEx) sang chi phí hoạt động (OpEx). Tuy nhiên, tôi tin rằng có một số tình huống nhất định mà việc sử dụng cơ sở hạ tầng tại chỗ, đặc biệt là khi các yêu cầu kỹ thuật cụ thể, chẳng hạn như độ trễ xác định, kiểm soát cấp phần cứng và các biện pháp bảo mật nghiêm ngặt, là tối quan trọng.
Trước khi đi sâu vào việc so sánh giữa thiết lập đám mây và thiết lập tại chỗ, chúng ta hãy dành một chút thời gian để tìm hiểu cách thiết lập thông thường của từng lần triển khai.
Thiết lập Canonical On-Prem
Thiết lập tại chỗ điển hình bao gồm một môi trường được kiểm soát hoàn toàn, trong đó doanh nghiệp quản lý tất cả các lớp của ngăn xếp công nghệ. Bao gồm:
Lớp vật lý : Phần cứng như máy chủ, mảng lưu trữ (SAN/NAS) và thiết bị mạng (bộ định tuyến, bộ chuyển mạch, tường lửa). Bạn cũng cần một trung tâm dữ liệu để chạy máy chủ của mình.
Lớp ảo hóa : Thường được triển khai bằng cách sử dụng các chương trình quản lý ảo như VMware vSphere, Microsoft Hyper-V hoặc các giải pháp thay thế nguồn mở như KVM, cung cấp tài nguyên ảo hóa và khả năng cô lập.
Lưu trữ và tính toán : Được quản lý trực tiếp, thường được tối ưu hóa cho khối lượng công việc cụ thể với cấu hình tùy chỉnh (ví dụ: mức RAID, cơ chế lưu trữ đệm).
Mạng : Kiểm soát toàn bộ các giao thức mạng, định tuyến và chính sách bảo mật, cho phép tinh chỉnh QoS (Chất lượng dịch vụ) và giảm thiểu độ trễ.
Thiết lập Canonical Cloud
Trong thiết lập đám mây thông thường, cơ sở hạ tầng được tóm tắt và quản lý bởi nhà cung cấp đám mây, cung cấp:
Cơ sở hạ tầng ảo hóa : Các phiên bản tính toán, mạng ảo và lưu trữ được cung cấp thông qua API. Các công nghệ gốc đám mây như Kubernetes và kiến trúc không máy chủ được tận dụng để phối hợp và mở rộng quy mô.
Dịch vụ được quản lý : Cơ sở dữ liệu (ví dụ: Amazon RDS, Google Cloud SQL), hồ dữ liệu, dịch vụ AI/ML và các công cụ phân tích nâng cao khác được cung cấp dưới dạng dịch vụ được quản lý, giúp giảm chi phí vận hành.
Kiến trúc đa thuê bao : Tài nguyên thường được chia sẻ giữa nhiều thuê bao, trong đó ảo hóa và chứa dữ liệu cung cấp khả năng cô lập.
So sánh
Quy mô và tốc độ : Đám mây vượt trội về khả năng mở rộng đàn hồi, được hỗ trợ bởi các cơ chế mở rộng theo chiều ngang như nhóm tự động mở rộng và các chức năng không có máy chủ. Cơ sở hạ tầng tại chỗ đòi hỏi phải lập kế hoạch năng lực cẩn thận và đầu tư vào phần cứng vật lý, thường liên quan đến việc mở rộng theo chiều dọc. Nếu bạn là một công ty khởi nghiệp không thể chờ 9 tháng để có máy tính mới, đám mây là giải pháp phù hợp. Tuy nhiên, nếu bạn là một doanh nghiệp lớn có khả năng dự báo tải máy tính trong năm tới, thì tại chỗ có thể là một lựa chọn khả thi.
Độ trễ: Thiết lập tại chỗ có thể đạt được độ trễ thấp xác định do sự gần gũi của các máy chủ và kiểm soát trực tiếp các đường dẫn mạng. Đối với các ứng dụng nhạy cảm với độ trễ (ví dụ: giao dịch tần suất cao, phân tích thời gian thực), điều này có thể rất quan trọng. Môi trường đám mây, mặc dù được tối ưu hóa cho độ trễ thấp thông qua các tính năng như AWS Direct Connect hoặc Google Cloud Interconnect, có thể gây ra độ trễ thay đổi do các yếu tố như tắc nghẽn mạng (vấn đề hàng xóm ồn ào) và chi phí ảo hóa. Vì vậy, trong trường hợp độ trễ có thể dự đoán được và quy trình làm việc có độ trễ thấp là rất quan trọng đối với doanh nghiệp của bạn, thì thiết lập tại chỗ có thể không phải là một ý tưởng tồi!
Chi phí: Các mô hình định giá đám mây (trả tiền khi sử dụng, các phiên bản được đặt trước) cung cấp tính linh hoạt nhưng có thể trở nên tốn kém đối với các khối lượng công việc lớn, liên tục, đặc biệt là với chi phí dữ liệu đầu ra cao. Các giải pháp tại chỗ, mặc dù yêu cầu CapEx ban đầu đáng kể để mua phần cứng, có thể cung cấp tổng chi phí sở hữu (TCO) thấp hơn theo thời gian, đặc biệt là đối với các khối lượng công việc có thể dự đoán được, sử dụng nhiều. Các mô hình đám mây có thể trở nên đắt đỏ, Dropbox đã tiết kiệm được 16,8 triệu đô la vào năm 2016 khi chuyển phần lớn dung lượng lưu trữ của mình khỏi AWS sang các trung tâm dữ liệu của riêng mình. Sau đây là một bài viết đi sâu hơn vào cách tại chỗ có thể giúp bạn tiết kiệm $$ .
Chuyên môn: Môi trường tại chỗ đòi hỏi chuyên môn sâu về bảo trì phần cứng, kỹ thuật mạng và quản trị hệ thống. Ngược lại, môi trường đám mây chuyển giao phần lớn việc quản lý cơ sở hạ tầng cho nhà cung cấp, cho phép các nhóm tập trung vào phát triển và triển khai ứng dụng, thường sử dụng các phương pháp DevOps và các công cụ Cơ sở hạ tầng dưới dạng Mã (IaC) như Terraform hoặc CloudFormation. SRE và quản trị viên hệ thống là giống loài hiếm có hiện nay và bạn có thể sẽ cần một khối lượng tính toán đáng kể để biện minh cho việc thuê một nhóm những người này để duy trì và vận hành thiết lập tại chỗ (và đừng quên bạn cần một sự luân phiên trực điện thoại bền vững!)
Bảo mật: Thiết lập tại chỗ cung cấp khả năng kiểm soát hoàn toàn đối với cấu hình bảo mật, từ các biện pháp bảo mật vật lý đến phân đoạn mạng chi tiết và giao thức mã hóa. Kiểm soát này rất cần thiết để đáp ứng các tiêu chuẩn tuân thủ cụ thể (ví dụ: PCI-DSS, HIPAA). Ngược lại, môi trường đám mây yêu cầu phải tin tưởng vào các biện pháp bảo mật của nhà cung cấp, mặc dù các tính năng như Đám mây riêng ảo (VPC), phần cứng chuyên dụng (ví dụ: AWS Outposts) và khóa mã hóa do khách hàng quản lý có thể giảm bớt một số lo ngại. Nếu bạn đang chạy các quy trình công việc đòi hỏi các biện pháp kiểm soát và giao thức bảo mật này, thì triển khai tại chỗ có thể là cách duy nhất. Nếu không, có thể cân nhắc đến bảo mật chặt chẽ hơn! Tuy nhiên, tôi nghĩ rằng các nhà cung cấp đám mây hiện tại đang thích nghi và có các dịch vụ đáp ứng một số tiêu chuẩn này (ví dụ: AWS GovCloud ).
Phần kết luận
Trong khi điện toán đám mây cung cấp tính linh hoạt, khả năng mở rộng và khả năng truy cập vào các dịch vụ được quản lý tiên tiến vô song, các giải pháp tại chỗ vẫn không thể thiếu trong các tình huống đòi hỏi độ trễ thấp, bảo mật cao và kiểm soát hoàn toàn các cấu hình phần cứng và phần mềm. Khi bối cảnh CNTT phát triển, quyết định giữa đám mây và tại chỗ nên được hướng dẫn bởi các yêu cầu kỹ thuật và kinh doanh cụ thể, đảm bảo rằng cơ sở hạ tầng đã chọn phù hợp với các mục tiêu chiến lược của tổ chức và bạn có thể sử dụng các yếu tố trên và so sánh để đưa ra lựa chọn sáng suốt hơn về thiết lập nào phù hợp hơn với mình! Chúc may mắn!