kubernetes部署metrics-server

简介: 原有的kubernetes容器监控服务heapster,从kubernetes 1.11版本开始逐渐退休,新的监控服务是metrics-server

欢迎访问我的GitHub

这里分类和汇总了欣宸的全部原创(含配套源码): https://github.com/zq2599/blog_demos

关于metrics-server

  • 原有的kubernetes容器监控服务heapster,从kubernetes 1.11版本开始逐渐退休,如下图所示,红框中显示新的监控服务即metrics-server :

在这里插入图片描述

实战环境信息

  • 本次实战环境由三台CensOS7服务器组成,已部署了kubernetes 1.15版本;
  • 即将部署的metrics-server版本为v0.3.6,与kubernetes版本的匹配关系如下:

在这里插入图片描述

  • 接下来开始部署;

下载metrics-server

  • ssh登录kubernetes机器;
  • 从GitHub下载metrics-server的发布包:
wget https://github.com/kubernetes-sigs/metrics-server/archive/v0.3.6.tar.gz
  • 解压下载的文件:
tar -zxvf v0.3.6.tar.gz
  • 得到名为 metrics-server-0.3.6 的文件夹,下载工作完成;

解决问题

  • 接下来还不能立即部署服务,有两个问题要先解决:
  • metrics-server默认使用的是hostname,但是coredns中并没有三台物理机器的hostname和IP地址的关系,需要改为使用主机IP地址;
  • 验证客户端证书的问题,需要改为不验证;
  • 上述问题通过以下步骤解决:
  • 进入目录 metrics-server-0.3.6/deploy/1.8+/
cd metrics-server-0.3.6/deploy/1.8+/
  • 打开文件 metrics-server-deployment.yaml ,新增一些内容,如下图,红框中为新增的内容:

在这里插入图片描述

部署metrics-server

  • 还是在目录 metrics-server-0.3.6/deploy/1.8+/ ,执行命令 kubectl apply -f ./
  • 控制台提示多种资源被创建,如下图:

在这里插入图片描述

  • 等待metrics-server的pod为running状态,如下图:

在这里插入图片描述

  • 至此,metrics-server部署已经完成,接下来验证服务是否正常;

验证功能

  • 执行命令 kubectl top node 查看服务器节点情况:

在这里插入图片描述

  • 执行命令 kubectl top pod -n kube-system 查看kube-system这个namespace下所有pod的基本情况:

在这里插入图片描述

  • 再来试试metrics-server的API服务,执行命令 kubectl proxy --port=8080 ,用来开代理端口;
  • 再开打一个同样的ssh连接,执行命令 curl localhost:8080/apis/metrics.k8s.io/v1beta1/ ,如下图,可以看到API返回的内容:

在这里插入图片描述

  • 查看名为 kube-apiserver-node1 的pod的基本信息,命令是: curl localhost:8080/apis/metrics.k8s.io/v1beta1/namespaces/kube-system/pods/kube-apiserver-node1 ,如下图:

在这里插入图片描述

  • 至此,kubernetes环境的metrics-server部署和验证都完成了,希望能给您一些参考;

欢迎关注51CTO博客:程序员欣宸

学习路上,你不孤单,欣宸原创一路相伴...
相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
2月前
|
Kubernetes 持续交付 Docker
利用 Docker 和 Kubernetes 实现微服务部署
【10月更文挑战第2天】利用 Docker 和 Kubernetes 实现微服务部署
|
6天前
|
存储 Kubernetes 容器
K8S部署nexus
该配置文件定义了Nexus 3的Kubernetes部署,包括PersistentVolumeClaim、Deployment和服务。PVC请求20Gi存储,使用NFS存储类。Deployment配置了一个Nexus 3容器,内存限制为6G,CPU为1000m,并挂载数据卷。Service类型为NodePort,通过30520端口对外提供服务。所有资源位于`nexus`命名空间中。
|
2月前
|
Prometheus Kubernetes 监控
k8s部署针对外部服务器的prometheus服务
通过上述步骤,您不仅成功地在Kubernetes集群内部署了Prometheus,还实现了对集群外服务器的有效监控。理解并实施网络配置是关键,确保监控数据的准确无误传输。随着监控需求的增长,您还可以进一步探索Prometheus生态中的其他组件,如Alertmanager、Grafana等,以构建完整的监控与报警体系。
141 60
|
2月前
|
Prometheus Kubernetes 监控
k8s部署针对外部服务器的prometheus服务
通过上述步骤,您不仅成功地在Kubernetes集群内部署了Prometheus,还实现了对集群外服务器的有效监控。理解并实施网络配置是关键,确保监控数据的准确无误传输。随着监控需求的增长,您还可以进一步探索Prometheus生态中的其他组件,如Alertmanager、Grafana等,以构建完整的监控与报警体系。
271 62
|
29天前
|
Kubernetes Cloud Native 微服务
云原生入门与实践:Kubernetes的简易部署
云原生技术正改变着现代应用的开发和部署方式。本文将引导你了解云原生的基础概念,并重点介绍如何使用Kubernetes进行容器编排。我们将通过一个简易的示例来展示如何快速启动一个Kubernetes集群,并在其上运行一个简单的应用。无论你是云原生新手还是希望扩展现有知识,本文都将为你提供实用的信息和启发性的见解。
|
1月前
|
存储 Kubernetes Devops
Kubernetes集群管理和服务部署实战
Kubernetes集群管理和服务部署实战
56 0
|
2月前
|
Kubernetes Cloud Native 流计算
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
93 3
|
2月前
|
NoSQL 关系型数据库 Redis
高可用和性能:基于ACK部署Dify的最佳实践
本文介绍了基于阿里云容器服务ACK,部署高可用、可伸缩且具备高SLA的生产可用的Dify服务的详细解决方案。
|
2月前
|
Kubernetes 网络协议 安全
[kubernetes]二进制方式部署单机k8s-v1.30.5
[kubernetes]二进制方式部署单机k8s-v1.30.5
|
2月前
|
Kubernetes Docker 微服务
微服务实践k8s&dapr开发部署实验(1)服务调用(二)
微服务实践k8s&dapr开发部署实验(1)服务调用(二)
65 0