結構な時間を掛けてAlfrescoの導入(6.1)に挑戦したが、ここに現行システム(5.2)のデータを持ってきて移行したいと考えている。
Alfrescoのデータはきっと起動時にきっとうまいこと必要な変更がかかるだろう。Solrはどうなんだろう?
やること
バージョンアップを伴う移行になるので、保管してあるデータはそのまま移行してバージョンアップさせ、検索用のインデックスは作り直そうと考えた。
- バックアップ対象の確認
- コンテンツストア
- データベース
- Solrインデックス
- バックアップ方法の確認
- コールドバックアップ
- ホットバックアップ
- バックアップ実行
- 5.2のバックアップ(現行システムのバックアップ)
- 6.1のバックアップ(移行先だから今回は関係ないけど…)
- アップグレード
- 現行システムで利用しているアドオンを追加
- Alfresco Simple OCR Action
- Alfresco PDF Toolkit(今回実施できず)
- やったこと
バックアップ対象の確認
コンテンツストア(alf_data)とデータベース(alfresco)、そしてSolrのインデックスをバックアップする。それぞれがどこにあるのかを確認する。
コンテンツストア
現行のAlfresco 5.2は自動インストーラーでインストールしており、以下のようなディレクトリ構成になっていて、これをまるごとバックアップすれば良さそうだった。
場所は alfresco-global.properties の dir.root で指定されている。
/<ALFRESCO_HOME> ウチの場合は /usr/share/alfresco/alf_data
├ contentstore
├ contentstore.deleted
├ keystore
├ oouser
├ solr4
└ solr4Backup
移行先のAlfresco 6.1は手動デプロイしており以下のディレクトリ構成になっていた。
/<ALFRESCO_HOME> ウチの場合は /usr/share/alfresco/alf_data
├ contentstore
├ contentstore.deleted
└ keystore
alf_data/contentstore と alf_data/contentstore.deleted がバックアップバックアップ対象になる。
データベース
データベースはMySQLやMariaDBを使用している。設定はalfresco-global.propertiesに書いているので確認。
現行(Alfresco 5.2)の設定は…
alfresco-global.properties
…
db.driver=org.gjt.mm.mysql.Driver
db.username=alfresco
db.password=データベース接続用パスワード
db.name=alfresco
db.url=jdbc:mysql://localhost:3306/alfresco?useUnicode=yes&characterEncoding=UTF-8
db.pool.max=275
db.pool.validate.query=SELECT 1
…
移行先(Alfresco 6.1)の設定は…
alfresco-global.properties
…
db.driver=com.mysql.jdbc.Driver
db.url=jdbc:mysql://localhost:3306/alfresco?useUnicode=yes&characterEncoding=UTF-8
db.username=alfresco
db.password=データベース接続用パスワード
…
おっとっと未指定だった…恐らくは、デフォルトのデータベース名が alfresco となっていて問題なく動作しているものと思われる。
ということで、どちらも alfresco というデータベースがバックアップ対象になる。
Solrインデックス
Alfresco Search Service の マニュアルはこちら。
Solrデータがどこにあるのかを見るとき、Solrにブラウザでアクセスして見るのがわかりやすく、そこから逆算してここに書いてあるのかな?という予測を書いてみる。
Alfresco 5.2では alf_data にsolr4とsolr4Backupがあった。中身を見てみるとsolr4がインデックスで、3日ローテーションでsolr4Backupにバックアップがとられているように見える。
Alfresco5.2ではここに書いてありそう。
$ find /usr/share/alfresco/solr4 -name solrcore\.properties
/usr/share/alfresco/solr4/workspace-SpacesStore/conf/solrcore.properties
/usr/share/alfresco/solr4/archive-SpacesStore/conf/solrcore.properties
/usr/share/alfresco/solr4/templates/rerank/conf/solrcore.properties
/usr/share/alfresco/solr4/templates/without_suggest/conf/solrcore.properties
/usr/share/alfresco/solr4/templates/test/conf/solrcore.properties
/usr/share/alfresco/solr4/templates/vanilla/conf/solrcore.properties
/usr/share/alfresco/solr4/workspace-SpacesStore/conf/solrcore.properties
…
data.dir.root=/usr/share/alfresco/alf_data/solr4/index
data.dir.store=workspace/SpacesStore
…
これを連結した
/usr/share/alfresco/alf_data/solr4/index/workspace/SpacesStore
にデータストアがあった。
archiveのことやコンテンツストアの配置から考えて、
/usr/share/alfresco/alf_data/solr4
がバックアップ対象と考えてよさそう。
Alfresco 6.2も同じように手動デプロイの展開先を探してみた。
$ find /usr/share/alfresco-search-services -name solrcore\.properties
/usr/share/alfresco-search-services/solrhome/alfresco/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/templates/rerank/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/templates/rerankWithQueryLog/rerank/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/templates/rerankWithQueryLog/qlog/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/templates/noRerank/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/templates/aps/process/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/templates/aps/taskDefinition/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/templates/aps/processDefinition/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/templates/aps/task/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/archive/conf/solrcore.properties
/usr/share/alfresco-search-services/solrhome/alfresco/conf/solrcore.properties
…
data.dir.root=/usr/share/alfresco-search-services/solrhome/
…
data.dir.store=alfresco
…
これを連結した
/usr/share/alfresco-search-services/solrhome/alfresco
にデータストアがあった。
archiveのことやsolrhomeのディレクトリ構成を考えると、
/usr/share/alfresco-search-services/solrhome/alfresco
/usr/share/alfresco-search-services/solrhome/archive
の2つをバックアップ対象と考えた。
バックアップ方法の確認
バックアップは2種類、コールドバックアップとホットバックアップ。システムを止めるかどうかだけの違いみたいなので、それぞれの要件だけを整理する。
コールドバックアップ
システムを止めた状態でバックアップをとる。よって止め方を整理する。
現行システムでは、5.2は自動インストーラーを利用してTomcatごとインストールし、systemd unitとして起動している。そのTomcatの中にAlfrescoとSolrの両方が同居していたので、Tomcatを停止してしまえばシステムが止まる。
$ sudo systemctl stop alfresco.service
一方、移行先システムは6.1を手動デプロイした。Tomcatで他のサービスも同居しているかもしれない…ということで、AlfrescoとShareを停止させる。また、Solrは専用のJettyごとインストールしているので、これを止めてしまう。
Tomcatの tomcat-users.xml に manager-script の権限を持つユーザーがalfadminさんで、パスワードはalfpassとして…
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/stop?path=/share
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/stop?path=/alfresco
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/stop?path=/_vti_bin
$ sudo systemctl stop alfresco-search.service
※スクリプト実行時のstopのところをstartにすればサービス起動できる。
ホットバックアップ
システムを動かしたままバックアップをとるので、整合性を保つために
- Solrのインデックス
- データベース
- コンテンツストア
の順でバックアップをとることになっている。
バックアップ実行
コールドバックアップもホットバックアップもこの順序でバックアップすれば良さそう。
5.2のバックアップ(現行システムのバックアップ)
コンテンツストア
この2つのディレクトリをバックアップ。
$ sudo zip -r alf_data.zip \
> /usr/share/alfresco/alf_data/contentstore \
> /usr/share/alfresco/alf_data/contentstore.deleted
※カレントディレクトリを移動して圧縮すれば usr/share/alfresco とかのディレクトリ情報は付かないけど、たまにしか使わないものだし…割り切り。
データベース
データベースをダンプする。
$ sudo mysqldump -p --single-transaction alfresco > alfresco.dmp
Solr
このディレクトリをバックアップ。
$ sudo zip -r solr.zip /usr/share/alfresco/alf_data/solr
6.1のバックアップ(移行先だから今回は関係ないけど…)
コンテンツストア
この2つのディレクトリをバックアップ。
$ sudo zip -r alf_data.zip \
> /usr/share/alfresco/alf_data/contentstore \
> /usr/share/alfresco/alf_data/contentstore.deleted
※カレントディレクトリを移動して圧縮すれば usr/share/alfresco とかのディレクトリ情報は付かないけど、たまにしか使わないものだし…割り切り。
データベース
データベースをダンプする。
$ sudo mysqldump -p --single-transaction alfresco > alfresco.dmp
Solr
このディレクトリをバックアップ。
$ sudo zip -r solr.zip \
> /usr/share/alfresco-search-services/solrhome/alfresco \
> /usr/share/alfresco-search-services/solrhome/archive
アップグレード
どのバージョンからなら6.1へ行けるのか…どうも、このドキュメントはエンタープライズ版へのアップグレードを書いているみたいだけど、この絵から想像するに5.2から6.1にはバージョンアップできそう。
ここで実行するアップグレード作業の流れは以下の通り。ウチの程度なら数分で作り直してくれるから、Solrのインデックスは再作成してもらう。
- 現行システム(5.2)のバックアップを移行先システムに持ってくる。
- 移行先システム(6.1)のAlfrescoとSolr(Alfresco Search Service)を停止する。
- 移行先システムのコンテンツストア(alf_data/contentstore, alf_data/contentstore.deleted)を削除し、バックアップから内容を復元する。
- 移行先システムのAlfrescoデータベースを削除・再作成し、バックアップから内容を復元する。
- 移行先システムのSolrコアを削除する。
- Alfrescoを起動する(自動的にバージョンアップに必要な作業が行われる見込み)。
- Solrを起動する(自動的にコアが作成され、インデックスが再作成される)。
移行先システム(6.1)のAlfrescoとSolrを停止
移行先システムのAlfrescoとShareを停止する。
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/stop?path=/share
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/stop?path=/alfresco
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/stop?path=/_vti_bin
$ sudo systemctl stop alfresco-search.service
コンテンツストアの復元
移行先システムのコンテンツストアを削除する。
$ sudo -u tomcat rm -rf /usr/share/alfresco/alf_data/contentstore
$ sudo -u tomcat rm -rf /usr/share/alfresco/alf_data/contentstore.deleted
バックアップから取り出したコンテンツストアのディレクトリを移動し、権限を設定する。
$ sudo mv contentstore /usr/share/alfresco/alf_data
$ sudo mv contentstore.deleted/ /usr/share/alfresco/alf_data
$ sudo chown -R tomcat:tomcat /usr/share/alfresco/alf_data/contentstore
$ sudo chown -R tomcat:tomcat /usr/share/alfresco/alf_data/contentstore.deleted
$ sudo chmod -R 700 /usr/share/alfresco/alf_data/contentstore
$ sudo chmod -R 700 /usr/share/alfresco/alf_data/contentstore.deleted
データベースの復元
データベースを一旦削除し、新たに作り直す。
$ sudo mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 108
Server version: 10.1.40-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> drop database alfresco;
Query OK, 71 rows affected (3.00 sec)
MariaDB [(none)]> create database alfresco default character set utf8;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> quit
Bye
旧システムでバックアップしたファイルをリストア。
$ mysql -u alfresco -palfresco-password -D alfresco < alfresco.dmp
※-pオプションでパスワード指定をするが、-pの後ろに空白を入れるとパスワードを正しく認識しないのでくっつけて書いてある。
Solrコアの削除
Solr4からSolr6へのバージョンアップについて書かれている。巨大なインデックスなら移行するのも良いと思うが、バージョンも変わることだし、自宅で使っているので仮に多少の時間がかかっても最初から作り直した方がいいな…と考えた。
作り直すのであれば、コアを削除すれば良い。
$ sudo -u alfsrch rm -rf /usr/share/alfresco-search-services/solrhome/alfresco
$ sudo -u alfsrch rm -rf /usr/share/alfresco-search-services/solrhome/archive
Alfrescoを起動する
1つ1つ起動していく。
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/start?path=/_vti_bin
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/start?path=/alfresco
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/start?path=/share
この段階でログインができるようになるので、まず、Alfresco Administration Consoleに接続してみる。今までの操作でユーザーの情報等は全て移行できているので、現行システムのAdministratorと同じユーザー名・パスワードでログインする。
ノードブラウザ→ルートリストボタンあたりをクリックして情報が表示されることを確認する。
次に、Shareにログインし、どこかのサイトに行って文書ライブラリを見てみる。
※初めてリストアしたときには _vti_bin を停止・起動していなかったせいか、Internal Errorが起きたりした。この時は Tomcat そのものを再起動して回復できたのでメモしておく。
Solrを起動する
コアを削除した状態で起動するので、コアを作り、インデックスを再作成する。
$ sudo systemctl start alfresco-search.service
CPUが落ち着いた後 Share の検索を試してみる。できれば、現行システムと検索結果が同じになるところまで確認できるとラッキー。
ここまで来たところでアップグレード自体はできた。
現行システムで利用しているアドオンを追加
現行システムでアドオンを利用しているならば、それもインストールする必要がある。今回、導入していたOCR系のプラグインを通過したドキュメントのプロパティが見られなかったので気がついた。
Alfresco Simple OCR Action
利用するOCRソフトの性能に左右され、実際、商用レベルとは行かない。だけど、いくつかキーワードを試せば検索に引っかかってくれる程度には文字を認識してくれるようになって重宝している。以前、Ubuntu16.04に最新バージョンのOCRソフトを導入する記事を書いていたが、このページのメインは移行なので、できるだけ標準パッケージを利用していく。
機能の呼び出し経路イメージは以下の通り。
Alfresco → Alfresco Simple OCR Action → pdfsandwich → Tesseract OCR → Leptonica
Ubuntuのパッケージをインストール。
$ sudo apt install leptonica-progs tesseract-ocr tesseract-ocr-jpn tesseract-ocr-jpn-vert pdfsandwich
$ pdfsandwich -version
pdfsandwich version 0.1.6 ← 当時、コンパイルしたのと同じ
$ tesseract --version
tesseract 4.0.0-beta.1 ← 当時、コンパイルしたのと同じ
leptonica-1.75.3 ← 当時、コンパイルしたのと同じ
libgif 5.1.4 : libjpeg 8d (libjpeg-turbo 1.5.2) : libpng 1.6.34 : libtiff 4.0.9 : zlib 1.2.11 : libwebp 0.6.1 : libopenjp2 2.3.0
↑ ここは少しずつバージョンが上がってる
※少なくとも現行システムと同等のクォリティが確保された!
次に AddonsからAlfresco Simple OCR Action(リンク切れ)を探しだし、GitHubのプロジェクトリリースページからjarファイルを2つダウンロードする。
配置先ディレクトリがないので作る。
$ sudo -u tomcat mkdir -p /usr/share/alfresco/modules/platform
$ sudo -u tomcat mkdir /usr/share/alfresco/modules/share
platform の側に simple-ocr-repo-2.3.1.jar を、
share の側に simple-ocr-share-2.3.1.jar を配置する。
Alfrescoにインストールしたことを知らせるために、以下を追記。
/usr/share/alfresco/conf/alfresco-global.properties
…
# Alfresco Simple OCR
ocr.command=/usr/bin/pdfsandwich
ocr.output.verbose=true
ocr.output.file.prefix.command=-o
ocr.extra.commands=-verbose -rgb -lang jpn
ocr.server.os=linux
Alfrescoを再起動する。
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/start?path=/_vti_bin
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/reload?path=/alfresco
$ curl -u alfadmin:alfpass http://localhost:8080/manager/text/start?path=/share
※実は、はじめにこのSimple Module形式のアドオンをインストールしたときには全然動作しなかった。これはインストール時の手順に不足があったためで、下の方で解決方法を記載。
Alfresco PDF Toolkit(今回実施できず)
Alfresco上でPDFを色々と操作できる便利なアドオン。
開発プロジェクトはここが拠点の模様。
ただ、2019/06/08時点で6.x系統には対応していなかったので、諦め。
以上で移行完了!
やったこと
ブラウザでSolrにアクセス
ブラウザでAlfresco Search Service(Solr)にアクセスしてデータやインデックスがどこに保管されているのか確認する。
現行システム
ブラウザでアクセスしてみる。Alfresco5.2のSolrはTomcatに搭載されていた。
alfresco-global.propertiesにポート番号が書かれている。
index.subsystem.name=solr4
dir.keystore=${dir.root}/keystore
solr.host=localhost
solr.port.ssl=8443
アプリケーション名は tomcat/webappsのディレクトリ名を見れば分かる。
ということで、アクセスURLはこんな感じに。
https://hogeserver.hogeddns.jp:8443/solr4
SSLアクセスのためにクライアント証明書が必要。Alfresco CAが発行したクライアント証明書をアクセスするPC(Firefoxの場合にはブラウザ)に登録する必要がある。
/usr/share/alfresco/alf_data/keystore/browser.p12
アクセスするとクライアント証明書の提示を求められるので、提示するとアクセスできる。
Core Selector で aflresco とか archive を選択してみると、Solr4のデータはここにあることが分かる。
■alfresco コア
Data: /usr/share/alfresco/alf_data/solr4/index/workspace/SpacesStore
Index: /usr/share/alfresco/alf_data/solr4/index/workspace/SpacesStore/index
■archive コア
Data: /usr/share/alfresco/alf_data/solr4/index/archive/SpacesStore
Index: /usr/share/alfresco/alf_data/solr4/index/archive/SpacesStore/index
新システム
ブラウザでアクセスしてみる。Alfresco6.1のSolrはJettyというプラットフォームに搭載されていた。
多分、アプリケーションの名前はここで定義されているのかな…
/usr/share/alfresco-search-services/solr/server/contexts/solr-jetty-context.xml
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath"><Property name="hostContext" default="/solr"/></Set>
<Set name="war"><Property name="jetty.base"/>/solr-webapp/webapp</Set>
<Set name="defaultsDescriptor"><Property name="jetty.base"/>/etc/webdefault.xml</Set>
<Set name="extractWAR">false</Set>
</Configure>
ポートはここで定義されているらしい。
/usr/share/alfresco-search-services/solr/server/etc/jetty-http.xml
<Set name="port"><Property name="jetty.port" default="8983" /></Set>
/usr/share/alfresco-search-services/solr/server/etc/jetty-https.xml
<Set name="port"><Property name="solr.jetty.https.port" default="8983" /></Set>
インストール時にSSL通信を選ばなかったので、結論、このURLでアクセスできる。
http://temp.hogeserver.hogeddns.jp:8983/solr
Core Selector でコアを選択すると、Solr6のデータはここにあることが分かる。
■alfresco コア
/usr/share/alfresco-search-services/solrhome/alfresco
/usr/share/alfresco-search-services/solrhome/alfresco/index
■archive コア
/usr/share/alfresco-search-services/solrhome/archive
/usr/share/alfresco-search-services/solrhome/archive/index
データベースのバックアップ
Kopanoのデータベースをバックアップする際、mysqldumpコマンドに--routinesオプションを付けていた。マニュアルに従って付けたものだが、Alfrescoはそうしたオプションを付けなくて良いのか…?
そもそもこのオプションって?
Yakst / DBAのためのmysqldumpのtips 25選
そうか、ストアドプロシージャやストアドファンクションがある場合には必要なオプションだったのね。
確認の仕方はこちらに。
MySQL 逆引きリファレンス / ストアドプロシージャの一覧を確認する方法
MySQL 逆引きリファレンス / ストアドファンクションの一覧を確認する方法
$ sudo mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 102
Server version: 10.1.40-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show procedure status;
+--------------+--------------------+-----------+-------------------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
| Db | Name | Type | Definer | Modified | Created | Security_type | Comment | character_set_client | collation_connection | Database Collation |
+--------------+--------------------+-----------+-------------------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
| kopanoserver | GetBestBody | PROCEDURE | kopano-server@localhost | 2019-06-07 22:27:04 | 2019-06-07 22:27:04 | DEFINER | | utf8 | utf8_general_ci | utf8mb4_general_ci |
| kopanoserver | GetProps | PROCEDURE | kopano-server@localhost | 2019-06-07 22:27:04 | 2019-06-07 22:27:04 | DEFINER | | utf8 | utf8_general_ci | utf8mb4_general_ci |
| kopanoserver | PrepareGetProps | PROCEDURE | kopano-server@localhost | 2019-06-07 22:27:04 | 2019-06-07 22:27:04 | DEFINER | | utf8 | utf8_general_ci | utf8mb4_general_ci |
| kopanoserver | StreamObj | PROCEDURE | kopano-server@localhost | 2019-06-07 22:27:04 | 2019-06-07 22:27:04 | DEFINER | | utf8 | utf8_general_ci | utf8mb4_general_ci |
| mysql | AddGeometryColumn | PROCEDURE | root@localhost | 2019-06-07 06:01:44 | 2019-06-07 06:01:44 | INVOKER | | utf8mb4 | utf8mb4_general_ci | utf8mb4_general_ci |
| mysql | DropGeometryColumn | PROCEDURE | root@localhost | 2019-06-07 06:01:44 | 2019-06-07 06:01:44 | INVOKER | | utf8mb4 | utf8mb4_general_ci | utf8mb4_general_ci |
+--------------+--------------------+-----------+-------------------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
6 rows in set (0.00 sec)
MariaDB [(none)]> show function status;
Empty set (0.00 sec)
MariaDB [(none)]>
なかったので、--routines オプションは不要と分かった。
Simple Module が起動しない
Tomcatはアプリケーションの基本設定を /var/lib/tomcat9/conf/Catalina/localhost に入れておくことができるらしい。tomcat/Catalina/localhostで検索したら一発で場所を教えてくれたのはこちら。
Qiita / TomcatContext XMLファイル:Webアプリの定義
で、実際のところがどうなっていたかというと、前回の記事でコピー先を間違えており、全然違うところにファイルを格納していた。そのため、記事を6/8日付で修正している。
具体的には、間違ってここにファイルを置いていた。
/usr/share/alfresco/tomcat/Catalina/localhost/alfresco.xml
/usr/share/alfresco/tomcat/Catalina/localhost/share.xml
正しくはこちらに置くべきだった。
/usr/share/alfresco/tomcat/conf/Catalina/localhost/alfresco.xml
/usr/share/alfresco/tomcat/conf/Catalina/localhost/share.xml
Ubuntu提供のTomcatパッケージを利用しながら、Alfrescoをできるだけマニュアル通りに操作できる環境に近づけようとする中でのミスだった…痛い。
正しい場所にファイルを移動した後で、設定内容を変更。
/usr/share/alfresco/tomcat/conf/Catalina/localhost/alfresco.xml
<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true">
<Resources>
<PostResources base="/usr/share/alfresco/modules/platform"
className="org.apache.catalina.webresources.DirResourceSet"
webAppMount="/WEB-INF/lib"/>
</Resources>
</Context>
/usr/share/alfresco/tomcat/conf/Catalina/localhost/share.xml
<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true">
<Resources>
<PostResources base="/usr/share/alfresco/modules/share"
className="org.apache.catalina.webresources.DirResourceSet"
webAppMount="/WEB-INF/lib"/>
</Resources>
</Context>
これでTomcatを再起動をすれば、この設定が反映される。
さいごに
移行に際してどのデータがどこにあるのかという点を明確にかっちりと理解するのがとても難しくて時間がかかった。おかげでどこに何の設定がされているのかがよく分かったのだけれど、あんまりしなくていい苦労をしちゃったかもしれない。
その上で実行したリストアからのアップグレードは想像以上に自動で行われ、この点は素晴らしかった。
Alfrescoの開発は大変そうだなぁ…そして、アドオンも追従も大変そうだなぁ…メジャーバージョンが上がると人気のアドオンが動かなくなる構図は他のシステムでもよくある話だけど、こうやって使いやすいシステムをみんなで作り上げているんだなーと改めて実感した。
開発に携わるみなさん、ありがとうございます。
コメントはこちらから お気軽にどうぞ ~ 投稿に関するご意見・感想・他