Live Agent 4.53におけるRedis Sentinelへの移行ガイド

v4.53で追加

この移行ガイドは、Live Agent 4.53バージョンアップのためのものです。このリリースでは、高可用性のためにRedis Sentinelを使用することを目的にRedisチャートをアップグレードします。

標準的なアップグレードの実行

最初の手順として、Redis Sentinelを有効にする前に移行ジョブが実行されるように、Live Agentチャートを新しいバージョンに標準アップグレードします。

値が事前に指定されていない場合は、values.yamlファイルでSentinelモードが無効になっていることを確認します。

# ...

redis:
  enabled: true
  sentinel:
    enabled: false
# ...

チャートを最新バージョンにアップグレードします。

helm upgrade cognigy-live-agent oci://cognigy.azurecr.io/helm/live-agent --version X.X.X --namespace live-agent -f custom-values.yaml

values.yamlの変更

バージョン4.53の新しい値には、既に新しいRedis Sentinel設定が含まれています。カスタムvalues.yaml ファイルを使用する場合は、新しい Redis Sentinel 設定を上書きしないようにしてください。

# ...

redis:
  enabled: true
  sentinel:
    enabled: true
# ...

移行ジョブフックの変更

アップグレード後に移行ジョブを実行するには、移行ジョブのフックを一時的にpost-install,post-upgradeに変更する必要があります。そうでない場合、新しいRedisポッドが作成される前に移行ジョブが実行され、移行が失敗してしまいます。

# migration job (uncomment if needed)
migration:
  enabled: true
  hooks:
    migrate:
      # the setting here will override the default, which is "post-install,pre-upgrade"
      hookAnnotation: "post-install,post-upgrade"

チャートのアップグレード

チャートを最新バージョンにアップグレードします。

helm upgrade cognigy-live-agent oci://cognigy.azurecr.io/helm/live-agent --version X.X.X --namespace live-agent -f custom-values.yaml

機能とポッドのステータスの確認

ポッドが実行され、アプリケーションが正しく機能していることを確認します(起動時の正常性チェックをクリアしていることを含む)。

kubectl get pods

古いPVCとPVの削除

アップグレード前のRedisポッドで使用されていた旧PVCを削除します。通常、以下のような名前が付けられています:

  • redis-data-cognigy-live-agent-redis-master-0。
  • redis-data-cognigy-live-agent-redis-replicas-0。

以前のPVCとPVSを削除するには、以下の手順で行います:

1. PVCのステータスが「Released」になっていることを確認します:

kubectl get pvc -n live-agent

2. PVCを削除します。

kubectl delete pvc redis-data-cognigy-live-agent-redis-master-0 -n live-agent
kubectl delete pvc redis-data-cognigy-live-agent-redis-replicas-0 -n live-agent

3. PVが「Available」になったことを確認する。

kubectl get pv

4. PVを削除します。

kubectl delete pv <pv_name> # replace <pv_name> with the name of the PV associated with the deleted PVCs

アップグレード後の移行ジョブフックの削除

前の操作で追加した values.yaml ファイルから移行ジョブフックを削除し、アップグレード後にデフォルト値に戻します。

# migration job (uncomment if needed)
# migration:
#   enabled: true
#   hooks:
#     migrate:
#       hookAnnotation: "post-install,pre-upgrade"

問題がある場合は、テクニカルサポートにお問い合わせください。