開始
Terraformは、永続化、バージョニングおよび共有が可能なファイルにOracle Cloud Infrastructure (OCI)リソースを定義できるInfrastructure as Codeソフトウェアです。これらのファイルには、インフラストラクチャのプロビジョニングと、目的とする状態の維持に必要なステップが記述されています:
リソースは、仮想クラウド・ネットワークやコンピュート・インスタンスなどのOCIインフラストラクチャ・オブジェクトを作成できます。構成の最初の適用によってオブジェクトが作成され、後続の適用でそれらを更新または削除できます。
データ・ソースは、既存のOCIインフラストラクチャの読取り専用ビューを表します。
変数は、Terraformのパラメータを表します。
注意
Terraform状態ファイルには、構成ファイルの一部として指定されたすべてのリソース属性が含まれます。Terraformで、データベースやユーザーのパスワード、インスタンスの秘密キーなどの機密データを管理する場合は、その状態ファイル自体を機密データとして扱う必要があります。詳細は、機密データの格納を参照してください。
Terraform状態ファイルには、構成ファイルの一部として指定されたすべてのリソース属性が含まれます。Terraformで、データベースやユーザーのパスワード、インスタンスの秘密キーなどの機密データを管理する場合は、その状態ファイル自体を機密データとして扱う必要があります。詳細は、機密データの格納を参照してください。
最初のステップ
開始するには、Terraformプロバイダのチュートリアルで詳細なウォークスルーと例を参照するか、次のトピックを参照してOCI Terraformプロバイダをインストールして構成します:
- TerraformおよびOCI Terraformプロバイダのディストリビューションをインストールするか、それにアクセスします。
- OCI Terraformプロバイダを構成します。
- コードとしてインフラストラクチャを記述します。
- Terraformを使用して構成を適用します。
使用例
Terraformではステップが実行され、構成ファイルに記述されたインフラストラクチャが構築されます。たとえば、次の構成を適用した場合、Terraformはお客様のテナンシに接続し、その可用性ドメインのリストを取得します。この構成にはリソースが定義されていないため、インフラストラクチャは作成または変更されません。
# Configure the OCI provider with an API Key
# tenancy_ocid is the compartment OCID for the root compartment
provider "oci" {
tenancy_ocid = var.tenancy_ocid
user_ocid = var.user_ocid
fingerprint = var.fingerprint
private_key_path = var.private_key_path
region = var.region
}
# Get a list of Availability Domains
data "oci_identity_availability_domains" "ads" {
compartment_id = var.tenancy_ocid
}
# Output the result
output "show-ads" {
value = data.oci_identity_availability_domains.ads.availability_domains
}
Terraform構成の要件の詳細は、「構成の作成」を参照してください。