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来查询和可视化指标。

相关推荐
bloglin999996 小时前
启动容器报错ls: cannot access ‘/docker-entrypoint-initdb.d/‘: Operation not permitted
docker·容器·eureka
songjxin7 小时前
离线部署kubernetes v1.34.3
云原生·容器·kubernetes
yBmZlQzJ8 小时前
免费内网穿透-端口转发配置介绍
运维·经验分享·docker·容器·1024程序员节
JH30738 小时前
docker 新手入门:10分钟搞定基础使用
运维·docker·容器
wuxia21188 小时前
minikube的安装
kubernetes·云计算
天河归来9 小时前
在本地windows电脑使用Docker搭建xinference环境
docker·语言模型·容器
算力魔方AIPC10 小时前
使用 Docker 一键部署 PaddleOCR-VL: 新手保姆级教程
运维·docker·容器
熊出没10 小时前
Kubernetes 实操命令大全
云原生·容器·kubernetes
Ghost Face...11 小时前
Docker实战:从安装到多容器编排指南
运维·docker·容器
闲人编程12 小时前
健康检查与就绪探针
kubernetes·web·状态机·健康检查·codecapsule·存活探针·启动探针