当前位置: 首页 > 知识库问答 >
问题:

从外部接入服务

谷梁存
2023-03-14

我正在尝试用MiniKube在azure VM上从外部运行和访问Hello节点服务。

minikube启动--Driver=VirtualBox

已创建部署

kubectl创建部署hello-node--image=k8s.gcr.io/echoServer

公开部署

kubectl公开部署hello-node--type=loadbalancer--port=8080

假设kubectl get services说:

hello-node LoadBalancer 1.1.1.1 8080:31382/TCP

azure VM的公共IP是2.2.2.2,私有IP是10.10.10.10,virtualbox IP是192.168.99.1/24

如何从群集网络之外的浏览器访问服务?

共有1个答案

宋臻
2023-03-14

在您的例子中,您需要使用--type=nodeport来创建一个公开部署的服务对象。Type=LoadBalancer服务由外部云提供商支持。

kubectl expose deployment hello-node --type=NodePort --name=hello-node-service

显示有关服务的信息:

kubectl describe services hello-node-service

输出应该类似于以下内容:

Name:                   example-service
Namespace:              default
Labels:                 run=load-balancer-example
Annotations:            <none>
Selector:               run=load-balancer-example
Type:                   NodePort
IP:                     10.32.0.16
Port:                   <unset> 8080/TCP
TargetPort:             8080/TCP
NodePort:               <unset> 31496/TCP
Endpoints:              10.200.1.4:8080,10.200.2.5:8080
Session Affinity:       None
Events:                 <none>

获取VM的公共IP地址。然后您可以使用以下URL:

http://<public-vm-ip>:<node-port>

不要忘记在防火墙规则中打开这个端口。

 类似资料:
  • 我需要一些帮助来理解如何编写HTTP路由器,它将HTTP标头识别为路由标准。我找到了链接https://github.com/cgbystrom/netty-tools/blob/master/src/main/java/se/cgbystrom/netty/http/router/RouterHandler.java它似乎自己做路由。但是现在不清楚,如何 连接到另一个HTTP服务器 发送HTTP

  • 假设我有一个不在Kubernetes上托管的服务。我还在kubernetes集群上设置了入口控制器和证书管理器。 因为使用kubernetes入口来控制对服务的访问非常简单,所以我想要一个指向非kubernetes服务的kubernetes入口。 例如,我有一个托管在<代码>https://10.0.40.1:5678(需要ssl,但需要自签名证书),并希望访问服务。实例com。

  • 我想连接到树莓Pi节点。我从网络外部设置的js服务器。 我的路由器声称端口是开放的。我尝试在127.0.0.0、0.0.0.0和我的公共IP地址运行服务器。 我曾尝试使用ngrok打开端口8080,服务器在其中托管一个简单的网页,但尝试访问myIP:8080不起作用。 有人能帮我吗?

  • 此问题与问题类似,但更多是围绕规则中可以配置的路径。 入口应该能够同时处理内部服务和外部服务。外部服务的URL应该类似于超文本传输协议://host_name: 80/es。当用户点击此url时,应该将其重定向到外部服务。 服务定义和入口规则的配置如下,但会导致404。我哪里做错了? 入口规则 服务和endpoint定义 当我尝试使用URL时,它会起作用http://host_name:80以及以

  • 基本上,我的项目是一场战争(MyProject),导入2罐,MyProject-Client和MyProjectJar-API 我的项目 MyProjectJar-API - 有一个接口 MyProject-Client -想要注入在MyProject上生成的ParametroService 我想知道是否可以将ParameterService(在MyProject上生成)注入MyProject客户

  • 我无法从外部访问我的服务。首先,这里是我的conf yaml文件: nginx-pod.yaml nginx-service.yaml metallb-config.yaml 然后我创建了集群。命令 打印: 一切正常,而且< code > ku bectl describe service/nginx-service 打印: curl命令在主服务器打印。接下来我试图从另一个网络打开,它不起作用,但