k8s apiserver错误日志一真报以下错误,但是metricserver组件是正常的。
node,pods的相关指标都可以正常显示
相关错误日志内容如下:
loading OpenAPI spec for “v1beta1.metrics.k8s.io” failed with: failed to retrieve openAPI spec, http error: ResponseCode: 503, Body: Error trying to reach service: ‘read tcp 10.0.0.198:44512->10.0.0.198:443: read: connection reset by peer’, Header: map[Content-Type:[text/plain; charset=utf-8] X-Content-Type-Options:[nosniff]]
解决:
apiserver配置文件添加配置并重启:–enable-aggregator-routing=true
"此外,为了最大限度地提高这种高可用性配置的效率,建议将——enable- aggregate -routing=true CLI标志添加到kube-apiserver,这样发送到Metrics Server的请求就可以在两个实例之间实现负载平衡。 "
这段话看起来跟这个问题没有什么关联。。。
安装me
tri
c-
server
后,运行
kube
ctl命令
报
错:couldn‘t get resource list for
metrics
.
k8s
.
io
/
v1
beta
1:the
server
is
v1
beta
1.
metrics
.
k8s
.
io
failed
with: Operat
io
n
ca
nnot be fulfilled on
api
services.
api
registrat
io
n.
k8s
文章目录通过Kuboard安装
Metrics
server
确认
metrics
-
server
是否正常运行确认
Api
Service 是否正常排查步骤1,根据
Api
Service的日志,查443端口排查步骤2,
metrics
-
server
pod日志 查4443端口解决,既然443端口访问不了,那么久访问4443,改造
server
顺利解决
通过Kuboard安装
Metrics
server
出现的问题可以参考官网:https://kuboard.cn/install/faq/
metrics
-
server
.h
[root@
k8s
-master ~]#
kube
ctl logs -n
kube
sphere-system $(
kube
ctl get pod -n
kube
sphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f
2021-03-01T13:51:31Z INFO : shell-operator
v1
.0.0-
beta
.5
2021-03-01T13:51:31Z INFO : HTTP SE...
参考:https://ask.csdn.net/quest
io
ns/6250475
https://github.com/
kubernetes
-sigs/
metrics
-
server
/issues/378
k8s
:1.19安装
metrics
-
server
(v4.0.1),执行
kube
ctl top node,系统日志
报
错:/
api
s/
metrics
.
k8s
.
io
/
v1
beta
1: 403
问题原因:
api
server
未开启聚合层
处理方法:
1、生成证书
# 创建
ca
证书(之前有可以不新建)
最近一个同事在老版本的
k8s
上安装
metrics
-
server
,pod一直处于running 非就绪状态,经过查看发现存在 tls 、软件版本、 资源权限等问题。记录在此处,以便于后续查阅、同类问题续更。
参考官方文档
kubernetes
-sigs/metr
[root@master-47-35 ~]#
kube
ctl logs -f
kube
-
api
server
-master-47-34 -n
kube
-system
E0912 06:36:05.215312 1 controller.go:111]
loading
OpenAPI
spec
for "
v1
alpha1.custom-
metrics
.
metrics
...
如果您在启动
kube
-
api
server
.service 时遇到 "Unit
kube
-
api
server
.service not found" 错误,可能是因为服务单元文件未正确安装或未正确配置。
您可以尝试以下步骤来解决该问题:
1. 确认
Kubernetes
的二进制文件已正确安装并可用。您可以通过运行 `which
kube
-
api
server
` 命令来检查
kube
-
api
server
的安装路径。如果命令返回路径,则说明二进制文件已正确安装。
2. 检查
Kubernetes
的服务单元文件是否存在。服务单元文件通常位于 `/etc/systemd/system/` 目录下,以 `.service` 结尾。确保存在名为 `
kube
-
api
server
.service` 的服务单元文件。如果文件不存在,您可能需要重新安装
Kubernetes
或手动创建服务单元文件。
3. 如果服务单元文件存在,请确保文件的权限设置正确。运行以下命令来更正权限:
sudo chmod 644 /etc/systemd/system/
kube
-
api
server
.service
4. 如果服务单元文件存在但配置有误,您可以尝试重新配置该文件。打开 `/etc/systemd/system/
kube
-
api
server
.service` 文件,并确保其中的配置正确无误。您可以参考
Kubernetes
官方文档或其他可靠来源获取正确的配置信息。
5. 在进行任何更改后,运行以下命令重新加载 systemd 配置并启动
kube
-
api
server
服务:
sudo systemctl daemon-reload
sudo systemctl start
kube
-
api
server
.service
如果问题仍然存在,请提供更多详细信息,以便我能够更好地帮助您解决问题。
kube-apiserver不规律报loading OpenAPI spec for “v1beta1.metrics.k8s.io“ failed with: failed to retrieve