[初学者向け]Terraformを学ぼう3! ~Functions~

こんにちは。KOUKIです。

今回は、TerraformのFunctionsについて学びましょう。

前回

前回は、コンテナの作成と情報の確認方法を学びました

join

join関数は、文字列結合時に役立ちます。

pythonとかで使うjoin関数と似てますね。

応用的な使い方も紹介しておきます。

この関数を使えば、このように「IP Address : Port」の文字列も簡単に作成できます。

もちろんjoin関数は、コードの中からでも利用可能です。

複数のコンテナを立ち上げる方法

現在、noderedコンテナが一つだけ立ち上げっている状態ですが、このコンテナを複数同時に立ち上げる方法を見ていきましょう。

Randomリソース

Terraformには、Randomリソースがあります。これは、Terraformがランダムな値を返してくれる便利なリソースです。

これを使って、複数のコンテナを立ち上げてみましょう。

random_stringは、ランダムな文字列を生成するリソースです。そして、結果を取得するにはresultを呼びます。

コンテナのリソースを2つ作り、nameに先ほど学習したjoin関数とrandomリソースから取得した文字列とをjoinし、コンテナ名にしています。

下記のコマンドで、変更を反映しましょう。

Count

複数のコンテナを作成することに成功しましたが、正直な話、少しばかり冗長です。

Terraformには、countパラメータが組み込まれており、これを使うともう少しスッキリとしたコードを書くことができます。

複数作成したリソースにアクセスするには、Splat(*)オペレータを使います。

for

Terraformには、for文もあります。

もちろん、for文はコード内でも使えます。

ブラウザから「http://localhost:55000/」にアクセスするとNoderedコンテナに接続できます。

次回

次回は、Variablesについて学びましょう

Terraformまとめ

ソースコード

main.tf

Makefile

コメントを残す