k8s面试题总结(十四)

什么是Helm?

Helm是一个k8s的包管理工具,它简化了应用程序在k8s集群中的部署,管理和维护。类似于rpm包和yum之间的关系。

K8s传统方式:类似于rpm安装包的方式,逐步进行安装,遇到依赖还得解决依赖问题

helm方式:类似于使用Yum安装,一键封装进行安装,自动解决依赖问题。

传统的k8s和Helm的各方面的对比:

  1. 部署方式:

使用k8s方式部署pod应用程序:需要手动编写和管理多个yaml文件。

使用Helm方式部署pod应用程序:通过Helm Charts将应用程序及其所有依赖打包成一个单独的包,可以快速部署。

2.管理和升级:

K8s本身没有内置的版本管理机制,需要手动管理应用程序的版本。

helm维护应用程序的版本历史,可以轻松进行版本升级和回滚。

3.重用性和共享:

K8s:需要手动管理资源文件,缺乏直接的共享和复用机制。

Helm:Helm Charts有公用的模板yaml文件,通过传递不同的变量,快速拉起一套新的服务,可在不同的环境中复用,并且可以共享和分发到Helm仓库。

什么是Kubernetes的监控和日志记录解决方案?

K8s提供了多种监控和日志记录解决方案,如Prometheus,ELK堆栈等,这些工具可以用于监控集群的性能指标和应用程序日志。

如果您更关注实时度量和警报功能,以及对指标数据进行灵活查询和分析,那么Prometheus可能是更好的选择。它适用于监控容器中的各种指标,如CPU利用率、内存使用量、网络流量等。另一方面,如果您的关注点更多是日志管理和分析,特别是对大规模日志数据的搜索、过滤和可视化,那么ELK Stack是更适合的解决方案。

如何在Prometheus中定义监控指标?

Prometheus概述:

Prometheus 仅用键值方式存储时序式的聚合数据,不支持文本信息

其中的 "键" 称为指标(metric),通常意味着 CPU 速率、内存使用率或分区空闲比例等

同一指标可能适配到多个目标或设备、因而它使用 "标签" 作为元数据,从而为 metric 添加更多的信息描述维度

  1. 定义和暴露指标

首先需要在应用程序中暴露这些指标,为了能够监控到更多信息,如主机的 CPU 使用率等,我们需要使用到 node_exporter。Prometheus 周期性的从 Exporter 暴露的 HTTP 服务地址(通常是 /metrics)拉取监控样本数据。

2.配置Prometheus抓取指标

编辑Prometheus的配置文件prometheus.yml,添加目标(target)。

3.查询和可视化指标

配置完成后,Prometheus将开始抓取并存储这些指标数据。你可以使用Prometheus的web界面或Grafana来查询和可视化指标。

相关推荐
斯普信专业组1 小时前
K8s环境下基于Nginx WebDAV与TLS/SSL的文件上传下载部署指南
nginx·kubernetes·ssl
木头左1 小时前
Windows环境下Docker容器化的安装与设置指南
windows·docker·容器
慢热型网友.2 小时前
用 Docker 构建你的第一个 Python Flask 程序
python·docker·flask
happyhappy没有句号2 小时前
CentOS系统如何安装和使用docker
docker·centos
空白6662 小时前
搭建VirtualBox-6+vagrant_2+docker+mysql5.7的步骤
docker·ruby·vagrant
&如歌的行板&2 小时前
如何在postman中动态请求k8s中的pod ip(基于nacos)
云原生·容器·kubernetes
泡泡_02243 小时前
云原生系统DOCKER中容器系统搭建
docker·云原生·容器
云妙算3 小时前
K8s 弹性伸缩踩坑实录:周末 2 天烧掉 10 万元!?
云原生·kubernetes
Changersh4 小时前
Windows下配置Docker+WSL集成开发环境
windows·docker·容器
lovely_nn4 小时前
Docker 容器资源限制
docker·容器