繁体   English   中英

无法从 kubernetes 访问应用程序

[英]unable to access application from kubernetes

我创建了一个简单的 php 应用程序,试图从 kubernetes 集群访问,但我无法访问该应用程序

我的部署.yml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: phpdeployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: phpapp
  template:
    metadata:
      labels:
        app: phpapp
    spec:
      containers:
      - image: rajendar38/myhtmlapp
        name: myhtmlapp
        ports:
        - containerPort: 80

我的服务.yml

apiVersion: v1
kind: Service
metadata:
  name: php-service
spec:
  selector:
    app: myhtmlapp
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
      nodePort: 31000
  type: NodePort

rajendar@HP-EliteBook:~/Desktop/work$ kubectl get services
NAME          TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)        AGE
kubernetes    ClusterIP   10.96.0.1        <none>        443/TCP        26h
my-service    ClusterIP   10.102.235.244   <none>        4000/TCP       24h
php-service   NodePort    10.110.73.30     <none>        80:31000/TCP   22m

当我尝试连接到 http:127.0.0.1:31000/test.html 时,我正在为此应用程序使用 minikube 我无法连接到应用程序

谢谢

拉金达尔

Minikube 使用虚拟机来提供单节点集群。 公开 NodePort 服务时,从 VM 的角度来看,它是本地的,这通常与您的本地计算机不同。

使用minikube ip确定机器的 IP 并使用该 IP 而不是localhost127.0.0.1来访问 minikube 集群上的 NodePort 服务。

目标端口和端口是相同的 80,因此服务使用端口 80 进行尝试

    port: 8000
    targetPort: 80

正如@Thomas 所说,您必须找到 VM 的 IP:

minikube ip

并在您的情况下使用此 IP 和端口 31000 启动服务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM