Skip to Content
Dismiss
イノベーション
あらゆる AI ビジョンをサポート

統合化・自動化された基盤が大規模なデータをインテリジェンスに変えます。

詳しく見る
Dismiss
6月16日~18日 ラスベガス開催
Pure//Accelerate® 2026

データの価値を最大化する方法がわかります。

ご登録
Dismiss
2025 年ガートナー・マジック・クアドラント・レポート
「実行能力」と「ビジョンの完全性」で最上位に位置付け

Everpure は、2025 年ガートナー「エンタープライズ・ストレージ・プラットフォーム部門のマジック・クアドラント」において、リーダーの 1 社として「実行能力」と「ビジョンの完全性」の両軸上で最上位に位置付けられました。

レポートを読む

Terraform Plan とは?

HashiCorp 社が開発した Terraform は、インフラ・アズ・コード(IaC)ツールとして広く利用されており、ユーザーは高度な構成言語を使用してソフトウェア・インフラを定義し、プロビジョニングできます。クラウドベースのインフラの導入が進むにつれ、Terraform はインフラ・リソースの管理と自動化に不可欠となっています。Terraform のコア・コマンドの 1 つは、インフラの変更が安全で予測可能、かつ効率的であることを保証する展開プロセスの重要なステップである、terraform plan です。

この記事では、terraform plan コマンド、その動作、Terraform 構成の出力を解釈する方法について詳しく解説します。

Terraform Plan とは?

terraform plan コマンドは、Terraform ワークフローの重要な部分であり、Terraform がインフラに対して行う変更のドライランまたはプレビューとして機能します。インフラの現在の状態を Terraform 構成ファイルで定義された希望の状態と比較し、ギャップを埋めるために Terraform が取る具体的なアクションを示します。これには、新しい仮想マシンの作成、既存のデータベースのスケールアップ、未使用のストレージ・ボリュームの削除など、リソースの追加、削除、変更が含まれます。

Terraform Plan のメリット

構成コードの変更がインフラにどのような影響を及ぼすかをプレビューできることは、次のような多くの点で有益です。

  • 透明性:terraform plan では、今後の変更点を詳しく説明し、インフラで作成、変更、削除される内容を明確に把握できます。この透明性により、エラーを最小限に抑え、展開プロセスに関与する全ての人が同じ認識を持つことを確実にします。
  • リスク軽減:変更を事前にプレビューすることで、サービスを中断する前に潜在的な問題を特定して対処できます。terraform plan は、リソースの競合(重複した名前の VM の作成など)、依存関係の欠如(構成されていない特定のセキュリティ・グループを必要とするデータベースなど)、構成ファイルの誤字による意図しない変更を明らかにするのに役立ちます。
  • コラボレーション:terraform plan は、Git などのバージョン管理システムとシームレスに統合され、チームのコラボレーションを促進します。terraform plan の出力をチームメンバーと共有することで、コードコミットのコンテキスト内で変更をレビューでき、変更を実施する前に透明性と説明責任を促進できます。
  • 効率性:terraform plan は、インフラの変更を計画し、適切に実行するのに役立ちます。terraform plan の出力結果を分析することで、変更を適用する前に潜在的なボトルネックや非効率性を特定できます。
  • 安全性:terraform plan は、本番環境のインフラに適用される前に変更を確認、検証できるようにすることで、セーフティネットとして機能します。この保護は、偶発的な変更を防ぎ、クラウド環境の安定性と信頼性を確保します。

Terraform Plan の実行方法

terraform plan を実行するには、まず、ローカルマシンに Terraform がインストールされていることを確認します。HashiCorp 社の公式ウェブサイトから適切なバージョンをダウンロードしてインストールできます。

plan コマンドを実行する前に、作業ディレクトリに main.tf という名前の基本的な Terraform 構成ファイルを作成する必要があります。以下に、クラウド・プロバイダに仮想マシン・リソースを作成するシンプルな構成の例を示します。

# Configure the cloud provider (replace with your provider details)
 provider "aws" {
   region = "us-east-1"
 }
 
 # Define a virtual machine resource
 resource "aws_instance" "my_vm" {
   ami           = "ami-0f78f7e824d9499e0"  # Replace with the desired AMI ID
   instance_type = "t2.micro"
 }

1. Terraform ディレクトリを初期化する

main.tf ファイルを含む作業ディレクトリに移動し、ターミナルで次のコマンドを実行します。

$ terraform init

このコマンドは、Terraform ディレクトリを初期化し、構成で指定された必要なプラグインやモジュールをダウンロードし、Terraform を使用する環境を準備します。

2. Terraform Plan の実行

初期化が完了したら、次のコマンドを実行して実行計画を生成します。

$ terraform plan

このコマンドは、Terraform 構成を分析し、インフラの現在の状態(存在する場合)と比較します。次に、設定で定義された目的の状態を達成するために Terraform が実行するアクションを概説する詳細な計画が表示されます。計画には、通常、作成、変更、削除されるリソースが表示されます。

3. 計画の出力を保存する

将来参照できるように計画を保存する場合や、チームメンバーと共有する場合は、必要に応じて、plan コマンドで -out フラグを使用できます。例えば、次のコマンドは、計画を plan.tfplan という名前のファイルに保存します。

$ terraform plan -out=plan.tfplan

terraform plan コマンドは、変更をプレビューするだけです。インフラに変更はありません。計画のレビューと承認後、$ terraform apply コマンドを使用して計画された変更を実行できます。

Terraform Plan の出力の理解と分析

terraform plan の出力は通常、いくつかのセクションに分かれており、それぞれが計画されたアクションについての貴重な知見を提供します。

リソースのアクション

このセクションでは、Terraform がインフラ・リソースで実行する具体的なアクションについて解説します。これらのアクションは、主に 3 つのタイプに分類されます。

  • 作成 (+):この記号は、Terraform が構成に基づいて新しいリソースを作成することを示します。
  • 読み取り (~):この記号は、Terraform が既存のリソースの状態を読み取り、変更が必要かどうかを判断することを意味します。Terraform は通常、計画フェーズで必要なアクションを決定するため、計画の出力ではあまり頻繁に見られません。
  • 削除 (-):この記号は、Terraform が、設定で定義されていない既存のリソースを削除することを示します。

リソースの詳細

このセクションでは、plan の影響を受ける各リソースについて詳しく説明します。以下に、一般的な詳細を示します。

  • リソースの種類:これは、Terraform が管理するインフラ・リソースのタイプを指定します(例:aws_instance、azurerm_resource_group)。
  • リソース名:これにより、Terraform 構成内のリソースに割り当てられた一意の名前が識別されます。

変更予定

このセクションでは、リソースに適用される具体的な変更について詳しく解説します。作成(+ で示される)されるリソースについては、定義される属性と、対応する値がリストされます。変更対象のリソースについては、既存の属性に対する変更が表示されます。

概要

計画の出力は、多くの場合、計画されたアクションの概要を提供する要約セクションで終了します。この概要では、通常、リソースの合計数を次のカテゴリに分類します。

  • 追加予定:作成される新しいリソースの数

  • 変更予定:変更する既存のリソースの数

  • 破棄:削除される既存のリソースの数

先ほど作成したサンプル構成で terraform plan を実行すると、次のような結果が得られます。

# $ terraform plan
 
 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:
 
   # aws_instance.my_vm will be created
   resource "aws_instance" "my_vm" {
     + ami           = "ami-0f78f7e824d9499e0"
     + instance_type = "t2.micro"
     + tags = {
       + Name = "sample-tag"
     }
   }

1. リソースのアクション:最初の行は、Terraform がこの計画中に作成アクション (+) を実行することを示しています。

2. リソースの詳細:次のセクションでは、単一のリソースである aws_instance.my_vm について詳しく解説します。これは、Terraform が AWS 環境に my_vm という名前の新しい AWS EC2 インスタンスを作成することを意味します。さらに、Terraform が新しいインスタンスに適用する AMI ID (ami-0f78f7e824d9499e0)、インスタン・スタイプ (t2.micro)、タグ (Name = "Samplesample-tag") を指定します。

3. 要約(暗黙的):この例では明示的に示されていませんが、より複雑な計画の出力の最後には、要約が表示され、作成されるリソースの合計数を示す場合があります。

Terraform Plan のベストプラクティス

terraform plan コマンドは、インフラの変更を適用する前のセーフティネットです。以下は、メリットを最大化するために不可欠なプラクティスです。

リソース変更の精査:

  • 作成(+)または削除(-)用にマークされたリソースに焦点を当てます。
  • 新しいリソースの属性値が目的と一致していることを確認します(AMI ID、ストレージ・サイズなど)。
  • 既存のリソースへの変更の正確性を再確認します。

潜在的な問題を見つける:

  • リソースの競合(重複した名前、依存関係の欠如など)がないか調べます。
  • 必要な依存関係(セキュリティ・グループなど)が全て定義されていることを確認します。
  • サービスを中断させる可能性のあるリソースの予期しない削除には注意してください。

出力の活用:

  • 計画された変更がインフラの目標と一致するかどうかを検証します。
  • リソースの変更に伴う潜在的なコストへの影響を考慮します。また、計画の出力を共有し、チームレビューとコミュニケーションを図ることもできます。

まとめ

terraform plan は、Terraform ワークフローにおける強力なツールです。インフラの変更を安全かつ透過的にプレビューして検証し、適用することができます。terraform plan を理解し、効果的に活用することで、デプロイメントの効率、予測可能性、意図しない結果がないことを確認できます。

ピュア・ストレージは、Terraform の導入に最適な永続的ブロック・ストレージ・ソリューションを提供します。Portworx は、あらゆるコンテナと Kubernetes Terraform ワークロードのための包括的なデータ・プラットフォームを提供します。Pure Cloud Block Store は、オンプレミス・インフラと同様に、あらゆるデータベースやコンテナのワークロードをクラウドで実行できます。

こちらの資料もご覧ください!

10/2025
Virtual Machine Provisioning at Enterprise Scale | Everpure
Sizing and scaling Red Hat OpenShift Virtualization with Portworx.
ホワイト・ペーパー
22 pages

関連リソースとイベント

動画
動画:エンタープライズ・データ・クラウドのメリット

会長兼 CEO のチャーリー・ジャンカルロが、ストレージ管理からデータ管理へのシフトこそが未来である理由を解説します。統合により、エンタープライズ IT の運用管理がいかに変わるかがわかります。

視聴する
リソース
従来のストレージは未来を支えません。

近代的なワークロードには、AI 対応の高速性、セキュリティ、拡張性が求められます。スタックの準備はできていますか?

現行のサイバー対策を評価する
Pure360 デモ
ピュア・ストレージを探索、体験、学習できます。

ピュア・ストレージの製品や機能をご紹介するオンデマンド動画/デモ付き動画をご用意しています。是非ご利用ください!

デモ動画を見る
ソート・リーダーシップ
イノベーション競争

ストレージ技術革新の最前線に立つ業界リーダーによる最新のインサイトと展望。

詳しく見る
このブラウザは現在サポートされていません。

古いブラウザには、セキュリティ・リスクが存在する場合があります。ピュア・ストレージの Web サイトをより快適にご利用いただけるよう、最新のブラウザにアップデートしてください。

Personalize for Me
Steps Complete!
1
2
3
Personalize your Everpure experience
Select a challenge, or skip and build your own use case.
ニーズの変化に対応する仮想化戦略

あらゆるニーズに応えるストレージの選択肢

あらゆる規模の AI を支援

データ・パイプライン、トレーニング、推論に最適な高性能ストレージ

徹底したデータ損失対策

サイバー・レジリエンス・ソリューションがリスクを低減

クラウド運用コストを削減

Azure、AWS、プライベート・クラウドを支える高コスト効率のストレージ

アプリとデータベースを高速化

アプリケーションの性能を高める低レイテンシ―のストレージ

省電力・省スペースのデータセンター

リソース消費効率の高いストレージが、データセンターを高効率化

Confirm your outcome priorities
Your scenario prioritizes the selected outcomes. You can modify or choose next to confirm.
Primary
Reduce My Storage Costs
Lower hardware and operational spend.
Primary
Strengthen Cyber Resilience
Detect, protect against, and recover from ransomware.
Primary
Simplify Governance and Compliance
Easy-to-use policy rules, settings, and templates.
Primary
Deliver Workflow Automation
Eliminate error-prone manual tasks.
Primary
Use Less Power and Space
Smaller footprint, lower power consumption.
Primary
Boost Performance and Scale
Predictability and low latency at any size.
What’s your role and industry?
We've inferred your role based on your scenario. Modify or confirm and select your industry.
Select your industry
Financial services
Government
Healthcare
Education
Telecommunications
Automotive
Hyperscaler
Electronic design automation
Retail
Service provider
Transportation
Which team are you on?
Technical leadership team
Defines the strategy and the decision making process
Infrastructure and Ops team
Manages IT infrastructure operations and the technical evaluations
Business leadership team
Responsible for achieving business outcomes
Security team
Owns the policies for security, incident management, and recovery
Application team
Owns the business applications and application SLAs
Describe your ideal environment
Tell us about your infrastructure and workload needs. We chose a few based on your scenario.
Select your preferred deployment
Hosted
Dedicated off-prem
On-prem
Your data center + edge
Public cloud
Public cloud only
Hybrid
Mix of on-prem and cloud
Select the workloads you need
Databases
Oracle, SQL Server, SAP HANA, open-source

Key benefits:

  • Instant, space-efficient snapshots

  • Near-zero-RPO protection and rapid restore

  • Consistent, low-latency performance

 

AI/ML and analytics
Training, inference, data lakes, HPC

Key benefits:

  • Predictable throughput for faster training and ingest

  • One data layer for pipelines from ingest to serve

  • Optimized GPU utilization and scale
Data protection and recovery
Backups, disaster recovery, and ransomware-safe restore

Key benefits:

  • Immutable snapshots and isolated recovery points

  • Clean, rapid restore with SafeMode™

  • Detection and policy-driven response

 

Containers and Kubernetes
Kubernetes, containers, microservices

Key benefits:

  • Reliable, persistent volumes for stateful apps

  • Fast, space-efficient clones for CI/CD

  • Multi-cloud portability and consistent ops
Cloud
AWS, Azure

Key benefits:

  • Consistent data services across clouds

  • Simple mobility for apps and datasets

  • Flexible, pay-as-you-use economics

 

Virtualization
VMs, vSphere, VCF, vSAN replacement

Key benefits:

  • Higher VM density with predictable latency

  • Non-disruptive, always-on upgrades

  • Fast ransomware recovery with SafeMode™

 

Data storage
Block, file, and object

Key benefits:

  • Consolidate workloads on one platform

  • Unified services, policy, and governance

  • Eliminate silos and redundant copies

 

What other vendors are you considering or using?
Thinking...
Your personalized, guided path
Get started with resources based on your selections.