Tableau Serverのアップグレードを行う(単一サーバ構成&既存データを新規サーバへ移行する場合)

2014.09.02

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Tableau Serverでは、サーバ自体のアップグレードについて出来る限りシンプルに行えるような設計がなされていますが、アップグレードの前に幾つか知っておくべき点があります。当エントリではその内容及び実際のアップグレード方法の幾つかについてご紹介してみたいと思います。

目次

Tableau Serverのアップグレード方法について

ブログタイトルで記載しているように、Tableau Serverではその構成とデータの扱い方によって幾つか方法・手法を分類する事が出来そうです。内容を整理したのが以下表となります。

No. サーバ構成 処理区分 備考
1. 単一サーバ構成 既存コンテンツを保持
2. 単一サーバ構成 既存コンテンツを削除
3. 単一サーバ構成 既存コンテンツを新規サーバに移行 ※当エントリで紹介
4. クラスタ構成 既存コンテンツを保持
5. クラスタ構成 既存コンテンツを削除
6. クラスタ構成 既存コンテンツを新規サーバに移行

今回当エントリでご紹介する内容は、この中でも一番シンプル且つ既存環境への影響も少なさそうな『3.単一サーバ構成/既存コンテンツを新規サーバに移行』のケースになります。コンテンツ削除はケースとしてそんなに無さそうという事を考慮すると、1,3,4,6の計4パターンについては想定し得る『アップグレード』パターンとしてその手法を確認しておく必要があるかも知れませんね。

Tableau Serverのアップグレード事前チェックリスト

Tableauでは、アップグレードの前に考慮・確認しておくべき『事前チェックリスト』なるものが用意されています。移行手順を実行する前に確認しておく重要なポイントとなりますので予め確認しておきましょう。

『事前チェックリスト』はTableau Serverのバージョン8.2へのアップグレードを行う準備をしているお客様向けの内容となり、アップグレードをスムーズに行うための幾つかのベストプラクティスについて解説しています。(※ちなみに7.0以前からのアップグレードの場合はカスタマーサポートに連絡する必要があるようです)

認証、セットアップファイル及びカスタマイズ

ユーザーアカウント認証情報:
アップグレードにはローカル管理者権限を持つユーザーアカウントが必要です。
実行アカウントの認証情報:
Tableau Serverの実行アカウント、以前のTableau Serverバージョンをインストールした際のアカウントとなります。
セットアップファイル:
アップロードで用いる.exeファイルを用意しておく事に加えて、現在導入しているバージョンの.exeファイルも併せて用意・再ダウンロードしておく必要があります。(過去バージョンのファイルについてはこちらから入手可能です)アップグレード中に予期しない事象が発生した場合、より迅速に回復させる事が出来ます。

Tableau がアップグレード中に設定を保持する一方で、後で検証・確認出来るように、行った設定内容を控えておいた方が良いでしょう。(SSLやポート番号、タイムアウト値等が該当します)これら構成の詳細については『Upgrade to 8.2』を御参照ください。またTableau Server 8.1またはそれ以前のバージョンでは、後述する"pgsql.use_vacuum_job"の設定を対応する必要があります。

tabcmdのバージョン(tabcmd Version)について

新しいバージョンのtabcmdは、Tableau Serverのリリース毎に併せてリリースされています。Tableau Server未導入の環境でtabcmdユーティリティをインストールした場合、Tableau Serverをアップグレードする際にtabcmdをアップグレードする必要があります。詳細はInstalling Tabcmd | Tableau Softwareを御参照ください。

Bitバージョン(Bit Version)について

バージョン8.1から、Tableau Serverは64ビットアプリケーションも提供されています。8.1以前の場合は32ビット版のみ利用可能です。64ビット版OSで32ビット版のアプリケーションを稼働させていた場合、64ビット版でアップグレードを行った方が良いでしょう。Tableau Serverの稼働要件についてはこちら を御参照ください。また、クラスタ環境でのアップグレードを行う場合は全ての同じビットバージョンで作業を行う必要があります。

製品メンテナンスのステータス

Tableau Serverのメンテナンス有効期限が切れた状態でアップグレードを行った場合は、アップグレード完了後はライセンスの無い状態となってしまいます。 メンテナンスが切れた場合は更新を行ってください。更新しない場合、こちらのページ(Viewing and Paying Tableau Invoices)を御参照ください。

"pgsql.use_vacuum_job"の設定

Tableau Server バージョン8.2は内部データベースにPostgreSQL 9.3.xを使っています。PostgtrSQLの以前のバージョンには、Windows環境に於いて、pgsql.use_vacuum_jobの設定オプションを追加する事によるAutoバキュームタスクに問題がありました。

少数のお客様はPostgreSQL実行時、通常はこのオプションを無効化しています。もしあなたがこれら設定を行っていた(事前にこのオプションを無効化していた)ならば、バージョン8.2へのアップグレード前に設定を有効化する必要があります。手順は以下。

Step 1:コマンドプロンプトを管理者権限で開きます。

Step 2:Tableau Serverのbinディレクトリに移動。

> cd C:\Program Files\Tableau\Tableau Server\[version]\bin

Step 3:Tableau Server停止。

> tabadmin stop

Step 4:以下コマンドを実行し、autovacuumタスク設定を有効化。

> tabadmin set pgsql.use.vacuum_job -d

Step 5:以下コマンドを実行。

> tabadmin config

Step 6:Tableau Serverを起動。

> tabadmin start

"クリーン"なバックアップの作成

アップグレード前にバックアップを取っておくのはオススメです。バックアップ作成前に、tabadmin cleanupコマンドを実行します。

このコマンドはサーバー実行中及びサーバー停止後に実行しておくべきです。前者はTableau データベースのファイルに基づいて処理が行われ、後者はログファイルを削除する事ができます。

クリーンアップの実施

tabadmin cleanupコマンドはTableau Serverシステムから不要なファイルを取り除きます。Server稼働中であれば一度実行しておきましょう。

Step 1:コマンドプロンプトを管理者権限で開きます。

Step 2:Tableau Serverのbinフォルダへ移動。

C:\>cd C:\Program Files\Tableau\Tableau Server\8.1\bin

Step 3:Tableau Serverの稼働状況を確認。(tabadmin status)

C:\Program Files\Tableau\Tableau Server\8.1\bin>tabadmin status
Status: RUNNING

Step 4:クリーンアップ実行。

C:\Program Files\Tableau\Tableau Server\8.1\bin>tabadmin cleanup
===== The service is running.  Files in use will not be cleaned up.  Use the --restart command to have cleanup stop and restart Tableau Server
===== Cleaning entries from http_requests log older than 7 days
   -- Deleted 8 rows
===== Removing service logs.
===== Not removing tempdir contents, as the service is running

Step 5:Tableau Server停止。

C:\Program Files\Tableau\Tableau Server\8.1\bin>tabadmin stop

Step 6:再度クリーンアップ実行。

C:\Program Files\Tableau\Tableau Server\8.1\bin>tabadmin cleanup
===== The service is not running, so http_request logs will not be purged.
===== Removing service logs.
===== Removing tempdir contents at C:/ProgramData/Tableau/Tableau Server/data/tabsvc/temp

バックアップを作成する為にサーバは停めたまま次へ進みます。

バックアップファイルの作成

tabadmin backupコマンドを実行すると、データリポジトリ、データ抽出、サーバ構成を含む.tsbakファイルを作成します。このファイルを作成後、別のコンピュータに格納します。もしTableau Server8.0以前を使用してバックアップを作成していている場合、バックアップを作成する前にサーバを停止する必要があります。バージョン8.1以降はサーバを停止する事無くバックアップを作成する事が可能です。

Step 1:Tableau Serverのbinディレクトリにて以下のコマンドを実行。

> tabadmin backup <filename> -d
  • filenameはバックアップで取りたいファイル名。-dオプションは付けた場合ファイル名に日付が付加されます。
  • バックアップで取るファイルはTableau Serverフォルダの配下【以外】の場所に作成してください。アンインストール中に問題となります。
C:\Program Files\Tableau\Tableau Server\8.1\bin>tabadmin backup C:\tableau_backups\tabserver
===== Using as backup tmp directory: C:/ProgramData/Tableau/Tableau Server/data/tabsvc/temp (free space: 76.32 GB)
===== Setting inheritance on C:/ProgramData/Tableau/Tableau Server/data/tabsvc/pgsql/data
===== Starting component Tableau Server Repository Database
===== Cleaning entries from http_requests log older than 7 days
   -- Deleted 8 rows
===== Backing up database data
===== Backing up dataengine extracts
===== Backup of dataengine extracts done
===== Backup of database data done
===== Backup written to C:/tableau_backups/tabserver.tsbak
===== Stopping all components

Step 2:Tableau Server起動。

C:\Program Files\Tableau\Tableau Server\8.1\bin>tabadmin start

もしバックアップバージョンに戻したい場合は、以下ドキュメントを元に戻す事が可能です。

Tableau Serverのアップグレードについて

事前チェック内容をひと通り確認出来たところで、アップグレード作業に移りたいと思います。アップグレード時、念頭に置いておくポイントは幾つかあります。

サーバーがアクティブの場合、アップグレード出来ません:
同じマシン内にアクティブなTableau Serverが稼働している場合はアップグレード作業は行えません。新バージョンへアップグレードを行う際は以前のバージョンのものをアンインストール又は新規マシンに新しいバージョンをインストーする必要があります。
アンインストール作業でソフトウェアは削除されるが、データは残ったまま:
(アップグレードプロセスの一部として)既に存在しているTableau Serverのバージョンがある環境にプログラムを追加・削除する際、ソフトウェアは削除されますがデータは削除されません。新しいセットアッププログラムは既存データを自動的にインポートします。

※もう1点、『分散環境について』というポイントもあったのですが、当エントリで解説を進めて行くのは単一サーバ構成の内容なのでここでは割愛して次へ。

アップグレード手順

Tableau Serverでのアップグレード手順について、公式には以下3つの方法が用意されています。

  • A.同一マシン内でのアップグレード(既存コンテンツを保持)
  • B.同一マシン内でのアップグレード(既存コンテンツを削除)
  • C.新規マシンでのアップグレード(既存コンテンツを移行)

ここでは、移行作業時の既存環境への影響が一番少なく、且つ手順シンプルそうな『C.新規マシンでのアップグレード(既存コンテンツを移行)』についてその内容について見て行きたいと思います。

Step 1:

前述の『アップグレード事前チェックリスト』に記載の内容を確認。メンテナンス有効期限をチェックし、設定からワーカーサーバーを取り除き、アップグレード手順実行前にバックアップを取っておくこれらのタスクはとても重要なステップです。

Step 2:

新規アップグレードで用いるインストーラファイルをダウンロードし、新規マシン側でインストール実行。

Step 3:

新しいTableau Serverのデータベースを作成する為に『事前アップグレードチェックリスト』の一部として作成した.tsbakファイルを利用します。 .tsbakファイルを、新しくTableau Serverをインストールしたコンピューター上のフォルダにコピー。

# ファイル保存先の例:
C:\>D:\
D:\>cd D:\Tableau\Tableau Server\8.2\bin>
※この例では、以下構成でアップグレードを実施しています。
・新規サーバをD:\Tableau 配下にインストール
・D:\mybackups\ 配下に.tsbakファイルを配置

Tableau Server 8.2のバージョンで(分散環境の場合であればプライマリサーバにて)、管理者としてコマンドプロンプトを開きTableau Serverを停止させます。

D:\Tableau\Tableau Server\8.2\bin>tabadmin stop
===== Stopping service...
   -- Service stopped successfully

以前のバージョンのTableau Serverインストール環境から、データと設定情報をリストア。コマンドtabadmin restore (filename)を実行する事で処理実施。(filemane)は.tsbakファイルのファイル名パスとなります。

> tabadmin restore C:\mybackups\tabserv.tsbak

もしくは、以前のバージョンのTableau Serverからデータのみをリストア。コマンドは以下の内容で実行。

> tabadmin restore --no-config C:\mybackups\tabserv.tsbak

(実際の実行例)

D:\Tableau\Tableau Server\8.2\bin>tabadmin restore tabserver.tsbak
===== Beginning to restore the backup
===== Verifying backup manifest
   -- Restoring service configuration
   -- Initiating built-in extract engine data restore
   -- Restoring service data from backup file
   -- Database restore completed.
   -- running migrations
===== Validating Database schema signature
===== Database schema is different from the expected schema. Use tabadmin validate_schema_signature for further investigation.
===== Rebuilding Search Indices
   -- Scheduling Background Job to Rebuild Search Indices
   -- Waiting for built-in extract engine data restore to finish.
   -- Extract engine data restore completed.
===== Backup restore completed
===== Enter "tabadmin start" to start the service

Tableau Serverを起動。

D:\Tableau\Tableau Server\8.2\bin>tabadmin start

Step 4:

(分散環境の場合の手順なので当エントリでは割愛。)

Step 5:

移行作業が完了したら、以前のバージョンの環境下で稼働しているTableau Serverライセンスの非アクティブ化を行い、マシンからアンインストールする必要があります。

Tableau Serverの非アクティブ化は[スタート]→[プログラム]→[Tableau Server]→[Manage Product Keys]から。

対象のプロダクトキーを選択し、[非アクティブ化]してください。(※オンライン環境下で非アクティブ化が出来ない場合はこちらを御参照ください)

まとめ

以上、Tableau Serverの『単一サーバー構成』且つ『既存データを新しいマシンに移行』する形でのアップグレード方法についてご紹介しました。Tableau Desktopと併せて、Tableau Serverも日々機能追加や機能改善が行われております。適度なタイミングでアップグレードを行って、Tableau Softwareの良さを存分に活用して行きたいものですね。こちらからは以上です。

参考情報