Dapr 拡張機能のインストール エラーのトラブルシューティング

この記事では、Microsoft Azure Kubernetes Service (AKS) または Arc for Kubernetes 用の分散アプリケーション ランタイム (Dapr) 拡張機能をインストールまたは更新するときに表示される一般的なエラー メッセージについて説明します。

シナリオ 1: インストールが失敗するが、エラー メッセージが表示されない

拡張機能を作成または更新するときにエラー メッセージが生成された場合は、 az k8s-extension list コマンドを実行して、作成が失敗した場所を調べることができます。

az k8s-extension list --resource-group <my-resource-group-name> \
    --cluster-name <my-cluster-name> \
    --cluster-type managedClusters

などの global.ha=false 構成設定で間違ったキーが使用されている場合は、次の global.ha.enabled=falseJSON 状態が返されます。 エラー メッセージが プロパティに message キャプチャされます。

"statuses": [
  {
    "code": "InstallationFailed",
    "displayStatus": null,
    "level": null,
    "message": "Error: {failed to install chart from path [] for release [dapr-1]: err [template: dapr/charts/dapr_sidecar_injector/templates/dapr_sidecar_injector_poddisruptionbudget.yaml:1:17: executing \"dapr/charts/dapr_sidecar_injector/templates/dapr_sidecar_injector_poddisruptionbudget.yaml\" at <.Values.global.ha.enabled>: can't evaluate field enabled in type interface {}]} occurred while doing the operation : {Installing the extension} on the config",
    "time": null
  }
],

JSON エラー メッセージの別の例を次に示します。

"statuses": [
  {
    "code": "InstallationFailed",
    "displayStatus": null,
    "level": null,
    "message": "The extension operation failed with the following error: unable to add the configuration with configId {extension:microsoft-dapr} due to error: {error while adding the CRD configuration: error {failed to get the immutable configMap from the elevated namespace with err: configmaps 'extension-immutable-values' not found }}. (Code: ExtensionOperationFailed)",
    "time": null
  }
]

解決策 1: クラスターを再起動する、サービス プロバイダーを登録する、または Dapr を削除して再インストールする

この問題を解決するには、次の方法を試してください。

シナリオ 2: 対象となる Dapr バージョンが存在しない

特定のバージョンを対象として Dapr 拡張機能をインストールしようとすると、Dapr バージョンが存在しないことを示すエラー メッセージが表示されます。

(ExtensionOperationFailed)拡張機能の操作は、次のエラーで失敗しました: 指定された値から拡張機能のバージョンを解決できませんでした。

コード: ExtensionOperationFailed

メッセージ: 拡張機能の操作が失敗し、次のエラーが発生しました。 指定された値から拡張機能のバージョンを解決できませんでした。

解決策 2: サポートされている Dapr バージョン用にもう一度インストールする

拡張機能をインストールするには、もう一度お試しください。 サポートされているバージョンの Dapr を使用していることを確認します。

シナリオ 3: 対象となる Dapr バージョンは存在しますが、指定されたリージョンには存在しません

一部のバージョンの Dapr はすべてのリージョンで使用できないため、次のエラー メッセージが表示される場合があります。

(ExtensionTypeRegistrationGetFailed)拡張機能の種類 microsoft.dapr はリージョン <のリージョン名>に登録されていません。

コード: ExtensionTypeRegistrationGetFailed

メッセージ: 拡張機能の種類 microsoft.dapr がリージョン <名に登録されていません>

解決策 3: 別のリージョンにインストールする

Dapr バージョンがサポートされているリージョンにインストールします

シナリオ 4: Dapr が既にインストールされている

AKS または Arc for Kubernetes の Dapr 拡張機能をインストールしようとすると、名前空間が既に存在することを示すエラー メッセージが dapr-system 表示されます。 このエラー メッセージは、次のテキストのようになります。

(ExtensionOperationFailed)拡張機能の操作は次のエラーで失敗しました: エラー: {failed from path [] for release [dapr-ext]: err [rendered manifests contain a resource that already exists. インストールを続行できません: 名前空間 "dapr-system" の ServiceAccount "dapr-operator" が存在し、現在のリリースにインポートできません: 無効な所有権メタデータ。注釈検証エラー: キー "meta.helm.sh/release-name" は "dapr-ext"と等しい必要があります:現在の値は "dapr"]} 操作中に発生しました: {installing the extension} on the config

解決策 4: 最初に Dapr OSS をアンインストールする

Dapr 拡張機能をインストールする前に、Dapr OSS をアンインストールします。 詳細については、「 Dapr OSS から AKS の Dapr 拡張機能への移行」を参照してください。

シナリオ 5: 配置サーバー ポッドの状態が悪い

次のエラーが発生します。

0/4 ノードを使用できます。1 ノードが予定外で、3 ノードでボリューム ノードアフィニティの競合が発生しました。 preemption: 0/4 ノードを使用できます。4 つのプリエンプションは、スケジュール設定には役立ちません。

この問題は、配置サーバー ポッドが、配置サーバー ポッド自体とは異なるゾーンで作成された永続ボリュームを使用しようとしたときに発生する可能性があります。

解決策 5: 複数の可用性ゾーンに Dapr をインストールするか、配置サービスを特定の可用性ゾーンに制限する

この問題を解決するには、以下のいずれかの方法を使用します。

  • HA モードの場合は、「複数の可用性ゾーンに Dapr をインストールする」の推奨される方法に従ってください。

  • カスタム ストレージ クラスを作成し、配置サービスに使用することで、配置サービスを特定の可用性ゾーンに制限し、次のコマンドを実行します。

    az k8s-extension create --cluster-type managedClusters
    --cluster-name <clustername>
    --resource-group <resourcegroup>
    --name <name>
    --extension-type Microsoft.Dapr
    --auto-upgrade-minor-version <minorversion>
    --version <version>
    --configuration-settings "dapr_placement.volumeclaims.storageClassName=zone-restricted"
    

    カスタム ストレージ クラスを作成する例を次に示します。

    kind: StorageClass
    apiVersion: storage.k8s.io/v1
    metadata:
     name: zone-restricted
    provisioner: disk.csi.azure.com
    reclaimPolicy: Delete
    allowVolumeExpansion: true
    volumeBindingMode: WaitForFirstConsumer
    allowedTopologies:
    - matchLabelExpressions:
     - key: topology.kubernetes.io/zone
       values:
       - centralus-1
    parameters:
     storageaccounttype: StandardSSD_LRS
    

次の手順

インストールの問題が解決しない場合は、 AKS トラブルシューティング ガイドDapr OSS トラブルシューティング ガイドを参照してください

サードパーティの情報に関する免責事項

この資料に記載されているサードパーティ製品は、マイクロソフトと関連のない他社の製品です。 明示的か黙示的かにかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。