更新客户托管的 Looker 实例

如需访问最新的 bug 修复和新功能,请按照以下手动步骤更新客户托管的 Looker 实例。

在继续操作之前,请注意,回滚到早期版本可能会导致严重问题。因此,如果您需要恢复,请务必通过备份进行恢复。如果您运行的是 Looker 集群,请一次更新一个节点,并确保每个节点都已完全更新。此过程还假定您的实例包含在初始设置期间安装的启动脚本。

  1. 按照 下载 Looker JAR 文件 文档页面中的说明,下载最新版本的 Looker JAR 文件。
  2. looker 用户身份通过 shell 停止 Looker 进程:

    sudo su - looker
    cd /home/looker/looker
    ./looker stop
    

    如果您要更新 Looker 集群,请重复此过程,以便在每个节点上停止 Looker。

  3. 备份整个 Looker 目录,包括隐藏目录(如需了解详情,请参阅恢复备份文档页面)。

  4. 如果您已将 Looker 的默认内存数据库迁移到外部 MySQL 数据库,或者您要更新 Looker 集群,请备份 MySQL 数据库。

  5. looker-x.x.x.jar 重命名为 looker.jar,并将 looker-dependencies-x.x.x.jar 重命名为 looker-dependencies.jar。将 looker.jarlooker-dependencies.jar 复制到服务器目录 (/home/looker/looker/looker.jar)。这两个文件 必须 位于同一目录中。

  6. looker 用户身份通过 shell 启动 Looker 进程:

    如果您要更新 Looker 集群,请仅在一个节点上启动 Looker 进程。在第一个节点完成更新过程之前,请勿在其他节点上启动 Looker。

    ./looker start
    

    您还可以使用 java -jar 命令启动 Looker。只要核心 JAR 与依赖项 JAR 位于同一 ./looker 目录中,核心 JAR 就会找到依赖项 JAR。

    此外,如果您更愿意使用 Looker 提供的启动脚本,可以在 https://github.com/looker/customer-scripts 中找到启动脚本。

    更新 Looker 版本时,Looker 还必须更新其内部数据库。数据库更新通常不到 5 分钟,但有时可能比 Looker 启动过程花费的时间更长。如果您在内部数据库仍在更新时尝试启动 Looker,守护进程化过程将在 6 分钟后超时,并显示“Timed out waiting for Looker to start.”(等待 Looker 启动时超时)消息。

    在更新期间,所需的迁移可能需要长达一小时,尤其是在您跳过多个版本的情况下。如果您收到此错误消息,请等待更新完成并等待 Looker 启动。您可以使用以下命令确认更新过程是否仍在运行:

    ps -f $(pgrep -f -- '-jar looker.jar')
    

    在内部数据库更新正在进行时停止并重启 Looker 进程可能会损坏内部数据库。如果发生这种情况,请通过现有备份恢复 Looker,然后再次执行更新。

  7. 如果您要更新 Looker 集群,请等待第一个节点完成更新过程,然后再在其他节点上启动 Looker。