Helm を使用した自己管理型 Kubernetes の Runtime Fabric のインストール

自己管理型 Kubernetes の Runtime Fabric のインストールでは、IT 管理者と MuleSoft 組織システム管理者の両方が必須タスクを実行する必要があります。

Anypoint Runtime Fabric は、Helm を使用して、管理している Amazon Elastic Kubernetes Service (Amazon EKS)、Azure Kubernetes Service (AKS)、または Google Kubernetes Engine (GKE) 環境にインストールできます。

Helm を使用して Runtime Fabric をインストールする手順

Helm を使用して Runtime Fabric をインストールする手順は次のとおりです。

  1. Runtime Manager を使用して Runtime Fabric を作成します。

  2. Runtime Fabric 用の ​rtf​ 名前空間を作成します。

  3. Runtime Fabric コンポーネントイメージを取得するための Docker プルシークレットを作成します。

  4. Runtime Fabric Helm リポジトリを追加します。

  5. values.yml​ ファイルをダウンロードして Runtime Fabric をインストールします。

  6. インストール手順を完了します。

始める前に

自己管理型 Kubernetes 環境に Anypoint Runtime Fabric をインストールする前に、次のことを確認してください。

Helm を使用して Runtime Fabric のインストールを管理する場合は、後で ​rtfctl​ コマンドラインユーティリティを使用して Mule ライセンスキーとプロキシを管理できます。ただし、​更新ドキュメント​に説明されているように、インストール後の変更をすべて追跡する必要があります。

Helm のサポート

Runtime Fabric は、Helm バージョン 1.13 以降を使用したインストール、アップグレード、ロールバックをサポートしています。

Runtime Manager を使用して Runtime Fabric を作成する

Helm を使用して自己管理型 Kubernetes の Runtime Fabric をインストールする前に、Runtime Manager を使用して Runtime Fabric を作成します。これは、インストール中に必要なアクティベーションデータを取得するために必要です。

  1. Anypoint Platform から [Runtime Manager] を選択します。

  2. [Runtime Fabric]​ をクリックします。

  3. [Create Runtime Fabric (Runtime Fabric を作成)]​ をクリックします。

  4. 新しい Runtime Fabric の名前を入力し、次のいずれかのオプションを選択します。

    • Amazon Elastic Kubernetes Service

    • Azure Kubernetes Service

    • Google Kubernetes Engine

  5. サポート責任の免責事項を確認し、同意する場合は ​[Accept (同意)]​ をクリックします。

  6. [Helm] をクリックします。

Helm を使用したインストールプロセスの残りの手順では、プレースホルダー値を参照します。実際の値は、Runtime Fabric インスタンスを作成するときに Runtime Manager から取得できます。

Runtime Fabric 用の rtf 名前空間を作成する

Kubernetes のクラスターで、​rtf​ という名前の名前空間を作成する必要があります。この名前空間に Runtime Fabric コンポーネントをインストールします。

名前空間を作成するには、次のコマンドを実行します。

kubectl create ns rtf

Docker プルシークレットを作成する

名前空間を作成したら、Runtime Fabric のインストールと実行に必要な Docker イメージを取得できるように、プルシークレットを作成します。

デフォルトのレジストリ URL は ​rtf-runtime-registry.kprod.msap.io​ です。ローカルレジストリを使用している場合は、ここで値を指定してください。

プルシークレットを作成するには、次のコマンドを実行します。

kubectl create secret docker-registry <pull_secret> --namespace rtf --docker-server=<docker_registry_url> --docker-username=<docker_registry_username> --docker-password=<docker_ registry_password>

Runtime Fabric Helm リポジトリを追加する

作成した名前空間に Runtime Fabric Helm リポジトリを追加する必要があります。Runtime Fabric Helm リポジトリには、Runtime Fabric をインストールするのに必要なチャートが入っています。

Helm リポジトリを追加するには、次のコマンドを実行します。

helm repo add <name> <helm_repo_url> --username <your_username> --password <your_password>

すでに Helm リポジトリが追加されていて、Runtime Fabric がリポジトリの追加をスキップしたという結果が返された場合は、新しい Runtime Fabric バージョンをインストール (またはそのバージョンにアップグレード) する前に ​helm repo update​ を実行してください。

Runtime Fabric のインストール

Runtime Fabric をインストールするには、Runtime Manager から供給された ​values.yml​ ファイルを使用してください。

  1. values.yml​ ファイルをダウンロードします。

  2. 必要に応じて省略可能なパラメーターを追加します。

  3. 次のコマンドを実行します。

    helm install runtime-fabric rtf/rtf-agent --version <VERSION_FROM_UI> -f values.yaml -n <namespace>

values.yml リファレンス

次に ​values.yml​ ファイルの例を示します。

activationData: <activation data>
  proxy:
    http_proxy:
    http_no_proxy:
    monitoring_proxy:
customLog4jEnabled: true
muleLicense: <mule license key>
global:
  image:
    rtfRegistry: rtf-runtime-registry.kprod.msap.io
    pullSecretName: rtf-pull-secret
  containerLogPaths:
  - /var/lib/docker/containers
  - /var/log/containers
  - /var/log/pods

必須パラメーター

Runtime Manager で Runtime Fabric を作成すると、次の必須パラメーターが作成されて ​values.yml​ に追加されます。

キー

activationData

アクティベーションデータ

YW55cG9pbnQubXVsZXNvZnQuY29tOjBmODdmYzYzLTM3MWUtNDU2Yy1iODg5LTU5NTkyNjYyZjUxZQ==

rtfRegistry

レジストリ URL

rtf-runtime-registry.kprod.msap.io

pullSecretName

レジストリシークレット

<pull_secret>

muleLicense

アプリケーションの Mule ライセンス

<mule_license_key>​。Base64 エンコードである必要があります。

省略可能なパラメーター

Runtime Fabric をインストールする前に、必要に応じて次の省略可能なパラメーターを ​values.yml​ で設定します。

キー

customLog4jEnabled

カスタム Log4j 設定を有効化または無効化

customLog4jEnabled: false

  • proxy.http_proxy

  • proxy.http_no_proxy

プロキシ値と no_proxy 値

proxy.monitoring_proxy

Anypoint Monitoring のプロキシ値

socks5://<user>:<pass>@<10.0.0.2>:<8080>

global.containerLogPaths

Filebeat の読み取りパス

  • /var/lib/docker/

  • /var/log/containers

  • /var/log/pods

Mule ライセンスキーを挿入する

このセクション内の手順は、IT 管理者が実行する必要があります。

インストールが正常に完了したら、Mule ライセンスキーを挿入します。

  1. MuleSoft から提供された新しい Mule ​.lic​ ライセンスファイルを Base64 でエンコードします。

    • MacOS では、次のコマンドを実行します。

      BASE64_ENCODED_LICENSE=$(base64 -b0 license.lic)
    • Unix では、次のコマンドを実行します。

      BASE64_ENCODED_LICENSE=$(base64 -w0 license.lic)
    • Windows では、次のいずれかを選択します。

      • base64 ツールが含まれる WSL または Cygwin シェルを使用し、上記の Unix コマンドを使用します。

      • Windows git (C:\Program Files\Git\usr\bin) と一緒に含まれている base64.exe プログラムを使用します。

      • 次の Powershell コマンドを使用します。

        $BASE64_ENCODED_LICENSE=[convert]::ToBase64String((Get-Content -path "license.lic" -Encoding byte))
  2. インストール中にリーダーとして機能するコントローラーノード (インストーラーノード) で、​rtfctl​ ユーティリティをライセンスキーの Base64 値と共に使用します。

    rtfctl apply mule-license $BASE64_ENCODED_LICENSE
  3. Mule ライセンスキーが適切に適用されていることを確認するには、次のコマンドを実行します。

    rtfctl get mule-license

イングレスリソーステンプレートの設定

このセクション内の手順は、IT 管理者が実行する必要があります。

イングレスコントローラーにカスタムアノテーションとイングレスクラス定義が必要な場合は、​「カスタムイングレス設定の定義」​の手順に従います。

GKE のお客様の場合、デフォルトで GKE と一緒に含まれているイングレスコントローラーによってアプリケーションごとに個別の HTTP ロードバランサーがプロビジョニングされます。詳細は、こちらの KB 記事​を参照してください。

Runtime Fabric を検証する

このセクション内の手順は、IT 管理者が実行する必要があります。

インストールが完了したら、Anypoint 組織内で Runtime Fabric をアクティブ化する必要があります。インストールを検証するには、Anypoint Runtime Manager に移動し、Runtime Fabric の状況が ​[Active (アクティブ)]​ であることを確認します。

アプリケーションを Runtime Fabric にデプロイする前に、次の手順を実行します。

  1. Runtime Fabric を少なくとも 1 つの Anypoint 環境に関連付けます。

  2. Kubernetes 環境に基づいてインバウンドトラフィック設定を確認および更新します。

  3. アプリケーションをデプロイして、Runtime Fabric が正しくインストールおよび設定されていることを確認します。