Bastion UI¶
Bastion UI は、Genvid クラスタの管理に使用する Web サイトです。これは、bastion-api の GUI になります。
設定ページ¶
このページで、Bastion-UI ページの設定の変更を行うことができます。 Global Vars、Modules、Backends の確認や編集もできます。
グローバル変数¶
Global Vars Settings で、すべての Terraform クラスタで使用できる変数を設定できます。ここに値を追加すると、同じ名前の設定を持つすべてのクラスタが、この値をデフォルトで引き継ぎます。
モジュールセクション¶
Modules セクションで、編集や削除可能な既存の Terraform モジュールレポジトリを確認できます。REFRESH をクリックして、レポジトリ内のモジュールを更新できます。
+ New Repository をクリックして新しいレポジトリを作成します。
- ID
- レポジトリフォルダ名。全て小文字。
- URL
- レポジトリのフォルダの URL です。
バックエンドセクション¶
Backends セクションで、利用可能なバックエンド設定のリストを確認できます。バックワード設定は一意の名前と、変数のリストで構成されます。
- バックエンド構成の追加、編集、削除。
- Name
- バックエンドの一意の ID。
- Type
- 有効な Terraform バックエンドタイプ。
- Variables
バックエンドタイプの引数。ユーザーが追加、削除することができます。編集は、ID、値、プロパティによって構成されます。
- Variable ID : 引数名。
- Value : 引数の値。
- Editable : クラスタを初期化する時に、引数が編集できるかどうか。
- Argument : 変数がファイルで設定されるか、Terraform に引数として渡されるか。
- Protected : クラスタ初期化時に、変数をパスワードとして表示するかどうか。
参考
Terraform のバックエンドについては、解説書の Terraform のバックエンド を参照。
bastion-api は、クラスタを初期化する前に、変数の値に補間値を適用します。例えば、テキスト {{.clusterID}}
は、クラスタ ID になります。現時点では、clusterID
、 clusterUUID
、 instanceID
のみをサポートしています。
Terraform¶
重要
前バージョンの解説書の クラスタ を参照してください。
このページには、デプロイされたすべての Terraform 構成が表示されます。ここから、次の処理を行なうことができます。
- cluster-api の開始と停止。
- cluster-api が開始している場合に、各クラスタ専用の Cluster-UI ページにアクセスします。
Terraform の構成を作成する¶
Add Config をクリックして New Config ダイアログを開きます。
- ID
- クラスタの一意の ID。
- Category
- Terraform 構成を確認するのに役立ちます。デフォルトは cluster です。
- Backend
- 使用する Terraform バックエンドです。ドロップダウンに、使用可能なバックエンドが一覧表示されます。
- Type
- 使用されている Terraform バックエンドのタイプです。
- Variables
- バックエンドを構成する追加変数です。
Terraform モジュールをインポートする¶
重要
この手順は必須です。
Commands ページで Terraform の構成を初期化するには:
- 適切なモジュールを選択します。
- IMPORT MODULE をクリックします。
デフォルトでは、一覧には cluster-api をサポートするモジュールのみが表示されます。利用可能なモジュールについては、Display all modules を参照してください。
モジュールのインポート後は、モジュールを選択することができなくなります。モジュールの変更や再インポートは REIMPORT MODULE をクリックして行ってください。
Terraform コマンド¶
構成の初期化後、このページで Terraform コマンドが実行されます。
- Plan Apply
- terraform plan を実行します。
- Plan Destroy
- terraform plan -destroy を実行します。
- Refresh
- terraform refresh を実行します。
- Init
- terraform init を実行します。
- Output
- terraform output を実行して、別ウィンドウに結果を表示します。
実行中、コマンドを終了したり、キルしたりできます。
- Terminate
- 実行中のコマンドに終了信号を送ります。Terraform は1回目の試行で正常にシャットダウンしようとします。2 回目の試行では、Terraform はすぐにプロセスを停止します。この場合、データが失われる可能性があります
- Kill
- Terraform プロセスをすぐに破棄します。 データが失われる可能性があります。
Terraform ローカル設定¶
Terraform 設定で、インフラを構築するために Terraform に必要な変数を構成します。3 種類の必要な値が存在します。
- default
- 選択した Terraform モジュールのデフォルト値です。
- Global
- グローバル値は、Global Vars Settings で設定し、同じ名称のすべての変数のデフォルト値を上書きします。
- Local
- ローカル値は、デフォルト値、グローバル値の両方を上書きするカスタム値です。
各変数の横のラベルで Default 、 Global 、 Local を判別できます。下にあるボタンをクリックすると、対応する変数を Default 、または Global に変更できます。
上級者向けエディタ
上級ユーザー向けに、JSON エディタで設定を編集するオプションも存在します。 Advanced Editor をクリックすると、JSON エディタが次のように表示されます。
Form Editor をクリックすると、いつでもフォームに戻ることができます。
編集した値は、エディタの切り替え中も保持されており、 Save をクリックすると保存することができます。
ジョブ¶
このページで、bastion クラスタのジョブを管理します。このページでは次の操作を実行できます。
- 各ジョブのステータスを参照する。
- スタックおよびジョブの開始と停止。
- 対応する hashi-ui Job ページにアクセスする。
ジョブの編集方法
- Settings をクリックして**設定**ページを開きます。
- Jobs セッションに移動します。
Jobs Setting ページには、構成されたすべてのジョブが表示されます。
- Download をクリックして、ジョブテンプレートをダウンロードします。テンプレートは、
.nomad.tmpl
の拡張子を持つテキストフォーマットです。- ジョブ構成の設定と削除
+ ADD JOB をクリックして Add new job ダイアログを開きます。
- Name
- ジョブ名はテンプレートファイル名、およびテンプレートファイル内のジョブ名に対応させる必要があります。
- Dependencies
- ジョブ開始前に待機するサービスのリスト。デフォルトは None です。
- Autostart
- 引数なしの start コマンドでジョブを自動的に開始する場合にチェックします。
- By cluster
- ジョブをクラスタごとに、個別に開始する必要がある場合にチェックします。ジョブ名に Cluster ID が追加されます。
- Cluster categories
- ジョブを実行する必要のあるクラスタカテゴリを指定します。By cluster オプションがチェックされている場合にのみ使用できます。
- Template
- ASCII ファイルをドラッグアンドドロップしてテンプレートを更新することができます。スクリプトを正しく機能させるため、ジョブ名は、テンプレート名と同じでなければなりません。詳細は、 Nomad テンプレート を参照してください。
ログ¶
このページには、タスクログが表示されます。サービスの実行中、ログは自動的に更新されます。ログレベルは、デフォルトまたは、ロガーごとに割り当てることができます。
ログの編集方法
- Settings をクリックして**設定**ページを開きます。
- Logs セッションに移動します。
+ADD LOG をクリックして Add New Log ダイアログを開きます。
- ID
- ログの一意の ID。一度作成した ID は変更できません。
- File Name
- 保存されたログのファイル名。例: stderr, stdout
- Job
- 記録中のログの ID。ジョブがクラスタで設定される場合、ログはその名前にクラスタ ID を含みます。
- Group
- タスクグループの ID。
- Task
- タスクの ID。
- Log Level
- 動的ログレベルをログでサポートする必要がある場合は、このオプションをチェックします。記録されるログの情報量が変化します。ログレベルには、 debug、info、warning、error、fatal 、 panic があります。
ヘルス¶
このページには、すべてのサービスのヘルスが表示されます。
左側の列は、サービスとそのインスタンスを示します。インスタンスは、ヘルスに応じて色が異なります。
- 緑色: すべてのヘルスチェックは合格しています。
- オレンジ色: 少なくとも 1 つのヘルスチェックが動作状態です。
- 赤色: 少なくとも 1 つのヘルスチェックはクリティカルな状態です。
このページでは:
- 重要なサービスに集中するためにシステムサービスを非表示にする。
- ステータスを更新する。
- サービスインスタンスをクリックして詳細を確認する。
サービスをクリックすると、詳細セクションに情報が表示されます。
- Information
- サービスの詳細です。
- Node
- サービスが実行されているノードです。
- Checks
- このサービスのヘルスチェック。