【k8s 排查】创建 Deployment 时,出现错误“Deployment in version -v1- can not be treat as Depl

发布于:2024-10-24 编辑:匿名 来源:网络

在此插入图片说明 1. 环境介绍 1.1 本环境规划 本环境规划介绍了主机名 IP 地址 操作系统版本 k8s版本角色 k8s-master..3.centos7.6 v1.27.4master 节点 k8s-node2..3.centos7.6 v1.27.4worker 节点 k8s-node2..3.centos7.6 v1.27.4worker 节点 1.2 kubernetes 简介Kubernetes(简称“k8s”)是一个用于自动化部署、扩展和管理容器化应用程序的开源平台,Kubernetes 最初由 Google 设计和开源,旨在帮助开发人员更轻松地部署和管理应用程序,并更好地利用其优势。 Kubernetes 提供了一个可扩展的系统,用于自动化容器化应用程序和服务的部署、扩展和管理,还提供一致的部署、扩展和管理方法,使应用程序维护变得更加容易。

1.3 Kubernetes特性容器编排:Kubernetes提供了容器编排机制,可以自动将容器部署到集群中的节点并提供负载。平衡、缩放、自动恢复等功能。

自动化运维:Kubernetes提供了自动化运维机制,可以自动处理节点故障、容器故障、网络故障等,保证应用的高可用:Kubernetes。可扩展到数千个节点并支持多租户模式,适合云计算和企业应用。

兼容性:Kubernetes可以运行在多种云平台和操作系统上,并且支持多种容器运行时,例如Docker。 、CRI-O等 3.本次实践简介 2.本次实践简介 2.1本次实践简介 1.本次实践是在k8s环境下部署Flatnotes笔记工具; 2. 应用程序 flatnotes.yaml 文件中出现“部署”。

在版本“v1”中无法作为部署处理...”错误 2.2 错误场景 应用 flatnotes.yaml 文件时,出现以下错误。代码语言:shell复制[root@k8s-master flatnotes]# kubectl apply -f flatnotes.yamlnamespace/flatnotescreatedservice/my-flatnotescreatedError from server (BadRequest): 创建“flatnotes.yaml”时出错:版本“v1”中的部署无法处理为 Deployment: json: Cannot unmarshal number into Go struct field EnvVar.spec.template.spec.containers.env.value of type string 三、配置文件内容文件配置flatnotes.yaml内容如下:代码语言:yaml复制[root@k8s-master flatnotes]# cat flatnotes.yaml############################ 应用########## ############################################---api版本:v1kind:命名空间元数据:名称:flatnotes---apiVersion:apps/v1kind:Deploymentmetadata:标签:app:flatnotes名称:flatnotes命名空间:flatnotesspec:副本:2选择器:matchLabels:app:flatnotes模板:元数据:标签:app:flatnotes规范:卷: - 名称:数据主机路径:路径:/data/flatnotes/data/ initContainers: - 名称: 卷权限 图像: busybox:1.28 imagePullPolicy: IfNotPresent 命令: - sh - -c - chmod -R /data/flatnotes/data/ volumeMounts: - 名称: 数据 mountPath: /data/flatnotes/data/容器: - 图像:dullage/flatnotes:最新名称:my-flatnotes 端口: - 名称:网络协议:“TCP” 容器端口:env: - 名称:TZ 值:“亚洲/上海” - 名称:LATNOTES_AUTH_TYPE 值:密码 - 名称: FLATNOTES_USERNAME 值:admin - 名称:FLATNOTES_PASSWORD 值:admin - 名称:FLATNOTES_SECRET_KEY 值:Nl1rQmfg4gsnJfBfsmkXOo7G - 名称:PORT 值:资源:请求:cpu:0.1 内存:0.1G 限制:cpu:1 内存:0.5G 卷安装: - 名称:数据 mountPath:/data# - 名称:config# mountPath:/etc/config.json---apiVersion:v1kind:Servicemetadata:名称:my-flatnotes 命名空间:flatnotesspec:端口: - 名称: web 协议: TCP targetPort: port: nodePort: 0 选择器: app: flatnotes type: NodePort 4.错误分析 如果 Deployment 中使用了 env,并且 env 中的某些值为数字,则会抛出此错误。

此错误通常发生在 Kubernetes 部署中使用数字环境变量时,Kubernetes 中的所有环境变量必须是字符串类型。解决方法:在环境变量中添加引号或转义字符,以避免 Kubernetes 将它们解释为数字类型,例如更改为“”或更改为 \。

代码语言:yaml copy apiVersion:apps / v1kind:Deploymentmetadata:名称:my-deploymentspec:replicas:3选择器:matchLabels:app:my-app模板:元数据:标签:app:my-app规范:容器:-名称:my -容器图像:my-image 环境:-名称:MY_VAR 值:“”5。处理错误报告 在 env 变量部分的数字上添加双引号并将其转换为字符串。

此处插入图片描述 6. 验证 6.1 修改部署文件 修改 flatnotes.yaml 文件 代码语言:yaml copy######################## ## Aplication## ##################################################- --apiVersion: v1kind: Namespacemetadata: name: flatnotes---apiVersion: apps/v1kind: Deploymentmetadata: labels: app: flatnotes name: flatnotes 命名空间: flatnotesspec:副本: 2 选择器: matchLabels: app: flatnotes 模板: 元数据: 标签: app: flatnotes 规范: 卷: - 名称: 数据 hostPath: 路径: /data/flatnotes/data/ initContainers: - 名称: 卷权限 图像: busybox:1.28 imagePullPolicy: IfNotPresent 命令: - sh - -c - chmod -R /数据/Flatnotes/data/ VolumeMounts: - 名称:数据安装路径:/data/Flatnotes/data/ 容器: - 图像:dullage/Flatnotes:最新名称:my-Flatnotes 端口: - 名称:Web 原型col:“TCP”containerPort:env:-名称:TZ值:“亚洲/上海”-名称:LATNOTES_AUTH_TYPE值:密码-名称:FLATNOTES_USERNAME值:admin-名称:FLATNOTES_PASSWORD值:admin-名称:FLATNOTES_SECRET_KEY值:Nl1rQmfg4gsnJfBfsmkXOo7G-名称:端口值:“”资源:请求:cpu:0.1内存:0.1G限制:cpu:1内存:0.5GvolumeMounts:-名称:数据挂载路径:/data#-名称:config#挂载路径:/etc/config.json ---apiVersion: v1kind: Servicemetadata: name: my-flatnotes namespace: flatnotesspec: ports: - name: web protocol: TCP targetPort: port: nodePort: 0 选择器: app: flatnotes type: NodePort6.2 部署应用使用正确的flatnotes .yaml文件,执行成功代码语言:shell copy [root@k8s-master flatnotes]# kubectl apply -f flatnotes.yamlnamespace/flatnotes returneddeployment.apps/flatnotescreatedservice/my-flatnotesunknown6.3 查看应用的 pod 状态。检查Flatnotes各个资源对象的状态。

均处于正常状态,问题已成功解决。检查 pod 状态代码语言:shell copy [root@k8s-master flatnotes]# kubectl get pods -n flatnotesNAME READY STATUS RESTARTS AGEflatnotes-7fb4bc-5wb8v 1/1 Running 0 2m34sflatnotes-7fb4bc-r5v6b 1/1 Running 0 2m34s 检查部署状态代码语言:shell copy [root@k8s-master flatnotes]# kubectl get deployments.apps -n flatnotes -owideNAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES SELECTORflatnotes 2/2 2 2 3m13s my-flatnotes dullage/flatnotes:latest app =flatnotes 检查服务状态代码语言:shell copy [root@k8s-master flatnotes]# kubectl get service -n flatnotesNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEmy-flatnotes NodePort 10...57 :0 /TCP 16m 我正在参加腾讯科技创造特训营第三期有奖征文比赛。

【k8s 排查】创建 Deployment 时,出现错误“Deployment in version -v1- can not be treat as Depl

站长声明

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

标签:

相关文章

  • 杭州将把创业投资引导基金规模从10亿元扩大到30亿元

    杭州将把创业投资引导基金规模从10亿元扩大到30亿元

    据新华社报道,投资界5月26日消息,为深入实施创新驱动发展战略,充分发挥发挥创业投资促进创新创业的积极作用 杭州市发展改革委、市财政局近日决定,规范杭州市创业投资引导基金运作,扩大引导基金规模从10亿元到30亿元。 杭州市发改委、市财政局联合印发的《杭州市创业投资

    06-18

  • 疯狂的NVIDIA

    疯狂的NVIDIA

    如果要评选年度最热门的公司,NVIDIA一定有一席之地。 2019年生成式AI的爆发,使得一种只在消费电子产品中出现的现象在企业级芯片的采购中很少出现:科技行业的每个人都等待数月并花费大量资金。 购买一个你可能看不到真面目的产品,Nvidia H,这是一款可以在训练 AI 过程中显

    06-18

  • 曹操出行完成38亿元B轮融资,这是今年国内网约车领域首笔股权投资,

    曹操出行完成38亿元B轮融资,这是今年国内网约车领域首笔股权投资,

    据投资界(ID:pedaily)9月6日消息,曹操旅游宣布完成38亿元B轮融资。 人民币。 本轮融资不仅是今年以来网约车公司境内首笔股权投资,也是今年以来网约车旅游公司境内单笔金额最大的融资。 吉利控股集团董事长李书福表示,布局大众出行是吉利科技转型战略的关键举措之一。

    06-18

  • 摩根士丹利或因Facebook上市遭调查

    摩根士丹利或因Facebook上市遭调查

    美国金融业监管局负责人表示,摩根士丹利或面临监管机构调查。 据悉,该分析公司上周在Facebook首次公开募股前向其进行了报告。 机构投资者散布负面消息。 金融业监管局主席及其首席执行官理查德凯彻姆今天在一封电子邮件中表示,如果这些指控属实,将导致投资者对金融业监管

    06-18

  • 刚刚,谷歌又被欧盟罚款113亿人民币

    刚刚,谷歌又被欧盟罚款113亿人民币

    雷锋网消息:北京时间3月20日晚,欧盟反垄断领导人玛格丽特维斯塔格召开新闻发布会,正式宣布谷歌将被罚款14.9亿人民币欧元(约16.9亿欧元)。 因谷歌涉嫌垄断在线搜索广告而被罚款 10 亿美元(1 亿元人民币)。 这是谷歌自2008年以来第三次收到欧盟的反垄断罚款。 在这次会议

    06-18

  • 天山股份利润双双下滑,净利润同比下降7.31%至15.16亿元

    天山股份利润双双下滑,净利润同比下降7.31%至15.16亿元

    天山股份(77.SZ)发布年报。 公司实现营业收入86.92亿元,同比下降10.28%,净利润15.16亿元,同比下降7.31%,加权平均净资产收益率14.26%,基本每股收益1元/股。

    06-18

  • 共享电动汽车再次受到资本青睐, “巴歌旅游”宣布完成2500万元A轮融资,

    共享电动汽车再次受到资本青睐, “巴歌旅游”宣布完成2500万元A轮融资,

    据投资界7月18日消息,新能源汽车分时租赁平台“巴歌出行”宣布完成万元A轮融资。 智行创新领投,联想之星跟投。   巴歌旅游CEO孙杨表示,本轮融资将助力其城市扩张和规模化运营,并将其盈利模式快速复制到全国更多城市。    此前,巴歌出行于今年3月获得宝嘉租车1万元天

    06-18

  • 中国联通将率先推出iPhone 4S,中国电信10月开售传闻已破灭

    中国联通将率先推出iPhone 4S,中国电信10月开售传闻已破灭

    10月8日消息,根据业内人士的爆料以及多家投行的预测,苹果刚刚发布的iPhone 4S在中国大陆仍然有其第一家合作伙伴。 首先是中国联通,其次是中国电信。 预计中国电信将晚于中国联通推出CDMA版iPhone 4S。 此前有关中国电信将在10月份销售iPhone 5的传言自然已经破灭。    此

    06-18

  • 麦当劳不再使用一次性餐具,花了两年时间用婴儿奶瓶材料重新设计 - Feel Good每周

    麦当劳不再使用一次性餐具,花了两年时间用婴儿奶瓶材料重新设计 - Feel Good每周

    Feel Good浠嬬粛鑰愬厠鈥滃緟椋庢潵鈥濓紝闆剁⒊鐗╂祦鍥紑鍚汉璞″拰骞筹紝闇?瑕佲?滆湝铚傗?濆棥鍡′袱澹?016骞翠负楹﹀綋鍔宠璁$幆淇濋鍏佛煉hristopher Raeburn锛氭垜瑙佽瘉浜嗕汉浠鍙寔缁椂灏氭?佸害鐨勮浆鍙橈紝鍥炴敹鏉愭枡琚敤鏉ュ埗浣滈珮绔

    06-21

  • 新锐个人护理品牌“Rock Zoo”连续完成两轮千万美元融资,打造年轻一代生活方式品牌

    新锐个人护理品牌“Rock Zoo”连续完成两轮千万美元融资,打造年轻一代生活方式品牌

    新锐个人护理品牌“Rock Zoo”近日完成融资数千万美元A轮和A+轮融资,其中A轮融资由明讯资本领投,源码资本跟投; A+轮融资由创新工场领投,先锋长青、源码资本、清流资本跟投。 本次募集资金将主要用于研发投入、产品拓展、品牌建设、团队储备和扩张。 Rock Zoo于今年1月开设

    06-17

  • 解码乐居机器人:一支年轻的科技创新团队破茧而出

    解码乐居机器人:一支年轻的科技创新团队破茧而出

    在世界机器人大会上,工信部部长苗圩强调“加快机器人产业发展是机器人产业发展的重要方向”制造业高质量发展。 发展过程中面临诸多问题和挑战。 机器人产业关键核心技术有待进一步提升,应用场景和领域有待进一步拓展。 “我国的机器人产业发展到现在,已经有很多多年掌握核

    06-18

  • 滴滴进军俄罗斯市场,鞑靼斯坦成为走出去的第一站

    滴滴进军俄罗斯市场,鞑靼斯坦成为走出去的第一站

    投资界(ID:pedaily)7月28日消息,据共和国投资发展局官网发布的消息鞑靼斯坦共和国,滴滴最近已聘请司机为喀山市提供出行服务做准备。 喀山将成为滴滴进军俄罗斯市场的第一站。 周五,俄罗斯机密信息网络Avito发布了滴滴在喀山招募司机的通知。 。 通知显示,“孔夫子”公

    06-18