Terraform là ứng dụng Infrastructure as Code (IaC) mạnh mẽ để triển khai và quản lý cơ sở hạ tầng. Nó có thể được sử dụng để thêm, sửa đổi và xóa tài nguyên bao gồm máy chủ, thành phần mạng và đối tượng lưu trữ. Linode đã hợp tác với Terraform để cung cấp API để cấu hình các mục cơ sở hạ tầng Linode phổ biến. Hướng dẫn này cung cấp phần giới thiệu ngắn gọn về Terraform và giải thích cách sử dụng nó để tạo các giải pháp Linode Object Storage .
Terraform là gì?
Terraform là một sản phẩm mã nguồn mở có sẵn trong các phiên bản miễn phí và thương mại. Các tệp cấu hình Terraform có dạng khai báo. Các tệp mô tả trạng thái cuối của hệ thống và giải thích những gì cần cấu hình, nhưng không giải thích cách cấu hình. Các tệp Terraform sử dụng định dạng Ngôn ngữ cấu hình HashiCorp (HCL) của Terraform hoặc Định dạng ký hiệu đối tượng JavaScript (JSON) để xác định cơ sở hạ tầng. Cả hai ngôn ngữ đều hoạt động tốt với Terraform vì chúng dễ sử dụng và dễ đọc. Terraform sử dụng phương pháp tiếp cận theo mô-đun và gia tăng để khuyến khích tái sử dụng và khả năng bảo trì. Nó khả dụng cho macOS, Windows và hầu hết các bản phân phối Linux.
Terraform sử dụng các nhà cung cấp để quản lý tài nguyên. Một nhà cung cấp, rất giống với API, thường được tạo ra kết hợp với nhà cung cấp cơ sở hạ tầng. Hệ thống dựa trên nhà cung cấp của Terraform cho phép người dùng tạo, sửa đổi và hủy cơ sở hạ tầng mạng từ các nhà cung cấp khác nhau. Các nhà phát triển có thể nhập các nhà cung cấp này vào các tệp cấu hình của họ để giúp khai báo và cấu hình các thành phần cơ sở hạ tầng của họ. Các nhà cung cấp có sẵn cho hầu hết các nhà cung cấp lớn, bao gồm cả Linode . Người dùng Terraform có thể duyệt qua danh sách đầy đủ các nhà cung cấp khác nhau trong Terraform Registry .
Linode cung cấp Hướng dẫn hữu ích cho người mới bắt đầu về Terraform như một phần giới thiệu về các khái niệm chính của Terraform. Ngoài ra, tài liệu Terraform bao gồm một số Hướng dẫn , bao gồm hướng dẫn cho các nhà cung cấp phổ biến hơn.
Cách sử dụng Terraform
Để sử dụng Terraform, hãy tạo một tệp xác định cấu hình dự định của tất cả các thành phần mạng. Tệp này bao gồm danh sách tất cả các nhà cung cấp và nguồn dữ liệu bắt buộc. Đối tượng nguồn dữ liệu cung cấp quyền truy cập vào nhiều phương pháp và thuộc tính khác nhau về một thành phần cơ sở hạ tầng cụ thể. Tệp này cũng mô tả đầy đủ các tài nguyên khác nhau, bao gồm máy chủ và đối tượng lưu trữ, mà Terraform nên tạo, quản lý hoặc xóa.
Các tệp Terraform được viết bằng HCL hoặc JSON dưới dạng tệp văn bản có .tf
phần mở rộng. Có thể sử dụng các biến đầu vào, hàm và mô-đun để có tính linh hoạt, tính mô-đun và khả năng bảo trì cao hơn. Người dùng phát triển các tệp cấu hình của họ trên máy trạm của riêng họ và sử dụng máy khách Terraform để đẩy cấu hình ra mạng của họ. Máy khách dựa vào các chi tiết triển khai từ nhà cung cấp để thực hiện các thay đổi.
Trước khi áp dụng cấu hình, người dùng nên thực hiện terraform plan
lệnh. Lệnh này tạo ra bản tóm tắt về tất cả các thay đổi dự định. Tại thời điểm này, các thay đổi vẫn chưa được áp dụng. Điều này có nghĩa là tài liệu có thể được sửa đổi an toàn hoặc thậm chí bị hủy bỏ nếu cần.
Khi kế hoạch Terraform đã sẵn sàng để triển khai, terraform apply
lệnh được sử dụng để triển khai các thay đổi. Terraform theo dõi tất cả các thay đổi trong tệp trạng thái nội bộ. Điều này dẫn đến hiệu quả tăng lên vì chỉ những thay đổi đối với cấu hình hiện tại mới được thực thi. Có thể thêm các thay đổi và sửa đổi mới vào các tệp Terraform hiện có mà không xóa các tài nguyên đã tồn tại trước đó. Terraform cũng hiểu các phụ thuộc khác nhau giữa các tài nguyên và tạo cơ sở hạ tầng bằng cách sử dụng trình tự thích hợp.
Terraform có thể được sử dụng trong môi trường nhiều nhà phát triển kết hợp với hệ thống kiểm soát phiên bản. Các nhà phát triển cũng có thể xây dựng cơ sở hạ tầng nhà cung cấp của riêng họ để sử dụng thay cho hoặc cùng với các nhà cung cấp bên thứ ba. Terraform cung cấp thêm thông tin chi tiết về cách sản phẩm hoạt động và cách sử dụng trong phần tóm tắt Giới thiệu về Terraform của họ .
Ghi chú: Terraform rất mạnh mẽ, nhưng có thể là một công cụ khó sử dụng. Lỗi cú pháp có thể khó gỡ lỗi. Trước khi cố gắng tạo bất kỳ cơ sở hạ tầng nào, bạn nên đọc Giới thiệu về Ngôn ngữ cấu hình HashiCorp của Linode . Tài liệu về Nhà cung cấp Linode trong Terraform Registry cũng rất cần thiết. Tham khảo bộ sưu tập hướng dẫn Terraform phong phú của Linode để biết thêm ví dụ và giải thích.
Trước khi bạn bắt đầu
- Nếu bạn chưa thực hiện, hãy tạo một tài khoản Linode và Compute Instance. Xem hướng dẫn Bắt đầu với Linode và Tạo Compute Instance của chúng tôi .
- Làm theo hướng dẫn Thiết lập và Bảo mật Phiên bản Compute của chúng tôi để cập nhật hệ thống của bạn. Bạn cũng có thể muốn đặt múi giờ, cấu hình tên máy chủ, tạo tài khoản người dùng giới hạn và tăng cường quyền truy cập SSH.
- Đảm bảo tất cả máy chủ Linode được cập nhật. Các lệnh sau có thể được sử dụng để cập nhật hệ thống Ubuntu.
sudo apt update && sudo apt upgrade
Cách tải xuống và cài đặt Terraform
Những hướng dẫn này hướng đến người dùng Ubuntu 22.04, nhưng thường áp dụng cho các bản phát hành Ubuntu trước đó. Hướng dẫn cho các bản phân phối Linux khác và macOS có sẵn trên Cổng thông tin tải xuống Terraform . Ví dụ sau đây minh họa cách tải xuống và cài đặt bản phát hành Terraform mới nhất.
1.Cài đặt các phần phụ thuộc của hệ thống cho Terraform.
sudo apt install software-properties-common gnupg2 curl
2.Nhập khóa GPG.
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
3.Thêm kho lưu trữ Hashicorp vào apt
.
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
4.Tải xuống bản cập nhật cho Terraform và cài đặt ứng dụng. Thao tác này sẽ cài đặt Terraform bản phát hành 1.3.4, bản phát hành mới nhất.
sudo apt update && sudo apt install terraform
Get:1 https://apt.releases.hashicorp.com jammy/main amd64 terraform amd64 1.3.4 [19.5 MB]
Fetched 19.5 MB in 0s (210 MB/s)
Selecting previously unselected package terraform.
(Reading database ... 109186 files and directories currently installed.)
Preparing to unpack .../terraform_1.3.4_amd64.deb ...
Unpacking terraform (1.3.4) ...
Setting up terraform (1.3.4) ...
5.Xác nhận ứng dụng đã được cài đặt đúng cách. Sử dụng terraform
lệnh mà không có bất kỳ tham số nào và đảm bảo thông tin trợ giúp Terraform được hiển thị.
terraform
Usage: terraform [global options] <subcommand> [args]
The available commands for execution are listed below.
The primary workflow commands are given first, followed by
less common or more advanced commands.
Main commands:
init Prepare your working directory for other commands
...
-version An alias for the "version" subcommand.
6.Để xác định phiên bản hiện tại của Terraform, hãy sử dụng terraform -v
lệnh.
terraform -v
Terraform v1.3.4
on linux_amd64
7.Tạo một thư mục cho dự án Terraform mới và chuyển tới thư mục này.
mkdir ~/terraform
cd ~/terraform
Tạo tệp Terraform để tạo bộ lưu trữ đối tượng Linode
Để triển khai cơ sở hạ tầng cần thiết cho giải pháp Linode Object Storage, hãy tạo tệp Terraform xác định trạng thái cuối cùng của hệ thống. Tệp này phải bao gồm các phần sau:
- Định
terraform
nghĩa bao gồm các nhà cung cấp bắt buộc. Trong trường hợp này, chỉ có nhà cung cấp Linode được bao gồm. - Nhà cung cấp Linode.
- Nguồn
linode_object_storage_cluster
dữ liệu. - Ít nhất một
linode_object_storage_bucket
tài nguyên. Thùng lưu trữ cung cấp không gian để lưu trữ tệp và đối tượng văn bản. - ( Tùy chọn ) A
linode_object_storage_key
. - Danh sách
linode_object_storage_object
các mục. Đối tượng lưu trữ đối tượng có thể là tệp văn bản hoặc chuỗi văn bản. Tất cả các đối tượng lưu trữ được lưu trữ trong một thùng lưu trữ đối tượng cụ thể.
Để xây dựng tệp Terraform, hãy thực hiện các hướng dẫn sau. Để biết thêm thông tin về cách tạo tệp Terraform, hãy xem tài liệu Terraform .
1.Tạo tập tin linode-terraform-storage.tf
bên trong terraform
thư mục.
nano linode-terraform-storage.tf
2.Ở đầu tệp, thêm một terraform
phần, bao gồm tất cả required_providers
cho cơ sở hạ tầng. Trong trường hợp này, nhà cung cấp duy nhất được yêu cầu là linode
. Đặt nguồn thành linode/linode
. Sử dụng nhà cung cấp hiện tại version
. linode
Tại thời điểm xuất bản, phiên bản là 1.29.4
. Để xác định phiên bản hiện tại, hãy xem Không gian tên Linode trong Terraform Registry.
terraform {
required_providers {
linode = {
source = "linode/linode"
version = "1.29.4"
}
}
}
3.Xác định linode
nhà cung cấp. Bao gồm API Linode v4 token
cho tài khoản. Xem hướng dẫn Bắt đầu với API Linode để biết thêm thông tin về mã thông báo.
Ghi chú: Để ẩn thông tin nhạy cảm, chẳng hạn như mã thông báo API, hãy khai báo một variables.tf
tệp và lưu trữ thông tin ở đó. Truy xuất các biến bằng var
từ khóa. Xem phần giới thiệu về HCL của Linode để biết hướng dẫn về cách sử dụng các biến.
provider "linode" {
token = "THE_LINODE_API_TOKEN"
}
4.Tạo linode_object_storage_cluster
nguồn dữ liệu. Trong mẫu mã sau, đối tượng cụm mới được đặt tên là primary
. Chỉ định vùng cho cụm bằng id
thuộc tính. Trong ví dụ sau, vùng là eu-central-1
. Đối tượng cụm cung cấp quyền truy cập vào miền, trạng thái và vùng của cụm. Xem tài liệu đăng ký Terraform cho nguồn dữ liệu Linode Object Storage Cluster để biết thêm thông tin.
Ghi chú: Không phải tất cả các vùng đều hỗ trợ cụm lưu trữ. Để biết danh sách đầy đủ tất cả các trung tâm dữ liệu có thể cấu hình cụm lưu trữ, hãy xem Thông tin sản phẩm Linode Object Storage .
data "linode_object_storage_cluster" "primary" {
id = "eu-central-1"
}
5.Tùy chọn: Tạo a linode_object_storage_key
để kiểm soát quyền truy cập vào các đối tượng lưu trữ. Cung cấp tên cho khóa và a label
để giúp xác định khóa.
resource "linode_object_storage_key" "storagekey" {
label = "image-access"
}
6.Tạo một linode_object_storage_bucket
tài nguyên. cluster
Thuộc tính cho thùng phải chứa đối id
tượng nguồn dữ liệu cụm. Trong ví dụ này, có thể truy xuất định danh cụm bằng data.linode_object_storage_cluster.primary.id
thuộc tính. Gán duy nhất label
cho thùng lưu trữ. Nhãn này phải là duy nhất trong vùng, do đó hãy đảm bảo tên nhãn đủ khác biệt và duy nhất. Ví dụ sau đặt label
thành mybucket-j1145
.
Đặt các thuộc tính access_key
và secret_key
vào các trường access_key
và secret_key
của khóa lưu trữ. Trong ví dụ sau, tên của khóa là linode_object_storage_key.storagekey
. Nếu bạn bỏ qua bước trước và không sử dụng khóa lưu trữ đối tượng, đừng bao gồm các thuộc tính này.
Ghi chú: Tài nguyên Linode Object Storage Bucket chứa nhiều thuộc tính có thể cấu hình khác. Có thể thiết lập các quy tắc vòng đời, quản lý phiên bản và quy tắc kiểm soát truy cập, và liên kết storage bucket với chứng chỉ TLS/SSL. Để biết thêm thông tin, hãy xem tài liệu Linode Object Storage Bucket trong sổ đăng ký Terraform.
resource "linode_object_storage_bucket" "mybucket-j1145" {
cluster = data.linode_object_storage_cluster.primary.id
label = "mybucket-j1145"
access_key = linode_object_storage_key.storagekey.access_key
secret_key = linode_object_storage_key.storagekey.secret_key
}
7.Thêm các mục vào thùng lưu trữ. Để thêm tệp hoặc khối văn bản vào thùng, hãy tạo một linode_object_storage_object
tài nguyên. Chỉ định a cluster
và bucket
để lưu trữ đối tượng trong và a key
để xác định duy nhất đối tượng lưu trữ trong cụm. Để sử dụng khóa lưu trữ, hãy bao gồm secret_key
và access_key
của khóa lưu trữ.
Để thêm tệp văn bản vào bộ lưu trữ, hãy chỉ định đường dẫn tệp làm source
thuộc tính bằng cách sử dụng ví dụ sau làm hướng dẫn. Ví dụ này thêm tệp terraform_test.txt
vào thùng mybucket-j1145
trong cụm primary
. Để biết thêm thông tin về cách thêm đối tượng lưu trữ, hãy xem tài liệu tài nguyên Đối tượng lưu trữ Linode .
resource "linode_object_storage_object" "object1" {
bucket = linode_object_storage_bucket.mybucket-j1145.label
cluster = data.linode_object_storage_cluster.primary.id
key = "textfile-object"
secret_key = linode_object_storage_key.storagekey.secret_key
access_key = linode_object_storage_key.storagekey.access_key
source = pathexpand("~/terraform_test.txt")
}
8.Tùy chọn: Thùng lưu trữ cũng có thể chứa các chuỗi văn bản. Để lưu trữ một chuỗi, hãy khai báo một linode_object_storage_object
, mới bao gồm bucket
, cluster
, và thông tin khóa lưu trữ như trước. Chọn một khóa duy nhất mới cho đối tượng văn bản. content
Thuộc tính phải được đặt thành chuỗi văn bản. Điền vào content_type
và content_language
để phản ánh bản chất của văn bản.
resource "linode_object_storage_object" "object2" {
bucket = linode_object_storage_bucket.mybucket-j1145.label
cluster = data.linode_object_storage_cluster.primary.id
key = "freetext-object"
secret_key = linode_object_storage_key.storagekey.secret_key
access_key = linode_object_storage_key.storagekey.access_key
content = "This is the content of the Object..."
content_type = "text/plain"
content_language = "en"
}
9.Khi tất cả các phần đã được thêm vào, .tf
tệp sẽ giống như ví dụ sau.
terraform {
required_providers {
linode = {
source = "linode/linode"
version = "1.29.4"
}
}
}
provider "linode" {
token = "THE_LINODE_API_TOKEN"
}
data "linode_object_storage_cluster" "primary" {
id = "eu-central-1"
}
resource "linode_object_storage_key" "storagekey" {
label = "image-access"
}
resource "linode_object_storage_bucket" "mybucket-j1145" {
cluster = data.linode_object_storage_cluster.primary.id
label = "mybucket-j1145"
access_key = linode_object_storage_key.storagekey.access_key
secret_key = linode_object_storage_key.storagekey.secret_key
}
resource "linode_object_storage_object" "object1" {
bucket = linode_object_storage_bucket.mybucket-j1145.label
cluster = data.linode_object_storage_cluster.primary.id
key = "textfile-object"
secret_key = linode_object_storage_key.storagekey.secret_key
access_key = linode_object_storage_key.storagekey.access_key
source = pathexpand("~/terraform_test.txt")
}
resource "linode_object_storage_object" "object2" {
bucket = linode_object_storage_bucket.mybucket-j1145.label
cluster = data.linode_object_storage_cluster.primary.id
key = "freetext-object"
secret_key = linode_object_storage_key.storagekey.secret_key
access_key = linode_object_storage_key.storagekey.access_key
content = "This is the content of the Object..."
content_type = "text/plain"
content_language = "en"
}
10.Khi hoàn tất, nhấn + Xđể thoát nano, Yđể lưu và Enterđể xác nhận.
Sử dụng Terraform để cấu hình Linode Object Storage
Các lệnh Terraform tác động lên linode-terraform-storage.tf
tệp để phân tích nội dung và triển khai cơ sở hạ tầng chính xác. Để tạo các mục cơ sở hạ tầng lưu trữ đối tượng Linode trong tệp, hãy chạy các lệnh sau.
1.Khởi tạo Terraform bằng terraform init
lệnh. Terraform xác nhận đã được khởi tạo.
terraform init
Initializing the backend...
Initializing provider plugins...
- Finding linode/linode versions matching "1.29.4"...
- Installing linode/linode v1.29.4...
- Installed linode/linode v1.29.4 (signed by a HashiCorp partner, key ID F4E6BBD0EA4FE463)
...
Terraform has been successfully initialized!
...
2.Chạy terraform plan
lệnh để có được cái nhìn tổng quan về những thay đổi cơ sở hạ tầng dự kiến. Kế hoạch này lập danh mục các thành phần Terraform dự định thêm, sửa đổi hoặc xóa. Điều quan trọng là phải xem xét đầu ra cẩn thận để đảm bảo kế hoạch chính xác và không có thay đổi bất ngờ nào. Nếu kết quả không thỏa đáng, hãy thay đổi tệp .tf
và thử lại.
terraform plan
data.linode_object_storage_cluster.primary: Reading...
data.linode_object_storage_cluster.primary: Read complete after 0s [id=eu-central-1]
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated
with the following symbols:
+ create
Terraform will perform the following actions:
# linode_object_storage_bucket.mybucket-j1145 will be created
+ resource "linode_object_storage_bucket" "mybucket-j1145" {
+ access_key = (known after apply)
+ acl = "private"
+ cluster = "eu-central-1"
+ cors_enabled = true
+ hostname = (known after apply)
+ id = (known after apply)
+ label = "mybucket-j1145"
+ secret_key = (sensitive)
+ versioning = (known after apply)
}
# linode_object_storage_key.storagekey will be created
+ resource "linode_object_storage_key" "storagekey" {
+ access_key = (known after apply)
+ id = (known after apply)
+ label = "image-access"
+ limited = (known after apply)
+ secret_key = (sensitive value)
}
# linode_object_storage_object.object1 will be created
+ resource "linode_object_storage_object" "object1" {
+ access_key = (known after apply)
+ acl = "private"
+ bucket = "mybucket-j1145"
+ cluster = "eu-central-1"
+ content_type = (known after apply)
+ etag = (known after apply)
+ force_destroy = false
+ id = (known after apply)
+ key = "textfile-object"
+ secret_key = (sensitive)
+ source = "/home/username/terraform_test.txt"
+ version_id = (known after apply)
}
# linode_object_storage_object.object2 will be created
+ resource "linode_object_storage_object" "object2" {
+ access_key = (known after apply)
+ acl = "private"
+ bucket = "mybucket-j1145"
+ cluster = "eu-central-1"
+ content = "This is the content of the Object..."
+ content_language = "en"
+ content_type = "text/plain"
+ etag = (known after apply)
+ force_destroy = false
+ id = (known after apply)
+ key = "freetext-object"
+ secret_key = (sensitive)
+ version_id = (known after apply)
}
Plan: 4 to add, 0 to change, 0 to destroy.
3.Khi tất cả các thay đổi tiếp theo đối với .tf
tệp đã được thực hiện, hãy sử dụng terraform apply
để triển khai các thay đổi. Nếu có bất kỳ lỗi nào xuất hiện, hãy chỉnh sửa .tf
tệp và chạy terraform plan
lại terraform apply
. Terraform hiển thị danh sách các thay đổi dự định và hỏi xem có nên tiếp tục hay không.
terraform apply
Plan: 4 to add, 0 to change, 0 to destroy.
Do you want to perform these actions?
Terraform will perform the actions described above.
Only 'yes' will be accepted to approve.
Enter a value:
4.Nhập yes
để tiếp tục. Terraform hiển thị tóm tắt tất cả các thay đổi và xác nhận thao tác đã hoàn tất. Nếu có bất kỳ lỗi nào xuất hiện, hãy chỉnh sửa tệp .tf
và chạy lại lệnh.
yes
linode_object_storage_key.storagekey: Creating...
linode_object_storage_key.storagekey: Creation complete after 3s [id=367232]
linode_object_storage_bucket.mybucket-j145: Creating...
linode_object_storage_bucket.mybucket-j1145: Creation complete after 6s [id=eu-central-1:mybucket-j1145]
linode_object_storage_object.object1: Creating...
linode_object_storage_object.object2: Creating...
linode_object_storage_object.object1: Creation complete after 0s [id=mybucket-j1145/textfile-object]
linode_object_storage_object.object2: Creation complete after 0s [id=mybucket-j1145/freetext-object]
Apply complete! Resources: 4 added, 0 changed, 0 destroyed.
5.Xem trang tóm tắt Lưu trữ đối tượng của Linode Dashboard để đảm bảo tất cả các đối tượng đã được tạo và cấu hình đúng. Chọn tên của Object Storage Bucket để xem danh sách tất cả các đối tượng lưu trữ đối tượng bên trong bucket. Trang này cũng cho phép bạn tải xuống bất kỳ tệp và đối tượng văn bản nào trong bucket.
Xóa và chỉnh sửa các đối tượng lưu trữ Linode
Để xóa cấu hình đối tượng lưu trữ, hãy sử dụng terraform destroy
lệnh. Lệnh này khiến Terraform xóa mọi đối tượng được liệt kê trong các tệp Terraform trong thư mục. Ví dụ, chạy terraform destroy
tệp linode-terraform-storage.tf
sẽ xóa tất cả các cụm lưu trữ, thùng, khóa và đối tượng lưu trữ. Để chỉ xóa một tập hợp con của cấu hình, hãy chỉnh sửa tệp để tệp chỉ bao gồm các đối tượng cần xóa. Bất kỳ đối tượng nào mà Terraform cần giữ lại phải được xóa khỏi tệp. terraform plan -destroy
Trước tiên, hãy chạy lệnh để có được bản tóm tắt về các đối tượng mà Terraform dự định xóa.
terraform plan -destroy
terraform destroy
Để sửa đổi nội dung của đối tượng lưu trữ đối tượng, hãy chỉnh sửa .tf
tệp chứa cấu hình để nó phản ánh cấu hình mới. Chạy terraform plan
để xem lại các thay đổi, sau đó chạy terraform apply
. Terraform tự động thực hiện các thay đổi cần thiết. Sử dụng lệnh này một cách thận trọng vì nó có thể khiến đối tượng bị xóa và tạo lại thay vì được sửa đổi.
terraform plan
terraform apply
Cấu hình Terraform để lưu trữ trạng thái trên Linode Object Storage
Terraform sử dụng trạng thái trên backend để ghi nhật ký và theo dõi thông tin tài nguyên. Theo mặc định, trạng thái được lưu trữ cục bộ trong tệp có tên terraform.tfstate
.
Để biết các bước về cách sử dụng Linode Object Storage làm hệ thống lưu trữ từ xa để lưu trữ trạng thái, hãy xem hướng dẫn Sử dụng Terraform để cung cấp cơ sở hạ tầng trên Linode của chúng tôi .
Phần kết luận
Terraform là ứng dụng Infrastructure as Code (IaC) mạnh mẽ và hiệu quả. Nó tự động hóa quy trình triển khai cơ sở hạ tầng. Để sử dụng Terraform, hãy sử dụng định dạng HCL hoặc JSON để mô tả trạng thái cuối cùng của mạng. Sử dụng lệnh terraform plan
từ máy khách Terraform để xem trước các thay đổi và terraform apply
triển khai cấu hình.
Nhà cung cấp Linode bao gồm một API để cấu hình cơ sở hạ tầng Linode Object Storage . Trước tiên, hãy khai báo nhà cung cấp Linode và nguồn dữ liệu Linode Object Storage Cluster . Xác định cơ sở hạ tầng lưu trữ đối tượng bằng cách sử dụng Linode object storage buckets , object storage keys và object storage objects . Object storage objects là các tệp hoặc chuỗi văn bản cần lưu trữ. Để biết thêm thông tin về cách sử dụng Terraform, hãy tham khảo tài liệu Terraform .
Thông tin thêm
Bạn có thể muốn tham khảo các nguồn sau để biết thêm thông tin về chủ đề này. Mặc dù chúng tôi cung cấp với hy vọng rằng chúng sẽ hữu ích, nhưng xin lưu ý rằng chúng tôi không thể đảm bảo tính chính xác hoặc tính kịp thời của các tài liệu được lưu trữ bên ngoài.
- Địa hình
- Cổng thông tin tải xuống Terraform
- Hướng dẫn về Terraform Provider
- Giới thiệu về Terraform
- Trang bảo mật HashiCorp
- Tài liệu Terraform
- Cú pháp cấu hình Terraform
- Không gian tên Linode trong Terraform Registry
- Tổng quan và Tài liệu Linode trong Terraform Registry
- Nguồn dữ liệu cụm lưu trữ đối tượng Linode
- Tài liệu về Linode Object Storage Bucket
- Tài liệu về Đối tượng lưu trữ đối tượng Linode
Nguồn: https://www.linode.com/docs/guides/how-to-use-terraform-with-linode-object-storage/