kubernetes - 收到“错误:无法加载当前 kubeconfig。请确认您的 kubeconfig 有效。” 使用 VS Code Bridge 到 kubernetes 时
问题描述
尝试使用 VS Code 的 Bridge Kubernetes 扩展时,已将 tasks.json 配置如下:
"version": "2.0.0",
"tasks": [
{
"label": "bridge-to-kubernetes.service",
"type": "bridge-to-kubernetes.service",
"service": "frontend",
"ports": [
8080
],
"targetCluster": "minikube",
"targetNamespace": "ecomm-ns"
}
]
}
我的 launch.json 为
"name": "Launch Package with Kubernetes",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${workspaceFolder}",
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "somepath/ecomm-key.json",
},
"preLaunchTask": "bridge-to-kubernetes.service"
}
我得到以下输出:
Target cluster: minikube
Current cluster: minikube
Target namespace: ecomm-ns
Current namespace: ecomm-ns
Target service name: frontend
Target service ports: 8080
Error: Failed to load current kubeconfig. Please confirm that your kubeconfig is valid.
The terminal process terminated with exit code: 1.
Kkubectl 配置视图给了我正确的输出
查看桥接插件的日志,我有以下内容:
2021-02-02T07:40:18.1876210Z | Library | WARNG | Failed to load kubeconfig at '/Users/scaucheteux/.kube/config': (Line: 10, Col: 5, Idx: 1804) - (Line: 10, Col: 6, Idx: 1805): Expected 'MappingStart', got 'SequenceStart' (at Line: 10, Col: 5, Idx: 1804).
我的 kubeconfig 看起来不错,并且被各种 yaml 插件和 kubectl 正确解析:
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJ
server: https://35.205.91.182
name: gke_sca-ecommerce-291313_europe-west1-b_ecomm-demo
- cluster:
certificate-authority: /Users/someuser/.minikube/ca.crt
extensions:
- extension :
last-update: Mon, 01 Feb 2021 15:27:30 CET
provider: minikube.sigs.k8s.io
version: v1.17.1
name: cluster_info
server: https://127.0.0.1:55000
name: minikube
contexts:
- context:
cluster: gke_sca-ecommerce-291313_europe-west1-b_ecomm-demo
namespace: ecomm-ns
user: gke_sca-ecommerce-291313_europe-west1-b_ecomm-demo
name: gke_sca-ecommerce-291313_europe-west1-b_ecomm-demo
- context:
cluster: minikube
extensions:
- extension:
last-update: Mon, 01 Feb 2021 15:27:30 CET
provider: minikube.sigs.k8s.io
version: v1.17.1
name: context_info
namespace: ecomm-ns
user: minikube
name: minikube
current-context: minikube
kind: Config
preferences: {}
users:
- name: gke_sca-ecommerce-291313_europe-west1-b_ecomm-demo
user:
auth-provider:
config:
access-token: ya29.A0A
cmd-args: config config-helper --format=json
cmd-path: /Users/someuser/Devs/gcloud/google-cloud-sdk/bin/gcloud
expiry: "2021-02-01T18:23:02Z"
expiry-key: '{.credential.token_expiry}'
token-key: '{.credential.access_token}'
name: gcp
- name: minikube
user:
client-certificate: /Users/someuser/.minikube/profiles/minikube/client.crt
client-key: /Users/someuser/.minikube/profiles/minikube/client.key
解决方案
阅读其他地方删除扩展修复它为 minikube https://github.com/microsoft/mindaro/issues/111
推荐阅读
- javascript - 在数据表中的导出 excel 上保留小数分隔符
- python - 会话属性 [AWS Lambda / Amazon Alexa Skill]
- c# - 我们可以将数据添加到具有相同分区键和相同行键的表存储中吗
- node.js - ResourceNotFoundException:给定的活动不存在 AWS Personalize
- emacs - 组织模式扩展来为预定的条目/子树着色?
- typo3 - TYPO3 cms-indexed-search 核心扩展缺少 RouteEnhancer?
- spring - java.lang.IllegalStateException:无法在 Spring JPA 单元测试中加载 ApplicationContext
- sql - 为两个不同的输出查询同一列
- javascript - 审计 Node (Javascript) 应用程序实现的工具
- perl - 使用 Perl 获取 UTC/GMT 时间的前一小时