Nginx 在<;nodeinternalip>/&书信电报;serviceendpoint>;库伯内特斯星系团

Nginx 在<;nodeinternalip>/&书信电报;serviceendpoint>;库伯内特斯星系团,nginx,kubernetes,Nginx,Kubernetes,我有两个节点集群和一个工作节点。我已经按照文档设置了入口控制器,然后创建了部署、服务(节点端口)和入口对象。我的目标是使用curl-s INTERNAL\u IP/Serviceendpoint来访问服务。实现这一点需要什么配置。这在minikube上非常有效,但在集群上不起作用。 注意-使用:NODEPORT 下面是示例服务和入口对象定义- apiVersion: v1 kind: Service metadata: name: nginx-test1

我有两个节点集群和一个工作节点。我已经按照文档设置了入口控制器,然后创建了部署、服务(节点端口)和入口对象。我的目标是使用curl-s INTERNAL\u IP/Serviceendpoint来访问服务。实现这一点需要什么配置。这在minikube上非常有效,但在集群上不起作用。 注意-使用
:NODEPORT

下面是示例服务和入口对象定义-

    apiVersion: v1
    kind: Service
    metadata:
      name: nginx-test1
      labels:
        app: nginx-test1
    spec:
      ports:
      - port: 80
        protocol: TCP
        targetPort: 80
      selector:
        app: nginx-test1
      type: NodePort
    ---
    apiVersion: networking.k8s.io/v1beta1
    kind: Ingress
    metadata:
      name: nginx-test1
      annotations:
        nginx.ingress.kubernetes.io/rewrite-target: /
    spec:
      rules:
      - http:
          paths:
          - path: /nginx-test1
            backend:
              serviceName: nginx-test1
              servicePort: 80
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      creationTimestamp: null
      labels:
        app: nginx-test1
      name: nginx-test1
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: nginx-test1
      strategy: {}
      template:
        metadata:
          creationTimestamp: null
          labels:
            app: nginx-test1
        spec:
          containers:
          - image: nginx
            name: nginx-test1
            resources: {}
            ports:
            - containerPort: 80
              protocol: TCP

$kubectl get nodes -o wide
NAME           STATUS   ROLES    AGE   VERSION   INTERNAL-IP   EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION       CONTAINER-RUNTIME
controlplane   Ready    master   50m   v1.19.0   172.17.0.10   <none>        Ubuntu 18.04.4 LTS   4.15.0-111-generic   docker://19.3.6
node01         Ready    <none>   49m   v1.19.0   **172.17.0.11**   <none>        Ubuntu 18.04.4 LTS   4.15.0-111-generic   docker://19.3.6

kubectl get svc
NAME          TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
kubernetes    ClusterIP   10.96.0.1       <none>        443/TCP        51m
nginx-test1   NodePort    10.96.244.119   <none>        80:30844/TCP   3m3s


kubectl describe ing
Warning: extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress
Name:             nginx-test1
Namespace:        default
Address:
Default backend:  default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
Rules:
  Host        Path  Backends
  ----        ----  --------
  *
              /nginx-test1   nginx-test1:80   10.244.1.8:80,10.244.1.9:80)
Annotations:  nginx.ingress.kubernetes.io/rewrite-target: /

**curl -s -v 172.17.0.11/nginx-test1**
***   Trying 172.17.0.11...
* TCP_NODELAY set
* connect to 172.17.0.11 port 80 failed: Connection refused
* Failed to connect to 172.17.0.11 port 80: Connection refused
* Closing connection 0**
apiVersion:v1 种类:服务 元数据: 名称:nginx-test1 标签: 应用程序:nginx-test1 规格: 端口: -港口:80 协议:TCP 目标港:80 选择器: 应用程序:nginx-test1 类型:节点端口 --- apiVersion:networking.k8s.io/v1beta1 种类:入口 元数据: 名称:nginx-test1 注释: nginx.ingres.kubernetes.io/rewrite-target:/ 规格: 规则: -http: 路径: -路径:/nginx-test1 后端: 服务名称:nginx-test1 服务端口:80 --- apiVersion:apps/v1 种类:部署 元数据: creationTimestamp:空 标签: 应用程序:nginx-test1 名称:nginx-test1 规格: 副本:2份 选择器: 火柴标签: 应用程序:nginx-test1 策略:{} 模板: 元数据: creationTimestamp:空 标签: 应用程序:nginx-test1 规格: 容器: -图片:nginx 名称:nginx-test1 资源:{} 端口: -集装箱港口:80 协议:TCP $kubectl获取节点-o宽 NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME controlplane Ready master 50m v1.19.0 172.17.0.10 Ubuntu 18.04.4 LTS 4.15.0-111-genericdocker://19.3.6 node01-Ready 49m v1.19.0**172.17.0.11**Ubuntu 18.04.4 LTS 4.15.0-111-genericdocker://19.3.6 kubectl获得svc 名称类型CLUSTER-IP外部IP端口年龄 kubernetes ClusterIP 10.96.0.1 443/TCP 51m nginx-test1节点端口10.96.244.119 80:30844/TCP 3m3s 库贝克 警告:扩展/v1beta1入口在v1.14+中不推荐使用,在v1.22+中不可用;使用networking.k8s.io/v1入口 名称:nginx-test1 名称空间:默认值 地址: 默认后端:默认http后端:80() 规则: 主机路径后端 ---- ---- -------- * /nginx-test1 nginx-test1:80 10.244.1.8:80,10.244.1.9:80) 注释:nginx.ingres.kubernetes.io/rewrite-target:/ **curl-s-v 172.17.0.11/nginx-test1** ***正在尝试172.17.0.11。。。 *TCP_节点集 *连接到172.17.0.11端口80失败:连接被拒绝 *无法连接到172.17.0.11端口80:连接被拒绝 *正在关闭连接0**
您的群集是否部署在任何云提供商上?或者是裸机?我正在KodeCloud和Katacoda集群上尝试。