セルフホスト型 Looker インスタンスの更新

新しい Looker のリリースが利用可能になると、通知が届きます。Looker を定期的に更新して、バグ修正と新機能を最新の状態に保つことをおすすめします。

Looker インスタンスのクラスタがある場合は、他のインスタンスを更新する前に、単一のノードを完全に更新する必要があります。

この更新プロセスでは、Looker インスタンスに起動スクリプトが含まれていることを前提としています。これは、Looker の初回のインストール プロセスの一部としてインストールされています。

  1. Looker JAR ファイルのダウンロードのドキュメント ページの説明に沿って、Looker JAR ファイルの最新リリースをダウンロードします。
  2. Looker ユーザーとして、シェルから 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 ユーザーとして、シェルから Looker プロセスを開始します。

    Looker クラスタを更新する場合は、1 つのノードのみで Looker プロセスを開始します。最初のノードが更新プロセスを完了するまで、他のノードで Looker を起動しないでください。

    ./looker start
    

    java -jar コマンドを使用して Looker を起動することもできます。コア JAR と共に ./looker ディレクトリにある限り、コア JAR は依存関係 JAR を見つけます。

    さらに、Looker が提供する起動スクリプトを使用する場合は、https://github.com/looker/customer-scripts にある起動スクリプトをご覧ください。

    Looker のバージョンを更新する際、Looker は内部データベースも更新する必要があります。通常、データベースの更新は 5 分未満で完了しますが、Looker の起動プロセスよりも時間がかかる場合があります。内部データベースの更新中に Looker を起動しようとすると、デーモン処理が 6 分でタイムアウトし、「Looker 起動のためにタイムアウト待機中」というメッセージが表示されます。

    特に、複数のリリースをスキップしている場合は、更新中に必要な移行に最大 1 時間かかることがあります。このエラー メッセージが表示された場合は、更新が完了して Looker が起動するまで待ちます。更新プロセスがまだ実行中かどうかを確認するには、次のコマンドを使用します。

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

    内部データベースの更新中に Looker プロセスを停止して再起動すると、内部データベースが破損する可能性があります。この場合、既存のバックアップから Looker を復元して、更新を再度行います。

  7. Looker クラスタを更新中の場合は、最初のノードが更新プロセスを完了するまで待ってから、他のノードで Looker を起動します。