![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Kubernetes
文章平均质量分 85
对你无可奈何2008
境來不拒,境去不留。隨緣自適,心無增減.
展开
-
Kubeblocks系列2-redis尝试之出师未捷身先死
我还是坚信数据服务可以部署在容器中,但是现阶段的kubeblocks对于我来说还是一个玩具,成熟度较低。希望在以后成熟的版本中再进行深度的学习试用。现在这种阶段我还是宁愿试用bitnami的各种helm安装了。原创 2024-05-22 16:49:37 · 693 阅读 · 0 评论 -
Kubeblocks系列1-安装
本文将为你详述如何在 Kubernetes 集群上安装和配置 Kubeblocks,一种先进的 Kubernetes 集成工具,旨在简化和自动化容器化应用的部署和管理。原创 2024-05-22 16:48:22 · 472 阅读 · 0 评论 -
吐槽一下腾讯云TKE原生节点的降本增效
口口声声,以用户为本。我觉得这页面真的是拿用户当傻子,这哪里是将本增效,明明是诱导用户消费…堆积一些高大上的名词,其实你还是看上了用户兜里的钱。真心希望还是以用户为本,莫把用户当傻子阿…这个单我是不想买…老老实实用我的普通节点了!原创 2024-04-17 17:37:10 · 552 阅读 · 0 评论 -
kubectl与 jq的另外一些用法
在本文中,我们探讨了如何搜索包含特定配置值的 ConfigMaps,并且讨论了一些其他实用场景。随着需求的不断变化,我们也应该不断探索这些工具的新用法,以适应不断变化的技术挑战。有时,我们需要查找哪些 ConfigMap 包含特定的配置值,例如一个特定的 IP 地址或者字符串。下面是我的一个应用场景:我有命令空间下confgimap中引用了**10.0.4.65,**我想要知道我在那个命名空间,那一个cm中使用了该变量内容,应该如何操作呢?的处理能力,运维工程师可以快速发现和处理集群中的数据。原创 2024-01-15 19:31:48 · 976 阅读 · 0 评论 -
在Kubernetes中优雅地导出和清理Ingress资源
Kubernetes的Ingress资源是定义外部访问集群服务的规则。随着微服务架构和容器化技术的普及,Ingress作为路由流量的关键组件变得愈发重要。当我们需要在环境之间迁移Ingress资源或者备份当前的配置时,就会用到导出功能。然而,直接使用kubectl导出可能会包括一些我们不需要的元数据。本篇博客将教您如何优雅地导出Kubernetes命名空间下的Ingress资源,同时保留关键的字段。注意:其实这个跟获取configmap是连贯的,增加一些新的玩法!原创 2024-01-08 23:02:07 · 1118 阅读 · 0 评论 -
Kubernetes 配置Pod使用代理上网
kind: Podmetadata:spec:envFrom:metadata:spec:selector:template:metadata:labels:spec:env:这种方法允许更灵活的设置,因为你可以为不同的Deployment指定不同的代理设置。正确配置Kubernetes中的Pod使用HTTP代理是满足企业网络要求的关键环节。通过使用ConfigMap或直接在环境变量中设置代理信息,可以为集群的出站流量提供控制和灵活性。原创 2024-01-04 14:40:44 · 705 阅读 · 0 评论 -
使用Jenkins和单个模板部署多个Kubernetes组件
和。这些函数将用于构建Docker镜像并部署到Kubernetessh "cd${原创 2023-12-29 17:05:54 · 1252 阅读 · 3 评论 -
Jenkins Pipeline脚本优化:为Kubernetes应用部署增加状态检测
为此,我们引入了方法来检查资源的状态。该方法通过kubectl的get命令和jsonpath查询输出来轮询检查ready副本数。如果指定时间内资源不达状态,则流程失败。本篇博客通过对Jenkins Pipeline的进化过程展开讲解,展现了如何从简单的部署任务转变为一个健壮且兼顾各类工作负载状态监测的CI/CD流程。我们强化了状态检测的逻辑,引入了更新策略的检测,并保持了对不同Kubernetes资源类型的兼容性。原创 2023-12-21 16:13:38 · 882 阅读 · 0 评论 -
批量生成 Kubernetes 部署模板:从 1 到20顺序模板
通过上述方式,我们不仅节省了大量的重复劳动,还提高了配置管理的准确性。现在,您可以通过这些模板来创建相应的 Kubernetes 部署,并观察多个游戏服务实例的运行。请注意,脚本只是一个示例,您可能需要根据实际的需求对其进行修改,例如如果存在更多的动态内容或特定的配置逻辑,您可能需要一些更加复杂的模板渲染工具,比如 Helm。希望本文能帮助您高效地管理 Kubernetes 资源配置,并为您的部署自动化工作提供便利。以上就是如何通过模板和脚本来批量生成 Kubernetes 部署模板的简单方法。原创 2023-12-18 15:48:33 · 1002 阅读 · 0 评论 -
如何合并Kubernetes集群的Config文件:处理重名的集群和用户
Kubernetes作为容器编排工具的翘楚,多集群管理已是许多DevOps工程师的日常。随着对环境的扩展,如何管理多个集群的config文件成为了一个需要解决的问题。在本篇博客中,我们讨论一个常见的场景:合并两个Kubernetes集群的config文件,同时处理存在的同名集群和用户问题。并展示如何使用kubectl命令切换不同的集群上下文。在开始合并之前,我们先简要回顾一下Kubernetes配置文件(通常位于clusters:定义集群的访问参数,包括名称、服务器地址和证书信息。contexts。原创 2023-12-06 20:23:17 · 621 阅读 · 0 评论 -
kubectl获取命名空间下所有configmap集合的方法
此方法比较高级,你可以创建一个自定义的Go模板来精确控制哪些字段会被展示。下面是一个例子,获取所有命名空间下的ConfigMap但会忽略和在上述命令中,---metadata:data:{{- end }}{{- end }}此模板文件迭代所有ConfigMap对象,只包含名称、命名空间以及数据字段。注意,模板语法可能根据你想要显示的确切内容和格式有所不同。这样导出的会有些强迫症,还是不太推荐!原创 2023-12-05 21:05:09 · 1201 阅读 · 0 评论 -
kubectl获取ConfigMap导出YAML时如何忽略某些字段
另一个更高级的解决方案是使用kubectl的自定义Go模板输出。通过编写一个模板,您可以精确控制输出哪些内容。这段命令利用Go模板语法生成一个过滤掉特定Metadatas字段的ConfigMap资源的清单,并保存到。原创 2023-12-04 19:44:20 · 1340 阅读 · 0 评论 -
kubernetes1.22安装apisix
文档中英文的支持,中文只替换了标题栏.对loadbalancer的支持。文档写的都可以,结果启动了都是nodeport.dashboard 不知道能不能支持多用户?用户密钥不想明文希望能动态加载。dashboard中grafana这些的没有对我进行很好的用户引导…路由这些也没有按照namespace进行区分…用起来不是很习惯其他功能慢慢体验吧,等我多体验完整了再考虑替代traefik…原创 2023-07-27 16:24:44 · 342 阅读 · 0 评论 -
K8S exporter应用
exporter对于云服务的监控还是很不完美,毕竟每家都有自己的护城河。自动发现多实例这样的借助consul 阿波罗这样的会简单一些。aws可以借助cloudwatch这样的导入模板到grafana中。还是希望能将类似腾讯云云监控中的这些指标采集到prometheus中,但是这过程应该还很遥远grafana出图 prometheus查询语法这些东西有时间的好好研究一下。报警有必要进行分级别,收敛配置一下!原创 2023-07-14 10:42:26 · 1015 阅读 · 0 评论 -
AWS alb eks traefik realip后端真实IP
亚马逊 eks 集群代理用了traefik alb绑定 traefik 在node 上面暴露的端口,对外提供服务。一直也没有在意是否能正常获取客户端IP(腾讯云 阿里云的traefik 后端应用都能正常获取客户端IP),后端php服务基础镜像基于构建,对日志进行了json格式化,安装了一些其他依赖。注:图文不符阿,两个环境!但是演示效果一样!xff字段获取的是内网IP怎么破?如何获取客户端真实IP呢?原创 2023-06-29 17:08:58 · 562 阅读 · 0 评论 -
tke 1.20.6升级到1.22.5的一点小插曲
kubernetes 版本升级的api校验,tke这点是不好,没有提醒用户阿,kubeadm升级还会进行校验一遍资源呢!应用组建版本的api还是要好好检查一下!原创 2023-06-27 11:39:57 · 367 阅读 · 0 评论 -
gitlab远古版本备份&还原&升级
gitlab.太多年了也没有升级,现在准备备份还原到一个新的服务器然后升级一下。gitlab服务器开始是docker-compose搭建的后面迁移到了kubernetes上(记得当时还是1.14),后面kubernetes 版本持续升级到了1.21。,基本版本是!原创 2023-03-09 12:24:08 · 871 阅读 · 0 评论 -
jenkins harbor webhook自动触发构建
cicd还是基于jenkins(spinnaker虽然也玩了,公司规模也小,简单jenkins可以走天下)其实很多场景还是手动构建的,基本没有做自动构建的jenkins流程。今天就突然有了那么一个需求。合作方大爷要频繁修改一个镜像。恩他们构建了镜像上传到仓库(仓库咱们的,对方木有),他们也不想第二次操作jenkins什么的…当然了他们也不会把代码仓库给到咱,然后我就想到了jenkins的构建触发器-去触发构建。原创 2023-02-24 22:11:33 · 1323 阅读 · 0 评论 -
AWS简单搭建使用EKS二
紧接,eks集群简单搭建完成。需要搭建有状态服务必然就用到了storageclass 存储类,这里用ebs记录以下。原创 2023-02-15 15:07:14 · 737 阅读 · 0 评论 -
AWS简单搭建使用EKS一
海外服务合作方服务器部署在新加坡AWS,然后就顺便使用了一下AWS上面的各项服务。最近要给合作方写交付文档,就顺便写一下相关服务的简单使用,并没有太深入,因为所有环境搭建基本都是速成流程,小公司说上就上,没有时间深入研究积累,且主要服务环境都运行在国外腾讯云and阿里云。下面是一些流程的演示!注意:演示流程搭建在aws北京区,故很多arn:aws-cn会,请注意各项区别!以下操作区域都默认为北京。在个人各项操作中请确认操作区域!注: 如果已有VPC并且vpc符合使用需求可以忽略这一步。aws官方文档:ht原创 2023-02-14 19:36:12 · 1454 阅读 · 1 评论 -
kubernetes关于eks一次异常问题的复盘
海外有一套的事情经过是这样的12月28日更新镜像,节点出现了一次镜像仓库**,but **在宿主机操作docker pull 上传到dockerhub的镜像依然是pull不动,索性 restart了一下docker and kubelet 重新下载成功了…祸根就从这里埋下了。春节放假又出现了两次异常。后面找aws的小伙伴帮忙一起看了一下复盘了一下。这里记录一下!原创 2023-02-02 17:39:38 · 761 阅读 · 0 评论 -
Kubernetes搭建Yearning与简单使用
安装搭建尽量按照官方最新文档来,数据库如果不能创建sql数据可以尝试二进制方式生成数据库数据。第一次用还是不太习惯,比如权限组的定义还有所谓的审批流程,以及用户的角色定义。希望Yearning实现的功能 能否导入云数据库?比如阿里云 腾讯云的 数据库?DDL DML这里 在CREATE database的时候要选择一个数据库?这个地方有点不合理,希望后面能改进。原创 2023-02-01 15:08:11 · 637 阅读 · 0 评论 -
Kubernetes通过HostAliases自定义hosts
nacos中关于redis的配置:至于腾讯云的redis服务是内网IP的方式,虽然现在也有了可以开启外网地址的途径:但是如果开通外网地址,还是会涉及到修改代码判断内网外网地址,nacos增加配置,甚至要设置安全组?放弃了。还是老老实实使用host的方式去了。原创 2022-12-01 18:29:42 · 773 阅读 · 0 评论 -
Kubernetes tmpfs
早上小伙伴打来电话,问我想要将内存挂载成硬盘使用(环境all in kubernetes),这不是内存虚拟盘吗?tmpfs…没有搞过,google一下关键词:kubernetes tmpfs恩也有中文版:简单的介绍都是。谷歌的第二个链接打开yaml的示例一个可以参照一下:参照官方文档medium sizeLimit .500Mi是程序小伙伴让设置的最后apply yaml文件:不求甚解,解决…原创 2022-11-05 12:03:42 · 209 阅读 · 0 评论 -
记录一下阿里云ACK的nodeport Local Cluster
很久很近以前(恩200多天前了),创建了一个服务应用,使用了nodeport的方式对外暴露服务,划重点–控制台创建的网络服务:过程就是这样的…一直相安无事。但是不明所以今天业务突然无法访问了(访问地址用了其中某一太的公网地址)…试着访问了一下有点怀疑防火墙,安全组?看了一眼都没有问题。发现服务近期更新过…怎么会事情?原创 2022-10-27 18:20:27 · 462 阅读 · 0 评论 -
Kubernetes小技巧关于节点pod ip node数量规划
最近就想体验各种多集群互联(基于wireguard),然后就深感网络划分的重要性,开始网络设计的杂七乱八的。想互联了都各种问题了,网络重叠了怎么办?集群扩容IP资源不够了杂整?还有就是默认的每个node节点的subset都默认是24?我一台机器上面也跑不了那么多Pod阿…恩 默认的 SUBNET都是24,举个例子:我的kubernetes集群初始化配置文件networking部分如下:!原创 2022-09-27 16:24:22 · 1572 阅读 · 0 评论 -
如何搭建代理镜像仓库
将域名的证书放置到 cert 目录下,并把证书文件名称命名为该目录下的server名称;其中 server.crt 为 ssl 证书文件, server.key 为 ssl 私钥。注意:证书一定要是对应域名的,不然进行下载镜像会提示x509修改 nginx.conf 配置文件,将配置文件中的域名替换成自己的域名(xxx.com)原创 2022-09-15 14:48:35 · 1351 阅读 · 0 评论 -
Prometheus跨集群采集
现实环境中我应该不会那么玩,还是跟原来一样,每个k8s集群搞一个prometheus-oprator集群,然后可以连接一个grafana…其实那么的搞了一圈玩一下就发现了K8s1.24 后。原创 2022-09-08 17:07:31 · 791 阅读 · 0 评论 -
深度吐槽阿里云ack服务
算是一个腾讯云深度用户,用了78年左右,由于业务需求,今年五月份开始逐步在阿里云跑了一些服务。不吹不黑。发自内心的吐槽一下阿里云的ack服务。其他服务没有多大发言权。都差不多。但是作为一个算是比较早期的kubernetes用户有必要吐槽一下阿里云的ack服务,没有办法。圈子里面没有阿里云容器组的人,像是腾讯云的tke的服务有问题可以直接找到相关人员反映,提交一下个人意见了。...原创 2022-08-18 15:31:52 · 1096 阅读 · 0 评论 -
Operator3-设计一个operator二-owns的使用
owns的一般使用将 deployment service ingress或者其他资源作为operator应用的子资源,进行生命周期管理下一步想处理一下 make run 控制台的输出,输出一些有用的信息。原创 2022-08-09 19:11:53 · 375 阅读 · 0 评论 -
Operator3-设计一个operator
size"`"image"`}",inline"`}operator要解决的是什么自己还是没有搞明确,也没有想好怎么去设计一个operator。只是简单的实现了一些基本的功能,还没有体会到更多的便利性。本来想照着eck写,但是对我这种初学者还是有点难,一步一步去完善写吧…httpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttps。...原创 2022-07-28 12:27:20 · 351 阅读 · 0 评论 -
Operator-2从pod开始简单operator
前置内容:Operator-1初识Operator,从pod开始简单创建operator…恩 强调一下 我故意在api/v1/redis_type.go中加一个字段。接下来该怎么操作呢?describe crd 配置里面已经有了Image字段!发布镜像的时候SetupWebhookWithManager打开了…不打开貌似发布了会报错打包镜像image并发布注:当然了能使用原生的命令更好, 我这系统还是有问题的发布完成继续关了main.go中 SetupWebhookWithManager原创 2022-07-11 17:15:55 · 390 阅读 · 0 评论 -
Operator-1初识Operator
接触kubernetes也好多年了,开始就各种听说oprator的,但是从来没有深入了解动手写过oprator。开始体验一下简单的oprator参照:红帽官方文档什么是 Kubernetes Operator?**coreos2016年引入,**是一种封装、部署和管理 Kubernetes 应用的方法开发工具:**CRD **全称是 Custom Resource Definition, CRD是一种无需编码就可以扩展原生kubenetes API接口的方式。适合扩展kubernetes的自定义接口和原创 2022-06-30 20:26:35 · 638 阅读 · 0 评论 -
client-go gin的简单整合十一-Delete
完成了client-go gin的简单整合十-Update,下面演示一下namespace deployment pod的删除,删除完成了也可以总结一下进行更深入的操作了!删除就从pod deployment namespace的顺序开始了!注意:zhangpeng namespace 下nginx pod为例编写关于pod delete的代码继续模仿create update 写delete方法,其实delete只需要namespace 和pod的name就可以了,简化一下:/src/servic原创 2022-06-22 18:09:33 · 694 阅读 · 0 评论 -
client-go gin的简单整合十-Update
完成了client-go gin的简单整合九-Create的namespace deployment pod的 创建操作,现在进行一下update修改的操作!关于namespace,我们用的最多的标签是name 和labels(恩前面我还做过配额的例子,这里就简单的拿labels为例了)如果去update修改namespace我们常用的应该是修改namespace的labels,以zhangpeng namespace为例,我想增加一个name=abcd的标签/src/service/Namespac原创 2022-06-22 15:23:47 · 462 阅读 · 2 评论 -
client-go gin的简单整合九-Create
完成了前面一些简单list-watch的demo,这里开始进一步完成crud的基本操作,就从create开始了。这里从create namespace deployment pod service作一个简单的应用列举前面做过list的应用:client-go gin的简单整合八Service-list初步收尾,/src/service/Namespace.go文件如下:创建一个namespace现在要创建一个create 创建命名空间的方法!最终如下:然后创建CreateNameSpace,原创 2022-06-21 17:34:25 · 258 阅读 · 0 评论 -
client-go gin的简单整合八Service-list初步收尾
kubernetes client-go list-watch原创 2022-06-15 18:19:25 · 571 阅读 · 0 评论 -
client-go gin的简单整合七-继续完善
紧接上文:client-go gin的简单整合六-list-watch二(关于Rs与Pod以及Deployment的完善),继续去完善相关的event 以及显示pod ip等相关配置还要继续搞一下指定deployment name显示相关pod信息!cat nginx3.yamlbut!访问:http://127.0.0.1:8080/deployments?ns=default(上一节运行的main.go依然在运行前提)参照:https://kubernetes.io/zh/docs/concep原创 2022-06-14 17:44:09 · 298 阅读 · 0 评论 -
client-go gin的简单整合六-list-watch二(关于Rs与Pod以及Deployment的完善)
前面完成了client-go gin的简单整合五-list-watch deployment应用,进一步把 Rs Pod也实现list-watch!前面少写的:忘记了Store数据…depmap.data.Store(dep.Namespace, list)!/src/core/rs_init.go关于Pod list-watch先写一个util方法(就为了判断两个label是否相同!):/src/core/Util.go基本copy自deployment_init.go:/src/core/原创 2022-06-10 09:58:33 · 389 阅读 · 0 评论 -
client-go gin的简单整合五-list-watch deployment应用
背景:紧接client-go gin的简单整合四-list-watch初探,list-watch的模式都在测试文件中写的,现在修改一下前面做的deployment pod namespace 等等的api!client-go gin的简单整合五-list-watch deployment应用src目录下创建core文件夹,并创建deployment_init.go文件,将test1.go中相关deployment配置迁移过来!(默认test1.go中内容迁移过来)/src/core/deploym原创 2022-05-25 19:50:52 · 492 阅读 · 0 评论