Categories
Software Architecture

Triển Khai Các Dịch Vụ Của Bạn Và Giảm Chi Phí Với Azure 2: Cơ Sở Hạ Tầng Như Mã

Cơ sở hạ tầng như mã

IaC nắm bắt các định nghĩa môi trường dưới dạng mã khai báo, chẳng hạn như tài liệu JSON, để cung cấp và cấu hình tự động. Điều này cho phép bạn sử dụng cùng một phiên bản được sử dụng cho mã nguồn với các mẫu triển khai cơ sở hạ tầng.

Có rất nhiều lợi ích khi sử dụng IaC:

  • Nó làm giảm khả năng xảy ra lỗi của con người trong khi triển khai và quản lý cơ sở hạ tầng.
  • Nó triển khai cùng một mẫu nhiều lần để tạo ra các môi trường phát triển, thử nghiệm và sản xuất giống hệt nhau.
  • Nó cho phép giảm chi phí phát triển và môi trường thử nghiệm bằng cách tạo ra chúng theo yêu cầu.

Các mẫu Trình quản lý tài nguyên Azure (Azure Resource Manager templates)

Tất cả các dịch vụ Azure được giới thiệu trong hướng dẫn này đều dựa trên Trình quản lý tài nguyên Azure, bạn có thể sử dụng dịch vụ này để ghi lại môi trường của mình dưới dạng IaC nhờ các mẫu Trình quản lý tài nguyên Azure. Các mẫu này là các tệp JSON mô tả những gì bạn muốn triển khai và các tham số là gì.

Thật dễ dàng để tạo các mẫu Azure Resource Manager trong Visual Studio và Visual Studio Code bằng cách sử dụng các mẫu dự án Azure Resource Group. Bạn cũng có thể tạo các mẫu Trình quản lý tài nguyên Azure từ cổng Azure bằng cách nhấp vào nút Tập lệnh tự động hóa (Automation Script), có sẵn trên thanh menu của mọi tài nguyên trong cổng Azure. Điều này tạo ra mẫu Trình quản lý tài nguyên Azure cho tài nguyên đã cho và thậm chí tạo mã để xây dựng tài nguyên bằng Azure CLI, PowerShell, .NET và các tài nguyên khác.

Sau khi bạn có mẫu Trình quản lý tài nguyên Azure, bạn có thể triển khai nó cho Azure bằng cách sử dụng PowerShell, Azure CLI, Visual Studio và cổng Azure. Ngoài ra, bạn có thể tự động hóa việc triển khai nó trong một quy trình triển khai liên tục bằng cách sử dụng Azure DevOps.

Một ví dụ tuyệt vời về việc triển khai tài nguyên lên đám mây bằng Azure Resource Manager là nút Deploy to Azure được tìm thấy trong nhiều kho lưu trữ GitHub.

Terraform với Azure

Hashicorp Terraform là một công cụ mã nguồn mở để cung cấp và quản lý cơ sở hạ tầng đám mây. Các tệp cấu hình dựa trên mẫu của Terraform cho phép bạn định nghĩa, cung cấp và định cấu hình tài nguyên Azure theo cách có thể lặp lại và có thể dự đoán được.

Terraform là lựa chọn tuyệt vời để triển khai cơ sở hạ tầng trên nhiều nhà cung cấp đám mây. Điều này cho phép tạo công cụ nhất quán để quản lý từng định nghĩa cơ sở hạ tầng trong Azure và trên các nhà cung cấp đám mây khác.

Các tệp cấu hình dựa trên mẫu của Terraform cho phép bạn định nghĩa, cung cấp và định cấu hình tài nguyên Azure theo cách có thể lặp lại và có thể dự đoán được.

Terraform chia sẻ nhiều khả năng với các mẫu Trình quản lý tài nguyên Azure. Tuy nhiên, nó cũng bao gồm khả năng tạo các mô-đun có thể tái sử dụng để triển khai và cấu hình cơ sở hạ tầng. Các mô-đun này có thể được chia sẻ trên nhiều dự án Terraform, hoặc thậm chí được sử dụng nhiều lần trong cùng một dự án. Điều này có thể được tận dụng để tiết kiệm rất nhiều thời gian tự động hóa việc triển khai cơ sở hạ tầng.

Các công cụ IaC bổ sung

Có các công cụ IaC bổ sung có thể được sử dụng. Bạn có thể mang các kỹ năng và công cụ hiện có của mình, bao gồm cả AnsibleChef, để cung cấp và quản lý trực tiếp cơ sở hạ tầng Azure.

Leave a Reply

Your email address will not be published. Required fields are marked *