🔄

Tableau serverをrpmでアップグレードする方法メモ

2023/05/24に公開

概要

  • Tableau serverは1年に10から15回ぐらいセキュリティ脆弱性対応や不具合対応のために新規バージョンがリリースされます。
  • 毎回一筋縄では更新できないのでメモを残しておきます。
  • 公式の手順書はこちらになります。

やり方の例

以下のページから対象のrpmパッケージをダウンロードします。

https://www.tableau.com/ja-jp/support/releases/server/2023.1.2

% wget https://downloads.tableau.com/esdalt/2023.1.2/tableau-server-2023-1-2.x86_64.rpm
% wget https://downloads.tableau.com/esdalt/2023.1.2/tableau-tabcmd-2023-1-2.noarch.rpm

両方一気に更新してみますが、エラーが出ます。

% sudo yum install *rpm
Failed to set locale, defaulting to C
Loaded plugins: etckeeper, extras_suggestions, langpacks, priorities, update-motd
Examining tableau-server-2023-1-2.x86_64.rpm: tableau-server-20231.23.0511.1508-20231-23.0511.1508.x86_64
Marking tableau-server-2023-1-2.x86_64.rpm to be installed
Examining tableau-tabcmd-2023-1-2.noarch.rpm: tableau-tabcmd-20231.23.0511.1508-20231-23.0511.1508.noarch
Marking tableau-tabcmd-2023-1-2.noarch.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package tableau-server-20231.23.0511.1508.x86_64 0:20231-23.0511.1508 will be installed
---> Package tableau-tabcmd-20231.23.0511.1508.noarch 0:20231-23.0511.1508 will be installed
--> Finished Dependency Resolution
amzn2-core/2/x86_64                                                                                                                                                                                                                                                                  | 3.7 kB  00:00:00

Dependencies Resolved

============================================================================================================================================================================================================================================================================================================
 Package                                                                             Arch                                                     Version                                                               Repository                                                                         Size
============================================================================================================================================================================================================================================================================================================
Installing:
 tableau-server-20231.23.0511.1508                                                   x86_64                                                   20231-23.0511.1508                                                    /tableau-server-2023-1-2.x86_64                                                   4.6 G
 tableau-tabcmd-20231.23.0511.1508                                                   noarch                                                   20231-23.0511.1508                                                    /tableau-tabcmd-2023-1-2.noarch                                                    19 M

Transaction Summary
============================================================================================================================================================================================================================================================================================================
Install  2 Packages

Total size: 4.6 G
Installed size: 4.6 G
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test


Transaction check error:
  file /opt/tableau/tabcmd/NOTICES.txt from install of tableau-tabcmd-20231.23.0511.1508-20231-23.0511.1508.noarch conflicts with file from package tableau-tabcmd-20221.22.0823.1450-20221-22.0823.1450.noarch
  file /opt/tableau/tabcmd/bin/tabcmd from install of tableau-tabcmd-20231.23.0511.1508-20231-23.0511.1508.noarch conflicts with file from package tableau-tabcmd-20221.22.0823.1450-20221-22.0823.1450.noarch

Error Summary
-------------

tabcmdの方のパッケージにおいて、ファイルがコンフリクトしているみたいです。

tableau-server

まずはserverの方を単独で更新します。

% sudo yum install tableau-server-2023-1-2.x86_64.rpm
Failed to set locale, defaulting to C
Loaded plugins: etckeeper, extras_suggestions, langpacks, priorities, update-motd
Examining tableau-server-2023-1-2.x86_64.rpm: tableau-server-20231.23.0511.1508-20231-23.0511.1508.x86_64
Marking tableau-server-2023-1-2.x86_64.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package tableau-server-20231.23.0511.1508.x86_64 0:20231-23.0511.1508 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================================================================================================================================================================================================
 Package                                                                             Arch                                                     Version                                                               Repository                                                                         Size
============================================================================================================================================================================================================================================================================================================
Installing:
 tableau-server-20231.23.0511.1508                                                   x86_64                                                   20231-23.0511.1508                                                    /tableau-server-2023-1-2.x86_64                                                   4.6 G

Transaction Summary
============================================================================================================================================================================================================================================================================================================
Install  1 Package

Total size: 4.6 G
Installed size: 4.6 G
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
etckeeper: pre transaction commit

Your hardware meets the minimum requirements for a trial of Tableau Server.
If you plan to run Tableau Server in a production environment, we recommend the following hardware specifications: http://www.tableau.com/products/server/specs
Tableau Server runs best with at least 128 GB memory, but found only 31 GB of memory.
Tableau Server runs best with at least 8 cores, but found only 4 core(s).

  Installing : tableau-server-20231.23.0511.1508-20231-23.0511.1508.x86_64                                                                                                                                                                                                                              1/1

Found existing installation version '20223.22.1108.0821' in /var/opt/tableau/tableau_server


Found existing installation version '20223.22.1108.0821' in /var/opt/tableau/tableau_server

After new version has been installed on every Tableau Server node, run:

    sudo /opt/tableau/tableau_server/packages/scripts.20231.23.0511.1508/upgrade-tsm --accepteula

on initial (controller) node to continue upgrading Tableau Server.

etckeeper: post transaction commit
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_COLLATE = "C",
	LC_CTYPE = "UTF-8",
	LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_COLLATE = "C",
	LC_CTYPE = "UTF-8",
	LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
  Verifying  : tableau-server-20231.23.0511.1508-20231-23.0511.1508.x86_64                                                                                                                                                                                                                              1/1

Installed:
  tableau-server-20231.23.0511.1508.x86_64 0:20231-23.0511.1508

Complete!

更新できました。次に、規約に同意が必要なので同意します。

% sudo /opt/tableau/tableau_server/packages/scripts.20231.23.0511.1508/upgrade-tsm --accepteula
Upgrading Tableau Server to version 20231.23.0511.1508. See log file at /var/opt/tableau/tableau_server/logs/app-upgrade.log for progress.
Verifying that the upgrade script is running from the correct environment.
Validating Tableau Server version.
Verifying that the new packages have been installed on all cluster nodes.
Verifying Active Directory connection.
Verifying configuration is valid.
Performing preflight checks to ensure the server is in a good state to be upgraded.
Stopping service...
This operation will stop the server. To start server, run 'tsm start' after the upgrade is completed. Do you want to continue?
(y/n): y
Reconnecting to asynchronous job...
Running - Disabling all services.Job id is '461', timeout is 30 minutes.
50% - Disabling all services.
100% - Waiting for the services to stop.
Verifying Tableau Server is stopped.
Verifying that there is only one deployed Tableau Server Coordination Service ensemble.
Verifying that Tableau Server has been initialized.
Verifying licensing state.
Backing up repository.
Making prerequisite configuration changes prior to upgrading TSM services.
Reconnecting to asynchronous job...
Job id is '462', timeout is 43 minutes.
11% - Retrieving the topology to deploy.
22% - Retrieving the configuration to deploy.
33% - Validating the new topology.
44% - Determining if server needs to be started.
55% - Updating nodes to new topology.
66% - Waiting for topology to be applied.
77% - Updating nodes to new configuration.
88% - Reconfiguring services.
100% - Waiting for services to reconfigure.
Upgrading TSM services.
Deploying new service packages.
Updating Tableau Server Coordination Service.
Updating Tableau Server Client File Service.
Adding Activation Service.
Updating configuration.
Reconnecting to asynchronous job...
Job id is '463', timeout is 60 minutes.

Generating new credentials.
Reconnecting to asynchronous job...
Job id is '464', timeout is 63 minutes.
7% - Generating passwords.
14% - Generating secret keys.
21% - Generating apigateway mutual SSL certificates.
28% - Generating Apache Gateway Internal mutual SSL certificates.
35% - Generating Unique Cluster Identifier.
42% - Generating Search Server SSL certificate.
50% - Generating Index And Search Server SSL certificate.
57% - Generating ActiveMQ Server SSL certificate.
64% - Generating internal Metadata API mutual SSL certificates.
71% - Generating key store.
78% - Generating Hyper SSL certificate.
85% - Generating TSIG logs service SSL certificate.
92% - Promoting configuration.
100% - Waiting for services to reconfigure.
Performing post-upgrade services and configuration operation.
Reconnecting to asynchronous job...
Job id is '465', timeout is 30 minutes.
50% - Disabling all services.
100% - Waiting for the services to stop.
Updating asset keys.
Reconnecting to asynchronous job...
Job id is '466', timeout is 2880 minutes.
100% - Migrating asset keys to configuration if needed.
Restoring repository.
Updating repository version in Tableau Server Coordination Service.
Updating repository.
Reconnecting to asynchronous job...
Job id is '467', timeout is 120 minutes.
8% - Enabling the database services.
16% - Waiting for the database services to enable.
25% - Putting the repository into local trust mode.
33% - Creating roles and databases.
41% - Running migrations against the primary database.
50% - Setting the next active repository.
58% - Taking the repository out of local trust mode.
66% - Disabling database services.
75% - Waiting for database services to disable.
100% - Upgrading database
Updating data directory version.
Reconnecting to asynchronous job...
Job id is '468', timeout is 44 minutes.
9% - Retrieving the topology to deploy.
18% - Retrieving the configuration to deploy.
27% - Validating the new topology.
36% - Determining if server needs to be started.
45% - Disabling all services.
54% - Waiting for the services to stop.
63% - Updating nodes to new topology.
72% - Waiting for topology to be applied.
81% - Updating nodes to new configuration.
90% - Reconfiguring services.
100% - Waiting for services to reconfigure.
upgrader.initializing_index_and_search_server
Rebuilding search index.
Reconnecting to asynchronous job...
Job id is '469', timeout is 10 minutes.
14% - Disabling all services.
28% - Waiting for the services to stop.
42% - Starting backup restore services for search server reset.
57% - Resetting search server.
71% - Starting search server.
85% - Configuring search server.
100% - Stopping backup restore services.
Reconnecting to asynchronous job...
Job id is '470', timeout is 1440 minutes.
25% - Enabling the services required for indexing.
50% - Connecting to Vizportal Maintenance.
75% - Rebuilding the search index.
100% - Disabling the services used for indexing.
Upgrading Analytics Extensions settings.
Resetting Metadata API Store.
Reconnecting to asynchronous job...
Job id is '471', timeout is 10 minutes.
9% - Starting required services for resetting Metadata API Store.
18% - Stopping Metadata API Store related services.
27% - Enabling the maintenance app.
36% - Waiting for the maintenance app to start.
45% - Disabling database services.
54% - Waiting for database services to disable.
63% - Recreating Metadata API Store.
72% - Restoring Metadata API Store related services to previous state.
100% - Restoring required services to previous state.
Verifying licensing state.
Tableau Server has been upgraded to version 20231.23.0511.1508.
>> The upgraded Tableau binary directory will be added to PATH for new shells. To get the
>> updated path, either start a new session, or for bash users run:
>> source /etc/profile.d/tableau_server.sh

serverのパッケージを更新すると、Tableau server自体が停止するのでtsmコマンドを利用して明示的にサーバを起動します。

$ tsm start
Starting service...
The last successful run of StartServerJob took 4 minute(s).

Job id is '472', timeout is 60 minutes.

Service was started successfully.

tableau-cmd

一度uninstallすれば良いみたいなので、一度消してインストールします。

% sudo yum remove tableau-tabcmd-20221.22.0823.1450-20221-22.0823.1450.noarch
% sudo yum install tableau-tabcmd-2023-1-2.noarch.rpm

まとめ

  • 毎回手動で作業しないといけないのが辛いです。yumで提供してほしいです。
株式会社マインディア テックブログ

Discussion