Opalのインストールが完了しても、ただちに使える状態にはなりません。
使える状態にするためには、データベースの登録およびR言語の設定が必要になります。
Opalは、データベースのバックエンドとして、MongoDBおよびMySQL、MariaDB、PostgreSQLをサポートしています。
ここでは、MariaDBを指定する方法をお伝えします。

環境の確認

今回の作業を行う環境は、Ubuntu Server 20.04になります。


$ cat /etc/lsb-release 

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.1 LTS"

Opalのバージョンは3.0.2になります。


$ dpkg -l | grep opal
ii  opal                                 3.0.2                                   all          OBiBa Data integration Web application for biobanks
ii  opal-python-client                   3.0.1                                   all          OBiBa Data integration Web application for biobanks
ii  opal-rserver                         1.4.2                                   all          OBiBa Opal Rserver

問題の確認

外部パソコンのブラウザからOpalへアクセスします。
User NameおよびPasswordを入力し、Sign Inをクリックします。

Dashboardが表示されます。
右上辺りのAdministrationをクリックします。

3つの警告を解消することが今回の目的となります。

Rパッケージの登録

「リソース記述プロバイダーを特定できませんでした。 resourcer Rパッケージをインストールする必要があるかもしれません。」と警告されています。
この問題を解決するために「Administrate R packages」をクリックします。

Downloadボタンをクリックすると、R Serverのログがダウンロードされます。
このログにエラーの内容が記載されていますので、一つ一つ解決します。

上記のOpalのバージョンでは、いくつかのRのパッケージがライブラリの依存を解決できなかったため、インストールできなかったと記載されていました。
そのため、ログに記載されているRのパッケージおよび依存ライブラリをインストールするため、Opalサーバにターミナルから接続します。
まずは、依存ライブラリをインストールします。


$ sudo apt install libssl-dev libsasl2-dev libssh-dev libmariadbclient-dev libpq-dev

次に、root権限でRを実行し、Rのパッケージをインストールします。
Rserveパッケージは、通常のCRANではエラーが解消できなかったため、rforgeからダウンロードしています。


> install.packages("uuid")
> install.packages("ssh")
> install.packages("mongolite")
> install.packages("RMariaDB")
> install.packages("RPostgres")
> install.packages("unixtools")
> install.packages("resourcer")
> install.packages('Rserve',,"http://rforge.net/",type="source")

Rのパッケージのインストールが完了したら、サーバを再起動しておきます。

MariaDBを登録

ここでは、MariaDBをOpalと同一のサーバにインストールし、これを使用することにします。
まずは、サーバにMariaDBをインストールするため、ターミナルからサーバに接続します。


$ sudo apt install mariadb-server

MySQLにOpalで使用するユーザおよびデータベースを追加します。
ユーザ名およびパスワード、権限は適宜変更してください。


$ sudo mysql -u root

> CREATE USER 'administrator'@'localhost' IDENTIFIED BY 'administrator';
> GRANT ALL ON *.* TO 'administrator'@'localhost';
> FLUSH PRIVILEGES;  
> CREATE DATABASE opal_ids;
> CREATE DATABASE opal_data;

次に、上記で追加したデータベースをOpalに登録するため、外部パソコンでブラウザからOpalにアクセスします。
Sign Inした後、右上のAdministrationをクリックします。
表示された警告の「Add ID database」をクリックします。

Registerをクリックします。

今回は、MariaDBを登録するので、SQLを選択します。

Driverを「MariaDB」とし、UsernameおよびPasswordを上記のMariaDBに登録したユーザ名とパスワードを入力し、Saveボタンをクリックします。

問題がなければ、画面の上部にConnection successfulと表示されます。

続いて、Data DatabasesにMariaDBを登録します。

Registerをクリックします。

Driverを「MariaDB」とし、UsernameおよびPasswordを上記のMariaDBに登録したユーザ名とパスワードを入力し、Saveボタンをクリックします。

問題がなければ、画面の上部にConnection successfulと表示されます。

最終確認

右上のAdministrationをクリックし、警告がなくなっていれば完了です。
これで、Opalの使用準備が整いました。

関連する記事

Ubuntu Server 20.04上のOpalのインストール後に行う設定