tencent cloud

Tencent Cloud EdgeOne

Terraformの概要

下载
聚焦模式
字号
最后更新时间: 2026-10-15 16:51:02
本文档由 AI 翻译

Terraformとは何ですか?

Terraformは、Goで記述され、クライアントで動作するオープンソースのリソースオーケストレーションツールです。HashiCorp Pluginに基づくアーキテクチャ設計により、Terraformに高い拡張性が付与されています。現在、Tencent CloudもTerraform Pluginに基づいてTencentCloud Providerを実装しており、Terraformを通じてTencent Cloud上のリソースを管理できます。概略図は以下の通りです:

TencentCloud Providerはtencentcloud-sdk-goに基づいて実装されており、現在183個を超えるResourceと158個のData Sourceを提供しています。コンピューティング、ストレージ、ネットワーク、TKE、CLB、ミドルウェア、データベース、Cloud Monitorなど30以上の製品をカバーし、多くのユーザーの基本的なクラウド移行ニーズを満たしています。
EdgeOneが提供するTerraformドキュメントおよびTerraformサンプルコードを通じて、Terraformをすばやく理解し、使い始めることができます。

Terraformの利点

マルチクラウドオーケストレーション

Terraformはマルチクラウドソリューションに適しており、類似した基盤構造をTencent Cloud、他のクラウドプロバイダー、またはオンプレミスデータセンターにデプロイできます。開発者は同じツールと類似した構成ファイルを使用して、異なるクラウドプロバイダーのリソースを同時に管理できます。

インフラストラクチャとコード

インフラストラクチャは高度な構成言語であるHCLを使用して記述できます。これにより、インフラストラクチャをコード化およびバージョン管理でき、共有や再利用が可能になります。例は以下の通りです:
# NS接続方式でサイトexample.comを作成します
resource "tencentcloud_teo_zone" "zone" {
zone_name = "example.com"
# zone_available_plansを使用して、利用可能なプラン情報を照会します。
plan_type = "<your-plan-type>"
type = "full"
paused = false
cname_speed_up = "enabled"
}

# example.comのDNSレコードを作成します。
resource "tencentcloud_teo_dns_record" "dns_record" {
zone_id = tencentcloud_teo_zone.zone.id
type = "A"
name = "example.com"
# CDN加速サービスを有効にします。
mode = "proxied"
content = "<your-backend-ip>"
ttl = 60
}

実行計画

Terraformには「Planning」ステップがあります。terraform planコマンドを実行すると、Terraformは実行計画を生成します。実行計画には、applyを呼び出したときのTerraformの状態が表示されます。この機能により、Terraformでインフラストラクチャを操作する際の予期しない事態を回避できます。例は以下の通りです:
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:

# tencentcloud_teo_dns_record.dns_record will be created
+ resource "tencentcloud_teo_dns_record" "dns_record" {
+ cname = (known after apply)
+ content = "<your-backend-ip>"
+ created_on = (known after apply)
+ domain_status = (known after apply)
+ id = (known after apply)
+ locked = (known after apply)
+ mode = "proxied"
+ modified_on = (known after apply)
+ name = "example.com"
+ priority = (known after apply)
+ type = "A"
+ status = (known after apply)
+ ttl = 60
+ zone_id = (known after apply)
}

# tencentcloud_teo_zone.zone will be created
+ resource "tencentcloud_teo_zone" "zone" {
+ area = (known after apply)
+ cname_speed_up = "enabled"
+ cname_status = (known after apply)
+ created_on = (known after apply)
+ id = (known after apply)
+ modified_on = (known after apply)
+ name = "example.com"
+ name_servers = (known after apply)
+ original_name_servers = (known after apply)
+ paused = false
+ plan_type = "sta"
+ status = (known after apply)
+ type = "full"
+ vanity_name_servers_ips = (known after apply)

+ vanity_name_servers {
+ servers = (known after apply)
+ switch = (known after apply)
}
}

Plan: 2 to add, 0 to change, 0 to destroy.

───────────────────────────────────────────────────────────────────────────────

Note: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these actions if you run "terraform apply" now.

自動変更

最小限の手動操作で、インフラストラクチャに複雑な変更セットを適用できます。前述の実行計画とリソーストポロジーにより、Terraformの動作を正確に把握し、人為的ミスを回避できます。

リモート状態管理

Terraformはリモート状態保存メカニズムであるBackendを導入しています。現在、Tencent CloudはCOSを使用してユーザーのtfStateファイルを管理でき、ファイルをローカルに保存することによる紛失を防ぎます。また、リモート保存により、複数人で同時にTerraformリソースを管理することが可能になります。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈