API Portal を 5.2.x にアップグレードした後、Proxy Gateway が切断されたままになる
search cancel

API Portal を 5.2.x にアップグレードした後、Proxy Gateway が切断されたままになる

book

Article ID: 280116

calendar_today

Updated On:

Products

CA API Developer Portal CA API Gateway

Issue/Introduction

API Portal を 5.2.x にアップグレードした後、PROXY DETAILS 画面で Proxy Gateway が切断されたまま(Disconnected)になります。

Gateway 上で Portal Deployer サービスを再起動しても問題は解決せず、ログには Portal Deployer サービスがエラーなしで broker に接続していることが示されます。 

Environment

Portal 5.2.x

Cause

この問題は、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

 

Resolution

CentOS 7 OVA Version 3 イメージの docker をアップグレードするか、新しい CentOS 7 OVA Version 4 または Debian OVA イメージ に移行します。

現在の centos ova 3 を最新の docker バージョンに更新し、最新の OS アップデートを適用するには、次の手順に従います。

yum を使用してインターネットからイメージを取得します。なお、予め Portal サーバーとデータベースのバックアップまたはスナップショットを取得してください。

  1. ポータルを停止する : 
    docker stack rm portal
  2. Docker のバージョンロックを削除する : 
    yum versionlock clear
  3. イメージを更新する(約 400 個のパッケージ更新のため時間がかかります):
    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
}


その後、以下を実行します。

  1. サーバーを再起動します。
  2. docker が起動していることを確認して、以下のコマンドでバージョンを確認します。
    docker version
  3. "portal.sh" を実行してポータルを再度デプロイします。
  4. RabbitMQ ログと Proxy ステータスを確認します。Gateway 上で Deployer サービスをもう一度再起動する必要がある場合があります。

 

Additional Information