尝试在kubernetes中运行weave-network-plugin

时间:2018-07-15 15:51:03

标签: kubernetes weave

首先,我想说我是kubernetes主题的初学者,当我给服务赋予固定IP时,我遇到了无法通过服务到达pod的问题,想总结一下我认为我已经理解的事情,也许这里的某人可以纠正我或知道我解决问题的方式。

我将带有ansible-script kubespray的集群部署在裸机(带有CentOS 7的2个节点)上,并按如下方式配置脚本和生成的集群:

  • 代理模式:ipvs
  • 服务网络:10.0.0.0/24
  • pod-network:10.0.1.0/24
  • 网络插件:编织网
  • dns_mode:dnsmasq_kubedns

在成功部署之后,我可以将pod,服务,机密等部署到集群,因此对我来说似乎可以正常工作,但是当我现在定义一个外部IP时,例如:

apiVersion: v1
kind: Service
metadata:
  name: nginx
spec:
  ports:
  - port: 80
  selector:
    name: nginx
  externalIPs:
  - "192.168.1.42"
---
apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    name: nginx
spec:
  containers:
  - name: gluster-pod1
    image: gcr.io/google_containers/nginx-slim:0.8
    ports:
    - name: web
      containerPort: 80

我可以通过他的内部IP,端点的IP和主服务器的IP到达Pod,但是不能通过为此服务定义的IP到达Pod,当我尝试通过卷曲时得到错误:“否路由到主机”对于我来说,这很奇怪,当我将该服务的IP设置为与kubernetes主站相同的IP时,即

...
spec:
  ports:
  - port: 80
  selector:
    name: nginx
  externalIPs:
  - "192.168.1.1"

我可以到达吊舱。

现在,在阅读了大量文档之后,当我配置自己的负载均衡器以管理外部IP时,该问题就可以解决,因为如果我没有定义固定IP,则该服务的状态为“待处理”外部IP。

但是不幸的是,在阅读完所有文档之后,我不确定体系结构是否真的以此方式工作,我的意思是 pod <->服务<->负载均衡器(<-> DHCP)

所以我可以通过服务到达吊舱。

开始时,我想结束这篇文章,但不确定这是否是解决我的问题的正确方向。因此,如果有人可以确认我或纠正我,我将不胜感激:-) 最好的祝福 丹

0 个答案:

没有答案