家里的 Kong Ingress Controller

Kong Ingress Controller at Home

我正在学习 Kubernetes 和入口控制器,但是当我尝试应用 kong 入口清单时我遇到了这个错误...

ingress-kong-7dd57556c5-bh687   0/2     Init:0/1   0          29s
kong-migrations-gzlqj           0/1     Init:0/1   0          28s
postgres-0                      0/1     Pending    0          28s

是否可以在没有 minikube 的情况下 运行 在我的家庭服务器上进入这个入口?如果可以,怎么做?

注意:我有一个 FQDN 指向我的家庭服务器。

我猜你 运行 来自 Github

Pods

的问题

我已经转载了你的案例。因为你有 3 pods,你已经使用了 DB 的选项。 如果您将描述 pods 使用 $ kubectl describe pod <podname> -n kong 您将收到错误输出:

Events:
  Type     Reason            Age               From               Message
  ----     ------            ----              ----               -------
  Warning  FailedScheduling  7s (x4 over 17s)  default-scheduler  pod has unbound immediate PersistentVolumeClaims (repeated 2 times)

您还可以在 kong 命名空间中查看 job。 它在新的 Minikube 集群上正常工作,所以我猜你可能会对存储类应用相同的更改。

是否可以在没有 minikube 的情况下 运行 在我的家庭服务器上进入这个入口?如果是,怎么办?

你必须使用 Kubernetes 来做。由于 Minikube 支持 LoadBalancer,您可以在 Home 中使用它。 您可以检查 关于 FQDN。如前所述:

The host machine should be able to resolve the name of that FQDN. You might add a record into the /etc/hosts at the Mac host to achieve that: 10.0.0.2 mydb.mytestdomain

但在您的情况下,它应该是 LoadBalancerkong-proxy.

的 IP 地址

在Minikube中获取LoadBalancer IP

如果您将正确部署所有内容,您可以检查您的服务。 $ kubectl get svc -n kong 您将看到带有 <pending> EXTERNAL-IP 的 LoadBalancer 类型的 kong-proxy 服务。 要获得 ExternalIP,您必须使用 minikbue tunnel

请注意,您需要在一台主机上一直使用 $ sudo minikube tunnel 运行。

Minikube隧道之前

$ kubectl get svc -n kong
NAME                      TYPE           CLUSTER-IP       EXTERNAL-IP   PORT(S)                      AGE
kong-proxy                LoadBalancer   10.110.218.74    <pending>     80:31881/TCP,443:31319/TCP   103m
kong-validation-webhook   ClusterIP      10.108.204.137   <none>        443/TCP                      103m
postgres                  ClusterIP      10.105.9.54      <none>        5432/TCP                     103m

之后

$ kubectl get svc -n kong
NAME                      TYPE           CLUSTER-IP       EXTERNAL-IP     PORT(S)                      AGE
kong-proxy                LoadBalancer   10.110.218.74    10.110.218.74   80:31881/TCP,443:31319/TCP   104m
kong-validation-webhook   ClusterIP      10.108.204.137   <none>          443/TCP                      104m
postgres                  ClusterIP      10.105.9.54      <none>          5432/TCP                     104m

试金刚

Here you can find how to get start with Kong. It will show you how to create Ingress. Later as I mentioned you have to edit ingress and add rule (host) similar like in K8s docs.