WebOTX Manual V11.1 (第6版) 目次を表示 |
アプリケーションのバージョニング機能を使用すると、同じ名前の複数のバージョンのアプリケーションを配備することができます。 これによって、アプリケーションのアップグレードとロールバックが簡単になります。
バージョニング機能は、複数のバージョンのアプリケーションが同時に有効にならないことを保証します。 そのため、アプリケーションのバージョンが異なるのであれば、同じコンテキストルートやJNDI名を持たせることができます。
また、アプリケーションの配備解除、停止、状態取得時に、アプリケーション名を指定する箇所でバージョンIDの部分にアスタリスク(*)をワイルドカードとして使用することができます。
アプリケーションにバージョンIDを付与するには、配備時のアプリケーション名の指定で、アプリケーション名の後にコロン(:)で区切ってバージョンIDを指定します。
otxadmin> deploy --name アプリケーション名:バージョンID アーカイブ名
具体例を挙げると、アーカイブ名が「hello.war」であるWebアプリケーションを、アプリケーション名を「hello」、バージョンIDを「1.0」として配備するには、次のようにします。
otxadmin> deploy --name hello:1.0 hello.war
バージョンIDは英数字で始まる必要があります。 また、バージョンIDには英数字およびアンダースコア(_)、ハイフン(-)、ピリオド(.)を含めることができます。 有効なバージョンIDの例は、以下のとおりです。
アプリケーションに対して設定や運用操作を行う際は、バージョンIDも含めた名前をアプリケーション名として指定する必要があります。 例えば、アプリケーション名が「hello」、バージョンIDが「1.0」であるアプリケーションを開始するには、次のようにします。
otxadmin> enable hello:1.0
有効化したいバージョンのアプリケーションを開始することで、有効なバージョンを切り替えることができます。
具体例として、以下のアプリケーションが配備されているとします。括弧の中はアプリケーションの状態を表しています。
この状態で、「hello:3.0-BETA」を有効にするには、次のようにします。
otxadmin> enable hello:3.0-BETA
コマンド実行後の状態は以下のようになります。
新たに配備するバージョンを有効化したい場合は、アプリケーションを開始状態で配備します。
具体例として、以下のアプリケーションが配備されているとします。括弧の中はアプリケーションの状態を表しています。
この状態で、「hello:3.0-BETA」という名前で新たに配備したアプリケーションを有効にするには、次のようにします。
otxadmin> deploy --name hello:3.0-BETA --enabled=true hello.war
コマンド実行後の状態は以下のようになります。
なお、deployコマンドの--enabledオプションのデフォルト値はtrueです。
アプリケーションの配備解除、停止、状態取得においては、バージョンIDにワイルドカードとしてアスタリスク(*)を指定することができます。 有効なワイルドカードを含むバージョンIDの例は、以下のとおりです。
アプリケーションの配備解除でバージョンIDにワイルドカードを指定すると、マッチする全てのバージョンが配備解除されます。
具体例として、以下のアプリケーションが配備されているとします。
括弧の中はアプリケーションの状態を表しています。
この状態で、以下のコマンドを実行します。
otxadmin> undeploy hello:1.*
上記のコマンドにより、「hello:1.0」と「hello:1.1」が配備解除されます。
以下のコマンドを実行すると、全てのバージョンが配備解除されます。
otxadmin> undeploy hello:*
アプリケーションの停止でバージョンIDにワイルドカードを指定すると、マッチするバージョンが停止されます。
具体例として、以下のアプリケーションが配備されているとします。括弧の中はアプリケーションの状態を表しています。
この状態で、以下のコマンドを実行すると、いずれのバージョンが有効状態であっても停止することができます。
otxadmin> disable hello:*
アプリケーションの状態取得でバージョンIDにワイルドカードを指定すると、マッチする全てのバージョンの状態が取得できます。
具体例として、以下のアプリケーションが配備されているとします。括弧の中はアプリケーションの状態を表しています。
この状態で、以下のコマンドを実行します。
otxadmin> show-component-status hello:1.*
上記のコマンドにより、以下のメッセージが表示されます。
otxadmin> show-component-status hello:1.* hello:1.0 の状態は 無効(disabled) です。 hello:1.1 の状態は 有効(enabled) です。
バージョンIDを付与して配備を行うと、deployコマンドの--bindtypeオプション(名前サーバの登録方式)の既定値がtransient(一時的に扱う)になります(バージョンIDを付与しない場合の既定値はpersistent(永続的に扱う)です)。 これは、バージョンIDを付与することで異なるバージョン間で同じJNDI名を使用することが可能になり、その場合、名前サーバへの登録・登録解除をアプリケーションの配備・配備解除時ではなく、アプリケーションの起動・停止時に行う必要があるためです。 バージョンIDを付与した上で「名前サーバの登録方式」を「永続的に扱う」に設定する場合は、--bindtypeオプションでpersistentを明示的に指定してください。 また、統合運用管理ツールおよび運用管理コンソールで配備を行う場合は、バージョンIDを付与した場合でも「名前サーバの登録方式」の既定値に変更はありません。 必要があれば、配備の際に「名前サーバの登録方式」で「一時的に扱う」を選択してください。