更新客户托管的 Looker 实例

一旦有新的 Looker 版本发布,您就会收到通知。我们建议您定期更新 Looker,以便及时了解 bug 修复和新功能。

如果您有 Looker 实例的集群,则必须先完全更新单个节点,然后才能更新其他实例。

此更新过程假设您的 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 就会找到它。

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

    更新 Looker 版本时,Looker 还必须更新其内部数据库。数据库更新通常不到五分钟,但有时可能比 Looker 启动过程更长。如果您在内部数据库仍在更新时尝试启动 Looker,守护程序化进程将在 6 分钟后超时,并显示“等待 Looker 启动超时”消息。

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

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

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

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