WildFly 25 へのアップデート
世間では log4j の脆弱性が見つかって大騒ぎとなっていたが、当院のクライアントは logback、サーバは jboss logging なので、影響はないと考えられた。ただ、今回の騒動で、サーバを WildFly 18 で放置したままだったことを思い出してしまった。そろそろやばいかもしれないと思い立ち、よい機会なのでアップデートすることにした。
WildFly 25.0.2 の準備
WildFly の GitHub から branch 25.x を選択,"Download Zip" して解凍する。作業時点ではこれで 25.0.2.Final がダウンロードされた。
mac で WildFly 25.0.2 のビルド
brew をアップデートして mvn と ant を最新にしておく。
$ brew update ; brew upgrade
しかる後に build。JAVA_HOME を指定しないと jre を使ってしまうため、 tool.jar が見つからないと怒られる。ちなみに,java はまだ 1.8.0 のままである。
$ JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_311.jdk/Contents/Home mvn install [INFO] Scanning for projects... Downloading from jboss-public-repository-group: https://repository.jboss.org/nexus/content/groups/public/org/wildfly/core/wildfly-core-parent/17.0.3.Final/wildfly-core-parent-17.0.3.Final.pom Downloaded from jboss-public-repository-group: https://repository.jboss.org/nexus/content/groups/public/org/wildfly/core/wildfly-core-parent/17.0.3.Final/wildfly-core-parent-17.0.3.Final.pom (123 kB at 61 kB/s) [INFO] ------------------------------------------------------------------------ [INFO] Reactor Build Order: : BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 26:20 min [INFO] Finished at: 2021-12-15T08:22:04+09:00 [INFO] ------------------------------------------------------------------------
これで wildfly-25.0.2.Final-SNAPSHOT ができる。WildFly 18.0.1 と同じく,full distributable build が欲しい場合は,build/target ではなく,dist/target の方を使う必要がある。
WildFly 25.0.2 のセットアップ
- ./standalone.sh -b 0.0.0.0 で立ち上げて,./add-user.sh で管理ユーザ登録
- JDBC の登録(ドライバは postgresql-42.3.1.jar),data-source の作成,パスワード登録。
$ ./jboss-cli.sh --connect [standalone@localhost:9990 /] module add --name=org.postgres --resources=~/Downloads/postgresql-42.3.1.jar --dependencies=javax.api,javax.transaction.api [standalone@localhost:9990 /] /subsystem=datasources/jdbc-driver=postgres:add(driver-name="postgres",driver-module-name="org.postgres",driver-class-name=org.postgresql.Driver) [standalone@localhost:9990 /] data-source add --jndi-name=java:jboss/datasouces/DolphinDS --name=DolphinDS --connection-url=jdbc:postgresql://localhost/dolphin --driver-name=postgres --user-name=dolphin [standalone@localhost:9990 /] /subsystem=datasources/data-source=DolphinDS:write-attribute(name=password, value=dolphin) [standalone@localhost:9990 /] quit
OpenDolphin の修正
- WildFly 25 の pom.xml に合わせて,OpenDolphin クライアント・サーバの pom.xml のバージョンを変更する。RestEasy は 4.7.2、Jackson は 2.12.3 になっていた。
- Resteasy 3 から 4 になって、ResteasyClient の作成方法が変更になった。
- Jackson は 2.10 以降セキュリティチェックが厳しくなったようで、StampModel と ModuleModel でいろいろなクラスで使い回していた model フィールドを、実際にどのクラスが使っているのかの指定が必要になった。
起動時に dolphin サーバを立ち上げる
crontab を更新
$ crontab -l @reboot /home/dolphin/wildfly-25.0.2.Final-SNAPSHOT/bin/standalone.sh -b addr.of.dolphin.server > /dev/null 2>&1
lucene index
hibernate search のバージョンは変わっていないので、インデックスはそのまま使えた。エントリー数は WildFly 18 に移行した 2019年 の 259,968 件から 295,603 件に増加していた。
WildFly アップデート記録
- 2008年 JBossAS 4.0.5
- 2009年 JBossAS 4.2.3
- 2010年 JBossAS 5.1.0
- 2013年 JBossAS 7.1.4
- 2015年 WildFly 8.2.1
- 2017年 WildFly 10.2.0
- 2019年 WildFly 18.0.1
- 2021年 WildFly 25.0.2
« 13年目の運用まとめ | トップページ | OwnCloud 10.9.0 へのアップグレード »
「OpenDolphin」カテゴリの記事
- Java 17 への移行(7) - OpenDolphin client の対応 (2023.02.04)
- Java 17 への移行(6) - Hibernate 6 でやらかす(2023.02.03)
- Java 17 への移行(5) - OpenDolphin server の対応(2023.02.02)
- Java 17 への移行(4) - OpenSearch の準備 [ubuntu 編](2023.02.01)
- Java 17 への移行(3) - OpenSearch の準備 [mac 編](2023.01.31)