Thứ Bảy, Tháng Sáu 15, 2024
Google search engine
Homelinuxảo hóaCách sử dụng các mô-đun từ Cơ quan đăng ký Terraform

Cách sử dụng các mô-đun từ Cơ quan đăng ký Terraform

Cách sử dụng các mô-đun từ Cơ quan đăng ký Terraform

Cơ quan đăng ký Terraform là nơi người ta có thể tìm thấy các nhà cung cấp và mô-đun khác nhau (các cấu hình Terraform có thể tái sử dụng) và sử dụng chúng với Terraform. Nó bao gồm những người đóng góp như HashiCorp, các nhà cung cấp bên thứ ba và cộng đồng Terraform. Cơ quan đăng ký này nhằm cung cấp các plugin để xử lý các API cơ sở hạ tầng khác nhau, cung cấp các mô-đun hiện có sẵn để xây dựng nhanh chóng các thành phần cơ sở hạ tầng thường được sử dụng và trình bày các cách phát triển mã Terraform được viết hiệu quả.

Chúng tôi sẽ bao gồm những gì?

Trong hướng dẫn này, chúng ta sẽ xem cách sử dụng các mô-đun từ Terraform Registry. Chúng ta sẽ thấy điều này bằng cách trình bày một ví dụ về việc tạo một phiên bản EC2 trên AWS.

Kiểm tra trước chuyến bay

Đối với hướng dẫn này, chúng tôi cần các điều kiện tiên quyết sau:

  1. Terraform sẽ được cài đặt trên hệ thống cục bộ.
  2. Kiến thức cơ bản về mô-đun Terraform.
  3. Tài khoản AWS.

Sử dụng Mô-đun từ Cơ quan đăng ký Terraform

Mô-đun cho các nhà cung cấp khác nhau được duy trì bởi sổ đăng ký Terraform. Mô-đun có thể được tìm kiếm từ trang đăng ký. Cũng lưu ý rằng trong khi thực hiện tìm kiếm, chỉ các mô-đun đã được xác minh mới được liệt kê trong kết quả tìm kiếm. Các mô-đun này được HashiCorp kiểm tra để xác nhận tính tương thích và ổn định của chúng. Các mô-đun chưa được xác minh cũng có thể được liệt kê bằng cách sử dụng tùy chọn lọc tìm kiếm.

Các mô-đun được xuất bản trong Cơ quan đăng ký Terraform có thể được tham chiếu trong một mã Terraform điển hình bằng cú pháp:

<NAMESPACE> / <Tên mô-đun> / <Tên nhà cung cấp>

Ví dụ: hãy xem cách sử dụng mô-đun từ sổ đăng ký Terraform dưới đây:

mô-đun "vpc" {
source = "terraform-aws-modules / vpc / aws"
}

Ví dụ trên sử dụng mô-đun VPC từ sổ đăng ký Terraform cho AWS. Chạy lệnh ‘terraform init’ sẽ truy xuất và lưu trữ các mô-đun được tham chiếu bởi mã Terraform.

Terraform Registry có quy định để sử dụng cả mô-đun công cộng và riêng tư. Cơ quan đăng ký Terraform công khai cho phép xuất bản và sử dụng các nhà cung cấp và mô-đun. Các mô-đun riêng có thể được xuất bản bằng cách sử dụng sổ đăng ký riêng.

Khám phá Cơ quan đăng ký Terraform

Trang mô-đun hiển thị một số chi tiết ngắn gọn về mô-đun như mô tả của mô-đun, ngày xuất bản, url của mã nguồn, số liệu thống kê tải xuống, v.v. Bạn có thể xem ở đây các tab khác nhau cho Readme, Inputs, Outputs, Dependency và Resources. Chúng ta có thể tham khảo các phần này để chọn các biến để truyền vào mã của chúng ta.

Ngoài ra còn có các ví dụ minh họa cách sử dụng mô-đun, ví dụ mô-đun để tạo phiên bản EC2 được sử dụng trong hướng dẫn này. Trước khi đi sâu vào ví dụ này, trước tiên chúng ta hãy xem bên trong mã nguồn của mô-đun này. Mở url mã nguồn. Trên trang github, có một số thư mục và một số tệp cho mô-đun này. Hiện tại, chúng tôi chỉ tập trung vào ba tệp terraform: main.tf, outputs.tf và variable.tf. Tệp main.tf chứa nhiều dòng mô tả một phiên bản EC2. Tương tự, các biến.tf và outputs.tf có một số khai báo giá trị đầu vào và đầu ra.

Khởi chạy phiên bản EC2 bằng Mô-đun

Bây giờ chúng ta hãy xem cách chúng ta có thể sử dụng một mô-đun từ sổ đăng ký Terraform. Chúng tôi sẽ tạo một phiên bản EC2 bằng cách sử dụng một mô-đun từ ‘terraform-aws-modules’.

Bước 1. Mở trang web Đăng ký Terraform và tìm kiếm mô-đun aws cho EC2:

Seraching modules from Terraform Registry webpage
Bước 2. Nhấp vào kết quả tìm kiếm ‘terraform-aws-modules / ec2-instance’ như hình trên. Mô-đun này được sử dụng để khởi chạy phiên bản AWS EC2 trong trường hợp của chúng tôi.

Bây giờ, hãy xem tệp cấu hình bên dưới mà chúng tôi đã tạo cục bộ trên hệ thống của chúng tôi để làm việc với mô-đun này. Trong tệp này, chúng tôi đã bao gồm mô-đun ở trên bằng cách sử dụng đối số ‘nguồn’. Chúng tôi chỉ sử dụng một số khai báo từ mô-đun thực tế như được mô tả ở đây:

$ nano myinstance.tf
nhà cung cấp "aws" {
region = "us-East-1"
}

mô-đun "ec2_instance" {
source = "terraform-aws-modules / ec2-instance / aws"
phiên bản = "~> 3.0"

name = "single-instance"

ami = "ami-0022f774911c1d690"
instance_type = "t2.micro"
available_zone = "us-East-1a"
key_name = "Tên-cặp-khóa-của-bạn"
giám sát = true
vpc_security_group_ids = ["ID Nhóm-Bảo mật"]
putin_khuylo = true

tags = {
Terraform = "true"
Môi trường = "nhà phát triển"
}
}

Trong cấu hình này, có hai đối số: nguồn và phiên bản.

  1. source: Đối số này là cần thiết khi sử dụng mô-đun Terraform. Trong cấu hình ‘ví dụ’ ở trên, Terraform sẽ xem xét sổ đăng ký Terraform để biết địa chỉ mô-đun được trích dẫn đã cho. Các mô-đun cục bộ, URL và các nguồn khác cũng có thể được sử dụng tại đây.
  2. phiên bản: Đây là một đối số tùy chọn nhưng nó được khuyến khích sử dụng khi làm việc với mô-đun Terraform. Khi được bao gồm, nó sẽ tải phiên bản cụ thể của mô-đun Terraform cho các nguồn được hỗ trợ. Nếu không được sử dụng thì phiên bản mô-đun có sẵn mới nhất sẽ được tải.

Để bắt đầu, trước tiên, hãy khởi tạo thư mục chứa tệp cục bộ ‘myinstance.tf’ của chúng tôi. Chạy lệnh:

terraform init command

Bây giờ hãy chạy ‘kế hoạch địa hình’ hoặc sử dụng lệnh ‘áp dụng địa hình’ để trực tiếp đưa các thay đổi vào công việc:

$ terraform apply

Nhập ‘có’ khi được nhắc. Điều này sẽ bắt đầu quá trình áp dụng các thay đổi.

Terraform apply command
Lần này, chúng ta không cần phải tạo các tệp variable.tf hoặc output.tf một cách rõ ràng, thay vào đó chúng ta chỉ cần tham chiếu đến các biến kho lưu trữ mà chúng ta muốn sử dụng. Từ bảng điều khiển quản lý, mở bảng điều khiển EC2 để kiểm tra xem phiên bản có được tạo hay không:

Kết luận lại…

Trong hướng dẫn này, chúng ta đã biết cách sử dụng các mô-đun đăng ký Terraform. Theo cách tương tự, hãy thử định cấu hình VPC bằng mô-đun Terraform.

admin
adminhttps://khanhle.id.vn/
Mình là Khánh, ngành Mạng truyền thông cũng có thể làm web
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

- Advertisment -
Google search engine

Most Popular

Recent Comments