vRealize Automation 高可用性環境中,horizon-workspace 服務重新啟動後,Identity Manager 可能會無法啟動。

問題

Horizon-workspace 服務無法啟動的原因是發生類似下列內容的錯誤:

Error creating bean with name
  'liquibase' defined in class path resource [spring/datastore-wireup.xml]:
  Invocation of init method failed; nested exception is
  liquibase.exception.LockException: Could not acquire change log lock. Currently
  locked by fe80:0:0:0:250:56ff:fea8:7d0c%eth0
  (fe80:0:0:0:250:56ff:fea8:7d0c%eth0) since 10/29/15 

由於 vRealize Automation 使用的 liquibase 資料管理公用程式發生問題,Identity Manager 可能無法在高可用性環境中啟動。

程序

  1. 使用 ssh 以根使用者身分登入 vRealize Automation 應用裝置
  2. 執行 service horizon-workspace 命令以停止 horizon-workspace 服務。
  3. 執行 su postgres 命令以成為 postgres 使用者。
  4. 執行命令 psql vcac
  5. 將架構設為 saas
  6. 執行下列 SQL 查詢: "update "databasechangeloglock" set locked=FALSE, lockgranted=NULL, lockedby=NULL where id=1;"
  7. 從 databasechangeloglock 執行 SQL 查詢 select *

    輸出應顯示值「f」,代表鎖定。

  8. 使用命令 service horizon-workspace start 啟動 horizon-workspace 服務。