CloudHub へのデプロイ

Mule アプリケーションは以下を使用して CloudHub にデプロイできます。

API プロキシを API Manager から CloudHub に直接デプロイすることもできます。 「プロキシを設定して CloudHub にデプロイする」​を参照してください。

デプロイ中にエラーが発生した場合に通知をメールで受け取るには、​「Deployment failed (デプロイに失敗しました)」​アラートをセットアップします。 「アラートの作成」​を参照してください。

Runtime Manager からのアプリケーションのデプロイ

Runtime Manager から CloudHub にデプロイする手順は、次のとおりです。

  1. Anypoint Platform にサインインします。

  2. [Runtime Manager]​ を選択します。

  3. [Applications (アプリケーション)]​ ページで ​[Deploy application (アプリケーションをデプロイ)]​ をクリックします。

    [Deploy Application (アプリケーションをデプロイ)]​ ページが表示されます。

    「Application Name (アプリケーション名)」 項目、「Choose file (ファイルを選択)」 メニュー、「Deploy Application (アプリケーションをデプロイ)」 ボタン
    Figure 1. このスクリーンショットは、​[Deploy Application (アプリケーションをデプロイ)]​ ページの (​1​) ​[Application Name (アプリケーション名)]​ 項目、(​2​) ​[Choose file (ファイルを選択)]​ メニュー、(​3​) ​[Deploy Application (アプリケーションをデプロイ)]​ ボタンを示しています。
  4. アプリケーションの名前を入力します。

    アプリケーション名​を参照してください。

  5. [Deployment Target (デプロイメント対象)]​ メニューで、​[CloudHub]​ がまだ選択されていなければ選択します。

  6. アプリケーションファイルを指定します。

    • Exchange からファイルをインポートします。

      1. [Choose file (ファイルを選択)]​ > ​[Import file from Exchange (Exchange からファイルをインポート)]​ を選択します。

      2. 種別には ​[Application (アプリケーション)]​ を選択します。

      3. 検索ボックスにアプリケーションの名前を入力します。

      4. デプロイするアプリケーションを選択し、​[Version (バージョン)]​ メニューからバージョンを選択して、​[Select (選択)]​ をクリックします。

    • アプリケーションのアーカイブ (ZIP または JAR) ファイルをアップロードします。

      1. [Choose file (ファイルを選択)]​ > ​[Upload file (ファイルをアップロード)]​ を選択します。

      2. アップロードするファイルを選択して ​[Open (開く)]​ をクリックします。

        アプリケーションファイルのサイズ制限は 200 MB です。

    • 非本番環境からアプリケーションをコピーします。

  7. タブをクリックしてアプリケーションオプションを設定します。

    アプリケーション設定の定義​を参照してください。

  8. [Deploy Application (アプリケーションをデプロイ)]​ をクリックします。

Studio からアプリケーションをデプロイする

アプリケーションを Studio から CloudHub に直接デプロイできます。 この操作は、アプリケーションを開発中にテストしたい場合に便利です。

アプリケーションは Studio から ​[Design (設計)]​ を除くすべての環境にデプロイできます。 [Design (設計)]​ 環境は、Anypoint Design Center で作成されたアプリケーションに固有の環境です。 「Flow Designer からの Mule アプリケーションのデプロイ」​を参照してください。

Studio から CloudHub にデプロイする手順は、次のとおりです。

  1. Studio でアプリケーションを開きます。

  2. Package Explorer​ でプロジェクトフォルダーを右クリックして、​[Anypoint Platform] > [Deploy to CloudHub (CloudHub にデプロイ)]​ を選択します。

  3. Studio から初めてデプロイする場合は、確認ダイアログで Anypoint Platform ログイン情報を入力します。

    Studio では、将来の使用のためにログイン情報を保存します。 このログイン情報は、​[Anypoint Studio] > [Preferences (プリファレンス)] > [Anypoint Studio] > [Authentication (認証)]​ を選択して管理できます。

    サインインしたら、​[Deploying Application (アプリケーションのデプロイ)]​ ページが表示されます。

    「Application Name (アプリケーション名)」 項目、「Deploy Application (アプリケーションをデプロイ)」 ボタン
    Figure 2. このスクリーンショットは、​[Deploying Application (アプリケーションのデプロイ)]​ ページの (​1​) ​[Application Name (アプリケーション名)]​ 項目、(​2​) ​[Deploy Application (アプリケーションをデプロイ)]​ ボタンを示しています。
  4. 必要に応じて、アプリケーション名を変更します。

  5. タブをクリックしてアプリケーションオプションを設定します。

    「​アプリケーション設定の定義​」を参照してください。

  6. [Deploy Application (アプリケーションをデプロイ)]​ をクリックします。

コマンドラインからアプリケーションをデプロイする

CloudHub コマンドラインユーティリティ (CLI) から Mule アプリケーションをデプロイする手順は、次のとおりです。

  1. まだ Anypoint コマンドラインツールにアクセスできない場合は、インストールしてください。

    「Anypoint Platform CLI」​を参照してください。

  2. コマンドラインから Anypoint Platform アカウントにログインします。

    1. ユーザー名を入力します。

      anypoint-cli --username="user"

    2. 確認ダイアログで、パスワードを入力します。

  3. 次のコマンドを、​myMuleApp​ をアプリケーションのデプロイメント名に、​/Users/exported-app-folder/my-mule-app.jar​ をファイルシステムのデプロイ可能アーカイブ (JAR または ZIP) ファイルに置き換えて実行します。

    runtime-mgr cloudhub-application deploy myMuleApp /Users/exported-app-folder/my-mule-app.zip

    コマンドラインユーティリティにデプロイメント情報のテーブルが表示されます。

    Deploying myMuleApp ...
    ┌──────────────────────────────┬────────────────────────────────────────┐
    │ Domain                       │ mymuleapp.cloudhub.io                  │
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ Status                       │ UNDEPLOYED                             │
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ Updated                      │ a few seconds ago                      │
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ Runtime                      │ 4.1.0                                  │
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ File name                    │ my-mule-app.zip                        │
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ Persistent queues            │ false                                  │
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ Persistent queues encrypted  │ false                                  │
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ Static IPs enabled           │ false                                  │
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ Monitoring                   │ Enabled. Auto-restart if not responding│
    ├──────────────────────────────┼────────────────────────────────────────┤
    │ Workers                      │ 1 vCore * 1                            │

    CloudHub にアプリケーションをデプロイしたら、Runtime Manager で表示して管理できるようになります。

  4. コマンドラインからアプリケーションを停止する場合は、次のコマンドを、​app-name​ をアプリケーションのデプロイメント名に置き換えて実行します。

    runtime-mgr cloudhub-application stop app-name

コマンドラインツールを終了するには、Ctrl+c を 2 回押します。

コマンドの完全なリストについては、​「Anypoint Platform CLI」​を参照してください。

Sandbox 環境から本番環境にアプリケーションをコピーする

Sandbox 環境でアプリケーションを作成してテストする場合、デプロイする前に本番環境に移動する必要があります。 環境間でアプリケーションを移動するには、CloudHub Admin (CloudHub 管理者) ロールが必要です。

名前の競合を避けるために、別の環境にデプロイする前にアプリケーションの名前を変更してください。

Runtime Manager では、1 つの環境内でアプリケーションを重複できないため、アプリケーションを、それがすでに含まれている環境に移行することはできません。 アプリケーションを 1 つの環境で重複させるには、デプロイする前に 1 つのアプリケーションのファイル名を変更します。

Sandbox から本番環境にアプリケーションを移動する手順は、次のとおりです。

  1. Anypoint Platform にサインインします。

  2. [Runtime Manager]​ を選択し、本番環境に切り替えます。

  3. [Applications (アプリケーション)]​ ページで ​[Deploy application (アプリケーションをデプロイ)]​ をクリックします。

    [Deploy Application (アプリケーションをデプロイ)]​ ページが表示されます。

    「Application Name (アプリケーション名)」 項目、「Get from sandbox (Sandbox から取得)」 ボタン、「Deploy Application (アプリケーションをデプロイ)」 ボタン
    Figure 3. このスクリーンショットは、​[Deploy Application (アプリケーションをデプロイ)]​ ページの (​1​) ​[Application Name (アプリケーション名)]​ 項目、(​2​) ​[Get from sandbox (Sandbox から取得)]​ ボタン、(​3​) ​[Deploy Application (アプリケーションをデプロイ)]​ ボタンを示しています。
  4. 本番環境でアプリケーションの一意の名前を付けて、​[Get from sandbox (Sandbox から取得)]​ をクリックします。

    このボタンは、非本番環境が存在しない場合は使用できません。

  5. Sandbox 環境を選択し、本番環境に移動するアプリケーションを選択します。

    他の CloudHub ワーカーに移動できるのは現在 CloudHub にデプロイされているアプリケーションのみであるため、CloudHub にデプロイされているアプリケーションのみがリストに表示されます。 たとえば、現在ローカルサーバーにデプロイされているアプリケーションを CloudHub に移動することはできません。

  6. 環境変数と Mule バージョンをコピー元のアプリケーションからコピーするには、​[Merge environment variables and mule version (環境変数と Mule バージョンのマージ)]​ を使用します。

    送信元アプリケーションに安全な隠しアプリケーションプロパティが含まれている場合、​[Properties (プロパティ)]​ タブで再定義する必要があります。 安全な隠しアプリケーションプロパティについては、​「アプリケーションプロパティを安全に隠す」​を参照してください。

  7. [Apply (適用)]​ をクリックします。

  8. タブをクリックしてアプリケーションオプションを設定します。

    「​アプリケーション設定の定義​」を参照してください。

  9. [Deploy Application (アプリケーションをデプロイ)]​ をクリックします。

アプリケーション名

アプリケーション名では、3 ~ 42 文字の英数字 (a-z、A-Z、0-9) とハイフン (-) を使用できます。 スペースやその他の文字を含めることはできません。

アプリケーションのデプロイ後は名前を変更することはできません。名前を変更するには、削除してから新しい名前でアプリケーションを再デプロイしてください。

アプリケーション名は、Runtime Manager だけでなく、公開 ​cloudhub.io​ ドメインでもアプリケーションを識別するものです。 たとえば、​myapplication​ という名前のアプリケーションには ​http://myapplication.cloudhub.io​ でアクセスできます。

ドメインの競合を避けるには、アプリケーション名は CloudHub 全体でグローバルに一意である必要があります。 そのため、一意のアプリケーション名になる命名規則を作成してください。 たとえば、​mycompany-mydept-myapplication​ のように会社名と部署をすべてのアプリケーション名の前に付けることもできます。 そして、DNS レコードを追加して、複雑なアプリケーション名を非表示にすることができます。 たとえば、​myapplication.mycompany.com​ に対する要求を ​mycompany-mydept-myapplication.cloudhub.io​ にルーティングすることもできます。

CloudHub の専用ロードバランサーを使用すると、マッピングルールを実装し、アプリケーションの公開 URL を、その他のパスに設定することもできます (ただし、そのドメインを所有している場合に限ります)。 「マッピングルール」​を参照してください。

アプリケーション設定の定義

[Deploy Application (アプリケーションのデプロイ)]​ ページのタブをクリックして、アプリケーションデプロイメントを設定できます。

「Deploy Application (アプリケーションのデプロイ)」 ページの設定タブ
Figure 4. 矢印は、​[Deploy Application (アプリケーションのデプロイ)]​ ページの設定タブを示しています。

[Runtime (ランタイム)] タブの設定

[Runtime (ランタイム)]​ タブには、次の設定が含まれています。

Use Edge Release Channel (Edge リリースチャネルを使用)

Mule 4.5 以降、MuleSoft では新たに 2 つのリリースチャネル、​Edge と Long-term Support (LTS)​ を導入しました。

新しいアプリケーションでは、​[Use Edge Release Channel (Edge リリースチャネルを使用)]​ ボックスがデフォルトでオンになります。新しいリリースチャネルを使用しない場合は、このチェックボックスをオフにします。

新しいリリースチャネルを使用していない既存のアプリケーションでは、​[Use Edge Release Channel (Edge リリースチャネルを使用)]​ チェックボックスはデフォルトでオフになっています。​[Runtime version (Runtime バージョン)]​ ドロップダウンリストでは、更新が利用できるかどうか、およびアプリケーションの以前のバージョンと最新バージョンが示されます。Edge バージョンに変更する場合は、​[Use Edge Release Channel (Edge リリースチャネルを使用)]​ ボックスをオンにしてください。

Edge バージョンを使用している既存のアプリケーションでは、​[Use Edge Release Channel (Edge リリースチャネルを使用)]​ ボックスがデフォルトでオンになります。​[Runtime version (Runtime バージョン)]​ ドロップダウンリストでは、更新が利用できるかどうか、およびアプリケーションの以前のバージョンと最新バージョンが示されます。新しいリリースチャネルを使用しない場合は、​[Use Edge Release Channel (Edge リリースチャネルを使用)]​ チェックボックスをオフにします。チェックボックスをオフにします。

元々は Edge バージョンを使用してデプロイされ、現在は Edge バージョンで実行されていない既存のアプリケーションの ​[Runtime version (ランタイムバージョン)]​ ドロップダウンリストに以前のバージョンを表示するには、​[Use Edge Release Channel (Edge リリースチャネルを使用)]​ チェックボックスをオンにする必要があります。

拡張サポートで Edge バージョンを使用している既存のアプリケーションでは、バージョンの EOL を示す警告メッセージが表示されます。

Runtime version (ランタイムバージョン)

ランタイムバージョンは、アプリケーションの開発で使用された Mule バージョンと同じである必要があります。

アプリケーションをデプロイすると、選択したランタイムバージョンの更新が使用可能になったときに CloudHub によって自動的にアラートされます。 「CloudHub Runtime の継続的な更新」​を参照してください。

Worker size (ワーカーサイズ)

ワーカーサイズと vCore​ を参照してください。

Workers (ワーカー)

複数のワーカーを使用するアプリケーションをデプロイすると、CloudHub は受信トラフィック負荷を、割り当てられたワーカー間で自動的に負荷分散します。 「クラスタリング」​を参照してください。

リージョン

アカウントでグローバルデプロイメントが有効になっている場合は、デプロイメントリージョンを変更できます。

リージョンを変更すると、ドメインが自動的に更新されます。

「リージョンサービス」​を参照してください。

Automatically restart application when not responding (応答しない場合にアプリケーションを自動的に再起動する)

監視システムで問題が検出されたときに CloudHub はアプリケーションを自動的に再起動します。

Persistent queues (永続的なキュー)

アプリケーションで永続的なキューを使用し、入力キューのデータをディスクに保存できます。 永続的なキューを使用すると、メッセージの損失を防ぐことができ、ワークロードを一連のワーカーに分散できます。

「キューの管理」​を参照してください。

永続的なキューを利用する前に、キューを使用するようにアプリケーションをセットアップする必要があります。

「クラスタリング」​を参照してください。

Encrypt persistent queues (永続的なキューを暗号化)

永続的なキューを有効にすると、必要に応じてディスク上の入力キューに保存したデータを暗号化できます。

Object Store v2 の使用

Mule 4 では、Object Store v2 はデフォルトで有効になっています。 Mule 3 では Object Store v2 にアクセスするにはこのオプションを選択します。

「Object Store V2」​を参照してください。

Enable Monitoring and Visualizer (Monitoring と Visualizer を有効化)

サポートされている Mule バージョンで動作している Mule アプリケーションで Anypoint Monitoring および Visualizer を使用します。

このオプションは、組織で Anypoint Monitoring の Titanium サブスクリプションを有効にしている場合にのみ表示されます。

「Anypoint Monitoring」​および​「Anypoint Visualizer」​を参照してください。

[Autoscaling (自動スケーリング)] タブの設定

自動スケーリングにより、アプリケーションで使用される処理リソースをスケールアップまたはスケールダウンして CPU やメモリの使用量のしきい値に対応するポリシーを定義できます。

このタブは、デフォルトでは表示されません。 詳細は、​「CloudHub での自動スケーリング」​を参照してください。

[Properties (プロパティ)] タブの設定

[Properties (プロパティ)]​ タブでは、デプロイ時と実行時にアプリケーションで使用されるプロパティ (キー-値ペア) を指定できます。

非本番環境からアプリケーションをデプロイすると (​[Get from sandbox (Sandbox から取得)]​)、新しいアプリケーションは元のアプリケーションで定義されているすべてのプロパティを継承します。 これらのプロパティは、アプリケーションをデプロイする前に必要に応じて ​[Properties (プロパティ)]​ タブで変更できます。

Runtime Manager での非表示も含めてプロパティの指定についての詳細は、​「CloudHub 上のアプリケーションのプロパティ管理」​と​「アプリケーションプロパティを安全に隠す」​を参照してください。

[Insight (インサイト)] タブの設定

[Insight (インサイト)]​ タブではインサイト分析機能を有効にしてメタデータオプションを指定できます。 このツールの使用については、​「インサイト」​を参照してください。

[Logging (ログ)] タブの設定

CloudHub には、Runtime Manager から参照またはダウンロードできる活動ログが保存されます。 「ログデータの表示」​を参照してください。

アプリケーションのログレベル (​DEBUG​、​WARN​、​ERROR​、または ​INFO​) は ​[Logging (ログ)]​ タブで設定できます。

log4j2.xml​ ファイルで ​level​ 値を変更することでログレベルを設定することもできます。 「カスタムログの設定」​と 「Apache ログサービス」​を参照してください。

[Static IPs (静的 IP)] タブの設定

[Static IPs (静的 IP)]​ タブを使用して、特定のリージョンにデプロイされているアプリケーションに静的 IP アドレスを割り当てます。

障害回復 (DR) シナリオに対応する複数リージョンの静的 IP アドレスルールを事前に設定することもできます。 アプリケーションに複数のリージョンで割り当てられている静的 IP アドレスがある場合、その静的 IP アドレスはアプリケーションが新しいリージョンにデプロイされたときに割り当てられます。

アプリケーションがすでに実行されている場合、静的 IP アドレスの変更を適用すると、新しく適用された静的 IP アドレスを使用してアプリケーションが再起動されます。

デフォルトでは、組織に割り当てられる静的 IP アドレスの数は、サブスクリプション内の本番 vCore 数の 2 倍であり、​[Use Static IP (静的 IP を使用)]​ に表示されます。

静的 IP 割り当ての一部を解放する必要がある場合、アプリケーションから未使用の IP アドレスを解放できます。 静的 IP アドレスの割り当てを増やすには、カスタマーサクセスマネージャーに連絡してください。 静的 IP の追加についての詳細は、 「How to Request Additional Static IPs for your Anypoint Organization (Anypoint 組織の追加の静的 IP を要求する方法)」​を参照してください。

ワーカーサイズと vCore

各アプリケーションでワーカーがアプリケーションロジックを実行します。

各ワーカーサイズの計算容量、メモリ容量、およびストレージ容量は異なります。

ワーカーサイズと vCore については、​「CloudHub ワーカー」​を参照してください。

デプロイ済みアプリケーションの設定を変更する

ほとんどのアプリケーション設定はアプリケーションを CloudHub にデプロイした後に変更できます。

デプロイ済みアプリケーションの設定を編集する手順は、次のとおりです。

  1. [Applications (アプリケーション)]​ タブで、アプリケーション名を選択します。

  2. [Settings (設定)]​ タブをクリックします。

  3. 変更を加えて ​[Apply Changes (変更を適用)]​ をクリックします。

CloudHub により、ダウンタイムなしでアプリケーションが再デプロイされます。

デプロイメントの進行状況

CloudHub によりアプリケーションがアップロードされてデプロイが開始されると、デプロイメントの進行状況を監視できるように CloudHub でユーザーインターフェースが ​[Logs (ログ)]​ ビューに切り替えられます。

アプリケーションの状況が ​Deploying​ に変わり、デプロイメントが進行中であることが示されます。 デプロイメントが完了すると、アプリケーションの状況が ​Started​ に変わり、アプリケーションが正常にデプロイされたことを示すメッセージが状況領域とログに表示されます。

Mule Runtime Engine バージョン 4.1.x 以降でアプリケーションをデプロイする場合は、​Gatekeeper​ メカニズムが ​API 自動検出​と連動することで、デプロイメントの準備ができているかどうかを判断します。 アプリケーションの準備がデプロイメントの初期化である 5 分以内に整わないと Gatekeeper が判断した場合、アプリケーションの状況は ​Deploy failed​ になります。

デプロイメントの失敗

エラーが発生し、アプリケーションをデプロイできない場合、アプリケーションの状況が ​Deploy failed​ に変わります。 [Logs (ログ)]​ タブにはアプリケーションのデプロイメントエラーに関する詳細が含まれます。