Flex Gateway新着情報
Governance新着情報
Monitoring API Managerこのトピックでは、AWS アカウントで Anypoint Runtime Fabric をインストールする方法について説明します。
Runtime Fabric をインストールする前に、インフラストラクチャがハードウェア、オペレーティングシステム、ネットワークの最小要件を満たしていることを確認してください。 組織の運用チーム、ネットワークチーム、セキュリティチームは、これらの要件を確認する必要があります。「Anypoint Runtime Fabric のシステム要件」および「Anypoint Runtime Fabric のネットワークとポートの要件」を参照してください。 |
AWS で Anypoint Runtime Fabric をインストールするには、次の要件を満たしていることを確認してください。
Anypoint Platform ユーザアカウントに「Manage Runtime Fabrics (Runtime Fabric の管理)」権限がある。
マシンで Terraform を実行できる。
AWS ユーザに EC2 インスタンス、ディスク、VPC、セキュリティグループを作成するためのアクセス権がある。
詳細は、 「IAM ポリシーシミュレータを使用した IAM ポリシーのテスト」を参照してください。
AWS アカウントに Anypoint Runtime Fabric を実行するのに必要なインフラストラクチャの十分なクォータがある。これには、追加の VPC、ED2 インスタンス、ディスク、セキュリティグループ、および他の必要なリソースを作成する容量があることも含まれます。
仮想マシンをプロビジョニングするのに必要な AWS キーペアがある。このキーペアは、SSH (Secure Shell) を介した VM へのセキュアなアクセスを有効にするのに必要です。
AWS 固有の環境変数 (AWS_ACCESS_KEY_ID
、AWS_SECRET_ACCESS_KEY
、AWS_SESSION_TOKEN
、AWS_REGION
、AWS_DEFAULT_REGION
) へのアクセス権がある 。これらは、Terraform スクリプトを実行するのに必要です。これらの値がわからない場合は、AWS 管理者にお問い合わせください。
環境で実行されているすべてのウィルス対策エージェント (McAfee など) が無効化されている。
Runtime Fabric をインストールするには、Mule ライセンスキーが Base64 でエンコードされている必要があります。組織の Mule Enterprise ライセンスキーファイル (license.lic) を見つけ、オペレーティングシステムに応じて以下を実行します。
MuleSoft には、必要な AWS リソースをプロビジョニングするために実行する Terraform スクリプトが用意されています。次のいずれかの方法で Terraform スクリプトを実行できます。
Terraform をダウンロードして手動でマシンにインストールする。ターミナルで terraform --version
を実行して、インストールされた Terraform のバージョンが 0.12.6
以降であることを確認します。
Docker 内で Terraform を使用する。
Anypoint Platform にサインインし、[Runtime Manager] に移動します。
左側のナビゲーションペインで、Runtime Fabric を選択します。
Runtime Fabric の名前をクリックします。その状態は [Activating (アクティブ化中)] になっている必要があります。
[Download files (ファイルをダウンロード)] をクリックします。
ダウンロードが完了したら、rtf-install-scripts.zip
ファイルを展開します。
rtf-install-scripts
フォルダ内には、以下が含まれる aws
フォルダがあります。
fabric.tf
: AWS アカウントでインフラストラクチャをプロビジョニングする Terraform スクリプト。
network_ingress.tf
: ネットワークイングレスに使用されるセキュリティグループルールを含む Terraform スクリプト。
network_egress.tf
: ネットワークエグレスに使用されるセキュリティグループルールを含む Terraform スクリプト。
installer_env.sh
: インストール中にリーダーとして機能するコントローラ VM に追加される環境変数のシェルスクリプト。
controller_env.sh
: 他のコントローラ VM に追加される環境変数のシェルスクリプト。
worker_env.sh
: ワーカー VM に追加される環境変数のシェルスクリプト。
README.md
: インストール手順が含まれるマークダウンファイル。
Terraform を実行する前に、特定の環境が反映されるように fabric.tf
スクリプトを変更します。以下の表には、必須の環境変数と省略可能な環境変数が記載されています。
環境に応じて、以下の表に記載されていない、fabric.tf 内で指定される環境変数を変更することが必要になる場合もあります。これは、既存の AWS リソース (既存の VPC など) を使用する必要がある場合に多くみられます。
|
必須の環境変数
変数 | 説明 | 例 |
---|---|---|
|
エンコードされた Runtime Fabric アクティベーションデータ。このデータにアクセスするには、Runtime Manager で Runtime Fabric を表示します。 |
|
|
デプロイ先の AWS リージョンのキーペアの名前。 |
|
|
インストーラで各 VM の公開 IP アドレスを作成するかどうかを指定します。公開 IP を使用すると、ネットワークから直接 VM に |
|
|
プロビジョニングするコントローラ VM の数。 |
|
|
プロビジョニングするワーカー VM の数。 |
|
|
組織の Mule Enterprise ライセンスキー ( |
省略可能な環境変数
変数 | 説明 | 例 |
---|---|---|
|
各 Runtime Fabric サービスを実行するユーザ ID を表す整数。「planet」という名前のユーザを作成するデフォルトの動作を上書きします。 |
|
|
各 Runtime Fabric サービスを実行するときに使用されるグループ ID を表す整数。「planet」という名前のグループを作成するデフォルトの動作を上書きします。 |
|
|
アウトバウンド HTTP 要求を転送する HTTP プロキシサーバのホスト名およびポート。 |
|
|
SOCKS5 プロキシサーバがメトリクスとログを Anypoint Monitoring に転送するためのホスト名とポート、および省略可能なユーザ名とパスワード。 |
|
|
プロキシをバイパスする必要があるホストのカンマ区切りリスト。 |
|
|
既存の AWS Virtual Private Cloud (VPC) を指定します。既存の VPC にインストールする場合に必要になります。インストーラは、新しい VPC を作成せずにこの VPC を使用します。 |
|
|
AWS 内の既存のサブネット ID を指定します。既存のネットワークにインストールする場合に必要になります。インストーラは、新しいサブネットを作成せずにこれらのサブネットを使用します。 |
|
|
カスタムポッド CIDR ブロックをサポートします。 |
|
|
カスタムサービス CIDR ブロックをサポートします。 |
|
Terraform スクリプトを実行するには、ターミナルで AWS API アクセスを設定する必要があります。AWS_ACCESS_KEY_ID
、AWS_SECRET_ACCESS_KEY
、および他の環境変数 (AWS_SESSION_TOKEN
、AWS_REGION
、AWS_DEFAULT_REGION
など) の値を定義します 。これらは、アカウントの AWS API にアクセスするのに必要です。
これらが正しく設定されていることを確認するには、aws-cli
ツールを実行できる必要があります (マシンにインストールされている場合)。
AWS 環境が反映されるように fabric.tf
を変更したら、Terraform スクリプトを実行して Runtime Fabric をインストールします。
Terraform は、実行時に状態ファイルを生成して、デプロイメントの詳細をキャプチャします。以下の例では、状態ファイルが tf-data/rtf.tfstate
にあります 。Runtime Fabric インフラストラクチャを作成するたびに、個別の状態ファイルを作成および維持する必要があります。
状態ファイルは安全な場所に保管してください。このファイルは、このデプロイメントを変更する場合 (ワーカーまたはコントローラ VM の数をスケールする場合など) に必要になります。 |
../rtf-install-scripts/aws/
ディレクトリに移動します。このディレクトリから terraform を実行する必要があります。
terraform を初期化します (これは 1 回のみ実行する必要がある)。
terraform init
次のスクリプトをテキストエディタをコピーします。
terraform apply \ -var activation_data='' \ -var key_pair='' \ -var enable_public_ips='' \ -var controllers='3' \ -var workers='3' \ -var mule_license='' \ -state=tf-data/rtf.tfstate
上記の環境変数の表のデータを使用して、これを変更します。
ターミナルに上記の必須の AWS 固有の環境変数へのアクセス権があることを確認します。
AWS 認証に関するエラーが発生した場合、変数の確認と Terraform コマンドの実行で同じターミナルウィンドウを使用していることを確認してください。
スクリプトを実行します。
Terraform スクリプトは、インフラストラクチャをプロビジョニングして、各 VM でインストールスクリプトを実行します。完了すると、Runtime Manager の Runtime Fabric の状況が [Active (アクティブ)] に更新されます。
このステップにより、クラスタを形成するすべてのサーバに Runtime Fabric がインストールされます。完了するまでに 15 ~ 25 分以上かかることがあります。 |
../rtf-install-scripts/
ディレクトリに移動します。このディレクトリから terraform を実行する必要があります。dir
または ls
コマンドを実行すると、aws
ディレクトリが他のディレクトリ (azure
や manual
など) と共にリストされます。
terraform を初期化します (これは 1 回のみ実行する必要がある)。
docker run -v $(pwd):/src -w /src/aws \ -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_SESSION_TOKEN \ hashicorp/terraform:0.12.6 init
以下をテキストエディタをコピーします。
-var activation_data='' \ -var key_pair='' \ -var enable_public_ips='' \ -var controllers='3' \ -var workers='3' \ -var mule_license='' \ -state=tf-data/rtf.tfstate
上記の環境変数の表のデータを使用して、これを変更します。
Terraform スクリプトを実行します。
docker run -it -v $(pwd):/src -w /src/aws \ -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_SESSION_TOKEN \ hashicorp/terraform:0.12.6 apply \ -var activation_data='' \ -var key_pair='' \ -var enable_public_ips='' \ -var controllers='3' \ -var workers='3' \ -var mule_license='' \ -state=tf-data/rtf.tfstate
Terraform スクリプトは、インフラストラクチャをプロビジョニングして、各 VM でインストールスクリプトを実行します。完了すると、Runtime Manager の Runtime Fabric の状況が [Active (アクティブ)] に更新されます。
このステップにより、クラスタを形成するすべてのサーバに Runtime Fabric がインストールされます。完了するまでに 15 ~ 25 分以上かかることがあります。 |
インストール中に進行状況を参照するには、各 VM の出力ログを確認します。
最初のコントローラ VM へのシェル (SSH セッション) を開きます。
次のコマンドを使用して、/var/log/rtf-init.log
にある出力ログを確認します。
tail -f /var/log/rtf-init.log
各 VM の同じログを確認して、その進行状況を参照できます。 |
インストールが正常に完了したら、インストーラによって /opt/anypoint/runtimefabric/.state/init-complete
ファイルが作成されます。
インストールが正常に完了したら、オペレーションセンターにログインして Runtime Fabric インフラストラクチャの状況を表示します。オペレーションセンターへのアクセスとオペレーションセンターのユーザ名とパスワードの決定については、「Anypoint Runtime Fabric でのオペレーションセンターの使用」を参照してください。
デフォルトでは、Terraform スクリプトでは、オペレーションセンターポートをインターネットに公開しないように AWS セキュリティグループが設定されています。
公開 IP を使用してオペレーションセンターでクラスタを管理するには、enable_public_ips 変数を使用して公開 IP でコントローラノードをプロビジョニングする必要があります。ポート 32009 での TCP 接続に対して 0.0.0.0 インターネットアクセスを許可するようにセキュリティグループを調整する必要があります。
|