[英]kube-controller-manager doesn't start when using “cloud-provider=aws” with kubeadm
[英]kube-controller-manager outputs an error “cannot change NodeName”
我在帶有CoreOS和法蘭絨VLAN網絡的AWS上使用kubernetes。 (遵循本指南https://coreos.com/kubernetes/docs/latest/getting-started.html)k8s版本是1.4.6
。
而且我有以下node-exporter守護程序集。
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: node-exporter
labels:
app: node-exporter
tier: monitor
category: platform
spec:
template:
metadata:
labels:
app: node-exporter
tier: monitor
category: platform
name: node-exporter
spec:
containers:
- image: prom/node-exporter:0.12.0
name: node-exporter
ports:
- containerPort: 9100
hostPort: 9100
name: scrape
hostNetwork: true
hostPID: true
當我運行此命令時,kube-controller-manager反復輸出錯誤,如下所示:
E1117 18:31:23.197206 1 endpoints_controller.go:513]
Endpoints "node-exporter" is invalid:
[subsets[0].addresses[0].nodeName: Forbidden: Cannot change NodeName for 172.17.64.5 to ip-172-17-64-5.ec2.internal,
subsets[0].addresses[1].nodeName: Forbidden: Cannot change NodeName for 172.17.64.6 to ip-172-17-64-6.ec2.internal,
subsets[0].addresses[2].nodeName: Forbidden: Cannot change NodeName for 172.17.80.5 to ip-172-17-80-5.ec2.internal,
subsets[0].addresses[3].nodeName: Forbidden: Cannot change NodeName for 172.17.80.6 to ip-172-17-80-6.ec2.internal,
subsets[0].addresses[4].nodeName: Forbidden: Cannot change NodeName for 172.17.96.6 to ip-172-17-96-6.ec2.internal]
僅出於信息目的,盡管有此錯誤消息,也可以在例如172-17-96-6:9100
上訪問172-17-96-6:9100
。 我的節點位於包括k8s主服務器的專用網絡中。
但是這些日志輸出過多,因此很難從我們的日志控制台中看到其他日志。 我可以看看如何解決此錯誤嗎?
由於我是從頭開始構建k8s集群的,因此最初未激活cloud-provider=aws
標志,並且最近將其打開了,但不確定是否與該問題有關。
看來這是由我的另一個清單文件引起的
apiVersion: v1
kind: Service
metadata:
name: node-exporter
labels:
app: node-exporter
tier: monitor
category: platform
annotations:
prometheus.io/scrape: 'true'
spec:
clusterIP: None
ports:
- name: scrape
port: 9100
protocol: TCP
selector:
app: node-exporter
type: ClusterIP
我認為這是暴露上面的node-exporter守護程序集所必需的,但是當我設置hostNetwork: true
在守護程序集(實際上是pod)清單中為hostNetwork: true
時,它可能會引入某種沖突。 不過,我不確定100%,刪除此服務后,錯誤消失了,而我仍然可以從k8s集群外部訪問172-17-96-6:9100
。
我在設置prometheus和node-exporter時緊跟着這篇帖子, https: //coreos.com/blog/prometheus-and-kubernetes-up-and-running.html
萬一其他人遇到同樣的問題,我在這里留下我的評論。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.