API Portal を 5.2.x にアップグレードした後、PROXY DETAILS 画面で Proxy Gateway が切断されたまま(Disconnected)になります。
Gateway 上で Portal Deployer サービスを再起動しても問題は解決せず、ログには Portal Deployer サービスがエラーなしで broker に接続していることが示されます。
Portal 5.2.x
この問題は、CentOS 7 OVA Version 3 イメージに含まれる古い Docker バージョン 18.09.3 が原因で発生します。
RabbitMQ コンテナの起動時にエラーが表示されます。接続されたボリュームから設定を読み取ることができません。
Feb 6 14:34:18 localhost 93929c16fa9f[2037]: #033[38;5;6mrabbitmq #033[38;5;5m13:34:18.83 #033[0m#033[38;5;2mINFO #033[0m ==> Initializing RabbitMQ...
Feb 6 14:34:18 localhost 93929c16fa9f[2037]: ls: cannot access '/bitnami/rabbitmq/conf': Operation not permitted
Feb 6 14:34:18 localhost 93929c16fa9f[2037]: ls: cannot access '/opt/bitnami/rabbitmq/.rabbitmq/mnesia': Operation not permitted
Feb 6 14:34:18 localhost 93929c16fa9f[2037]: #033[38;5;6mrabbitmq #033[38;5;5m13:34:18.89 #033[0m#033[38;5;2mINFO #033[0m ==> Starting RabbitMQ in background...
このエラーが起因して、Proxy のステータスを取得しようとすると次のエラーが発生しています。
Line 5896: Feb 6 15:10:20 localhost 93929c16fa9f[2037]: #033[38;5;160m2024-02-06 14:10:20.885051+00:00 [error] <0.1333.0> operation basic.publish caused a channel exception not_found: no exchange 'portal-external' in vhost '/'#033[0m
CentOS 7 OVA Version 3 イメージの docker をアップグレードするか、新しい CentOS 7 OVA Version 4 または Debian OVA イメージ に移行します。
現在の centos ova 3 を最新の docker バージョンに更新し、最新の OS アップデートを適用するには、次の手順に従います。
yum を使用してインターネットからイメージを取得します。なお、予め Portal サーバーとデータベースのバックアップまたはスナップショットを取得してください。
docker stack rm portal
yum versionlock clear
yum update または yum update -y
これが完了すると、"yum update" によって Docker がバージョン 25.x に更新され、/etc/docker/daemon.json に overlay2 構成が追加されます。
しかし、OVA 3 のバッキング ファイルシステムは、この追加設定をサポートしません。
以下に示すように、/etc/docker/daemon.json ファイルを編集し、storage-driver と storage-opts の設定行を削除します。
{
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
],
"log-driver": "journald",
"selinux-enabled": true
}
その後、以下を実行します。
docker version