×
Community Blog Create AliCloud Resources with Terraform

Create AliCloud Resources with Terraform

Bài viết này sẽ hướng dẫn cách tạo RESOURCE TRÊN ALIBABA CLOUD VỚI TERRAFORM

HƯỚNG DẪN TẠO RESOURCE TRÊN ALIBABA CLOUD VỚI TERRAFORM

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:
Screen_Shot_2023_09_19_at_00_34_35
Screen_Shot_2023_09_19_at_00_34_59
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:

  • main.tf: file khai báo chính thông tin các tài nguyên, file main sẽ truy xuất về file variable để lấy các chi tiết của mỗi tài nguyên (loại instance, phiên bản..) hoặc lấy các thông tin dùng chung (tên…).
  • variable.tf: khai báo các biến, có thể truy xuất đến bằng cú pháp var.tên tài nguyên.
  • utput.tf: file dùng để ghi các tài nguyên được tạo sau khi hoàn tất.

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”
Screen_Shot_2023_09_19_at_00_39_27

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.
Screen_Shot_2023_09_20_at_12_37_06
Đố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.
Screen_Shot_2023_09_20_at_14_46_37

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ẽ:

  • Đọc trạng thái hiện tại của mọi đối tượng từ xa đã tồn tại để đảm bảo rằng trạng thái Terraform được cập nhật.
  • So sánh cấu hình hiện tại với trạng thái trước đó và thông báo nếu có sự khác biệt.
  • Đề xuất một plan phù hợp nếu có xảy ra lỗi

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).
Screen_Shot_2023_09_20_at_14_54_53

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).
Screen_Shot_2023_09_20_at_14_56_12
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.

Screen_Shot_2023_09_20_at_14_57_04
Screen_Shot_2023_09_20_at_14_58_35

0 0 0
Share on

Alibaba Cloud Vietnam

46 posts | 5 followers

You may also like

Comments