我已经启动了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安全策略中启用了所有流量。我想念什么?请给我解决办法
答案 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/#!/login
(kubectl 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
此后,您可以跳过而不提供令牌。但这会导致安全问题。