簡體   English   中英

更新至k8s v1.11后,出現錯誤:“無法運行Kubelet:無法初始化雲提供程序“ azure”:未為AAD應用程序提供憑據”

[英]Getting error: “failed to run Kubelet: could not init cloud provider ”azure“: No credentials provided for AAD application” after updating to k8s v1.11

我正在使用在Azure VMSS上運行的k8s群集,並且剛剛在群集部署上測試了升級到k8s v1.11的過程。 但是,突然之間我的Azure JSON配置文件(對於v1.10.4而言運行良好)似乎沒有被Kubelet檢測到。 Kubelet無法繼續執行並出現錯誤:

failed to run Kubelet: could not init cloud provider "azure": No credentials provided for AAD application

azure.json和以前一樣位於/etc/kubernetes/ ,看起來像這樣:

{
  "vmType": "vmss",
  "tenantId": "<tenant_id>",
  "aadTenantId": "<aad_tenant_id>",
  "aadClientId": "<aad_client_id>",
  "aadClientSecret": "<aad_client_secret>",
  "subscriptionId": "<subscription_id>",
  "resourceGroup": "kubitest1",
  "primaryScaleSetName":"kubitest1-node",
  "vnetName": "kubitest1",
  "vnetResourceGroup": "kubitest1",
  "subnetName": "kubitest1-master",
  "securityGroupName": "kubitest1",
  "location": "northeurope"
}

我在v1.11的發行說明中注意到,它們指定了以下內容:

包含大小寫不正確的字段的JSON配置文件將不再有效。 升級之前,您必須更正這些文件。 在直接API服務器通信期間在JSON資源定義中指定鍵時,鍵區分大小寫。 Kubernetes 1.8中引入的錯誤導致API服務器接受大小寫不正確的請求,並強制其糾正大小寫,但是此行為已在1.11中修復,API服務器將再次執行正確的大小寫。 值得注意的是,在此期間,kubectl工具繼續執行區分大小寫的鍵,因此使用kubectl嚴格管理資源的用戶將不受此更改的影響。 (#65034,@caesarxuchao)

但是,據我所知,azure.json不包含大小寫不正確的字段。

升級到k8s 1.11后,還有其他人遇到此錯誤嗎?

似乎aadTenantId選項中斷了配置文件(azure.json)的解析。

我在config的可用選項中沒有找到這樣的選項:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM