Vault

Vault Enterprise ライセンス管理 完全ガイド: 運用設計と無停止更新

2026-04-19
NicheeLab編集部

エンタープライズ運用では、Vault 本体の可用性だけでなく、ライセンスの有効期限と適用方法がSLOを左右します。

本稿は、公式ドキュメントに沿った安定的な概念と運用手順に絞り、試験で問われやすい設問パターンも織り交ぜて解説します。

ライセンスの基本: スコープと責任分界

Vault Enterprise のライセンスは文字列(通称 hclic)として提供され、クラスタ単位で適用します。ライセンスはクラスタのストレージに暗号化保存され、リーダーで設定すればレプリケーションを通じてスタンバイにも反映されます。

有効期限の前後ではログに警告が出力され、期限切れ後はエンタープライズ機能に影響が及ぶ可能性があります。運用としては期限前の計画的更新が前提です。購買・セキュリティ・運用の3者で責任を分担し、変更管理の承認フローを明確にしましょう。

  • スコープはクラスタ単位。ノード個別適用は不要。
  • 適用元は API/CLI または起動時の読み込み。オンライン更新が可能。
  • 試験対策: /sys 以下のシステムエンドポイントにライセンス関連がある点を押さえる。
用語位置づけ要点
hclic(ライセンス文字列)エンタープライズ機能の有効化キークラスタに一つ。暗号化保存される
有効期限運用上のデッドライン期限前更新が原則。警告ログと状態確認を自動化
責任分界購買/セキュリティ/運用購買=取得、セキュリティ=保管、運用=適用・監視

ライセンスの論理スコープ

Leaderapply onceStandbyreplicaEncrypted StorageLicense (hclic)

ライセンス状態の読み取り(CLI例)

export VAULT_ADDR=https://vault.example.com
export VAULT_TOKEN=<operator-token>
# ライセンスのメタ情報を確認
vault read sys/license
# JSON が必要なら
vault read -format=json sys/license | jq .

取得・保管と権限設計

ライセンスは機密情報です。原本はソースコード管理に置かず、アクセスが監査可能な安全な保管先(たとえば社内の秘密管理ストアや鍵付きのアーカイブ)に格納します。運用環境に配布する場合は、最小権限の原則で読み取り経路を限定します。

配布の実務では、チェックサム検証・所有者/パーミッション固定・配布ログの保存を標準化しておくと、監査やインシデント対応が迅速になります。

  • 保管は一元化、配布は短命トークンやワンタイム取得に寄せる。
  • 試験対策: ライセンスは機密データ。監査ログを残せる経路で扱う。
役割許可される操作監査ポイント
購買ライセンス取得・更新依頼発行元・契約期間の記録
セキュリティ原本保管・配布経路の承認アクセスログ・改ざん検知
運用適用・検証・監視適用時刻・実施者・結果

責任分界のイメージ

購買提供セキュリティ配布可否運用監査ログ

安全なファイル取り扱い例(Linux)

# 受領ファイルの整合性チェック
sha256sum -c license.hclic.sha256
# パーミッション固定
install -o root -g vault -m 0640 license.hclic /etc/vault/license.hclic
# 取得ログを残す(例)
echo "$(date -Is) vault license staged by $USER from secure store" >> /var/log/vault/license_audit.log

適用方法の比較と無停止更新手順

Vault はオンラインでライセンスを更新できます。クラスタに接続できる運用トークンでシステムエンドポイントへ書き込むのが、停止を伴わない標準手順です。起動時読み込みも可能ですが、再起動を伴うため計画停止が必要になります。

本番では、先に状態を読み出して有効期限や署名情報を確認し、変更ウィンドウ内でオンライン更新→検証→ロールバックポイントの確定、という流れをテンプレート化すると安全です。

  • 最小ダウンタイム要件ならオンライン更新を第一選択。
  • 試験対策: システムエンドポイントを用いた適用はリーダーで一度実行すればよい。
適用方法再起動要否自動化適性メリット
オンライン更新(API/CLI)不要高い(CI/CD, Runbook)無停止・即時反映
起動時読み込み(環境変数)必要(プロセス再起動)構成として一元管理しやすい
起動時読み込み(ファイル)必要(プロセス再起動)運用がシンプル

オンライン更新の流れ(リーダー適用→レプリカ反映)

OperatorLeaderwrite /sys/licenseStorageencryptedReplication to Standby

オンライン更新と事前検証の例

# 事前確認
vault read sys/license
# オンライン適用(text フィールドでライセンス文字列を送信)
vault write sys/license text=@/etc/vault/new.license.hclic
# 直後に状態確認
vault read sys/license | grep -E "expiration|start|features"
# 失敗時のロールバック(旧ライセンスを再適用)
vault write sys/license text=@/etc/vault/old.license.hclic

監視とアラート設計: 期限接近を見逃さない

ライセンス状態はシステムエンドポイントから取得できます。定期ポーリングして残日数を算出し、しきい値で通知しましょう。Vault のサーバーログにも期限接近や不一致の警告が出ます。監視は API とログの二重化が安心です。

メトリクス連携を使う場合は、外部エクスポータで残日数を数値化し、Prometheus 等に取り込むとアラート化しやすくなります。

  • 推奨しきい値例: 60/30/7日前で多段通知。
  • 試験対策: システムエンドポイントからの状態取得とログ監視を組み合わせる。
シグナル取得方法推奨しきい値・運用
残日数vault read sys/license の有効期限から計算60/30/7日前で通知・チケット自動発行
警告ログサーバーログのパターン監視期限接近・期限切れ・適用失敗を検出
変更イベント監査ログ/変更履歴適用者・時刻・結果を必ず保存

監視フロー

Cron/ExporterServer Logs/sys/licenseDaysLeftAlerting

残日数チェックの簡易スクリプト例(bash+jq)

# periodic_license_check.sh
set -euo pipefail
EXP_TS=$(vault read -format=json sys/license | jq -r '.data.expiration_time' )
NOW_TS=$(date -u +%s)
EXP_EPOCH=$(date -u -d "$EXP_TS" +%s 2>/dev/null || date -u -j -f "%Y-%m-%dT%H:%M:%SZ" "$EXP_TS" +%s)
DAYS_LEFT=$(( (EXP_EPOCH - NOW_TS) / 86400 ))
echo "days_left ${DAYS_LEFT}"
if [ ${DAYS_LEFT} -le 30 ]; then
  logger -t vault-license "License expires in ${DAYS_LEFT} days"
fi

ローテーション計画と実施ランブック

無停止更新の基本は、事前の検証とロールバック計画です。本番と同一系の検証環境で新ライセンスの整合を確認し、変更ウィンドウでオンライン更新→状態確認→影響範囲のヘルスチェックを行います。

DR/レプリケーション構成では、プライマリ側に適用すればクラスタ内で共有されます。DR セカンダリは切替時に同一ライセンス状態であることを確認します。

  • 変更申請にはライセンスID/期限/適用先クラスタ/ロールバック手順を必ず記載。
  • 試験対策: まず read で状態確認→write で適用→再度 read で検証、の順序。
環境推奨ウィンドウ手順差分・注意点
本番短時間のメンテ(無停止前提)オンライン更新後にリージョン横断のヘルスチェック
DR本番と同時切替手順書に「ライセンス整合性確認」を追記
検証/開発随時新バージョン検証時にライセンス確認を自動化

ローテーションのタイムライン

T-7d取得/検証T-1d承認T適用/検証T+1d事後レビュー

Runbook(擬似コード)

# 1) 事前確認
vault read sys/license > precheck.txt
# 2) メンテ開始アナウンス
# 3) 適用
vault write sys/license text=@/secure/new.hclic
# 4) 検証
diff <(vault read -format=json sys/license | jq .data) <(cat precheck.txt | jq .data) | tee validation.diff
# 5) 影響範囲のヘルスチェック(例)
vault status && curl -sf https://health.example.com/vault
# 6) ログ記録・チケット更新

トラブルシュート要点と試験ひっかけ対策

適用時エラーは、トークン権限不足、無効な文字列、通信経路の問題が主因です。まずはシステムエンドポイントへの書き込み権限と、ライセンス文字列の完全性を確認します。期限切れ時はログを確認し、オンライン更新で速やかに復旧します。

試験では「各ノードに個別適用が必要」などの誤りが混ざりがちです。正しくはクラスタに一度適用すれば十分です。

  • 最初に vault read sys/license の結果を取る。差分で原因が見える。
  • 適用はリーダーへ。スタンバイに直接適用しようとしても反映されない。
  • 誤答パターン: ノードごとの再起動が必須、という主張は誤り(オンライン更新可能)。
症状考えられる原因一次対応
適用失敗権限不足/文字列破損/ネットワークポリシー確認・ファイル整合性・API経路疎通
期限接近の見落とし監視未整備残日数監視の導入・多段アラート設定
クラスタ不一致の懸念誤った個別適用手順リーダーに一度適用し状態を再読込

一次切り分けの決定木

Error?Permission?Fix policyPayload valid?Re-fetch licenseNetwork?Retry on leader

APIでの明示的な適用(curl)

curl -sS -X PUT \
  -H "X-Vault-Token: $VAULT_TOKEN" \
  -H "Content-Type: application/json" \
  --data @- \
  ${VAULT_ADDR}/v1/sys/license <<'JSON'
{ "text": "$(cat /etc/vault/new.license.hclic | tr -d '\n')" }
JSON
# 結果確認
curl -sS -H "X-Vault-Token: $VAULT_TOKEN" ${VAULT_ADDR}/v1/sys/license | jq .

問題で確認

Ops

問題 1

本番クラスタでダウンタイムを最小化しつつ Vault Enterprise ライセンスを更新する適切な手順はどれか。

  1. リーダーノードに対して sys/license エンドポイントへ新ライセンスを適用し、直後に状態を再読込して検証する
  2. すべてのノードにライセンスファイルを配置し、順次ノードを再起動して反映させる
  3. スタンバイノードで先に適用し、フェイルオーバー後にリーダーとなった時点で反映させる
  4. 有効期限切れまで特に対応せず、ログの警告が出たら再起動してから適用する

正解: A

オンライン更新はリーダーで一度実施すればクラスタに反映され、ダウンタイムを伴いません。各ノード個別適用や期限切れ放置は不適切です。

よくある質問

ライセンスはノードごとに適用する必要がありますか?

不要です。クラスタに一度適用すれば、ストレージに暗号化保存され、クラスタ内で共有されます。

期限切れ直前に自動で延長されますか?

自動延長はされません。事前に新しいライセンスを受領し、オンライン更新または計画停止で適用してください。監視により60/30/7日前の多段通知を推奨します.

適用にはどの権限が必要ですか?

システムエンドポイントに対する適切な権限を持つ運用トークンが必要です。最小権限で適用専用のトークンを用意し、使用時刻と実施者を監査ログに残してください。

この記事で学んだ内容を問題で確認しましょう

16,000問以上の問題で実力チェック

無料で問題を解いてみる
この記事の著者

NicheeLab編集部

データエンジニアリング・クラウド資格の専門家。Databricks・Snowflake等の認定資格を保有し、実務経験に基づいた問題作成・解説を行っています。NicheeLab運営。


関連記事
Vault

Vault のコア概念を最短距離で理解する:Secret / Auth / Policy / Token

HashiCorp Vault Associate レベルで押さえるべきコア概念(Secret Engine、Auth ...

Vault

Vault Operations Professional: 上位資格としての範囲を実務目線で押さえる

HashiCorp Vault Operations Professional(Ops Pro)の出題範囲を、Assoc...

Vault

Vaultにおけるパスベースのルーティング: マウントとAPI構造を読み解く

HashiCorp Vaultのパスベースのルーティングを、マウント設計とAPIパスの観点から整理。Associateレ...

Vault

Vault Tokens の基礎: 認証の起点となる概念

HashiCorp Vault におけるトークンの役割、種類、ライフサイクル、ポリシー連携、設計パターンをAssocia...

Vault

Vault のトークン種類を正しく使い分ける: service / batch 実践

HashiCorp Vault Associate 向けの試験対策と実務運用を両立させた、service トークンと b...

Vaultの記事一覧 (100件)
© 2026 NicheeLab All rights reserved.