Cài đặt (Installation)
Xem hướng dẫn cài đặt cho nền tảng của bạn tại: https://developer.hashicorp.com/terraform/downloads. Sau đó chạy:
terraform -install-autocomplete
để kích hoạt tự động hoàn thành trong shell.
Khởi tạo Terraform (Initializing Terraform)
Command |
Mô tả |
terraform init |
Chuẩn bị thư mục làm việc cho các lệnh khác |
terraform init -upgrade |
Nâng cấp module/provider lên phiên bản mới nhất |
terraform get |
Chỉ tải và cài đặt các module |
Thay đổi hạ tầng (Making infrastructure changes)
Command |
Mô tả |
terraform plan |
Hiển thị các thay đổi cần thiết từ cấu hình hiện tại |
terraform plan -out=[file] |
Ghi kế hoạch vào tệp để áp dụng sau |
terraform plan -target [resource] |
Tạo kế hoạch cho module hoặc tài nguyên cụ thể |
terraform plan -replace [resource] |
Buộc kế hoạch thay thế tài nguyên cụ thể |
terraform plan -var '[key]=[value]' |
Đặt giá trị cho một biến đầu vào |
terraform plan -refresh-only |
Kiểm tra sự thay đổi tài nguyên mà không cập nhật tệp trạng thái |
terraform apply |
Tạo hoặc cập nhật hạ tầng |
terraform apply [file] |
Tạo hoặc cập nhật hạ tầng từ tệp kế hoạch |
terraform apply -target [resource] |
Tạo hoặc cập nhật tài nguyên cụ thể |
terraform apply -replace [resource] |
Thay thế tài nguyên cụ thể |
terraform apply -auto-approve |
Bỏ qua xác nhận tương tác trước khi áp dụng |
Kiểm tra giá trị đầu ra (Inspecting output values)
Command |
Mô tả |
terraform output |
Hiển thị tất cả giá trị đầu ra |
terraform output -json |
Hiển thị tất cả giá trị đầu ra dưới dạng JSON |
terraform output [name] |
Hiển thị giá trị đầu ra cụ thể |
Quản lý trạng thái (Managing state)
Command |
Mô tả |
terraform show |
Hiển thị trạng thái hiện tại dạng dễ đọc |
terraform show [file] |
Hiển thị tệp trạng thái hoặc kế hoạch dạng dễ đọc |
terraform show -json [file] |
Hiển thị tệp trạng thái hoặc kế hoạch dạng JSON |
terraform state list |
Liệt kê tất cả tài nguyên trong tệp trạng thái |
terraform state show [resource] |
Hiển thị chi tiết về tài nguyên |
terraform state mv [resource] [new_name] |
Đổi tên tài nguyên trong tệp trạng thái |
terraform state rm [resource] |
Xóa tài nguyên khỏi tệp trạng thái |
terraform state replace-provider [resource] |
Thay thế provider cho tài nguyên trong trạng thái |
terraform import [resource] [remote_id] |
Nhập hạ tầng hiện có vào Terraform |
terraform state pull |
Tải trạng thái hiện tại và xuất ra stdout |
terraform refresh |
(Đã lỗi thời) Cập nhật trạng thái để khớp với thực tế |
Đánh dấu tài nguyên (Tainting resources)
Command |
Mô tả |
terraform taint [resource] |
(Đã lỗi thời) Đánh dấu tài nguyên để thay thế |
terraform untaint [resource] |
Xóa đánh dấu tài nguyên |
Xóa hạ tầng (Destroying infrastructure)
Command |
Mô tả |
terraform destroy |
Xóa hạ tầng do Terraform quản lý |
terraform destroy -target [resource] |
Xóa tài nguyên cụ thể |
Định dạng và kiểm tra (Formatting and validation)
Command |
Mô tả |
terraform validate |
Kiểm tra cấu hình có hợp lệ không |
terraform fmt |
Định dạng lại cấu hình theo kiểu chuẩn |
terraform fmt -check |
Kiểm tra cấu hình đã định dạng đúng chưa |
Terraform Cloud / Xác thực từ xa (Terraform Cloud / Remote Authentication)
Command |
Mô tả |
terraform login |
Đăng nhập vào Terraform Cloud |
terraform login [hostname] |
Đăng nhập vào host khác |
terraform logout |
Đăng xuất khỏi Terraform Cloud |
terraform logout [hostname] |
Đăng xuất khỏi host khác |
Quản lý không gian làm việc (Managing workspaces)
Command |
Mô tả |
terraform workspace list |
Liệt kê tất cả không gian làm việc |
terraform workspace show |
Hiển thị tên không gian làm việc hiện tại |
terraform workspace select [name] |
Chọn không gian làm việc khác |
terraform workspace new [name] |
Tạo không gian làm việc mới |
terraform workspace delete [name] |
Xóa không gian làm việc hiện có |
Lệnh khác (Other commands)
Command |
Mô tả |
terraform providers |
Hiển thị provider cần cho cấu hình này |
terraform force-unlock [lock-id] |
Mở khóa bị kẹt |
terraform console |
Thử biểu thức Terraform tại dấu nhắc tương tác |
terraform graph | dot -Tpng > graph.png |
Tạo biểu đồ trực quan của tài nguyên Terraform |
terraform version |
Hiển thị phiên bản Terraform hiện tại |
terraform -help |
Hiển thị trợ giúp cho Terraform |
terraform -help [command] |
Hiển thị trợ giúp cho lệnh Terraform cụ thể |
Tham chiếu giá trị đặt tên (Referencing Named Values)
Cú pháp |
Mô tả |
[RESOURCE_TYPE].[NAME] |
Tham chiếu đến tài nguyên được quản lý |
var.[NAME] |
Tham chiếu đến biến đầu vào |
local.[NAME] |
Tham chiếu đến giá trị cục bộ |
module.[MODULE_NAME] |
Tham chiếu đến module con |
data.[DATA_TYPE].[NAME] |
Tham chiếu đến nguồn dữ liệu |
Biểu thức điều kiện (Conditional Expressions)
Cú pháp |
Mô tả |
[condition] ? [true] : [false] |
Nếu [condition] đúng thì trả về [true], ngược lại trả về [false] |
Biểu thức Splat (Splat Expressions)
Cú pháp |
Mô tả |
[RESOURCE_TYPE].[NAME][*].[ATTRIBUTE] |
Trả về danh sách giá trị của thuộc tính cho tất cả phiên bản tài nguyên |
Đối số meta tài nguyên (Resource Meta-Arguments)
Đối số |
Mô tả |
depends_on |
Chỉ định rõ ràng phụ thuộc tài nguyên |
count |
Tạo nhiều phiên bản của tài nguyên |
for_each |
Tạo phiên bản tài nguyên cho mỗi phần tử trong map hoặc set |
provider |
Chỉ định khối cấu hình provider cho tài nguyên |
lifecycle |
Cấu hình hành vi tài nguyên trong suốt vòng đời |
Thuộc tính meta-argument vòng đời (Lifecycle Meta-Argument Attributes)
Đối số |
Mô tả |
create_before_destroy |
Tạo tài nguyên mới trước khi xóa tài nguyên cũ |
prevent_destroy |
Ngăn Terraform xóa tài nguyên |
ignore_changes |
Bỏ qua thay đổi đối với thuộc tính tài nguyên cụ thể |
Tải xuống cheat sheet