A.2. Messaging サブシステム移行操作の警告

migrate 操作はすべてのリソースや属性を処理することはできません。messaging サブシステムの migrate または describe-migration 操作を実行すると表示される可能性がある警告の一部を以下の表に示します。

注記

migrate 操作の出力に Could not migrate または Can not migrate エントリーが記録された場合、サーバー設定の移行は正常に完了したにも関わらず、すべての要素および属性を自動的に移行できなかったことを表します。migration-warnings の提案に従ってこれらの設定を変更する必要があります。

警告メッセージメッセージの意味 / 修正方法

The migrate operation can not be performed: the server must be in admin-only mode (migrate 操作は実行できません。サーバーは admin-only モードである必要があります)

migrate 操作を実行するには、--start-mode=admin-only をサーバー起動コマンドに追加し、サーバーを admin-only モードで起動する必要があります。

$ EAP_HOME/bin/standalone.sh --start-mode=admin-only

Can not migrate attribute local-bind-address from resource X. (リソース X から属性 local-bind-address を移行できません。Use instead the socket-binding attribute to configure this broadcast-group.(代わりに socket-binding 属性を使用してこの broadcast-group を設定してください。)

メッセージには説明が含まれています。

Can not migrate attribute local-bind-port from resource X.(リソース X から属性 local-bind-port を移行できません。Use instead the socket-binding attribute to configure this broadcast-group.(代わりに socket-binding 属性を使用してこの broadcast-group を設定してください。)

メッセージには説明が含まれています。

Can not migrate attribute group-address from resource X.(リソース X から属性 group-address を移行できません。Use instead the socket-binding attribute to configure this broadcast-group.(代わりに socket-binding 属性を使用してこの broadcast-group を設定してください。)

メッセージには説明が含まれています。

Can not migrate attribute group-port from resource X.(リソース X から属性 group-port を移行できません。Use instead the socket-binding attribute to configure this broadcast-group.(代わりに socket-binding 属性を使用してこの broadcast-group を設定してください。)

broadcast-group リソースは local-bind-addresslocal-bind-portgroup-address、または group-port 属性を許可しないようになりました。このリソースは socket-binding 属性のみを許可します。この警告は、リソース X にサポートされない属性があることを通知します。リソースの socket-binding 属性を手作業で設定し、定義された socket-binding リソースに対応するようにする必要があります。

Classes providing the X are discarded during the migration.(移行中に X を提供するクラスは破棄されます)To use them in the new messaging-activemq subsystem, you will have to extend the Artemis-based Interceptor.(新しい messaging-activemq サブシステムでこれらを使用するには、Artemis ベースのインターセプターを拡張する必要があります)

JBoss EAP 7 のメッセージングインターセプターのサポートは大幅に異なります。以前のバージョンのサブシステムに設定されたインターセプターはすべて移行中に破棄されます。詳細は メッセージングインターセプターの移行 を参照してください。

Can not migrate the HA configuration of X.(X の HA 設定は移行できません)Its shared-store and backup attributes holds expressions and it is not possible to determine unambiguously how to create the corresponding ha-policy for the messaging-activemq's server.(この shared-store および backup 属性は式を保持し、messaging-activemq のサーバーの対応する ha-policy を作成する方法を明確に決定することができません)

This means the hornetq-server X's shared-store or backup attributes contained an expression, such as ${xxx}, and the migration operation was not able to resolve it to a concrete expression.(これは、hornetq-server X の shared-store または backup 属性に ${xxx} などの式が含まれ、移行操作が具体的な式に解決できなかったことを意味します)値は破棄され、messaging-activemqha-policy を手作業で更新する必要があります。

Can not migrate attribute local-bind-address from resource X. (リソース X から属性 local-bind-address を移行できません。Use instead the socket-binding attribute to configure this discovery-group.(代わりに socket-binding 属性を使用してこの discovery-group を設定してください)

メッセージには説明が含まれています。

Can not migrate attribute local-bind-port from resource X.(リソース X から属性 local-bind-port を移行できません。Use instead the socket-binding attribute to configure this discovery-group.(代わりに socket-binding 属性を使用してこの discovery-group を設定してください)

メッセージには説明が含まれています。

Can not migrate attribute group-address from resource X.(リソース X から属性 group-address を移行できません。Use instead the socket-binding attribute to configure this discovery-group.(代わりに socket-binding 属性を使用してこの discovery-group を設定してください)

メッセージには説明が含まれています。

Can not migrate attribute group-port from resource X.(リソース X から属性 group-port を移行できません。Use instead the socket-binding attribute to configure this discovery-group.(代わりに socket-binding 属性を使用してこの discovery-group を設定してください)

discovery-group リソースは local-bind-addresslocal-bind-portgroup-address、または group-port 属性を許可しないようになりました。socket-binding のみを許可します。この警告は、リソース X にサポートされない属性があることを通知します。リソースの socket-binding 属性を手作業で設定し、定義された socket-binding リソースに対応するようにする必要があります。

Can not create a legacy-connection-factory based on connection-factory X.(connection-factory X を基にして legacy-connection-factory を作成できません)It uses a HornetQ in-vm connector that is not compatible with Artemis in-vm connector (これは Artemis in-vm コネクターと互換性のない HornetQ in-vm コネクターを使用します)

JBoss EAP 6 クライアントが JBoss EAP 7 に接続できるようにするため、レガシーの HornetQ リモート connection-factory リソースは legacy-connection-factory リソースに移行されました。しかし、legacy-connection-factory リソースは connection-factory がリモートコネクターを使用しているときのみ作成されます。in-vm クライアントは JBoss EAP 6 ではなく JBoss EAP 7 をベースにしているため、in-vm を使用する connection-factory は移行されません。この警告は、in-vm connection-factory が移行されなかったことを通知します。

Can not migrate attribute X from resource Y.(リソース Y から属性 X を移行できません。属性はシステムプロパティーに応じて異なって解決される式を使用します。After migration, this attribute must be added back with an actual value instead of the expression.(移行後、式の代わりに実際の値を用いてこの属性を戻す必要があります)

この警告は、移行処理中に属性 X を具体的な値に解決できないときに表示されます。値は破棄され、属性を手作業で移行する必要があります。これは以下の場合に発生します。

  • cluster-connection forward-when-no-consumers:

    このブール値属性は、列挙で OFFSTRICT、または ON_DEMAND を値として持つ message-load-balancing-type 属性に置き換えられました。

  • broadcast-group および discovery-groupjgroups-stack および jgroups-channel 属性

    これらの属性は他のリソースを参照し、JBoss EAP 7 ではこれらの式が許可されないようになりました。

Can not migrate attribute X from resource Y.(リソース Y から属性 X を移行できません。This attribute is not supported by the new messaging-activemq subsystem.(この属性は新しい messaging-activemq サブシステムによってサポートされません)

一部の属性は新しい messaging-activemq サブシステムではサポート対象外となり、破棄されます。

  • hornetq-serverfailback-delay
  • http-connectoruse-nio 属性
  • http-acceptoruse-nio 属性
  • remote-connectoruse-nio 属性
  • remote-acceptoruse-nio 属性

Can not migrate attribute failback-delay from resource X.(リソース X から 属性 failback-delay を移行できません)フェイルバックは Artemis によって確定的に検出され、フェイルバックの遅延を指定する必要がなくなりました。

メッセージには説明が含まれています。

非推奨の broadcast-group または discovery-group 属性の置き換え

非推奨の broadcast-group または discovery-group 属性を socket-binding 属性に置き換えるよう通知された場合は、管理 CLI を使用して、この新しい属性を追加できます。

以下の例では、messaging サブシステムに以下の discovery-group 設定が含まれるスタンドアロンサーバーを移行することを前提とします。

<discovery-groups>
    <discovery-group name="my-discovery-group">
        <group-address>224.0.1.105</group-address>
        <group-port>56789</group-port>
    </discovery-group>
</discovery-groups>

messaging サブシステムに対して migrate 操作を実行すると、以下の出力および警告が表示されます。

/subsystem=messaging:migrate
{
    "outcome" => "success",
    "result" => {"migration-warnings" => [
        "WFLYMSG0084: Can not migrate attribute group-address from resource [
    (\"subsystem\" => \"messaging-activemq\"),
    (\"server\" => \"default\"),
    (\"discovery-group\" => \"my-discovery-group\")
]. Use instead the socket-binding attribute to configure this discovery-group.",
        "WFLYMSG0084: Can not migrate attribute group-port from resource [
    (\"subsystem\" => \"messaging-activemq\"),
    (\"server\" => \"default\"),
    (\"discovery-group\" => \"my-discovery-group\")
]. Use instead the socket-binding attribute to configure this discovery-group."
    ]}
}

migrate 操作によって、"my-discovery-group" という名前の discovery-group が新しい messaging-activemq サブシステムに作成され、以下のように設定されます。

<discovery-group name="my-discovery-group"/>

ここで、以下の管理 CLI コマンドを使用して、"my-discovery-group-socket-binding" という名前のサーバー設定ファイルに socket-binding 要素を作成する必要があります。

/socket-binding-group=standard-sockets/socket-binding=my-discovery-group-socket-binding:add(multicast-address=224.0.1.105, multicast-port=56789)

次に、以下の管理 CLI コマンドを使用して、新たに作成された socket-binding をサーバー設定ファイルにある messaging-activemq サブシステムの "my-discovery-group" という名前の discovery-group に追加します。

/subsystem=messaging-activemq/server=default/discovery-group=my-discovery-group:write-attribute(name=socket-binding,value=my-discovery-group-socket-binding)

これらのコマンドによって、サーバー設定ファイルに以下の XML が作成されます。

<subsystem xmlns="urn:jboss:domain:messaging-activemq:4.0">
    <server name="default">
        ...
        <discovery-group name="my-discovery-group" socket-binding="my-discovery-group-socket-binding"/>
        ...
    </server>
</subsystem>
...
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
    ...
    <socket-binding name="my-discovery-group-socket-binding" multicast-address="224.0.1.105" multicast-port="56789"/>
    ...
</socket-binding-group>