一·、概述 在k8s当中,“亲和性”分为三种,节点亲和性、pod亲和性、pod反亲和性;亲和性分类名称解释说明nodeAffinity节点亲和性通过【节点】标签匹配,用于控制pod调度到哪些node节点上,以及不能调度到哪些node节点上;(主角node节点)podAffinitypod亲和性通过【节点+pod】标签匹配,可以和哪些pod部署在同一个节点上(拓扑域);(主角是pod)podAntiAffinitypod反亲和性通过【节点+pod】标签匹配,与pod亲和性相反,就是和那些pod不在一个节点上(拓扑域);二、nodeAffinity-节点亲和性1,给k8s节点创建标签[roo
一、前言 Pod里面的容器都有自己独立的文件系统,来自容器镜像,用于保存容器运行的数据,但容器的文件存储有两个弊端,一个是无法持久化,其生命周期与容器一致,一旦容器销毁,相关的数据也就随之一起销毁;二是无法共享,Pod里多个容器之间无法共享数据,会导致无法提供完整的服务,比如监控容器需要读取业务容器提供的日志数据,就无法实现。 为解决以上问题,K8S提供多种类型存储卷。二、存储卷类型 实际上,在前面的章节中,已经接触到各种卷,比如在K8S初级入门系列之四-Namespace/ConfigMap/Secret章节中,ConfigMap与Secret就是K8S公开给Pod的特殊类型的卷。K
一、概念 我们先创建一个普通的deploy资源,设置为10个副本[root@k8s231dns]#catdeploy.yaml apiVersion:apps/v1kind:Deploymentmetadata: name:dm01spec: replicas:10 selector: matchLabels: k8s:k8s template: metadata: labels: k8s:k8s spec: containers: -name:c image:nginx:1.20.1-alpine ports: -name:p
前言:我们在学习k8s网络之前,必须要了解k8s网络相关的一些基础知识,比如什么是underlay网络、overlay网络等,只有把基础知识掌握之后,后续学习k8s网络的时候,一些知识点就不会再云里雾里了。1underlay与overlay网络1.1概念Underlay网络是Overlay网络的底层物理基础,它是由各种物理设备和网络组成的,负责网络之间的数据包传输。具体来说,Underlay网络包括但不限于物理设备如:交换机、路由器、防火墙、负载均衡器和入侵检测系统等,它们通过物理线路连接起来,形成了一个传统的物理网络。这个物理网络可能包括有线和无线介质,如铜线、光纤和无线电波。Underla
文章目录1.系统信息参数说明2.Docker安装3.minikube安装4.kubectl安装5.Helm安装6.启动Kubernetes集群v1.28.37.使用helm安装Prometheus8.使用helm安装Grafana9.Grafana的Dashboard设定10.设定Prometheus数据源11.导入KubernetesDashboard12.实验过程中的常见问题13.参考链接1.系统信息参数说明[root@minikube~]#uname-aLinuxminikube5.14.0-284.11.1.el9_2.x86_64#1SMPPREEMPT_DYNAMICTueMay9
k8s的图形化工具-----rancherrancher是一个开源的企业级多集群的k8s管理平台。rancher和k8s区别:都是为了容器的调度和编排系统,但是rancher不仅能够调度,还能管理k8s集群,自带监控(普罗米修斯),大公司都是图形化。rancher自带监控(普罗米修斯)实验部署master01 192.168.10.10node01192.168.10.20node02 192.168.10.30node04192.168.10.50node04服务端:dockerpullrancher/rancher:v2.5.7node01、node02、master01服务端:docke
使用k8s搭建wordpress部署思路编写wordpress部署yaml编写mysql.yaml部署验证k8s是容器编排系统,使用K8s可以做到自动扩缩、故障转移,等等优秀的特性,被常常在企业中使用。搭建一个简易的k8s可以使用k3s。轻量级(0.5G就可以使用)拥有大部分的k8s功能支持多节点具体搭建过程及更多信息可以参考官网。部署思路wordpress部分搭建wordpress,需要了解搭建一个完整的wordpress服务并且对外开放,所需要的服务。wordpress服务端(提供wordpress后端服务、配置、插件等等)Mysql(提供存储数据的能力,比如:文章、评论等等)根据以上信息
在我们基于k8s部署了微服务服务之后,为了更好排查系统异常或者监控系统运行情况,都会接入日志系统进行在线日志查询,比如常见的有ELK、EFK、Loki。虽然这些日志系统都可以对系统进行日志收集和展现,但是只是部署一个内部单体应用或者就是懒不想部署这些,觉得引入这些日志系统有点资源浪费。那么有没有简单查看 K8S 中多个 Pod 中的日志工具?只要能想到的,别人肯定也想到了,今天就分享两款超好用的多容器实时日志查看工具 Kubetail 和 Stern。KubetailKubetail是一个Shell脚本,很简单,它能够将来自多个Pod的日志聚合(尾部/跟踪)到一个流中进行展示,同时支持色彩和条
前言在前面的k8s基础学习中,我们学习了各种资源的搭配运用,以及命令行,声明式文件创建。这些都是为了k8s管理员体会k8s的框架,内容基础。在真正的生产环境中,大部分的公司还是会选用图形化管理工具来管理k8s集群,大大提高工作效率。 在二进制搭建k8集群时,我们就知道了k8s本身就具有一款原生的k8s集群管理工具,但是原生图形化管理工具dashborad只拥有管理一个集群的能力。而对于现代化生产力公司来讲,一个集群能够做的事情还是太少,所以我们需要引入更强大的集群管理工具。市面上较为常用的有rancher kubesphere k9s。本次我们主要介绍rancher的功能于搭建。ranche
1 什么是StorageClasses?在Kubernetes中,StorageClasses是用于定义不同存储配置的资源。它们允许开发者抽象存储的物理细节,使其更易于管理和使用。通过StorageClasses,可以定义存储的类型、性能、卷大小等参数,使得应用程序能够根据需求选择合适的存储。2StorageClasses的工作原理StorageClasses工作的基本原理是通过定义标准化的存储配置,使得开发者可以在不关心底层实现的情况下请求和使用存储资源。以下是StorageClasses的基本工作流程:StorageClass的定义:管理员通过Kubernetes资源清单文件定义Stora