継続は力なり

タイトル通り定期的な更新を心掛けるブログです。

redash v8 -> v10 にアップグレードをした

タダです.

redash v10 が10/2にリリースされました.ローカルに v8 を入れてたのでバージョンアップをしてみました.その作業内容をこの記事にまとめていきます.なお,ローカルは次のような環境になります.

% sw_vers
ProductName:    Mac OS X
ProductVersion: 10.15.7
BuildVersion:   19H1419
 % docker -v
Docker version 20.10.8, build 3967b7

バージョンアップグレード作業

バージョンのアップグレードについては Upgrading のセクションに記載がありました.

This section is duplicated from the previous release - since many users will upgrade directly from V8 -> V10

  1. Under services/scheduler/environment, omit QUEUES and WORKERS_COUNT (and omit environment altogether if it is empty).

  2. Under services, add a new service for general RQ jobs:

Following that, force a recreation of your containers with docker-compose up --force-recreate --build and you should be good to go.

github.com

上記を参考に scheduler の environment から QUEUES/WORKERS_COUNT を削除し,RQ jobs の設定を docker-compose.yml に記載したのが下記の内容になります.

version: "2"
x-redash-service: &redash-service
  image: redash/redash:10.0.0.b50363
  depends_on:
    - postgres
    - redis
  env_file: /opt/redash/env
  restart: always
services:
  server:
    <<: *redash-service
    command: server
    ports:
      - "5000:5000"
    environment:
      REDASH_WEB_WORKERS: 4
  scheduler:
    <<: *redash-service
    command: scheduler
  scheduled_worker:
    <<: *redash-service
    command: worker
    environment:
      QUEUES: "scheduled_queries,schemas"
      WORKERS_COUNT: 1
  adhoc_worker:
    <<: *redash-service
    command: worker
    environment:
      QUEUES: "queries"
      WORKERS_COUNT: 2
  worker:
   <<: *redash-service
   command: worker
   environment:
     QUEUES: "periodic emails default"
     WORKERS_COUNT: 1
  redis:
    image: redis:5.0-alpine
    restart: always
  postgres:
    image: postgres:9.6-alpine
    env_file: /opt/redash/env
    volumes:
      - /opt/redash/postgres-data:/var/lib/postgresql/data
    restart: always
  nginx:
    image: redash/nginx:latest
    ports:
      - "80:80"
    depends_on:
      - server
    links:
      - server:redash
    restart: always

そして,docker-compose up --force-recreate --build を実行したら v10 の画面が...見えませんでしたw

追加の作業

下記のフォーラムを参考に追加のコマンドを実行していき,再度アクセスしてみたところ v10 にアクセスできるようになりました.UI が v8 から変わっていました.

  1. docker-compose stop server scheduler scheduled_worker adhoc_worker
  2. docker-compose run --rm server manage db upgrade
  3. docker-compose down
  4. docker-compose up -d

discuss.redash.io

ログイン後の画面

f:id:sadayoshi_tada:20211103235648p:plain

System Status の画面で 10.0.0 になっていることを確認 f:id:sadayoshi_tada:20211103235357p:plain

また,v10 からサポートされた CSV/Excel がデータソースとして参照できることも確認できました.

New Data Source: CSV/Excel Files

f:id:sadayoshi_tada:20211104000000p:plainf:id:sadayoshi_tada:20211104000003p:plain

まとめ

redash v8 を v10 にアップグレードする機会があったのでまとめてみました.記事では mac の環境を扱いましたが,EC2 にホストしている環境でも同様の作業を行ったら v10 にアップグレードできました.