Terraformは、仮想サーバーインフラストラクチャを構築および保守するためのツールです。 1つのプロジェクトで複数のクラウドプロバイダーをサポートします。 Terraformは、ユーザーが作成、拡張、および管理できる状態とモジュールの構成済みグラフを通じて状態管理を実現します。
ツールの使用方法を説明するチュートリアルはオンラインでたくさんありますが、その背後にある概念を理解するのは必ずしも簡単ではありません。 Terraformを非常に柔軟で強力なものにしているのは、インフラストラクチャを任意の言語でプログラミングしたり、Python(「テラフォーミング」と呼ばれることもあります)に基づいて独自の言語を作成したりできることです。
Terraformは、main.tfというファイルを使用します。構文はbashとJSONのクロスのように見えます。プロバイダーは、TerraformをAWSやAzureなどのクラウドプロバイダーに接続するために使用されます。このファイルは、データを取得する場所、つまりプロバイダーとその構成を定義します。 main.tfファイルは、インフラストラクチャでの作業を開始するための単なるゲートウェイです。
Terraformは、terraform.tfstateという状態ファイルを使用して、インフラストラクチャについて認識していること、実行中か停止中か、およびリソースのすべての値を保存します。モジュールは、AWSインスタンスの作成やElasticIPアドレスのアタッチなどの一般的なタスクを実行するための設定の詳細を含むコードスニペットです。 Terraformモジュールには、インスタンスの作成方法と追跡方法を定義する「リソース」と呼ばれるブロックを使用するリソース構成が含まれています。
Terraformは、既存のリソースを管理するだけでなく、新しいリソースを作成することもできます。 Terraformは構成管理ツールではありませんが、同じ変更を何度も再適用することで既存のリソースを変更する機能があります。
新しいLinuxシステムをインストールしたいと思ったことはありますか?もしそうなら、このガイドはあなたのためです。あなたは常にあなたの仕事を自動化するためのより多くの方法を探しています。あるいは、あなたは単に好奇心が強く、自動化を始めたいと思っています。 Terraformを使用すると、1つのコマンドで完全なインフラストラクチャを作成できます。つまり、Terraformクライアントソフトウェアをインストールして使用する方法を知っていることが重要です。
このガイドでは、AlmaLinux 8、CentOS 8、RockyLinux8などのRedHatEnterprise Linux(RHEL)互換OSにTerraformをインストールする方法を学習します。また、単純なAWS EC2インスタンスを作成し、最終的にTerraformを取得する方法も学習します。稼働中です。
LinuxへのTerraformのインストールRedHatEnterprise Linux(RHEL)は、エンタープライズクラスのオペレーティングシステムです。 RHELのユーザーベースはかなり大きく、世界中の企業がビジネスを運営するために広く使用されています。 RHELは、愛好家、学生、開発者がLinuxを学ぶために使用するだけでなく、ウェブホスティングやデバイスへのメディアのストリーミング用に独自のサーバーを自宅に持ちたいホームユーザーにも使用されています。
TerraformをRHELにインストールするには、次のものが必要です。
- RHEL8以降と互換性のあるOS。このデモでは、Centos8をベースオペレーティングシステムとして使用しています。
- システムにsudo権限が設定されているroot以外のユーザー。
コンピューターユーザーとして実行できる最も重要なタスクの1つは、システムを更新することです。これにより、ハードドライブのスペースを節約し、より多くのアプリケーションをインストールすることがよくあります。ただし、コンピュータの安全性も大幅に向上します。 Terraformをインストールする場合は、システムの更新が必須の手順です。
1.ターミナルウィンドウに次のコマンドを入力して、システムの更新を開始できます。サーバーのパフォーマンスによっては、実行に時間がかかる場合があります。
sudo yum check-update && sudo yum update -y
出力例:
2.次に、次のコマンドを実行して、yum-utilsパッケージをシステムにインストールします。 yum-utilsはモジュラーパッケージとして記述されており、yum-utilsコードを変更せずに新しい関数を追加できます。 yum-utilsは、現在利用可能なRPM関数の代わりではありませんが、バニラRPMの一部ではない追加の関数を提供します。このyum-utilsパッケージを使用して、後でterraform用のhashicorpリポジトリを追加します。
sudo yum install yum-utils -y
出力例:
CentOS8へのTerraformのインストール
システムが更新されたので、Terraformをインストールする準備が整いました。
Centos 8のリポジトリには、terraformパッケージが含まれていません。つまり、yum-utilsパッケージを使用してterraformリポジトリをシステムに追加する必要がありますが、terraformはyumパッケージマネージャーを介してインストールされます。
1.次のコマンドを実行して、hashicorpリポジトリを追加します。
sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
出力例:
2.次のコマンドを実行して、hashicorpリポジトリが正常に追加されたかどうかを確認します。
sudo dnf repolist
次の出力が得られます。
3.最後に、次のコマンドを実行して、yumパッケージマネージャーを使用してシステムにTerraformをインストールします。
sudo yum install terraform -y
Terraformのインストールには、必要なすべてのパッケージをリポジトリからダウンロードする必要があるため、しばらく時間がかかります。上記のコマンドを入力したら、座ってインストールが完了するまで待ちます。
4.終了したら、ターミナルウィンドウに引数なしでterraformと入力して、Terraformを実行できます。
terraform
5.次のコマンドを実行して、システムにインストールされているテラフォームのバージョンを確認します。
このチュートリアルでは、AlmaLinux 8、CentOS 8、Rocky Linux 8などのRHEL互換OSにTerraformをインストールして構成する方法を学びました。このチュートリアルの最後に、Terraformを独自のプロジェクトに使用できるようになります。コメントや質問がある場合はコメントを残してください。