LÀM THẾ NÀO ĐỂ LÊN KẾ HOẠCH NGÂN SÁCH ĐÁM MÂY HIỆU QUẢ
Binh Nguyen
Head of DevOps
Mục lục
Tất cả các dự án lớn đều cần lập kế hoạch rõ ràng và kỹ lưỡng ngay từ ban đầu. Và một phần quan trọng của việc lập kế hoạch là ngân sách, số tiền bạn cần chi tiêu và vào việc gì. Tuy nhiên, việc tạo ra một ngân sách đám mây chính xác, không phải là dễ dàng!
Trước đây, các dự án IT thường không có quá nhiều sự thay đổi. Các hạng mục có giá trị lớn như mua và bảo trì máy chủ. Thiết bị mạng cùng với các chi phí liên tục như điện, làm mát và bảo mật cơ sở vật chất. Xây dựng ngân sách có thể không dễ dàng, nhưng không tiềm ẩn nhiều chi phí phát sinh.
Tuy nhiên, mọi thứ đã thay đổi khi chuyển sang dịch vụ lưu trữ trên nền tảng điện toán đám mây. Bạn sẽ không phải mua và lắp đặt giá đỡ phòng máy chủ trị giá 100.000 đô la nữa mà sẽ làm việc với các công cụ ảo thay thế chúng.
Bạn phải trả các khoản phí liên tục cho máy chủ ảo, vùng chứa, chức năng không có máy chủ, cơ sở dữ liệu được quản lý, băng thông mạng, thiết bị tường lửa, lưu trữ dữ liệu và phần mềm giám sát khi triển khai một ứng dụng phức tạp, nhiều tầng trên đám mây. Giám sát liên tục để thay đổi cấu hình tăng hoặc giảm theo quy mô. Để đáp ứng với nhu cầu biến động hoặc sự cố hệ thống và tính sẵn sàng cao.
Trên hết, AWS liên tục cập nhật các tính năng và giá cả cho các dịch vụ hiện có của họ. Họ giới thiệu hàng chục dịch vụ mới mỗi năm, không chỉ ảnh hưởng đến số tiền bạn sẽ trả theo thời gian (thường là lợi thế của bạn) mà còn ảnh hưởng đến cách bạn thực hiện công việc.
Nhưng với sự thay đổi thường xuyên này, xây dựng ngân sách rõ ràng là rất quan trọng. Đừng bỏ lỡ bài viết giúp bạn thực hiện quá trình này.
Những thách thức khi xây dựng ngân sách
Vậy, điều gì đã khiến đám mây trở nên phức tạp?
Trước đây, một công ty quy mô trung bình có thể duy trì các trung tâm dữ liệu với các nhóm máy chủ được xây dựng với một số ít kiến trúc phần cứng. Máy chủ cơ sở dữ liệu có thể có ổ đĩa lớn hơn. Trong khi máy chủ ứng dụng sẽ được cung cấp nhiều bộ nhớ hơn. Nhưng đối với tất cả các mục đích thực tế, các tùy chọn có sẵn là rất ít và sự kết hợp phần lớn sẽ ổn định trong nhiều năm tại một thời điểm.
Điều đó hoạt động như thế nào trên đám mây AWS?
Hiện tại có hơn 200 dịch vụ riêng biệt, mỗi dịch vụ cung cấp tính năng riêng biệt. Có thể được sử dụng riêng hoặc là thành phần đóng góp triển khai cho mô hình lớn hơn. Và mỗi dịch vụ sử dụng mô hình thanh toán duy nhất của riêng mình.
Các loại máy chủ ảo?
Hiện tại, có hơn 40 họ loại có sẵn cho dịch vụ EC2. Mỗi họ được tối ưu hóa cho các trường hợp sử dụng khác nhau. Và hầu hết các họ này bao gồm ít nhất một tá loại phiên bản cụ thể, với số lượng nhiều hơn được thêm vào mỗi tháng. Và nếu điều đó vẫn chưa đủ, chi phí của chúng thay đổi thường xuyên. Giống như phần còn lại của các dịch vụ AWS — chúng trở nên rẻ hơn đối với các lớp phiên bản hiện có. Trong khi đó, các lớp phiên bản mới hơn, tốt hơn được giới thiệu với mức giá cao hơn.
Ngoài ra, các ứng dụng cần phải thay đổi mọi lúc.
Sản phẩm mới, tính năng mới, khách hàng tham gia, khách hàng rời đi. Tất cả đều ảnh hưởng đến quy mô cơ sở hạ tầng đám mây của bạn. Ví dụ: thêm một microservice mới vào ứng dụng của bạn có thể trông đơn giản từ góc độ kiến trúc giải pháp. Nhưng nó có thể chuyển thành việc tạo một node khác cho cụm Kubernetes. Vậy làm thế nào để xác định ngân sách khi nhu cầu liên tục thay đổi?
Để duy trì tính khả dụng cao
Bạn thường sẽ định cấu hình dịch vụ của mình để tự động tăng và giảm quy mô để đáp ứng nhu cầu thay đổi. Nhưng ngay cả những thay đổi về mức sử dụng bình thường do mô hình mua sắm theo mùa của khách hàng. Đã có thể ảnh hưởng đáng kể đến tỷ lệ thanh toán của bạn cho nhiều dịch vụ.
Ngân sách đám mây rõ ràng không dành cho những người yếu tim.
Ngân sách đám mây: Điều gì cần xem xét đầu tiên
Để bắt đầu, bạn cần xác định ngay từ đầu là dự đoán hoặc mục tiêu doanh thu của tổ chức. Điều này nhằm đảm bảo chi phí cơ sở hạ tầng dự trù là thực tế. Bạn có thể có một ngân sách bằng bất kỳ con số nào. Nhưng nó cần phải thực tế theo nghĩa là nó phải phù hợp với ngân sách IT tổng thể. Và nó phải nhỏ hơn doanh thu dự kiến để đảm bảo công ty tạo ra lợi nhuận.
Nếu bạn đang bắt đầu với hành trình đám mây của mình, việc hiểu chiến lược triển khai có thể giúp hiểu rõ hơn về các chi phí liên quan. Ví dụ: nếu bạn đang thực hiện lift và shift một ứng dụng từ môi trường tại chỗ của mình. Kiến trúc có lẽ sẽ đơn giản hơn trên đám mây và ít tốn kém hơn. Nếu bạn đang thực hiện tái kiến trúc hoàn chỉnh, có thể sẽ cần nhiều dịch vụ hơn, và sẽ tốn nhiều chi phí hơn.
Khi di chuyển mô hình hiện có sang đám mây.
Hoặc ngay cả khi bạn chỉ đang so sánh các tùy chọn của mình. Hãy tạo các ngân sách song song. Khái niệm “ngân sách song song” áp dụng cho nhiều môi trường cơ sở hạ tầng cho dự án lớn. Một cho nhóm phát triển, một môi trường dàn dựng để thử nghiệm và sau đó là môi trường thực tế. Mỗi cái đi kèm với chi phí riêng vì những môi trường này thường có kích thước khác nhau.
Tương tự, khi bắt đầu với đám mây, liệu on-premises có tiếp tục hoạt động trong tương lai gần hay không là một yếu tố cần xem xét.
Sử dụng cả hai môi trường sẽ làm tăng tổng chi phí sở hữu (TCO). Và ngân sách của bạn sẽ cần phải giảm thiểu điều đó càng nhiều càng tốt.
Điều quan trọng nữa là phải phân biệt giữa chi phí vốn (capex) và chi phí hoạt động (opex).
Capex là số tiền bạn chi trước cho thiết bị máy tính và cơ sở hạ tầng vật lý. Ngược lại, Opex biểu thị chi phí liên tục hàng tháng. Các triển khai đám mây thuần túy, được lập hóa đơn tăng dần cho việc sử dụng tài nguyên thực tế, nên là opex. Nhưng cơ sở hạ tầng mà bạn có thể chạy trong trung tâm dữ liệu của riêng mình, như là hybrid, sẽ cần đầu tư chi phí trước. Tuy nhiên, cả hai đều là những yếu tố chính để tính TCO ứng dụng của bạn. Và không thể bỏ qua.
Bạn cũng nên hiểu sự khác biệt giữa các dịch vụ được quản lý và không được quản lý.
Các dịch vụ được quản lý bao gồm AWS Relational Database Service (RDS) và Elastic Beanstalk. Bạn chỉ cần định cấu hình một số cài đặt, sau đó thêm mã hoặc dữ liệu của mình. AWS quản lý cơ sở hạ tầng bên dưới một cách vô hình. Các dịch vụ không được quản lý bao gồm các EC2, nơi bạn xử lý tất cả các cập nhật và cấu hình, ít nhất là ở cấp phần mềm.
Cuối cùng, một ngân sách hoàn chỉnh sẽ tính đến mọi yếu tố tiết kiệm chi phí mà bạn có thể đã có sẵn như Reserved Instances và Savings Plans.
Bạn sẽ cần máy chủ chạy hết công suất 24 giờ mỗi ngày? Để có thể thu được nhiều lợi nhuận nhất bằng cách mua EC2 Reserved Instances. Tuy nhiên, nhu cầu không liên tục và hiếm khi kéo dài hơn vài giờ cùng một lúc. Có thể được đáp ứng tốt nhất bằng cách sử dụng On-Demand Instances. Để tránh sử dụng các cam kết không hiệu quả. Xử lý dữ liệu nội bộ không cần đáp ứng liên tục có thể xài Spot Instances. Và các đoạn mã lập trình ngắn gọn thường có thể được phục vụ hiệu quả nhất từ dịch vụ “không máy chủ” của Amazon, Lambda.
Điều quan trọng, như chúng ta đã thấy, là hiểu phương pháp tốt nhất để chạy khối lượng công việc của bạn. Và chúng phải hoàn thành những gì. Điểm mấu chốt là số tiền bạn chi tiêu phải chính xác. Và có thể dự đoán đáp ứng các mục tiêu lớn hơn của tổ chức.
Do đó, để tạo một ngân sách hữu ích, bạn cần hiểu:
-Ứng dụng của bạn và mô hình kinh doanh tổng thể.
-Tổng chi phí của một khách hàng là bao nhiêu? Một khách hàng đang sử dụng bao nhiêu tài nguyên đám mây?
-“Phương pháp tiếp cận đám mây” sẽ hoạt động như thế nào đối với ứng dụng cụ thể của bạn.
-Cho dù bạn sẽ tích hợp đám mây của bên thứ ba hoặc on-premises vào cơ sở hạ tầng của mình. Liệu điều đó có nghĩa là bạn sẽ cần mua kết nối mạng cao cấp hay không.
-Những dịch vụ máy tính, lưu trữ dữ liệu, cơ sở dữ liệu, mạng, tường lửa và không máy chủ nào mà bạn sẽ sử dụng cho ứng dụng cụ thể của mình.
-Mỗi dịch vụ đó được lập hóa đơn như thế nào.
-Bạn sẽ sử dụng bao nhiêu dịch vụ theo thời gian.
Ngân sách đám mây: Nguyên tắc chung cần biết
Khi bạn đã hoàn thành cơ bản, việc phát triển ngân sách đám mây vẫn sẽ cần một số bước chuẩn bị.
Trước hết,
hãy tập hợp các đội liên quan trực tiếp đến ngân sách. Điều này bao gồm ứng dụng, DevOps, SecOps, vận hành và tài chính. Hãy cố gắng biến nó thành nỗ lực của cả nhóm. Bởi vì lập ngân sách không phải là nỗ lực của một người, thậm chí là nỗ lực của một nhóm.
Thứ hai,
đề ra và thực hiện một chiến lược bền vững cho tất cả các tài nguyên của bạn. Một inch trong trường hợp này sẽ đưa bạn đi vài dặm. Bất kỳ ai cũng có thể gắn thẻ tài nguyên của họ. Nhưng điều cần làm ở đây là thống nhất một kiểu gắn thẻ và triển khai như một phần của quá trình tự động hóa cấp phép cơ sở hạ tầng của bạn.
Việc gắn thẻ tài nguyên một cách hiệu quả sẽ cung cấp khả năng hiển thị chi tiết về chi phí của mỗi ứng dụng/dịch vụ.
Thứ ba,
bạn có thể muốn chia nhỏ các tài khoản AWS thành các “phần” dễ quản lý hơn. Bằng cách sử dụng chiến lược nhiều tài khoản. Ví dụ: sử dụng tài khoản cho khối lượng công việc phát triển. Và một tài khoản cho sản xuất sẽ giúp bạn tách ngân sách phát triển khỏi ngân sách hoạt động.
Nền tảng đám mây AWS, có rất nhiều công cụ tài chính mạnh mẽ đã có sẵn. Tuy có thể gặp phải việc phức tạp như thanh toán AWS. Nhưng công ty luôn nỗ lực để giúp bạn hình dung các khoản phí sắp phải trả.
Ví dụ: AWS Pricing Calculator, cho phép bạn nhập chi tiết chính xác về các tài nguyên AWS mà bạn thực sự định sử dụng. Máy tính được thiết kế để tích hợp với tất cả các dịch vụ AWS chính. Bằng cách này, các ước tính bạn nhận được sẽ phản ánh chính xác các điều kiện thanh toán thực tiễn. Ngoài ra còn có Simple Monthly Calculator được cho là sẽ thay thế Pricing Calculator.
Khi bạn bắt đầu sử dụng các dịch vụ AWS, có đầy đủ công cụ giúp bạn chuẩn hóa những gì bạn đang chạy và bạn sẽ phải trả bao nhiêu chi phí. Mô tả về toàn bộ các dịch vụ quản lý chi phí của Amazon được thu thập trên trang này.
Những công cụ đó bao gồm:
–AWS Cost and Usage Report để xem các báo cáo chi tiết liên tục và lịch sử chi tiêu của bạn.
–Billing & Cost Management Dashboard, trung tâm để tạo và quản lý ngân sách, lịch sử chi tiêu và báo cáo sử dụng.
–AWS Cost Categories, cho phép sắp xếp các tài nguyên đang hoạt động theo tài khoản, dịch vụ, loại phí hoặc kết hợp với chiến lược gắn thẻ tài nguyên.
–AWS Application Cost Profiler để chia nhỏ chi tiêu của bạn cho tài nguyên của người dùng cá nhân. Các tổ chức đủ lớn, có nhiều nhóm triển khai tài nguyên một cách độc lập sẽ dễ theo dõi những gì đang diễn ra.
AWS Control Tower được thiết kế để cho phép bạn xem và kiểm soát các quyền và quyền truy cập cho những người có nhiều tài khoản AWS (thông qua AWS Organizations) từ một trang dựa trên trình duyệt.
Và đừng quên tận dụng các công cụ nội bộ của riêng bạn.
Tạo một kế hoạch được tham số hóa trong một bảng tính mô tả nhiều tình huống sử dụng và chia sẻ nó với tất cả các bên liên quan của dự án. Bao gồm đại diện từ các nhóm vận hành, bảo mật, phát triển, quản lý và tài chính của bạn. Điều này liên quan đến cách tiếp cận đến các nhóm khác nhau ngay từ đầu.
Trên tất cả, hãy luôn cởi mở, kết hợp dữ liệu có liên quan từ mọi nơi và tiếp tục tinh chỉnh kế hoạch của bạn cho đến khi bạn đạt được sự hoàn hảo.
Thực hiện quản trị
Bằng cách này hay cách khác, bất kỳ quyết định nào đều sẽ tác động đến chi tiêu. Để đảm bảo rằng dự án của bạn không bao giờ vượt quá tầm kiểm soát, mọi thứ xảy ra phải được quản lý và xem xét. Nói cách khác, cần có yếu tố quản trị để giám sát và thực thi ngân sách. Yếu tố này nên kết hợp giám sát quản trị thông qua cả kiểm toán tự động và thủ công.
AWS CloudWatch có thể được thiết lập để giám sát tài khoản khi có các thanh toán phát sinh. Báo động thanh toán được kích hoạt khi tài nguyên bắt đầu tạo ra chi phí ở mức trên giới hạn đặt trước.
Bạn có thể hạn chế rủi ro, nơi các cá nhân hoặc thậm chí nhóm trong tổ chức của bạn bỏ qua quản lý để âm thầm khởi chạy tài nguyên của riêng họ. Bằng cách sử dụng IAM người dùng và nhóm. Người dùng và nhóm sẽ được thiết lập để cho phép các cá nhân hoặc nhóm có đủ quyền truy cập để thực hiện công việc của họ.
Kết luận
Lập ngân sách chính xác cho việc triển khai đám mây không diễn ra trong một sớm một chiều. Bạn cần đảm bảo rằng bạn đang nhận được các chi tiết kỹ thuật hỗ trợ mục tiêu tổ chức. Đó là một quá trình đòi hỏi thời gian, sự suy nghĩ cẩn thận và đóng góp ý kiến từ tất cả các chuyên gia mà bạn có thể tiếp cận.
Bắt đầu với quy mô nhỏ, có thể là lập ngân sách cho một môi trường, ứng dụng. Sau đó, sử dụng kiến thức và kinh nghiệm bạn có được để xây dựng ngân sách tổng thể.
Khi bạn tạo ngân sách đám mây của mình, bạn sẽ cần phải tập hợp các quy trình phù hợp để phục vụ mục tiêu lâu dài.
May mắn thay, Renovisor có thể giúp bạn điều đó. Hãy liên lạc ngay để tìm hiểu cách Renovisor tự động hóa tiết kiệm chi phí đám mây.