从不同机器访问 Minikube 部署的 MinIO 服务时遇到困难

问题描述 投票:0回答:1

我已经在 VM(ubuntu 操作系统)中设置了 Minikube,并使用以下 YAML 文件部署了 MinIO:

# Deploys a new Namespace for the MinIO Pod
apiVersion: v1
kind: Namespace
metadata:
  name: minio-dev
  labels:
    name: minio-dev
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: minio
  namespace: minio-dev
  labels:
    app: minio
spec:
  replicas: 1
  template:
    metadata:
      name: minio
      labels:
        app: minio
    spec:
      volumes:
        - name: data
          emptyDir:
            sizeLimit: 500Mi
      containers:
        - name: minio
          image: quay.io/minio/minio:latest
          imagePullPolicy: IfNotPresent
          env:
            - name: MINIO_ACCESS_KEY
              value: "minio"
            - name: MINIO_SECRET_KEY
              value: "minio123"
          livenessProbe:
            httpGet:
              path: /minio/health/live
              port: 9000
            initialDelaySeconds: 120
            periodSeconds: 20
          readinessProbe:
            httpGet:
              path: /minio/health/ready
              port: 9000
            initialDelaySeconds: 120
            periodSeconds: 20
          resources:
            requests:
              memory: "1000Mi"
              cpu: "1000m"
            limits:
              memory: "1500Mi"
              cpu: "1500m"

          volumeMounts:
            - mountPath: /data
              name: data
          command:
            - /bin/bash
            - -c
          args:
              - minio server /data --console-address :9090
      restartPolicy: Always
  selector:
    matchLabels:
      app: minio
---
apiVersion: v1
kind: Service
metadata:
  name: minio
  namespace: minio-dev
spec:
  selector:
    app: minio
  ports:
    - port: 9090
      name: console
      nodePort:30000
    - port: 9000
      name: s3
  type: LoadBalancer

部署后,我使用了

minikube service minio -n minio-dev
命令并获得了以下输出。

命名空间 姓名 目标端口 网址
minio-dev 迷你 控制台/9090 s3/9000 http://192.168.23.2:30000http://192.168.23.2:30415

此外,我运行

minikube tunnel
来公开 LoadBalancer 服务。

虽然我可以在虚拟机浏览器中使用 http://192.168.23.2:30000 访问 MinIO,但我在从另一台计算机(虚拟机外部)访问该服务时遇到困难。

我已经检查了防火墙(允许流量到达30000端口)和Minikube隧道状态(没有错误),但我仍然无法连接。https://stackoverflow.com/a/55462765/5886417我通过以下方式更改了yaml文件根据这个答案添加externalIPs(192.168.23.2)。但我认为这没有什么运气。

有人可以建议如何确保从另一台机器正确地从外部访问 MinIO 服务吗?是否有我可能遗漏的网络或防火墙规则的具体注意事项?

预先感谢您的协助!

kubernetes minikube minio
1个回答
0
投票

将 Hackerman 先生的评论发布为答案:

安装 ngrok,然后运行

ngrok http://192.168.23.2:30000
将该端点公开给其他计算机

© www.soinside.com 2019 - 2024. All rights reserved.