热门 最新 精选 话题 上榜
Helm基础应用helm是个包管理工具,类似Linux操作系统。Ubuntu的apt或者centos yum的包管理工具,helm就是u我们给k8s集群加了一个对应的仓库,然后用helm命令行装软件包,通过helm命令装,他会直接装在你的k8s集群里面去,helm属于一个k8s集群的包管理工具15年年底发布的,目前三个三个版本v1 v2 v3 ,v1 和v2 已经很少用了,直接用v3helm概念:
原创 2月前
246阅读
helm介绍
一、背景介绍前面介绍的k8s中的pv存储卷与cm存储卷,k8s中还有2中特殊的存储卷:secret和downloadAPI。其作用分别是用来存放敏感信息和将pod中的信息暴漏给pod中运行的代码,这也是k8s中经常会用到的两个存储卷,下面就这两个存储卷展开详细说明。二、Secret存储卷尽管configMap资源也可以存放类似密码等敏感信息,但是它是将其存放在etcd中,这种持久化存储存在一定的安
原创 2月前
154阅读
1.nodePort对外发布服务[root@master ~]# vim mysvc1.yaml[root@master ~]# vim mysvc1.yaml --- kind: Service apiVersion: v1 metadata: name: mysvc1 spec: type: NodePort # 服务类型 selector: app:
k8s
原创 2月前
128阅读
1点赞
一、背景介绍我们知道程序本身是被装载进内存的一段代码,类似于系统上的cat或者ls程序,就是被装载进内存以实现特定的功能,而简单的程序往往没有什么复杂的定制,越是复杂的应用(如nginx等)根据环境与应用场景的不同,需要进行个性化的定制,大多数应用都可以通过命令行,选项,参数,环境变量和配置文件传递,通常的传递方式有以下几种:创建 Pod 时设置命令及参数使用环境变量来设置参数引用configMa
原创 2月前
97阅读
K8S你学废了么4——应用配置存储卷
“在 Kubernetes 集群发生网络异常时如何排查”。文章将引入 Kubernetes 集群中网络排查的思路,包含网络异常模型、常用工具,并且提出一些案例以供学习。一、Pod 网络异常网络异常大概分为如下几类:1.网络不可达主要现象为 ping 不通,其可能原因为:源端和目的端防火墙(iptables、selinux)限制网络路由配置不正确源端和目的端的系统负载过高,网络连接数满,网卡队列满网
原创 2月前
108阅读
Kubernetes是一种流行的开源容器编排平台,被开发人员和DevOps团队广泛用于部署和管理容器化应用程序。在Kubernetes上运行任何应用程序的一个关键方面是日志收集,它有助于监控应用程序的健康和性能,并快速解决问题。
# Kubernetes资源编排实现流程 ## 1. 简介 Kubernetes(简称K8s)是一个用于自动部署、扩展和管理容器化应用程序的开源平台。它提供了一种简化的方式来定义、运行和监视应用程序,并根据需要自动扩展应用程序的规模。 在本文中,我将指导你如何使用Kubernetes来实现资源编排。资源编排是指将应用程序的各个组件(如容器、服务、存储等)按照一定的规则和顺序部署和管理的过程。
原创 2月前
81阅读
# Kubernetes持久化存储 Ceph ## 1. 引言 在Kubernetes集群中,持久化存储是一个重要的组件,它能够确保我们的应用数据在容器重启、迁移或者故障转移的情况下不会丢失。Ceph是一个开源的分布式存储系统,它具有高可用性、可扩展性和容错性,因此非常适合用于Kubernetes的持久化存储。 本文将介绍如何在Kubernetes集群中使用Ceph作为持久化存储,并提供相应
原创 2月前
89阅读
# 新版 Kubernetes 查看 ServiceAccount 的 Token Kubernetes 是一个流行的容器编排平台,它提供了一种方便的方式来管理和部署容器化应用。在 Kubernetes 中,ServiceAccount 是一种用于身份验证和授权的机制,每个 ServiceAccount 都有一个相关联的 Token,用于访问 Kubernetes API。 本文将介绍如何通过
原创 2月前
192阅读
# Kubernetes集群不可达: 理解原因和解决方法 ![Kubernetes Logo]( ## 引言 Kubernetes是一种开源的容器编排平台,用于自动化部署、管理和伸缩应用程序的容器化工作负载。它的设计目标是使容器化应用程序更加可移植、扩展和弹性。然而,有时候在使用Kubernetes时,我们可能会遇到"Kubernetes cluster unreachable"的错误,这意
原创 2月前
200阅读
如何确保开发人员可以独立运行自己的应用和服务,且不需要依赖其他同事的帮助?让开发者很容易做正确的事情,而很难做错误的事情,打造属于你自己的平台工程,让应用开发如搭积木一样简单。
原创 2月前
73阅读
平台工程实践,让应用开发如搭积木一般简单
背景介绍: 在k8s环境中,通常情况下,Pod分配到哪些Node是不需要管理员操心的,这个过程会由scheduler调度实现,合理的分配到最优的节点上。但在实际项目中,我们可能需要指定一些调度的限制,例如某些应用需要跑在具有SSD存储或带gpu的节点上,或某些需进行大量计算解析且耗费很多cpu等资源的应用,需要负载均衡的打到集群中的各个节点中,避免调度到同一个node上,影响应用性能;这时候我们就
原创 精选 2月前
399阅读
k8s之affinity and anti-affinity
# Kubernetes WSL开发环境安装 ## 1. 简介 在本文中,我们将介绍如何在Windows系统上搭建Kubernetes WSL(Windows Subsystem for Linux)开发环境。Kubernetes是一个开源的容器编排平台,而WSL是Windows 10上的一个兼容层,用于在Windows上运行Linux环境。 ## 2. 安装步骤 下面是搭建Kuberne
原创 2月前
70阅读
# 实现 "kubernetes.io/ingress.class: apisix" 的步骤和代码示例 ## 介绍 在本文中,我们将讨论如何实现 "kubernetes.io/ingress.class: apisix" 的功能。我们假设读者是一名经验丰富的开发者,需要教一位刚入行的小白如何完成这个任务。 "Kubernetes Ingress" 是用于将外部流量路由到 Kubernetes
原创 2月前
83阅读
自动化部署是现代软件开发过程中不可或缺的一环。在基于Kubernetes + Helm的常用开发环境中,自动化部署脚本可以大大简化开发者的工作,提高开发效率。本文将详细介绍如何使用Kubernetes和Helm来构建自动化部署脚本,并提供实际的代码示例。 ## 1. Kubernetes和Helm简介 Kubernetes是一个开源的容器编排引擎,它可以帮助我们管理和自动化部署容器化应用程序。
1.学习资料和笔记:https://www.bilibili.com/video/BV1w4411y7Go/?p=6&vd_source=533ee415c42b820b0f4105acb4932a02
ide
原创 2月前
146阅读
如何运维管理超1k+node节点一、数据背景100,000+ Pods1300+ Nodes3集群(单:11Master + 17ETCD)ToC服务行业二、遇到的问题Apiserver调度,延迟问题;Controller 不能及时从 API Server 感知到最新的变化,处理的延时较高;Scheduler 延迟高、吞吐低,无法适应业务日常需求;ETCD架构设计不合理/ETCD稳定性/ETCD性
k8s
原创 2月前
173阅读
1点赞
如何运维管理超1k+node节点
Job Job 负责 批处理任务,即使执行一次的任务,保证批处理任务的一个或多个Pod成功结束。CronJobCronJobCronJob 管理基于时间的Job即使:在给定时间内置运行一次:周期性的给给定时间点运行:statefulSet:StatefulSet 通过IP的地址的classIP 地址。RS的访问扩容方案的, kubectl sacle depolyment ninx-de
原创 2月前
94阅读
VM  U盘的安装云镜像的能力,网络初始化的内容1.VM安装直接安装:开启虚拟机的假定安装信息的,网络信息10. 20 21 2.Docker 安装重启下对应的uname -a 的版本3.重启完成下一个新的4.44 再去重启一下,步骤费事,使用k8s 并不会但是最好更新过来,uname -a 启动docker 设置为自己的开启自己,systemctl enable d
原创 2月前
87阅读
什么是Ingress 当你在Kubernetes集群中运行多个应用程序时,每个应用程序都有自己的服务。为了让外部用户访问这些应用程序,就好像他们访问网站一样,我们需要一种方法来管理流量的分配和路由。这就是Ingress的作用。 想象一下,您的Kubernetes集群就像一个大型的公寓楼,每个公寓是一个应用程序。而Ingress就是大楼的大门,允许外部人员进入。大门上有一个保安,他会检查来访者的目的
原创 2月前
97阅读
# Kubernetes集群高可用安装指南 ## 指南概述 本指南旨在教会刚入行的开发者如何实现"Kubernetes集群高可用安装"。在本指南中,我将提供一个包含步骤、代码和注释的详细说明,以帮助你完成安装过程。 ## 流程图 ```mermaid flowchart TD; A[准备环境] --> B[安装Kubernetes Master节点] B --> C[安装K
原创 2月前
58阅读
# Kubernetes离线安装部署 ## 引言 Kubernetes是一个开源的容器编排平台,用于自动化部署、扩展和操作应用程序容器。它是Google开发的Borg系统的开源版本,旨在帮助开发者管理容器化应用程序的运行。 在Kubernetes的安装部署过程中,通常需要依赖于互联网下载和安装软件包。然而,有些情况下,我们可能需要在没有互联网连接的环境中安装Kubernetes,或者由于网络
原创 2月前
136阅读
我们需要将业务应用部署到 k8s 集群中。这里我们需要准备好了一个应用并打包成镜像,例如我的镜像地址是:要让这个 web 应用的镜像在 k8s 中运行,我们首先要定义一个 deployment 资源。通过创建deploy.yaml来描述 deployment 资源:通过创建deploy.yaml来描述 deployment 资源:image 属性:就是这个 java web 应
原创 2月前
98阅读
 一、介绍我们一般使用kubectl去操作K8S集群,如部署Pod,获取node信息,获取pod信息,获取svc信息,删除某个svc等。kubectl默认会从$HOME/.kube目录下查找文件名为 config 的文件,也能通过设置环境变量 KUBECONFIG 或者通过设置去指定其它 kubeconfig 文件。kubeconfig就是为访问集
原创 2月前
426阅读
kubectl之kubeconfig配置
1、登录服务器2、创建 ~/.kube文件夹3、cd ~/.kube4、下载或创建k8s集群的config文件:wget config文件连接apiVersion: v1 kind: Config clusters: - cluster: api-version: v1 insecure-skip-tls-verify: true server: "https:/
一、命令作用根据配置文件、目录或指定的literal-value创建configmap 。configmap 用来保存一个或多个 key/value 信息。当基于配置文件创建 configmap 时,key 将默认为文件的基础名称,value 默认为文件文本内容。如果基本名称的 key 无效,则可以指定另一个key。当基于目录创建 configmap 时,key还是文件的基础名称,目录中每个配置文
原创 2月前
132阅读
节点污点与Pod容忍度我们在创建Pod的时候对我们的节点或者两个pod之间去挑选节点,污点是在node节点上打的,污点和容忍度可以理解为一男一女找对象,男女之间都有缺点,容忍度,如果俩人谈对象,如果对方有某些缺点,你容忍不了,那你们也谈不了对象,走不到最后。node本身有一些污点,这个污点本身不是坏的意思,就是给他打了标签值,可以把污点理解为标签,node节点有包含某个标签的污点存在,那作为pod
原创 2月前
242阅读
Kubernetes node节点污点 与Pod 容忍度
Pod亲和调度在生产上有一些相应的多个pod之间有一定的依赖关系,比如运行应用程序和某一个数据库之间和某一个redis之间可能有依赖,我这个程序本身要依赖别的pod,就是这个pod要依赖另外一个pod来运行,两个pod相互之间有依赖关系,就尽量让他俩pod之间离得更近,离得更近意味着网络延迟更小pod亲和度pod亲和度和反亲和度pod亲和度:想让两个pod离得更近pod反亲和度:想让两个pod离得
原创 2月前
113阅读
Kuberneres Pod亲和度与反亲和度,强制亲和与首选亲和
# Kubernetes CephFS Provisioner STS 实现教程 ## 简介 在本文中,我将向你介绍如何使用 Kubernetes 和 CephFS Provisioner STS 实现动态创建和挂载 CephFS 卷。作为一名经验丰富的开发者,我将指导你完成这个过程,并提供详细的步骤和代码示例。 ## 整体流程 下面是实现这个功能的整体流程: | 步骤 | 描述 | | -
原创 2月前
70阅读