Heapster:未经授权,grafana:未经授权

时间:2018-01-05 09:51:03

标签: kubernetes grafana unauthorized heapster

我部署了heapster + grafana + Influxdb组合。我得到了这样的结果

$kubectl cluster-info
Kubernetes master is running at https://192.168.99.100:8443
Heapster is running at 
https://192.168.99.100:8443/api/v1/namespaces/kube-
system/services/heapster/proxy
monitoring-grafana is running at 
https://192.168.99.100:8443/api/v1/namespaces/kube-
system/services/monitoring-grafana/proxy
monitoring-influxdb is running at 
https://192.168.99.100:8443/api/v1/namespaces/kube-
system/services/monitoring-influxdb/proxy

但是当我尝试在网络浏览器中访问这些服务时,我收到以下错误:

{
  "kind": "Status",
  "apiVersion": "v1",
  "metadata": {
  },
  "status": "Failure",
  "message": "Unauthorized",
  "reason": "Unauthorized",
  "code": 401
}

我不明白为什么会这样。有帮助的朋友吗?

2 个答案:

答案 0 :(得分:1)

好吧,您的浏览器无权访问kubernetes API。最简单的方法是运行将kubectl proxy验证集群以及从localhost到您的kube API的代理API请求。这样,您就可以在127.0.0.1上访问API而无需浏览器端的凭据。

答案 1 :(得分:0)

我解决了这个问题。我使用Nodeport暴露了grafana和heapster。 我在grafana和heapster yaml文件(服务)的规范下添加了以下指令

 type: NodePort

然后我使用以下命令检查了服务列表。

kubectl get services -n kube-system

它显示了暴露的grafana端口和heapster这样的东西。

80:32068/TCP for heapster <br>
80:32230/TCP for grafana<br>

然后我可以使用cluster_IP:port访问grafana和heapster
例如:

for grafana - http://192.168.99.100:32230/
对于heapster - http://192.168.99.100:32068/api/v1/model/namespaces/default/pods/