【问题标题】:What is the kubectl equivalent commands to "minikube service <service name>"?“minikube service <service name>”的 kubectl 等效命令是什么?
【发布时间】:2020-05-06 05:32:36
【问题描述】:

我已经执行了minikube service mynginx1,结果是:

 |-----------|----------|-------------|-----------------------------|
 | NAMESPACE |   NAME   | TARGET PORT |             URL             |
 |-----------|----------|-------------|-----------------------------| 
 | default   | mynginx1 | 8080-80     | http://192.168.85.153:31706 |
 |-----------|----------|-------------|-----------------------------|

什么是 kubectl 等效命令,以便在我不使用 minikube 时检索 URL?

【问题讨论】:

  • 我还在一个主节点和两个从节点上使用 kubectl 创建了一个服务,并创建了相同的 mynginx1 服务。但是,我无法使用主节点的 IP 地址和 NodePort 30980 连接到“欢迎使用 Nginx”。在 Minikube 上我可以。我不知道要采取什么其他步骤。

标签: command kubectl minikube equivalent


【解决方案1】:

要公开 k8s 应用程序,您可以使用 kubectl expose 创建service of type NodePort:

kubectl expose pod <pod_name> --type NodePort --port 8080

或

kubectl expose deployment <deployment_name> --type NodePort --port 8080

那么当您列出您的服务时,您会看到:

$ kubectl get services
NAME           TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
<service_name> NodePort    10.99.147.24   <none>        8080:31208/TCP   3s

请注意 PORT 列下的两个端口:8080:31208/TCP。第一个是集群内端口,第二个是节点端口。所以现在您可以使用 nodePort 访问您的服务,使用:&lt;node-IP&gt;:31208 从集群外部。

还有另一个选项仅适用于您在云环境中运行并且支持 LoadBalancers(因此,如果您使用 k8s 作为服务解决方案或在配置了云提供商的云中运行自托管 k8s)。 您可以创建一个service of type LoadBalancer,如下所示:

kubectl expose pod <pod_name> --type LoadBalacer --port 8080
$ kubectl get services
NAME             TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
<service_name>   LoadBalancer   10.107.151.19   x.x.x.x       8080:31111/TCP   2s

现在使用 EXTERNAL-IP 地址连接到您的服务:x.x.x.x:8080

【讨论】:

  • 您好,我使用了“kubectl expose deployment...”并收到 404 错误。至少它是一个改进,但我仍然没有得到“欢迎使用 Nginx”页面。我使用了主节点的 IP 地址,端口是“31216”。即 http://:31216.
  • 如果你从 nginx 收到 404 则不再是 kubernetes 问题,而是 nginx 问题。请检查您的 nginx 配置。如果您有任何 nginx 问题,您可以针对这个非常具体的问题在 stackoverflow 上发布一个新问题。
【解决方案2】:

端口转发为我工作

kubectl port-forward deployment/es-manual 9200:9200

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-16
    • 2021-12-08
    • 1970-01-01
    • 2018-04-24
    • 2022-01-23
    • 1970-01-01
    • 2011-10-16
    相关资源
    最近更新 更多