草庐IT

k8smaster

全部标签

【测试开发】突破瓶颈必学技能——什么是k8s的核心概念?

目录Docker和K8sk8s中的重要概念 Master节点Node节点集群(Cluster)标签(Label)命名空间(Namespace)容器组(Pod)无状态部署(Deployment)有状态部署(StatefulSet)任务(Job)服务(Service)PodPod的理解Pod生命周期Pod资源清单定义结语你是否在测试开发的道路上遇到了瓶颈,想要突破自己的技能瓶颈?Kubernetes作为容器编排领域的翘楚,已经成为现代企业构建可靠、可伸缩的应用程序的重要基础。但是,它的复杂性经常令人望而却步。因此,深入理解Kubernetes核心概念对于测试开发工程师来说至关重要。本文将重点介绍K

k8s之POD资源限制和健康监测

写在前面本文一起看下POD的资源限制配置和健康监测的相关内容。1:资源限制如果是不对POD设置资源限制的话,若任由其占用系统资源,可能会造成非常严重的后果,所以我们需要根据具体情况来设置资源限制,如使用多少内存,多少CPU,多少IOPS等,实现这些限制使用的是cgroup技术,而配置这些限制使用到属性是resources。在看具体的例子之前需要先来看下cpu资源的表示方法,cpu标识的最小单位是0.001m,这里的m是milli的意思,1000m就代表使用一个cpu,500m就代表0.5cpu,具体配置cpu限制的话使用Xm,X这种,后者是直接指定使用CPU的个数。如下yaml:apiVers

k8s编写配置文件解析

一、创建命名空间1、编写yaml文件vim namespace.yaml---apiversion: v1   # api版本kind: Namespace  # 创建类型----(Namespace命名空间)metadata:      # 元数据  name: ns-monitor  # 起个名字  (给元数据的名字)  labels:          # 标签    name: ns-monitor    # 标签的名字2、创建资源#  kubectl apply -f namespace.yaml回显 namespace/ns-monitor created   (以创建成功)#  

【JVM故障问题排查心得】「内存诊断系列」Docker容器经常被kill掉,k8s中该节点的pod也被驱赶,怎么分析?

##背景介绍>最近的docker容器经常被kill掉,k8s中该节点的pod也被驱赶。我有一个在主机中运行的Docker容器(也有在同一主机中运行的其他容器)。该Docker容器中的应用程序将会计算数据和流式处理,这可能会消耗大量内存。该容器会不时退出。我怀疑这是由于内存不足,但不是很确定。我需要找到根本原因的方法。那么有什么方法可以知道这个集装箱的死亡发生了什么?###容器层级判断检测提到dockerlogs$container_id查看该应用程序的输出。这永远是我要检查的第一件事。接下来,您可以运行dockerinspect$container_id以查看状态的详细信息,例如:```"St

k8s拉取镜像失败处理 ImagePullBackOff ErrImageNeverPull

目录一、环境描述二、pod失败状态三、整体解决方案四、补充一下Pod状态解释一、环境描述系统环境:CentOSLinuxrelease7.9.2009(Core)系统内核:Linuxk8s-master015.4.153-1.el7.elrepo.x86_64#1SMPTueOct1208:16:11EDT2021x86_64x86_64x86_64GNU/Linuxk8s版本:Kubernetesv1.20.14docker:Dockerversion20.10.12集群有外网,docker已经对接好网络镜像仓库。二、pod失败状态   1.拉取k8s网上的镜像失败后的状态[root@k8s

k8s部署生产级elasticsearch+kibana 步骤、踩坑及解决方案

目录写在最前支持版本环境准备部署ECKelasticsearch创建配置文件部署验证kibana创建配置文件部署验证踩坑及解决方案elasticsearchpvc配置不对导致无法正确启动elasticsearch存储配置对了但无法启动,不配置存储能启动kibana默认配置下不能访问写在最前本文中的流程思路大体上与ECK文档相近,如果你已经在看这个文档,可以直接跳到踩坑及解决方案部分进行阅读。官方文档在elasticsearch存储相关设置,以及kibana配置公网可访问上有一些坑。补充filebeat部署步骤:k8s部署filebeat步骤、踩坑及解决方案支持版本Kubernetes1.18-

k8s master 实现高可用

Kubernetes高可用master架构k8s的高可用,主要是实现Master节点的高可用。那么我们看看各个组件是如何解决高可用的。Kubelet、Kube-proxy:只工作在当前Node节点上,无需高可用。etcd:etcd如果是放在集群内部的,在kubeadm1.5之后,对于多Master集群,一个Master节点加入集群后将自动实现集群化扩展。所以集群已经自动实现高可用,无需再人工干预。kube-controller-manager:对于多Master集群,这个组件只会有一个正常工作,其它处于休眠挂起状态。当工作节点发生故障时才会唤醒另一个接管。所以集群已经自动实现高可用,无需再人工

Kubeadm方式搭建K8s集群【1.27.0版本】

文章目录一、集群规划及架构二、系统初始化准备(所有节点同步操作)三、安装并配置cri-dockerd插件四、安装kubeadm(所有节点同步操作)五、初始化集群六、Node节点添加到集群七、安装网络组件Calico八、测试CoreDNS解析可用性一、集群规划及架构官方文档:二进制下载地址环境规划:pod网段:10.244.0.0/16service网段:10.10.0.0/16注意:pod和service网段不可冲突,如果冲突会导致K8S集群安装失败。容器运行时本次使用containerd。主机名IP地址操作系统master-116.32.15.200CentOS7.8node-116.32.

K8S中HPA详解

一、HPA解决的问题HPA全称是HorizontalPodAutoscaler,也就是对k8s的workload的副本数进行自动水平扩缩容(scale)机制,也是k8s里使用需求最广泛的一种Autoscaler机制,在开始详细介绍HPA之前,先简单梳理下k8sautoscale的整个大背景。k8s被誉为新一代数据中心操作系统(DCOS),说到操作系统我们自然想到其定义:管理计算机的软硬件资源的系统,k8s也一样其核心工作也是管理整个集群的计算资源,并按需合理分配给系统里的程序(以Pod为基础的各种workload)。其本质是解决资源与业务负载之间供需平衡的问题,随着业务需求和部署规模的增大,k

KubeSphere(k8s)使用外部ES进行日志收集(多行日志)

环境kubesphere:v3.3.1Docker:20.10.8Fluent-Bit:2.0.6-2.0.8ES+Kibana:7.9.3Docker日志示例{"log":"2023-01-1011:32:50.021-INFO---[scheduling-1]traceId:p6spy:1|conn-0|statement|SELECTfd_idASid,fd_user_idASuserId,fd_specific_userASspecificUser,fd_home_assessmentAShomeAssessment,fd_home_assessment_timeAShomeAsses