首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能从所有节点发送K8S ClientIP服务

不能从所有节点发送K8S ClientIP服务
EN

Stack Overflow用户
提问于 2018-04-30 15:38:11
回答 1查看 2.1K关注 0票数 1

当我试图在集群中公开一个服务时,我正在与K8S网络做斗争。特别是,我需要部署一个私有容器注册中心(通过K8S)并将其公开为clusterIP服务。

为了做到这一点,我跟踪了这个文章

目前,我不需要任何特定的卷,我只想公开集群中的服务。

这是POD yml文件:

代码语言:javascript
复制
apiVersion: v1
kind: Pod
metadata:
  name: registry
  labels:
    app: registry
  namespace: default
spec:
  containers:
  - name: registry
    image: registry:2
    imagePullPolicy: Always
    ports:
      - containerPort: 5000

这是我的服务文件:

代码语言:javascript
复制
---
kind: Service
apiVersion: v1
metadata:
  name: registry
  namespace: default
spec:
  selector:
    app: registry
  ports:
    - port: 5000
      targetPort: 5000

两个对象都是通过kubectl create -f <FILE_NAME>创建的。

这些是我公开的服务

代码语言:javascript
复制
NAME         TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)    AGE
kubernetes   ClusterIP   10.43.0.1       <none>        443/TCP    55m
registry     ClusterIP   10.43.198.164   <none>        5000/TCP   10m

虽然这是我的服务描述列表

代码语言:javascript
复制
Name:              kubernetes
Namespace:         default
Labels:            component=apiserver
                   provider=kubernetes
Annotations:       <none>
Selector:          <none>
Type:              ClusterIP
IP:                10.43.0.1
Port:              https  443/TCP
TargetPort:        6443/TCP
Endpoints:         172.31.5.173:6443
Session Affinity:  ClientIP
Events:            <none>


Name:              registry
Namespace:         default
Labels:            <none>
Annotations:       <none>
Selector:          app=registry
Type:              ClusterIP
IP:                10.43.198.164
Port:              <unset>  5000/TCP
TargetPort:        5000/TCP
Endpoints:         10.42.1.4:5000
Session Affinity:  None
Events:            <none>

当我在部署pod的同一个节点上运行telnet 10.43.198.164 5000时,一切正常,而如果我在另一个节点(它是一个2节点集群)启动它,则命令将保持附加。

节点是具有ec2 7的AWS CentOS实例。

Kubernetes的版本为1.8.3,通过牧场主RKE部署

我发现了这个问题的几个问题,但没有什么能帮助我调查这个问题。

在这里,您可以找到用于实例化集群的已使用的RKE配置文件。

代码语言:javascript
复制
#{{ ansible_managed }}

nodes:
  - address: node1
    user: user
    role: [controlplane,worker,etcd]
    ssh_key_path: path
  - address: node2
    user: user
    role: [worker]
    ssh_key_path: path

ignore_docker_version: false

kubernetes_version: v1.10.1
network:
  plugin:flannel

有什么帮助吗?谢谢。

EN

回答 1

Stack Overflow用户

发布于 2018-04-30 16:10:12

我不认为这个问题与码头登记有关。好像是在网络层。

调试问题:

  • 你用什么CNI插件?
  • 你能直接到达豆荚(telnet 10.42.1.4 5000)吗?
  • 您的节点(kubectl get nodes)和系统荚(kubectl -n kube-system get pods)准备好了吗?
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50103798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档