kubernetes - 在Kubernetes内运行仪表板

标签 kubernetes kubernetes-play

我正在尝试在play-with-kubernetes中启动仪表板

我正在运行的命令:

启动管理节点

kubeadm init --apiserver-advertise-address $(hostname -i)

启动网络
kubectl apply -n kube-system -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"

允许主人持有节点(?)
kubectl taint nodes --all node-role.kubernetes.io/master-

等到dns启动
kubectl get pods --all-namespaces

加入节点(从管理员启动复制,而不是从此处复制)
kubeadm join --token 43d52c.d72308004d523ac4 10.0.21.3:6443

下载并运行仪表板
curl -L -s https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml  | sed 's/targetPort: 8443/targetPort: 8443\n  type: NodePort/' | \
    kubectl apply -f -

很遗憾,仪表板不可用。
我应该怎么做才能在Kubernetes内正确部署它?

最佳答案

您需要仪表板才能工作。因此也执行以下命令:

kubectl apply -f https://github.com/kubernetes/heapster/raw/master/deploy/kube-config/rbac/heapster-rbac.yaml
kubectl apply -f https://github.com/kubernetes/heapster/raw/master/deploy/kube-config/influxdb/heapster.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/heapster/master/deploy/kube-config/influxdb/influxdb.yaml

另外,除非您想摆弄身份验证,否则需要授予仪表板管理员权限,如下所示:
kubectl create clusterrolebinding insecure-dashboard --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard

最终会出现一个端口链接(30xxx),但您需要将url方案从http更改为https-并说服浏览器您不关心不安全的证书。

您现在应该拥有一个正常工作的仪表板。小菜一碟 ;)

关于kubernetes - 在Kubernetes内运行仪表板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46906977/

相关文章:

docker - GCE 持久化磁盘、kubernetes 和数据持久化

kubernetes - 带有Calico CNI节点的Kubernetes 1.17容器1.2.0未加入主节点

kubernetes - 删除ServiceInstance的ClusterServiceClass后,为什么不能删除它们?

kubernetes - Kubernetes 中的默认负载平衡

kubernetes - Kubernetes从外部播放仪表板访问

json - Keycloak记录到JSON格式消息字段