开发者社区> 问答> 正文

Kubernetes服务运行良好,但无法从外面访问

我正在尝试使用kubernetes在mongo数据库和nodejs应用程序之间进行通信。一切都运行良好。但我无法从外部环境访问我的api。我也无法telnet端口。

apiVersion: v1
kind: Service
metadata:
name: node
labels:

app: node
tier: backend

spec:
type: NodePort
ports:

- port: 3000
  nodePort: 30005

externalIPs:

- 34.73.154.127 

# # Replace with the IP of your minikube node / master node
# selector:
# app: node
# tier: backend
这是我的服务yaml文件

当我使用命令检查端口的状态时,
sudo lsof -i:30005
我能够看到如下结果

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
kube-prox 2925 root 8u IPv6 32281 0t0 TCP *:30005 (LISTEN)
现在我应该可以使用ip远程登录端口,
telnet 34.73.154.127 30005 但是我得到的结果如下所示。

Trying 34.73.154.127...
telnet: Unable to connect to remote host: Connection refused
如果我的任何朋友打算建议端口未打开,请注意我已经从任何地方打开了所有端口范围。

还有一件事我想让你知道我在端口30006上使用npm本地部署了一个示例节点应用程序,我能够在这个端口上进行telnet。所以结论是所有端口范围都是开放和有效的。

这是服务
kubectl describe service/node 结果的describe命令结果:

Name: node
Namespace: default
Labels: app=node

                      tier=backend

Annotations: kubectl.kubernetes.io/last-applied-configuration:

                        {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app":"node","tier":"backend"},"name":"node","namespace":"defau...

Selector:
Type: NodePort
IP: 10.102.42.145
External IPs: 34.73.154.127
Port: 3000/TCP
TargetPort: 3000/TCP
NodePort: 30005/TCP
Endpoints:
Session Affinity: None
External Traffic Policy: Cluster
Events:
有什么问题吗.

ENVIRONMENT:
cloud :google cloud platform
container :using docker and kubernetes
ubuntu 16.04 LTS
kubernetes 1.13.0

展开
收起
k8s小能手 2019-02-22 15:49:22 4875 0
1 条回答
写回答
取消 提交回答
  • 整合最优质的专家资源和技术资料,问答解疑

    在我的服务yaml文件中取消注释它,可以工作

    Replace with the IP of your minikube node / master node

    # selector:
    # app: node
    # tier: backend

    2019-07-17 23:29:10
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
ACK 云原生弹性方案—云原生时代的加速器 立即下载
ACK集群类型选择最佳实践 立即下载
企业运维之云原生和Kubernetes 实战 立即下载

相关镜像