---
schema_version: "1"
id: d9857106de611a8dafc4153781c5a39a059291ebe7ac4353d1fcd301ad2569bd
title: Helm を使用した Runtime Fabric のインストール
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/runtime-fabric/2.7/install-helm.md
canonical_url: https://docs.mulesoft.com/jp/runtime-fabric/2.7/install-helm
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 3df40e8a8ad7214c2334fe6e5ef4f5fc980202a622bdc403f0af734e1f9f348a
description: MuleSoft Documentation Site
release: "2.7"
latest: false
---
# Helm を使用した Runtime Fabric のインストール

Helm を使用して、管理している Amazon Elastic Kubernetes Service (Amazon EKS)、Amazon Elastic Kubernetes Service Anywhere (Amazon EKS-A)、Azure Kubernetes Service (AKS)、Alibaba Cloud Container Service for Kubernetes (ACK)、Google Kubernetes Engine (GKE)、Rancher Kubernetes Engine (RKE)、または VMware Tanzu Kubernetes Grid 環境に Anypoint Runtime Fabric をインストールできます。

## [](#helm-を使用して-runtime-fabric-をインストールする手順)Helm を使用して Runtime Fabric をインストールする手順

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

1. Runtime Manager を使用して Runtime Fabric を作成します。
2. Runtime Fabric 用の ​`rtf`​ 名前空間を作成します。
3. Runtime Fabric コンポーネントイメージを取得するための Docker プルシークレットを作成します。
4. 必要に応じて、追加の承認済み名前空間を設定します。
5. Runtime Fabric Helm リポジトリを追加します。
6. `values.yml`​ ファイルをダウンロードして Runtime Fabric をインストールします。
7. インストール手順を完了します。

## [](#始める前に)始める前に

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

- [「Runtime Fabric の概要」](https://docs.mulesoft.com/jp/runtime-fabric/2.7/)​で説明されているアーキテクチャと要件を確認した。
- [Runtime Fabric をサポートするようにネットワークを設定した](https://docs.mulesoft.com/jp/runtime-fabric/2.7/install-self-managed-network-configuration)​。
- Kubernetes 環境を次のようにインストールして設定してある。
    
    - ACK、AKS、EKS、EKS-A、GKE、RKE、または VMware Tanzu Kubernetes 環境を実行している。その他の Kubernetes 環境はサポートされていません。
    - サポートされている Kubernetes バージョンを実行している。
    - イングレスコントローラーを実行して外部要求をアプリケーションに送信している。
- Helm 3 以降をインストールして、特権ユーザー権限を持っている。

<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-important" title="Important"></i>
</td>
<td class="content">
<div class="ulist">
<ul>
<li>
<p>Helm を使用して Runtime Fabric のインストールを管理する場合は、後で ​<code>rtfctl</code>​ コマンドラインユーティリティを使用して Mule ライセンスキーとプロキシを管理できます。ただし、​<a href="https://docs.mulesoft.com/jp/runtime-fabric/2.7/upgrade-helm" class="xref page">更新ドキュメント</a>​に説明されているように、インストール後の変更をすべて追跡する必要があります。</p>
</li>
</ul>
</div>
</td>
</tr>
</tbody></table>

### [](#helm-のサポート)Helm のサポート

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

## [](#runtime-manager-を使用して-runtime-fabric-を作成する)Runtime Manager を使用して Runtime Fabric を作成する

Helm を使用して 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\] をクリックします。

<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>Helm を使用したインストールプロセスの残りの手順では、プレースホルダー値を参照します。実際の値は、Runtime Fabric インスタンスを作成するときに Runtime Manager から取得できます。</p>
</div>
</td>
</tr>
</tbody></table>

## [](#runtime-fabric-用の-rtf-名前空間を作成する)Runtime Fabric 用の rtf 名前空間を作成する

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

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

```copy
kubectl create ns rtf
```

名前空間としての ​`rtf`​ の使用は、単一クラスターまたは単一インスタンスの場合のみ適用されます。

## [](#docker-プルシークレットを作成する)Docker プルシークレットを作成する

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

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

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

```copy
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 リポジトリには、Runtime Fabric をインストールするのに必要なチャートが入っています。

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

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

<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>すでに Helm リポジトリが追加されていて、Runtime Fabric がリポジトリの追加をスキップしたという結果が返された場合は、新しい Runtime Fabric バージョンをインストール (またはそのバージョンにアップグレード) する前に ​<code>helm repo update</code>​ を実行してください。</p>
</div>
</td>
</tr>
</tbody></table>

## [](#省略可能-承認済み名前空間を設定する)(省略可能) 承認済み名前空間を設定する

必要に応じて、他のサービスと一緒に Runtime Fabric を Kubernetes クラスターにデプロイできるようにする​[承認済み名前空間](https://docs.mulesoft.com/jp/runtime-fabric/2.7/authorized-namespaces)​を設定できます。

### [](#始める前に-2)始める前に

承認済み名前空間を設定する前に、次の点に注意してください。

- Runtime Fabric をインストールする​_前_​に ​`authorized-namespaces`​ ConfigMap ファイルを作成する必要があります。さらに、ConfigMap には ​`authorized-namespaces`​ という名前を付ける必要があります。
- `rtf:resource-metrics-collector`​ ClusterRole にはノード、ポッド、名前空間を ​`get`​ および ​`list`​ するクラスター全体の権限があり、ノードに対する ​`watch`​ 権限があります。ロール ClusterRole は次のように定義されます。
    
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRole
    metadata:
      name: rtf:resource-metrics-collector
      labels:
        {{- include "labels.standard" . | nindent 4 }}
    rules:
      - apiGroups: \[""\]
        resources: \["nodes", "pods", "namespaces"\]
        verbs: \["list", "get"\]
      - apiGroups: \[""\]
        resources: \["nodes"\]
        verbs: \["watch"\]
    
    1. クラスターで、アプリケーションデプロイメント用の追加の名前空間を作成し、必要な表示ラベルを名前空間に追加します。そのためには、次のコンテンツで YAML ファイルを作成します。
        
        ```copy
        apiVersion: v1
        kind: Namespace
        metadata:
          name: <namespace>
          labels:
            rtf.mulesoft.com/agentNamespace: <rtf_namespace>
            rtf.mulesoft.com/envId: <environment_id>
            rtf.mulesoft.com/org: <org_id>
            rtf.mulesoft.com/role: workers
        ```
    2. ここで作成したファイルを適用します。
        
        ```copy
        kubectl apply -f <filename>.yaml
        ```
    3. ステップ 1 と 2 を繰り返して、必要な数の名前空間を追加します。
    4. Runtime Fabric エージェント ServiceAccount が含まれる Runtime Fabric エージェント ClusterRole の RoleBinding を作成します。そのためには、追加の名前空間で次の設定を適用します。
        
        ```copy
        kind: RoleBinding
        apiVersion: rbac.authorization.k8s.io/v1
        metadata:
          name: <name>
          namespace: <additional_namespace>
        subjects:
          - kind: ServiceAccount
            name: rtf-agent
            namespace: <rtf_namespace>
        # If using persistence gateway uncomment and provide the following. Ref: https://docs.mulesoft.com/runtime-fabric/latest/persistence-gateway#persistence-gateway-with-authorized-namespaces
        # subjects:
        #  - kind: ServiceAccount
        #    name: rtf-persistence-gateway
        #    namespace: <rtf_namespace>
        
        roleRef:
          kind: ClusterRole
          name: rtf:agent
          apiGroup: rbac.authorization.k8s.io
        ```

認証済み名前空間モードでクラスタリングアプリケーションを使用するには、次の RoleBinding を作成する必要があります。

```yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: rtf-mule-clusterip-service
  namespace: <app_namespace>
subjects:
- kind: ServiceAccount
  name: mule-clusterip-service
  namespace: <rtf_namespace>
roleRef:
  kind: ClusterRole
  name: rtf:mule-clusterip-service
  apiGroup: rbac.authorization.k8s.io
```

1. `rtf`​ 名前空間で、​`authorized-namespaces`​ という名前の ConfigMap ファイルを作成し、追加の名前空間があればリストします。
    
    ```copy
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: authorized-namespaces
      namespace: <rtf_namespace>
    data:
      ADDITIONAL_NAMESPACE_1: "additional-namespace1"
      ADDITIONAL_NAMESPACE_2: "additional-namespace2"
    ```
2. Runtime Fabric のインストールが完了した後に ConfigMap で名前空間の追加または削除を行う場合は、Runtime Fabric エージェントポッドを再起動する必要があります。これを行うには、次のコマンドを実行します。
    
    ```copy
    kubectl -nrtf delete po -l app=agent
    ```
    
    ポッドを削除すると、Kubernetes によって新しいポッドが開始されます。

## [](#runtime-fabric-のインストール)Runtime Fabric のインストール

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

1. `values.yml`​ ファイルをダウンロードします。
2. 必要に応じて省略可能なパラメーターを追加します。
    
    承認済み名前空間を使用している場合は、​`authorizedNamespaces`​ を ​`true`​ に設定します。
3. 次のコマンドを実行します。
    
    ```copy
    helm install runtime-fabric rtf/rtf-agent --version <VERSION_FROM_UI> -f values.yaml -n <namespace>
    ```

## [](#values-yml-reference)values.yml リファレンス

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

```yaml
activationData: <activation_data>
proxy:
  http_proxy:
  http_no_proxy:
  monitoring_proxy:
muleLicense: <mule_license_key>
customLog4jEnabled: false
global:
  nodeWatcherEnabled: true
  deploymentRateLimitPerSecond: 1
  authorizedNamespaces: false
  image:
    rtfRegistry: rtf-runtime-registry.kqa.msap.io
    pullSecretName: rtf-pull-secret
  containerLogPaths:
  - /var/lib/docker/containers
  - /var/log/containers
  - /var/log/pods
```

<table><tbody><tr><td class="icon"><i class="fa icon-note" title="Note"></i></td><td class="content">EU コントロールプレーンを使用して Runtime Fabric BYOK を設定する場合は、​<a href="https://docs.mulesoft.com/runtime-fabric/latest/install-self-managed-network-configuration#hostname-configuration" class="xref page">「ホスト名設定」</a>​の変更点を確認して、正しく設定してください。特に、​<code>rtfRegistry: rtf-runtime-registry.kprod-eu.msap.io</code>​ プロパティに注意してください。</td></tr></tbody></table>

### [](#必須パラメーター)必須パラメーター

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

<table class="tableblock frame-all grid-all fit-content spread">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">キー</th>
<th class="tableblock halign-left valign-top">値</th>
<th class="tableblock halign-left valign-top">例</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>activationData</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">アクティベーションデータ</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">YW55cG9pbnQubXVsZXNvZnQuY29tOjBmODdmYzYzLTM3MWUtNDU2Yy1iODg5LTU5NTkyNjYyZjUxZQ==</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>rtfRegistry</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">レジストリ URL</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>rtf-runtime-registry.kprod.msap.io</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pullSecretName</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">レジストリシークレット</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>&lt;pull_secret&gt;</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>muleLicense</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">アプリケーションの Mule ライセンス</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>&lt;mule_license_key&gt;</code>​。Base64 エンコードである必要があります。</p></td>
</tr>
</tbody>
</table>

### [](#省略可能なパラメーター)省略可能なパラメーター

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

<table class="tableblock frame-all grid-all fit-content spread">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">キー</th>
<th class="tableblock halign-left valign-top">値</th>
<th class="tableblock halign-left valign-top">例</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>customLog4jEnabled</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">カスタム Log4j 設定を有効化または無効化</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>customLog4jEnabled: true</code>​、デフォルトは ​<code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>authorizedNamespaces</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">追加の名前空間の有効化または無効化</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>authorizedNamespaces: true</code>​、デフォルトは false</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>crds.install</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">カードのインストールの有効化</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>crds.install: true</code>​ (最初の Runtime Fabric のインストール)、false (以降のインストール)</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
<ul>
<li>
<p><code>proxy.http_proxy</code>​</p>
</li>
<li>
<p><code>proxy.http_no_proxy</code></p>
</li>
</ul>
</div></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">プロキシ値と no_proxy 値</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
<ul>
<li>
<p><code><a href="http://<user>:<pass>@<10.0.0.1>:<8080>" class="bare">http://&lt;user&gt;:&lt;pass&gt;@&lt;10.0.0.1&gt;:&lt;8080&gt;</a>;</code>​</p>
</li>
<li>
<p><code>&lt;1.1.1.1:8888,2.2.2.2:9999&gt;</code></p>
</li>
</ul>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>proxy.monitoring_proxy</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Anypoint Monitoring のプロキシ値</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>socks5://&lt;user&gt;:&lt;pass&gt;@&lt;10.0.0.2&gt;:&lt;8080&gt;</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>global.containerLogPaths</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Filebeat の読み取りパス</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
<ul>
<li>
<p><code>/var/lib/docker/</code>​</p>
</li>
<li>
<p><code>/var/log/containers</code>​</p>
</li>
<li>
<p><code>/var/log/pods</code></p>
</li>
</ul>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>nodeWatcherEnabled</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">クラスターのノードウォッチャーの有効化または無効化</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>nodeWatcherEnabled:true</code>​、デフォルト値は ​<code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>deploymentRateLimitPerSecond</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1 秒ごとのデプロイメントレート制限の設定</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>deploymentRateLimitPerSecond: 1</code>​、デフォルト値は ​<code>1</code></p></td>
</tr>
</tbody>
</table>

## [](#mule-ライセンスキーの挿入)Mule ライセンスキーの挿入

インストール中に Mule ライセンスキーを追加しなかった場合は、​`rtfctl`​ コマンドラインユーティリティまたは Helm を使用して追加できます。

ライセンスキーをインストールする前に Base64 形式にエンコードしてください。

### [](#ライセンスキーのエンコード)ライセンスキーのエンコード

- MacOS では、次のコマンドを実行します。
    
    ```copy
    base64 -b 0 -i <license-file>
    ```
- Unix では、次のコマンドを実行します。
    
    ```copy
    base64 -w0 <license-file>
    ```
- Windows では、次のいずれかを選択します。
    
    - base64 ツールが含まれる WSL または Cygwin シェルを使用し、上記の Unix コマンドを使用します。
    - Windows git (C:\\Program Files\\Git\\usr\\bin) と一緒に含まれている base64.exe プログラムを使用します。
    - 次の Powershell コマンドを使用します。
        
        ```copy
        $BASE64_ENCODED_LICENSE=[convert]::ToBase64String((Get-Content -path "license.lic" -Encoding byte))
        ```

### [](#rtfctl-を使用してライセンスキーを適用する)rtfctl を使用してライセンスキーを適用する

1. インストール中にリーダーとして機能するコントローラーノード (インストーラーノード) で、次のコマンドを実行します。
    
    ```copy
    rtfctl apply mule-license $BASE64_ENCODED_LICENSE
    ```
    
    ファイルパスを直接指定する Mule ライセンスを適用することもできます。
    
    ```copy
    rtfctl apply mule-license --file /path/to/license.lic
    ```
    
    <table><tbody><tr><td class="icon"><i class="fa icon-note" title="Note"></i></td><td class="content"><code>rtfcl apply</code>​ と一緒に値を使用しても、OpenShift では機能しません。OpenShift コンソールで値を更新する必要があります。</td></tr></tbody></table>
2. Mule ライセンスキーが適切に適用されていることを確認するには、次のコマンドを実行します。
    
    ```copy
    rtfctl get mule-license
    ```

### [](#helm-を使用したライセンスキーの適用)Helm を使用したライセンスキーの適用

Helm を使用してライセンスを適用するには、次のコマンドを実行します。

```copy
helm upgrade runtime-fabric rtf/rtf-agent --set muleLicense=$BASE64_ENCODED_LICENSE -n rtf --reuse-values --version <current-version>
```

## [](#イングレスリソーステンプレートの設定)イングレスリソーステンプレートの設定

イングレスコントローラーにカスタムアノテーションとイングレスクラス定義が必要な場合は、​[「カスタムイングレス設定の定義」](https://docs.mulesoft.com/jp/runtime-fabric/2.7/custom-ingress-configuration)​の手順に従います。

<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>GKE のお客様の場合、デフォルトで GKE と一緒に含まれているイングレスコントローラーによってアプリケーションごとに個別の HTTP ロードバランサーがプロビジョニングされます。詳細は、こちらの <a href="https://help.mulesoft.com/s/article/Default-Ingress-Controller-Behavior-with-Runtime-Fabric-on-GKE">KB 記事</a>​を参照してください。</p>
</div>
</td>
</tr>
</tbody></table>

## [](#runtime-fabric-を検証する)Runtime Fabric を検証する

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

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

1. Runtime Fabric を少なくとも 1 つの Anypoint 環境に関連付けます。
2. Kubernetes 環境に基づいてインバウンドトラフィック設定を確認および更新します。
3. アプリケーションをデプロイして、Runtime Fabric が正しくインストールおよび設定されていることを確認します。

## [](#ロールバックの実行)ロールバックの実行

Helm を使用して Runtime Fabric の以前のバージョンにロールバックするには、 [Helm rollback](https://helm.sh/docs/helm/helm_rollback/)​ のドキュメントにあるコマンドの説明を参照してください。

## [](#関連情報)関連情報

- [Runtime Fabric のイングレスの設定](https://docs.mulesoft.com/jp/runtime-fabric/2.7/custom-ingress-configuration)
- [Runtime Fabric に Mule アプリケーションをデプロイする](https://docs.mulesoft.com/jp/runtime-fabric/2.7/deploy-to-runtime-fabric)