我在Mac OSX上运行CoreOS k8s群集,这意味着它在VirtualBox + Vagrant中运行
我在我的service.yaml文件中:
spec:
type: NodePort
当我输入:
kubectl get services
我明白了:
NAME CLUSTER_IP EXTERNAL_IP PORT(S) SELECTOR
kubernetes 10.100.0.1 <none> 443/TCP <none>
my-frontend 10.100.250.90 nodes 8000/TCP name=my-app
什么是“节点”外部IP?如何从外部访问我的前端?
答案 0 :(得分:18)
除了&#34; NodePort&#34;服务类型还有一些其他方法可以与集群外部的kubernetes服务进行交互:
答案 1 :(得分:7)
我假设你正在使用MiniKube for Kubernetes。在这种情况下,要识别您的节点IP地址,请使用以下命令:
.\minikube.exe ip
如果公开的服务是type = Nodeport,要检查公开的端口,请使用以下命令:
.\kubectl.exe describe service <service-name>
检查结果中的节点端口。此外,如果您想通过漂亮的UI获得所有这些细节,那么您可以在以下地址启动Kubernetes Dashboard:
<Node-ip>:30000
答案 2 :(得分:3)
获取主机端口的最简单方法是The system creates a new task and instantiates the activity at the
root of the new task. However, if an instance of the activity already
exists in a separate task, the system routes the intent to the existing
instance through a call to its onNewIntent() method, rather than
creating a new instance. Only one instance of the activity can exist at a time.
。
将显示节点端口。
您也可以查看api:
kubectl describe services my-frontend
或全部列出:
api/v1/namespaces/{namespace_name}/services/{service_name}
最后,您可以在service.yml
中选择固定的nodePort答案 3 :(得分:1)
以下是节点地址的文档:http://kubernetes.io/docs/admin/node/#addresses
指定服务时,可以指定nodePort的端口号。如果您没有手动指定端口,系统将为您分配一个端口。您可以kubectl get services -o yaml
在spec.ports [*]。nodePort中找到该端口,如此处的文档所示:https://github.com/kubernetes/kubernetes/blob/master/docs/user-guide/services.md#type-nodeport
您可以在{nodes'outternal addresses}:{nodePort}
访问您的前端希望这有帮助。