我刚刚开始使用kubernetes,并且对它有基本的了解。我在本地计算机上使用kubeadm创建了一个群集,该群集具有2个节点和一台主虚拟机。
我使用此配置创建了一个简单的部署和LoadBalancer服务作为参考。
apiVersion: v1
kind: Service
metadata:
name: helloworld-http
spec:
type: LoadBalancer
ports:
- port: 8080
targetPort: 80
externalIPs:
- 192.168.56.101
selector:
run: helloworld
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
run: helloworld
name: helloworld-deploy
spec:
replicas: 2
selector:
matchLabels:
run: helloworld
template:
metadata:
labels:
run: helloworld
spec:
containers:
- image: tutum/hello-world
name: helloworld
ports:
- containerPort: 80
一切正常,我可以通过主机上的helloworld-deploy
服务访问helloworld-http
。
现在我要尝试的是使用this配置安装kubernetes-dashboard。我要更新
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
ports:
- port: 443
targetPort: 8443
selector:
k8s-app: kubernetes-dashboard
服务配置与上面的参考配置相同,因此我可以在没有kubectl proxy
的情况下访问主机上的仪表板。这是我正在尝试用原始配置替换的配置。
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
type: LoadBalancer
ports:
- port: 443
targetPort: 8443
externalIPs:
- 192.168.56.101
selector:
k8s-app: kubernetes-dashboard
我将服务类型更新为LoadBalancer
并为其分配了外部IP。但这行不通。我也曾尝试将端口更改为80,但没有运气。我不知道仪表板配置是否属于这种情况,或者我缺少某些内容。任何帮助和建议都将受到赞赏。