Azure での Runtime Fabric のインストール

このトピックでは、Azure アカウントで VM/ベアメタルの Anypoint Runtime Fabric をインストールする方法について説明します。Amazon Elastic Kubernetes Service (Amazon EKS)、Azure Kubernetes Service (AKS)、または Google Kubernetes Engine (GKE) を使用して​自己管理型 Kubernetes の Runtime Fabric​ をインストールすることもできます。

始める前に

Azure で VM/ベアメタルの Anypoint Runtime Fabric をインストールするには、次の要件を満たしていることを確認してください。

  • Runtime Manager で Runtime Fabric を作成​している。

  • 「VM/ベアメタルの Runtime Fabric の共有責任」​ドキュメントを確認済みである。インフラストラクチャがハードウェア、オペレーティングシステム、ネットワークの最小要件を満たしていない場合、Runtime Fabric は正常に動作できません。

  • 組織の運用チーム、ネットワークチーム、セキュリティチームが参加している。​「Anypoint Runtime Fabric インストールの前提条件」​を参照してください。

  • Anypoint ユーザーアカウントに「​Manage Runtime Fabrics (Runtime Fabric の管理)​」権限がある。

  • Azure ユーザーに VM、ディスク、仮想ネットワーク、ネットワークセキュリティグループを作成するためのアクセス権がある。

  • Azure アカウントにインフラストラクチャをプロビジョニングする十分なクォータがある。

  • VM の公開 IP を使用することが組織で許可されていない場合、既存の仮想ネットワークを使用することが必要になる場合もあります。 既存の仮想ネットワークを参照するように Azure Resource Manager テンプレートを変更します。

  • 環境で実行されているすべてのウイルス対策エージェント (McAfee など) が無効化されている。

  • Azure ベアメタル上では Runtime Fabric は論理ボリュームマネージャー (LVM) を使用する RHEL のインスタンスのみをサポートします。Azure ベアメタル上の LVM を使用しない RHEL インスタンスはサポートされません。

Runtime Fabric のインストール

インストールパッケージの一部として提供される Azure Resource Manager テンプレートは参照のみを目的とするものであり、これを、本番以外または本番の Runtime Fabric インストールでそのまま使用しないでください。このテンプレートを確認し、ニーズを満たすようにカスタマイズする必要があります。VM/ベアメタルの Runtime Fabric は、​「Runtime Fabric インストールの前提条件」​の最小要件以上が提供されている限りサポートされます。

助言が必要な場合は、MuleSoft 担当者までお問い合わせください。

VM/ベアメタルの Runtime Fabric をインストールする前に、Runtime Manager から Azure Resource Manager テンプレートをダウンロードします。

  1. Anypoint Platform から [Runtime Manager] に移動します。

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

  3. 作成した Runtime Fabric をクリックします。その状態は [​Activating​ (有効化中)] になっている必要があります。

  4. [Download files (ファイルをダウンロード)]​ リンクをクリックします。

  5. ファイルがダウンロードされたら、​rtf-install-scripts.zip​ ファイルを展開します。

    rtf-install-scripts\azure​ ディレクトリには、以下のインストールファイルが含まれます。

    • ARM-template-dev.template​: 開発設定に必要なインフラストラクチャを記述するサンプル Azure Resource Manager テンプレート。

    • ARM-template-prod.template​: 本番設定に必要なインフラストラクチャを記述するサンプル Azure Resource Manager テンプレート。

    • generate-templates.sh​: Mule Enterprise ライセンスダイジェストと初期化スクリプトを Azure Resource Manager テンプレートに挿入するために使用されるシェルスクリプト。このスクリプトは、Azure にデプロイするときに使用する JSON テンプレートを出力します。

      提供されたサンプルテンプレートをコピーして、対象のトポロジーとインフラストラクチャ要件に基づいて変更します。

Mule ライセンスキーの Base64 でのエンコード

generate-templates.sh​ スクリプトを実行して、Azure Resource Manager テンプレートに Mule Enterprise ライセンスキーを追加します。 これらのテンプレートは、必要なインフラストラクチャをプロビジョニングするために使用されます。

Windows の場合、シェルターミナルエミュレーター (cygwin など) や Unix ベースのコンピューターが必要です。
  1. 組織の Mule Enterprise ライセンスキーファイル (​license.lic​) を見つけ、必要に応じて Unix 環境に転送します。

  2. ターミナル・シェルを開き、​azure​ サブディレクトリに移動します。

  3. 以下をテキストエディターをコピーします。

    RTF_MULE_LICENSE='' \
    ./generate-templates.sh
  4. ターミナルを使用して、Mule Enterprise ライセンスキーを base64 にエンコードし、コンテンツを ​RTF_MULE_LICENSE​ の値としてテキストエディターに貼り付けます。

    base64 -w0 license.lic # Linux
    
    base64 -b0 license.lic # OSX / MacOS
  5. テキストエディターからコマンドをコピーし、​azure​ ディレクトリを参照するターミナルで実行します。

  6. azure​ ディレクトリの ​ARM-template-dev.json​ および ​ARM-template-prod.json​ ファイルの生成された出力を確認します。

ARM テンプレートをデプロイする

生成された ARM テンプレートを実行して、Azure アカウントでインフラストラクチャをプロビジョニングします。次の手順では、Azure Portal を介してテンプレートを実行する方法について説明します。

VM をプロビジョニングするには、PEM ファイルとして非公開キーと公開キーが必要です。これは、SSH (Secure Shell) を介した VM へのセキュアなアクセスを有効にするのに必要です。
  1. Azure Portal​ にログインします。

  2. [リソースの作成]​ に移動します。

  3. [​Marketplace を検索​] 検索バーから「​テンプレートのデプロイ​」と入力します。

  4. ウィンドウの下部で ​[作成]​ をクリックします。

  5. [エディターで独自のテンプレートをビルド]​ を選択します。

  6. エディターの上部のバーで、​[ファイルの読み込み]​ をクリックし、​azure​ ディレクトリから目的の Azure Resource Manager を選択します。JSON ファイルを選択する必要があります。

  7. エディターにファイルのコンテンツが表示されたら、​[保存]​ をクリックします。

  8. サブスクリプションの選択内容、リソースグループ、および環境のリージョンを確認します。通常、個別のリソースグループを作成する必要があります。

  9. [設定]​ で、以下を入力します。

    Table 1. Azure 設定
    変数 説明

    Public Key

    公開キーの文字列が含まれます。これにより、関連付けられている非公開キーを使用して各 VM に SSH で接続できます。

    ssh rsa …​

    Anypoint Activation Data

    エンコードされた Runtime Fabric アクティベーションデータを指定します。このデータにアクセスするには、Runtime Manager で Runtime Fabric を表示します。

    NzdlMzU1YTktMzAxMC00OGE0LWJlMGQtMDdxxxx

    SSH User Name

    各 VM への SSH 接続を確立するときに使用するユーザー名を指定します。

    rtf-user

    Controller Instance Type

    コントローラー VM ごとにプロビジョニングする Azure マシン種別を指定します。デフォルトは 2 コア、8 GB メモリです。

    Standard_D2s_v3

    Worker Instance Type

    ワーカー VM ごとにプロビジョニングする Azure マシン種別を指定します。デフォルトは 2 コア、16 GB メモリです。

    Standard_E2s_v3

    Virtual Network CIDR

    仮想ネットワークに指定するアドレス範囲を指定します。必要に応じて、ネットワークスペシャリストにお問い合わせください。

    172.31.0.0/16

    Virtual Network Subnet

    仮想ネットワーク内で使用するサブネットのアドレス範囲を指定します。必要に応じて、システム管理者にお問い合わせください。

    172.31.3.0/28

    Installer IP Address

    インストーラー VM として機能するコントローラー VM を割り当てる IP アドレスを指定します。これは、指定されたサブネット範囲内の使用可能なアドレスである必要があります。

    172.31.3.4

    Availability Set Update Domains

    選択された Azure リージョンでサポートされる更新ドメインの数を指定します。

    3

    Availability Set Fault Domains

    選択された Azure リージョンでサポートされる障害ドメインの数を指定します。

    3

    Pod Network CIDR

    ポッドネットワークに使用するカスタム CIDR ブロックを指定します。

    10.244.0.0/16

    Service CIDR

    サービスネットワークに使用するカスタム CIDR ブロックを指定します。

    10.100.0.0/16

    disable_selinux

    ホストのオペレーティングシステムで SELinux を無効化/有効化するブール変数。デフォルト値は ​true​ で、SELinux を無効にします。

    ホストオペレーティングシステムが RHEL 8 の場合、インストールに失敗するため、​false​ に設定しないでください。

    true

    VM/ベアメタルの Runtime Fabric では、インバウンドロードバランサーは共有モードまたは専用モードで実行されます。

    • [Shared Mode (共有モード)]​ では、内部ロードバランサーの CPU コア数とメモリ量を指定できます。共有モードでは、内部ロードバランサーはコントローラーノード全体に分散されます。 [Shared Mode (共有モード)]​ はデフォルトの設定です。

    • [Dedicated Mode (専用モード)]​ では、すべての使用可能なリソースが内部ロードバランサー専用であることが指定されます。このため、CPU コア数およびメモリ量を選択することはできません。専用モードでは、内部ロードバランサーは専用の内部ロードバランサーノードにデプロイされます。

      詳細は、​「Runtime Fabric の管理」​を参照してください。

  10. ページの下部で ​[使用条件]​ を確認して選択し、​[購入]​ をクリックします。

    クラスターを形成するすべてのサーバーに VM/ベアメタルの Runtime Fabric がインストールされます。このプロセスは完了するまでに時間がかかります。完了すると、Runtime Manager に表示される Runtime Fabric の状況が [​Active​ (アクティブ)] に代わります。

    • デフォルトでは、ARM テンプレートは各 VM の公開 IP アドレスを定義するように設定されています。必要に応じて、テンプレートを変更して ​publicIPAddresses​ を削除します。

    • 内部ロードバランサーは、共有モードの場合はコントローラーノード全体に分散され、専用モードの場合は内部ロードバランサーノードにデプロイされます。

インストールの進行状況の監視

Azure プロビジョニングプロセスを実行するには、次の手順に従います。

  1. Azure Portal の左側のナビゲーションバーで、​[リソース グループ]​ をクリックします。

  2. Runtime Fabric インフラストラクチャをプロビジョニングするために使用するリソースグループを選択します。

  3. [デプロイ]​ の ​[概要]​ ペインで、下のリンクをクリックします。このリンクは、​1 Deploying​ のように表示されます。

  4. デプロイメント名 ​[Microsoft.Template]​ をクリックします。

インフラストラクチャとその状況のリストが表示されます。​[更新]​ ボタンをクリックして、ペインと状況を更新します。

インストール中に進行状況を参照するには、各 VM の出力ログを確認します。

  1. VM へのシェル (SSH セッション) を開きます。

  2. /var/log/rtf-init.log​ にある出力ログを確認します。

    tail -f /var/log/rtf-init.log

各 VM の同じログを確認して、その進行状況を参照できます。

インストールが正常に完了したら、​/opt/anypoint/runtimefabric/.state/init-complete​ ファイルが作成されます。

一般的なエラー

Azure アカウントで設定されているポリシーや定義されているクォータによっては、プロビジョニングプロセスでエラーが発生することがあります。ARM テンプレートは、組織で設定されているポリシーに合わせて変更できます。 必要に応じて、ネットワーク管理者にお問い合わせください。

  • 最大コアクォータの超過:​ Azure サポートにチケットを登録して、デプロイメントリージョンのクォータを増やします。十分なクォータがあると思われる場合、増加しているクォータで正しいリージョンが選択されていることを確認します。または、アカウントに固有になるようにリソースグループ名を変更します。

  • ネットワークポリシー違反:​ デフォルトでは、Azure リソーステンプレートで定義されるネットワークセキュリティグループは、サブネットレベルおよび各 VM の NIC で関連付けられます。会社のポリシーによっては、テンプレートを調整して関連付けを削除することが必要になる場合もあります。

オペレーションセンターへのアクセス

インストールが正常に完了したら、オペレーションセンターにログインして Runtime Fabric インフラストラクチャの状況を表示します。オペレーションセンターへのアクセスとオペレーションセンターのユーザー名とパスワードの決定については、​「Anypoint Runtime Fabric でのオペレーションセンターの使用」​を参照してください。

デフォルトでは、Resource Manager スクリプトでは、オペレーションセンターポートをインターネットに公開しないように Azure ネットワークセキュリティグループが設定されています。公開 IP を使用してオペレーションセンターでクラスターを管理するには、公開 IP でコントローラーノードをプロビジョニングする必要があります。ポート 32009 での TCP 接続に対して 0.0.0.0 インターネットアクセスを許可するようにネットワークセキュリティグループを更新します。