By Vo Thi Phuong Anh, Alibaba Cloud Solutions Architect of Vietnam
1) Terraform là gì?
Terraform là một công cụ mã nguồn mở cho phép định nghĩa Infrastructure as Code - IaC đồng thời quản lý hệ thống bằng code và tự động hóa việc triển khai hạ tầng. Terraform có thể được dùng để quản lý các tài nguyên như máy chủ, mạng, cơ sở dữ liệu và các tài nguyên khác của các nhà cung cấp đám mây khác nhau.
Terraform sử dụng ngôn ngữ HCL (HashiCorp Configuration Language) để định nghĩa cấu trúc hạ tầng, kể cả trên Cloud. Alibaba Cloud là một trong những nhà cung cấp Cloud đầu tiên cho phép tích hợp Terraform, bạn có thể tạo các tài nguyên như ECS, OSS, CDN, RDS bằng Terraform… Bài viết này sẽ hướng dẫn bạn tạo tài nguyên trên Alibaba Cloud bằng cách sử dụng Terraform.
2) Cách tạo các resource Alibaba Cloud bằng Terraform
Để bắt đầu tạo các resource Alibaba Cloud bằng Terraform, chúng ta cần lên trước các tài nguyên cần thiết cùng với một số thông tin cơ bản của chúng, ở đây giả sử chúng ta muốn tạo các tài nguyên sau bằng Terraform:
Sau khi có được danh sách tài nguyên mong muốn, tiến hành sử dụng Terminal để tạo resource Alibaba Cloud bằng Terraform.
Bước 1: Download Terraform
Tham khảo cách tải Terraform tương ứng với hệ điều hành của bạn tại đây.
Sau khi cài đặt, bạn có thể kiểm tra Terraform đã được cài đặt thành công chưa bằng lệnh:
terraform version
Bước 2: Cấu hình các file Terraform
Ta sẽ cần cấu hình các file sau (gồm những câu lệnh khai báo tài nguyên) để tiến hành tạo tài nguyên trên Alibaba Cloud:
Chạy lệnh sau để clone bản sao các file demo của bài hướng dẫn này vào máy của bạn:
git clone https://github.com/vtpanh/create-alicloudresources-with-terraform.git
Lúc này máy bạn sẽ có folder clone từ Github với tên: create-alicloudresources-with-terraform.
Vào file main.tf để thêm các thông tin tài khoản của bạn trong mục provider “alicloud”
Thay thế type-yours-here thành Access Key và Secret Key của tài khoản Alibaba Cloud của bạn. Nếu bạn chưa biết những thông tin này, bạn có thể kiểm tra lại thông tin Access Key trong mục AccessKey Management của tài khoản.
Đối với SecretKey, SecretKey chỉ hiển thị một lần duy nhất vào lúc tạo. Vì thế nếu bạn quên SecretKey của mình, bạn có thể tạo AccessKey mới bằng cách vào AccessKey Management > AccessKey Pair > Create AccessKey.
Sau khi cập nhật AccessKey và Secret Key của bạn vào main.tf, lưu file và vào Terminal, tiếp tục chạy các lệnh sau:
**cd create-alicloudresources-with-terraform
terraform init**
Lệnh terraform init khởi tạo một thư mục làm việc chứa các tệp cấu hình Terraform. Đây là lệnh đầu tiên sẽ được chạy sau khi viết cấu hình Terraform mới hoặc sao chép cấu hình hiện có. Bạn có thể chạy lệnh này nhiều lần.
terraform plan
Lệnh terraform plan tạo một kế hoạch thực hiện, cho phép bạn xem trước những thay đổi mà Terraform dự định thực hiện đối với cơ sở hạ tầng. Theo mặc định, khi Terraform tạo một kế hoạch, nó sẽ:
Sau khi chạy lệnh plan thành công, bạn sẽ được hiển thị danh sách số resource được lên kế hoạch tạo và khi vào file output (như hình dưới).
terraform apply
Sau khi hoàn tất terraform plan, chạy lệnh terraform apply sẽ giúp bạn tạo các resource tại chính cơ sở hạ tầng của bạn (ở đây là Alibaba Cloud).
Sau khi tạo thành công, bạn có thể truy cập vào Console Alibaba Cloud để kiểm tra các tài nguyên vừa được tạo.
Bạn cũng có thể xóa các tài nguyên vừa được tạo bằng cách sử dụng lệnh terraform destroy.
50 posts | 7 followers
FollowAlibaba Cloud Indonesia - June 18, 2024
Alibaba Clouder - February 22, 2019
Alibaba Cloud Native Community - November 16, 2022
Alibaba Clouder - April 13, 2018
Alibaba Clouder - January 9, 2019
H Ohara - May 8, 2024
50 posts | 7 followers
FollowA Web browser-based admin tool that allows you to use command line tools to manage Alibaba Cloud resources.
Learn MoreMore Posts by Alibaba Cloud Vietnam