kubernetes - 如何使用 yml 文件在 K8S(Minikube)上公开一个简单的 rabbitmq 部署?
问题描述
我正在尝试公开我的 RabbitMQ 部署并在我的浏览器上访问它。对于部署,我创建了以下 yml:
apiVersion: apps/v1
kind: Deployment
metadata:
name: blur-rabbitmq
labels:
app: blur-rabbitmq
spec:
replicas: 1
selector:
matchLabels:
app: blur-rabbitmq
template:
metadata:
labels:
app: blur-rabbitmq
spec:
containers:
- name: blur-rabbitmq
image: rabbitmq:3-management
ports:
- containerPort: 15672
对于以下服务:
apiVersion: v1
kind: Service
metadata:
name: blur-service
labels:
app: blur-rabbitmq
spec:
selector:
app: blur-rabbitmq
type: NodePort
ports:
- port: 8080
protocol: TCP
targetPort: 15672
创建部署和服务后,我希望在 localhost:8080 上访问 RabbitMQ 的主页,但它无法正常工作。我错过了什么?任何想法?
解决方案
您需要通过端口将本地端口转发到集群,kubectl port-forward
或者您需要创建一个Ingress对象以将公共 IP 映射到集群内的服务端点。
基本上,集群有自己的内部网络,你需要指示 Kubernetes “打一个洞”,让你从外部访问该网络内的服务端点。
推荐阅读
- python - 无法仅从网页的 pdf 文件中的表中获取名称
- jquery - 什么对话框淡出,然后又重新出现?
- python - 删除后Python sqlalchemy返回值
- java - 从 com.relevantcodes.extentreports.ExtentReports 中删除测试方法
- angular7 - 如何在 subscribe() 方法中的 ngOnInIt() 方法初始化的离子模板中使用变量?
- shell - 使用 awk 传递第一列的特定字符串值,如果它不存在那么应该传递 0 而不是 NULL?
- c++ - 存储多种颜色并从一种颜色切换到另一种颜色
- javascript - 如何在浏览器中显示PPT?
- android-studio - 如何解决“无法解析 com.shawnlin:number-picker:2.4.8。” Android Studio 中的错误
- matlab - 请指导我拆分图像