Terraformを使ってGCPサーバーをデプロイする
このトピックでは、Terraformを使ってUbuntuまたはDebian GCP(Google Cloud Platform)サーバーをsystemdによってデプロイする方法について説明します。このプロセスは、特定のニーズに合わせて修正が必要になる場合があります。
Terraformを使ってクラウドサーバーを作成することは、パーソナルマシンにTerraformツールをインストールし、アクセスID、登録トークン、シークレットIDを使ってGCPコンソールでサーバーを作成することを意味します。作成した新しいサーバーは、アドバンストサーバーアクセスのダッシュボードに自動的に表示されます。
このトピックでは、TerraformモジュールとしてScaleFT Starter Kitを使用します。GitHubでこのキットを表示します。セットアップには、企業の本番環境向けのTerraformレポジトリを使用します。terraform.tfvarsファイルの構成値は、このトピックで後述する構成値に類似する値を使用してください。
- 前提条件
- Terraformをダウンロードしてインストールする
- アドバンストサーバーアクセスの登録トークンを作成する
- GCPプロジェクトを作成する
- Terraform.tfvarsファイルを作成して構成する
- プロジェクトのGoogle Compute Engine APIを有効にする
- Terraformコマンドを実行してサーバーを作成する
- 次の手順
前提条件
Google Cloud Platform
必要条件 |
説明 |
---|---|
Google Cloud Platformアカウント | チームの仮想マシンを作成するためにGCPコンソールにアクセスするには、Google Cloud Platformのアカウントが必要です。 |
アドバンストサーバーアクセス
必要条件 |
説明 |
---|---|
アドバンストサーバーアクセスのチーム | アドバンストサーバーアクセス内のOkta組織を表す最上位レベルのオブジェクトです。 |
アドバンストサーバーアクセスのプロジェクト | ユーザー、グループ、サーバーを編成するチームの承認の範囲です。 |
Terraformをダウンロードしてインストールする
- Terraformインストーラーをダウンロードします。TerraformのWebサイトを参照してください。
- ダウンロードされたファイルを解凍してUNIX実行ファイルを実行します。
アドバンストサーバーアクセスの登録トークンを作成する
- アドバンストサーバーアクセスのダッシュボードで[Projects(プロジェクト)]をクリックします。
- サーバーを追加するプロジェクトを選択します。
-
[Enrollment(登録)]タブに移動し、[Create Enrollment Token(登録トークンを作成する)]をクリックします。
注:サーバーをチームに追加するたびに、同じ登録トークンを使うことができます。既に登録トークンを作成している場合は、この手順を省略してください。
- トークンの説明を入力し、[Submit(送信)]をクリックします。
トークンが正常に作成されたら、[Token(トークン)]フィールドの文字列を記録して、後の手順で使用するために安全な場所に保存します。
GCPプロジェクトを作成する
- Google Cloud Platformコンソールへ移動し、アカウントにサインインします。
- [Select a project(プロジェクトを選択する) ]メニューの[New Project(新規プロジェクト)]をクリックします。
- プロジェクトに新しい名前を付け、[Location (場所)]フィールドを使用して親組織またはフォルダーを設定します。
- プロジェクトの作成を完了したら、[Create(作成)]をクリックします。
- 新しいプロジェクトのダッシュボードで、[Project Info(プロジェクト情報)]セクションからプロジェクトID番号をコピーし、安全な場所に保存します。
注:プロジェクトのダッシュボードを見つけるには、コンソールの上部にある[Select a project(プロジェクトの選択)]フィールドを使用します。
Terraform.tfvarsファイルを作成して構成する
- terraform.tfvarsという名前でファイルを作成し、次の行を追加します。
project: "<project-id>"
enrollment_token:"<enrollment-token>"
- <project-id>は、GCPプロジェクトIDに置き換えます。
- <enrollment-token>は、アドバンストサーバーアクセスの登録トークンに置き換えます。
- ファイルを保存して、Terraformモジュールに配置します。
プロジェクトのGoogle Compute Engine APIを有効にする
- Google Cloud Platformのコンソールでプロジェクトのダッシュボードに移動します。
- 左側のサイドバーにある[APIs Services(APIサービス)]タブを使用して、[Dashboard(ダッシュボード)]オプションをクリックします。
- 検索バーの[ENABLE APIS AND SERVICES(APIとサービスを有効化する)]をクリックしてAPIライブラリに移動します。
- ページの左側にある[Category(カテゴリー)]の[Compute(コンピューティング)]をクリックします。
- Compute Engine API用のタブを選択します。
- [Enable(有効にする)]をクリックします。
Terraformコマンドを実行してサーバーを作成する
- マシンのコンソールでwhich terraformコマンドを実行し、Terraformパスが存在することを確認します。
プラットフォームによって出力は異なりますが、次のような出力になります:
/users/user/bin/terraform
- Terraformモジュールを開いていることを確認し、terraform initを実行する
- terraform planを実行して、terraform.tfvarsの情報が正しいことを確認します。エラーが発生した場合は、続行する前に必要に応じてトラブルシューティングを行ってください。
- terraform applyを実行してサーバーの作成を開始します。
承認を求めるメッセージが表示されたら、「yes」と入力します。
新しいサーバーに接続する前に、新しいサーバーがアドバンストサーバーアクセスに表示されていることを確認してください。