0

我在几个 RHEL 7.2 虚拟机中安装了一个 K8s 集群。似乎 yum 存储库的安装形式没有插件。

目前,我尝试部署的任何服务几乎都面临以下问题:Jenkins、Kube-ui、influxdb-grafana 端点 IP 不在为 Flannel 定义的范围内,显然这些服务不可用。

关于如何调试\解决问题的任何想法?

系统详情:

# lsb_release -i -r
Distributor ID: RedHatEnterpriseServer
Release:        7.2

安装的软件包:

kubernetes.x86_64               1.2.0-0.9.alpha1.gitb57e8bd.el7
etcd.x86_64                     2.2.5-1.el7
flannel.x86_64                  0.5.3-9.el7
docker.x86_64                   1.9.1-25.el7.centos

ETCD网络配置

# etcdctl get /atomic.io/network/config
{"Network":"10.0.0.0/16"}

服务获得正确的 IP 但错误的端点

# kubectl describe svc jenkinsmaster
Name:                   jenkinsmaster
Namespace:              default
Labels:                 kubernetes.io/cluster-service=true,kubernetes.io/name=JenkinsMaster
Selector:               name=jenkinsmaster
Type:                   NodePort
IP:                     10.254.113.89
Port:                   http    8080/TCP
NodePort:               http    30996/TCP
Endpoints:              172.17.0.2:8080
Port:                   slave   50000/TCP
NodePort:               slave   31412/TCP
Endpoints:              172.17.0.2:50000
Session Affinity:       None
No events.

谢谢你。

4

2 回答 2

0

kubernetes 1.12...docker 1.9...它们现在是古老的版本。所以你没有 CNI 或 kubeadm。我几乎不记得当时如何使用 flannel 设置 kubernetes 集群。

无论如何,您需要知道 Endpoint IP 与目标 Pod IP 相同,即 docker 容器的 IP。所以你的 docker 容器 IP 和你的 flannel IP 范围不同,172.17.0.x 是默认的 docker IP 范围。所以我认为你需要改变 docker start 参数--bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU},你可以使用10.0.0.0/16FLANNEL_SUBNET想要的基本设置。

于 2017-04-20T15:24:02.213 回答
0

我认为法兰绒网络子网和kubernetes内部网络子网似乎在这里发生冲突。

根据我现在看到的大量信息,我只能说这里存在冲突。要验证 flannel 是否正常工作,只需在与 flannel 连接的两台不同机器上启动 contianer 并查看它们是否可以通话以及它们获得的 IP 地址。如果他们被分配了范围的IP10.0.0.0/16并且他们可以交谈,那么法兰绒就很好。与 Kubernetes 的集成有些问题。

如果您没有获得其他范围的 IP 地址,法兰绒就不好。

于 2017-04-20T13:02:28.767 回答