銀の光と碧い空

クラウドなインフラとC#なアプリ開発の狭間にいるエンジニアの日々

Azure CLIを使ってaz aks createでOperation failed with status: 'Bad Request'.と出たときの対処

Azure CLIでログインはできていて他のコマンドはうまく動くのにaz aks createだけ次のようなエラーが出ることがあります。

Operation failed with status: 'Bad Request'. Details: The credentials in ServicePrincipalProfile were invalid. Please see https://aka.ms/aks-sp-help for more details. (Details: adal: Refresh request failed. Status Code = '401'. Response body: {"error":"invalid_client","error_description":"AADSTS7000222: The provided client secret keys are expired. Visit the Azure Portal to create new keys for your app, or consider using certificate credentials for added security: https://docs.microsoft.com/azure/active-directory/develop/active-directory-certificate-credentials\r\nTrace ID: <UUID>\r\nCorrelation ID: <UUID>\r\nTimestamp: 2021-05-27 14:19:46Z","error_codes":[7000222],"timestamp":"2021-05-27 14:19:46Z","trace_id":"<UUID>","correlation_id":"<UUID>","error_uri":"https://login.microsoftonline.com/error?code=7000222"} Endpoint https://login.microsoftonline.com/<UUID>/oauth2/token?api-version=1.0)

ここにあります。

docs.microsoft.com

AKS クラスターのサービス プリンシパルの資格情報は、Azure CLI によってキャッシュされます。 これらの資格情報が期限切れになると、AKS クラスターのデプロイ中にエラーが発生します。

ただ、この手順で確認するコマンドといっているls -laは最終更新日なのでどうもこれを見ても確認できなさそうです。とりあえず$HOME/.azure/aksServicePrincipal.jsonファイルを削除してaz aks createコマンドを再実行したところうまく動きました。