AWS EC2实例中的Kubernetes仪表板?

时间:2018-11-17 19:24:49

标签: amazon-web-services docker amazon-ec2 kubernetes

我已经启动了2个ubuntu 16 EC2实例(一个用于master,另一个用于worker)。一切正常。 我需要设置仪表板才能在计算机上查看。我已经复制了admin.ctl并在机器的终端中执行了脚本

source[]

一切都很好。 但是在浏览器中,当我使用以下链接

 kubectl --kubeconfig ./admin.conf proxy --address='0.0.0.0' --port=8002 --accept-hosts='.*' 

我收到错误消息:“拨号TCP 192.168.1.23:8443:I/O超时” 尝试到达:“ https://192.168.1.23:8443/

我已在AWS安全策略中启用了所有流量。我想念什么?请给我解决办法

3 个答案:

答案 0 :(得分:1)

如果您只想访问仪表板,则非常简单,获取EC2实例的IP地址以及为其提供仪表板的端口(CrHrs),然后使用以下方法进行访问: 首先:

kubectl get services --all-namespaces

在你的浏览器中:

kubectl proxy --address 0.0.0.0 --accept-hosts '.*'

请注意,这可能是一个安全漏洞,因为您正在接受所有流量(AWS防火墙规则)以及http://<IP>:<PORT>/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/loginkubectl proxy)的所有连接,因此请缩小范围它下来或使用不同的方法。如果您还有其他问题,请随时提出。

答案 1 :(得分:0)

您是否尝试过将http://放在 localhost 前面?

我没有足够的代表发表评论,否则我会发表评论。

答案 2 :(得分:0)

用于使用令牌绕过仪表板。您必须执行以下代码

cat <<EOF | kubectl create -f -
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: kubernetes-dashboard
  labels:
    k8s-app: kubernetes-dashboard
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: kubernetes-dashboard
  namespace: kube-system
EOF

此后,您可以跳过而不提供令牌。但这会导致安全问题。