Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerAnypoint Runtime Fabric で提供される永続性ゲートウェイにより、Mule Runtime インスタンスにデプロイされた Mule アプリケーションではアプリケーションレプリカと再起動でデータを保存して共有できます。
Mule Maven プラグインバージョン 3.5.4 以降を使用して Runtime Fabric デプロイメント用の永続的なオブジェクトストアを有効にすることもできます。 |
Anypoint Runtime Fabric で永続性ゲートウェイを設定したら、Mule Runtime Engine バージョン 4.2.1 以降にデプロイされた Mule アプリケーションで使用できるようになります。設定すると、ユーザーは Runtime Manager を使用してアプリケーションをデプロイするときに [Use Persistent Object Storage (永続オブジェクトストレージを使用)] を選択できます。詳細は、「Runtime Fabric に Mule アプリケーションをデプロイする」を参照してください。
Mule アプリケーションでは Object Store Connector を通じて Object Store v2 REST API を使用して永続性ゲートウェイに接続します。これにより、Mule アプリケーションを変更することなく、Anypoint Runtime Fabric と CloudHub の両方をデプロイできます。
アプリケーションを削除しても、すぐには永続データが削除されない場合があります。Runtime Fabric は 60 分ごとに永続データをクリーンアップします。 |
次の表に、永続性ゲートウェイによって保存されるデータに関する制限事項を示します。
Limit (制限) | 説明 |
---|---|
最大 TTL。 |
データが永続性ゲートウェイに保存される期間。値は 30 日に設定されます。 |
永続性ゲートウェイを有効化する前に、次の準備が整っていることを確認します。
永続性ゲートウェイによって保存されるデータのデータソースとなる PostgreSQL データベースを作成してある。このデータベースは partition
キーワードが予約されていない PostgresSQL のサポート対象バージョンと互換性がある必要があります。
PostgreSQL ユーザーに CREATE、INSERT、SELECT、UPDATE、DELETE 権限を付与してある。
データベースへのプレーンテキスト接続のみがサポートされています。 |
設定中に、永続性ゲートウェイによって必要なデータベーススキーマが作成されます。その後、Runtime Fabric にデプロイされたアプリケーションが永続オブジェクトストレージを使用するように設定されると、永続性ゲートウェイによってデータベースに必要な行が書き込まれます。
永続性ゲートウェイを設定するには、クラスターが永続性データストアに接続するための Kubernetes カスタムリソースを作成する必要があります。
Kubernetes シークレットを作成します。
kubectl create secret generic <SECRET NAME> -n rtf --from-literal=persistence-gateway-creds='postgres://username:pass@host:port/databasename'
|
データストアのカスタムリソースを作成します。
カスタムリソーステンプレートを Kubernetes カスタムリソーステンプレート から custom-resource.yaml
という名前のファイルにコピーします。
secretRef: name
の値が Kubernetes シークレットファイルで定義された name
項目に一致することを確認します。
環境で必要に応じてカスタムリソーステンプレートのその他の項目を変更します。
kubectl apply -f custom-resource.yaml
を実行します。
VM/ベアメタルの Runtime Fabric を使用している場合は、このコマンドをコントローラーノードから実行します。
永続性ゲートウェイポッドのログをチェックして、データベースと通信できることを確認します。
kubectl get pods -n rtf
名前にプレフィックス persistence-gateway
が付いたポッドを見つけます。
kubectl logs -f persistence-gateway-6dfb98949c-7xns9 -nrtf
このコマンドの出力は次のようになります。
2021/04/09 16:35:31 Connecting to PostgreSQL backend... 2021/04/09 16:35:32 Starting watcher for /var/run/secrets/rtf-object-store/persistence-gateway-creds 2021/04/09 16:35:32 Watching for changes on /var/run/secrets/rtf-object-store/persistence-gateway-creds 2021/04/09 16:35:35 Successfully connected to the PostgreSQL backend. 192.168.2.101 - - [09/Apr/2021:16:35:55 +0000] "GET /api/v1/status/ready HTTP/1.1" 200 2 "" "kube-probe/1.18+"
下のテンプレート例を使用して、Kubernetes カスタムリソースを作成します。このカスタムリソースにより、Kubernetes クラスターがデータストアに接続できます。
apiVersion: rtf.mulesoft.com/v1 kind: PersistenceGateway metadata: name: default namespace: rtf spec: objectStore: backendDriver: postgresql maxBackendConnectionPool: 20 replicas: 2 secretRef: name: persistence-gateway-creds resources: limits: cpu: 250m memory: 250Mi requests: cpu: 200m memory: 75Mi
環境に基づいて次の項目を変更します。
項目 | 説明 | デフォルト値 |
---|---|---|
|
カスタムリソースの種別。サポートされる値は |
PersistenceGateway |
|
このカスタムリソースの内部識別子。この項目の値は |
default |
|
シークレットが適用される名前空間。サポートされる値は |
rtf |
|
データストアで使用するドライバー。 |
postgresql |
|
データストアに対して同時に開いている最大接続数。 |
20 |
|
永続性ゲートウェイのレプリカの数。 |
2 |
|
永続性ゲートウェイポッドの CPU リソースの制限。 |
250m |
|
永続性ゲートウェイポッドのメモリリソースの制限。 |
150Mi |
|
永続性ゲートウェイポッドの CPU リソース要求。 |
200m |
|
永続性ゲートウェイポッドのメモリリソース要求。 |
75Mi |
|
Kubernetes シークレットファイルで定義された永続性ゲートウェイのログイン情報の名前。 |
persistence-gateway-creds |
デフォルトの CPU、メモリ、制限の値は少数のデプロイ済み Mule アプリケーションに基づきます。環境の要求に基づいてこれらの値を変更してください。 |