kubernetes - kong 入口 Controller 对入口资源没有影响

标签 kubernetes kubernetes-ingress kong kubernetes-helm

我有 kubernetes Cluster v1.10 Over Centos 7

我很难安装 Kubernetes

我已经使用 helm 安装了 Kong 入口 Controller

helm repo add stable https://kubernetes-charts.storage.googleapis.com
helm install stable/kong

这个输出
NOTES:
1. Kong Admin can be accessed inside the cluster using:
 DNS=guiding-wombat-kong-admin.default.svc.cluster.local
 PORT=8444

To connect from outside the K8s cluster:
 HOST=$(kubectl get nodes --namespace default -o jsonpath='{.items[0].status.addresses[0].address}')
 PORT=$(kubectl get svc --namespace default guiding-wombat-kong-admin -o jsonpath='{.spec.ports[0].nodePort}')


2. Kong Proxy can be accessed inside the cluster using:
 DNS=guiding-wombat-kong-proxy.default.svc.cluster.local
 PORT=8443


To connect from outside the K8s cluster:
 HOST=$(kubectl get nodes --namespace default -o jsonpath='{.items[0].status.addresses[0].address}')
 PORT=$(kubectl get svc --namespace default guiding-wombat-kong-proxy -o jsonpath='{.spec.ports[0].nodePort}')

我部署了虚拟文件
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: http-svc
spec:
  replicas: 1
  selector:
    matchLabels:
      app: http-svc
  template:
    metadata:
      labels:
        app: http-svc
    spec:
      containers:
      - name: http-svc
        image: gcr.io/google_containers/echoserver:1.8
        ports:
        - containerPort: 8080
        env:
        - name: NODE_NAME
          valueFrom:
            fieldRef:
              fieldPath: spec.nodeName
        - name: POD_NAME
          valueFrom:
            fieldRef:
              fieldPath: metadata.name
        - name: POD_NAMESPACE
          valueFrom:
            fieldRef:
              fieldPath: metadata.namespace
        - name: POD_IP
          valueFrom:
            fieldRef:
              fieldPath: status.podIP

---

apiVersion: v1
kind: Service
metadata:
  name: http-svc
  labels:
    app: http-svc
spec:
  type: NodePort
  ports:
  - port: 80
    targetPort: 8080
    protocol: TCP
  name: http
    selector:
      app: http-svc

---

我部署了 ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: foo-bar
spec:
  rules:
  - host: foo.bar
    http:
      paths:
      - path: /
        backend:
          serviceName: http-svc
          servicePort: 80

当我运行时:
kubectl get ing
NAME      HOSTS     ADDRESS   PORTS     AGE
foo-bar   foo.bar             80        1m

当我浏览
https://node-IP:controller-admin
{"next":null,"data":[]}

如何解决此问题并找到解决方案?

谢谢 :D

最佳答案

我建议使用 this guide 安装它只是不使用 minikube。

它在 AWS 上对我有用:

$ curl -H 'Host: foo.bar' http://35.162.32.30


Hostname: http-svc-66ffffc458-jkxsl

Pod Information:
    node name:  ip-x-x-x-x.us-west-2.compute.internal
    pod name:   http-svc-66ffffc458-jkxsl
    pod namespace:  default
    pod IP: 192.168.x.x

Server values:
    server_version=nginx: 1.13.3 - lua: 10008

Request Information:
    client_address=192.168.x.x
    method=GET
    real path=/
    query=
    request_version=1.1
    request_uri=http://192.168.x.x:8080/

Request Headers:
    accept=*/*
    connection=keep-alive
    host=192.168.x.x:8080
    user-agent=curl/7.58.0
    x-forwarded-for=172.x.x.x
    x-forwarded-host=foo.bar
    x-forwarded-port=8000
    x-forwarded-proto=http
    x-real-ip=172.x.x.x

Request Body:
    -no body in request-

关于kubernetes - kong 入口 Controller 对入口资源没有影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52503569/

相关文章:

kubernetes - 使用 hostNetwork : true 运行 Ingress Controller

kubernetes - Kubernetes集群中的网络网关应用程序可处理和转发网络数据包

ssl - 如何在kong中为API配置ssl

go - 如何让 k8s 按照特定规则分配 gpu/npu 设备

kubernetes - kube-apiserver 在多主集群中未正确进行身份验证

Kubernetes:应用程序的 SAML

kubernetes - 如何通过Kubernetes服务(如网关API)路由到特定的Pod

lua - 在 Lua 项目中管理开发依赖项的推荐方法是什么?

jwt - Kong 和 JWT 不创建消费者

logging - 如何在不打开两个终端并使用 kubectl tail 命令的情况下获取两个 Pod 的日志?