3

我有一个服务类型为 LoadBalancer 的 nginx 部署。我有一个可以从主节点和工作节点访问的外部 IP。我无法从浏览器访问它。

我错过了什么?

4

2 回答 2

5

您可以按照以下步骤从浏览器访问它。

  1. 通过执行以下 YAML 文件在您的 Kubernetes 环境中部署 Nginx。

    kubectl create -f {YAML 文件位置}

apiVersion: apps/v1
kind: Deployment
metadata:
 name: nginx-deployment
 labels:
   app: nginx
spec:
 replicas: 3
 selector:
   matchLabels:
     app: nginx
 template:
   metadata:
     labels:
       app: nginx
   spec:
     containers:
     - name: nginx
       image: nginx:1.14.2
       ports:
       - containerPort: 80

在此处输入图像描述

  1. 在 nginx-service YAML 下面执行以从浏览器访问它。

    kubectl create -f {YAML 文件位置}

#Service
#nginx-svc-np.yaml
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
  labels:
    app: nginx
spec:
  selector:
    app: nginx
  type: LoadBalancer
  ports:
  - port: 80
    targetPort: 80
  externalIPs:
    - 192.168.1.155

在此处输入图像描述

  1. 现在您可以从浏览器访问 Nginx。

    http://192.168.1.155/ (请使用你的外网IP)

在此处输入图像描述

于 2020-10-19T06:48:57.453 回答
0

我也有过同样的情况。但我正在运行 minikube。所以,改变 minikube 驱动程序帮助了我。

于 2020-10-19T19:34:49.567 回答