当前位置:首页 » 《随便一记》 » 正文

【云原生】k8s声明式资源管理

25 人参与  2022年12月20日 18:25  分类 : 《随便一记》  评论

点击全文阅读


内容预知

 1.资源配置清单的管理

1.1 查看资源配置清单 

1.2 修改资源配置清单并应用

 离线修改

  在线修改

1.3 删除资源配置清单

 2.自主编写资源清单

 2.1 初步认识资源清单中svc的重要配置项

2.2 手动编写 svc资源配置 

3.手动生成模板,再编写资源清单 

(1)生成模板 

 (2)修改并编写模板


 1.资源配置清单的管理

资源清单的编写管理,都是基于yaml编写的格式,对yaml文件的编写,我在前面的博客中有详细介绍过:

 【云原生】Docker-compose单机容器集群编排_站在这别动,我去给你买橘子的博客-CSDN博客icon-default.png?t=M85Bhttps://blog.csdn.net/qq_62462797/article/details/128052363?spm=1001.2014.3001.5501

 

1.1 查看资源配置清单 

 

kubectl get deployment nginx -o yaml//解释资源配置清单kubectl explain deployment.metadata

 

 

 

 

 

1.2 修改资源配置清单并应用

 离线修改

 

 离线修改的过程:

(1)首先将配置资源导入通过重定向符号导入到yaml文件中

(2)通过vim编辑器进行yaml配置文件,删除多余的选项,修改配置项,进行保存

 (3) 通过apply -f  该yaml 文件 或者是   (先  deleter -f 该yaml文件,再create -f 该yaml 文件)

 用来实现声明式离线修改资源清单的配置

create与apply的区别:

 create和apply都能运用于资源模板的创建,但是create创建资源模板属于固定式的资源配置,一旦创建,后期想要修改时,就只能通过先delete删除资源模板,再进行create创建,达到资源更新的效果。

而apply属于一种实时更新使用的创建模板方式,后期对资源模板的配置文件进行修改时,只需要先修改配置文件,再使用apply -f 指定配置文件即可。

但是apply并不是什么情况下都能生效使用。如果你发现配置并不生效,而且与书写格式无关,则

可以先delete -f 该配置文件,再create -f 该配置文件

修改yaml文件,并用kubectl apply -f xxxx.yaml 文件使之生效注意:当apply不生效时, 先使用delete清除资源,再apply创建资源kubectl get service nginx -o yaml > nginx-svc.yamlvim nginx-svc.yaml    #修改port:8080kubectl delete -f nginx-svc.yaml  #删除yaml文件kubectl apply -f nginx-svc.yaml   #应用yaml文件kubectl get SVC

 

 

 

 

 

 

  在线修改

直接使用kubectl edit service nginx 在线编辑资源配置清单并保存退出即时生效( 如port: 9000)此修改方式不会对yaml文件内容修改

 

 

 

 

1.3 删除资源配置清单

陈述式删除:Kubernetes 支持YAML和JSON格式管理资源对象JSON 格式:主要用于api接口之间消息的传递YAML格式:用于配置和管理,YAML 是一种简洁的非标记性语言,内容格式人性化,较易读kubectl delete pods nginx声明式删除kubectl delete -f nginx-svc.yaml

 2.自主编写资源清单

 2.1 初步认识资源清单中svc的重要配置项

 

Service yaml文件详解apiVersion: v1kind: Servicematadata:                                #元数据  name: string                           #service的名称  namespace: string                      #命名空间    labels:                                #自定义标签属性列表    - name: string  annotations:                           #自定义注解属性列表      - name: stringspec:                                    #详细描述  selector: []                           #label selector配置,将选择具有label标签的Pod作为管理                                          #范围  type: string                           #service的类型,指定service的访问方式,默认为                                          #clusterIp  clusterIP: string                      #虚拟服务地址        sessionAffinity: string                #是否支持session  ports:                                 #service需要暴露的端口列表  - name: string                         #端口名称    protocol: string                     #端口协议,支持TCP和UDP,默认TCP    port: int                            #服务监听的端口号    targetPort: int                      #需要转发到后端Pod的端口号    nodePort: int                        #当type = NodePort时,指定映射到物理机的端口号  status:                                #当spce.type=LoadBalancer时,设置外部负载均衡器的地址    loadBalancer:                        #外部负载均衡器          ingress:                           #外部负载均衡器         ip: string                       #外部负载均衡器的Ip地址值        hostname: string                 #外部负载均衡器的主机名

 

 

2.2 手动编写 svc资源配置 

 

编写service服务的资源清单vim nginx-server.yamlapiVersion: v1kind: Servicemetadata:  name: nginx-svc  namespace: default  labels:    app: nginxspec:  type: NodePort  ports:  - port: 80    targetPort: 80    nodePort: 30080  selector:    app: nginx#创建资源对象kubectl create -f nginx-service.yaml#查看创建的servicekubectl get svc补充:详解k8s中的port●portport是k8s集群内部访问service的端口,即通过clusterIP: port可以从Pod所在的Node. 上访问到service ●nodePortnodePort是外部访问k8s集群中service的端口,通过nodeIP: nodePort 可以从外部访问到某个service。●targetPorttargetPort是Pod的端口,从port或nodePort来的流量经过kube-proxy 反向代理负载均衡转发到后端Pod的targetPort上,最后进入容器。●containerPortcontainerPort是Pod内部容器的端口,targetPort映射到containerPort

 

 

 

 

3.手动生成模板,再编写资源清单 

 

(1)生成模板 

用--dry-run命令生成yaml资源清单kubectl run --dry-run 打印相应的 API 对象试运行而不执行创建#空跑测试kubectl run nginx-svc2 --image=nginx:1.17  --port=80 --dry-run=client#空跑测试的输出结果kubectl run nginx-svc2 --image=nginx:1.17  --port=80 --dry-run=client -o yaml#生成模板kubectl run nginx-svc2 --image=nginx:1.17  --port=80 --dry-run=client -o yaml >nginx-svc2.yaml

 

 

 

 

 (2)修改并编写模板

 

vim nginx-svc2.yaml kubectl apply -f nginx-svc2.yamlkubectl get pods

 

 

 

 

 


点击全文阅读


本文链接:http://zhangshiyu.com/post/50049.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 林语熙周晏京(离婚后,老公天天跪求复合全集阅读)最新章节免费在线阅读_《离婚后,老公天天跪求复合全集阅读》最新热门小说 -
  • 顾绫雪嬴政《被始皇读心后,文武百官卷疯了!完结版阅读》完整版免费在线阅读_(顾绫雪嬴政)全集免费阅读 -
  • 情深意长皆成空完整版阅读(沈卿林砚辞)抖音热文_《情深意长皆成空完整版阅读》最新章节免费在线阅读 -
  • 姐姐为暴富重伤傅家金孙后火葬场了全集阅读小说(傅延江瑶)全文免费阅读无弹窗大结局_(姐姐为暴富重伤傅家金孙后火葬场了全集阅读免费阅读全文大结局)最新章节列表_笔趣阁(姐姐为暴富重伤傅家金孙后火葬场了全集阅读) -
  • 乔以诺萧瑾淮(不是你好是我好全集阅读)精彩试读_《不是你好是我好全集阅读》全本阅读 -
  • 白月光双双《重生后我成全老公和白月光,他却急了全集》全文免费阅读无弹窗大结局_(白月光双双)最新章节免费在线阅读 -
  • 苏小枫苏末小说免费笔趣阁_苏小枫苏末小说全章完本大结局
  • 死遁后他疯了最新小说全文阅读_最新免费小说沈轻洲林梦江之雪_完本小说(死遁后他疯了)
  • 免费小说《顾里宋婷婷小岳欧颖倩》已完结(顾里宋婷婷小岳欧颖倩)热门小说大结局全文阅读笔趣阁
  • 侄子为求富贵,变性后全家后悔最新小说_免费小说全文阅读(苏小枫苏末)_侄子为求富贵,变性后全家后悔苏小枫苏末小说推荐完结
  • 最新《沈轻洲林梦江之雪》小说(全集完整新上小说大结局(沈轻洲林梦江之雪))全文阅读笔趣阁
  • 拒绝嫁给姐夫后,我在八零年代暴富了(陈小棠沈正韩)阅读 -

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1