Docker OverlayFS容器文件系统

什么是容器系统这一模块我们所讲的内容,都和容器里的文件读写密切相关。因为所有的容器的运行都需要一个容器文件系统,那么我们就从容器文件系统先开始讲起。 文件读写性能测试我们可以先启动一个的虚拟机,它的 Linux 内核版本是 4.15 的,然后在虚拟机上用命令 docker run -it ubuntu:18.04 bash 启动一个容器,接着在容器里运行 fio 这条命令,看一下在容器中读取...

系统运维

面向面试系列-Kubernetes 相关问题与解答(2025-01-26)

Kubernetes 相关问题与解答1. K8s 集群规模描述问题: 描述K8s集群的机器数量和节点配置。 解答: 节点数量: 50个节点 配置: 每个节点16核CPU,32GB内存 角色划分: 3个Master节点和47个Worker节点 Pod数量: 超过500个 2. K8s 集群资源分配率和使用率问题: 如何计算K8s集群中的资源分配率和使用率? 解答: 计算资源CPU分配率通...

面试

client-go模式之ClientSet

四种客户端在 client-go 中,有四种可以与 Kubernetes 资源进行交互的客户端,分别是 ClientSet、DynamicClient、DiscoveryClient 以及 RestClient,它们各自适用于不同的场景。下面结合代码来体会一下。 ClientSetClientSet 是最常用的客户端,用于与 Kubernetes 核心资源(如 Pod、Service、Dep...

Kubernetes

Kubernetes 交互模式

传统的 Kubernetes 交互方式传统的 Kubernetes 交互方式众所周知,与 Kubernetes 交互的方式主要有以下几种:kubectl 命令行Kubectl 是官方提供的命令行工具,用于与 Kubernetes 集群进行交互。比如要获取 default 命名空间下的 Pods 信息,命令如下: 123kubectl get po ...

Kubernetes

面向面试系列-Kubernetes 操作与优化指南

Kubernetes 操作与优化指南1、Kubernetes 的 Operator 操作步骤是什么? 定义自定义资源定义 (CRD):创建一个自定义资源定义 (Custom Resource Definition, CRD) 来定义 Operator 将要管理的新类型资源。 开发 Operator 逻辑:编写 Go 代码来实现 Operator 的业务逻辑,通常使用 Operator SD...

面试

重学kubernetes-k8s部署(Centos)

(https://kubernetes.io/zh/docs/reference/setup-tools/kubeadm/) 本文用 kubeadm搭建出一个新的 Kubernetes 集群,一起来看看更真实的云原生环境。 一、什么是kubeadmKubernetes 是很多模块构成的,而实现核心功能的组件像 apiserver、etcd、scheduler 等本质上都是可执行文件,所以也可...

云原生

重学kubernetes-k8s部署(Ubuntu)

(https://kubernetes.io/zh/docs/reference/setup-tools/kubeadm/) 本文用 kubeadm搭建出一个新的 Kubernetes 集群,一起来看看更真实的云原生环境。 一、什么是kubeadmKubernetes 是很多模块构成的,而实现核心功能的组件像 apiserver、etcd、scheduler 等本质上都是可执行文件,所以也可...

云原生

Kubernetes相关面试题

K8s生产中如何为不同的业务做资源配置和服务质量保证呢? 对于关键基础组件,可设置等值的 Request 和 Limit 以确保资源稳定性和服务质量。对于资源使用波动的服务,Java 应用,应配置 Request 为稳态需求,Limit 为启动峰值需求,以处理瞬时资源消耗。在生产环境中,强烈建议为每一个工作负载配置资源限制 工作负载配置资源 Request 和 Limit 有三种情况,分别对...

系统运维

HPA

Horizontal Pod Autoscaling 可以根据 CPU 利用率自动伸缩一个 ReplicaSet、Deployment 或者中的 Pod 数量

系统运维

Helm

一、Helm 是什么在没使用 helm 之前,向 kubernetes 部署应用,我们要依次部署 deployment、svc 等,步骤较繁琐。况且随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm 通过打包的方式,支持发布的版本管理和控制,很大程度上简化了 Kubernetes 应用的部署和管理。 Helm 本质就是让 K8s 的应用管理(Deployment,Service 等 ) 可配置,能动态生成。通过动态生成 K8s 资源清单文件(deployment.yaml,service.yaml)。然后调用 Kubectl 自动执行 K8s 资源部署。 Helm 是官方提供的类似于 YUM 的包管理器,是部署环境的流程封装。Helm 有两个重要的概念:chart 和release。

系统运维
1237