当前位置: 首页 > news >正文

k8s(六)---pod

六、pod(k8s中最小的调度单元)

pod中可以有一个或多个容器

1、官网

2、简介

Pod是k8s中最小的调度单元、Pod具有命名空间隔离性

3、如何创建一个Pod资源(主要两种方式)

1)kubctl run

①kubectl run nginx–image=registry.cn-chengdu.aliyuncs.com/qzcsbj/nginx:1.16.1

命令含义:
run后面是指定pod的名称,–是指定容器里面image的镜像。
kubectl get po可以查看到刚才创建的pod,此容器还没创建好,ready是0/1,两侧为1就表示容器已经起好。

在这里插入图片描述

kubectl get po -owide可以进行访问pod,直接通过pod的ip来访问nginx,此处可以看到是调度在k8s-node02这个节点。
这个pod的ip是172开头
在这里插入图片描述

不常用,因为如果要写很多参数不方便
一般是获取yaml方式

2)yaml文件

此处可以通过运行的pod进行来获取
在k8s文件中,所有的资源都可以使用一个yaml配置文件来创建。

kubectl get po 后面可以进行加名字,如果不加名字,就要将所有pod列出来。

在这里插入图片描述

①获取yaml方式是通过-oyaml,kubectl get po nginx -oyaml > nginx.yaml

在这里插入图片描述

以下就是pod的yaml文件

在这里插入图片描述

以上的yaml文件做了以下浓缩
pod的yaml文件压缩主要内容
在这里插入图片描述
在这里插入图片描述

②压缩后的yaml文件解释(简单的pod的yaml文件)

apiVersion:v1
kind:Pod
metadata:
name:
spec:
contains:
-name:nginx
image:registry.cn-chengdu.aliyuncs.com/qzcsbj/nginx:1.16.1
ports:
-containerPort:80

第一行是api版本
第二行是创建资源的类型
第三行metadata是源数据
第四行是要创建的pod(nginx)的名称
第五行spec是创建资源的规格,
第六行 contains,表示可以加多个容器,一个pod是由一个或多个容器组成nginx,和上面的nginx有不一样的地方。
第七行是 -name 表示列表,第一个容器的定义,此处的name也是nginx,此处的name表示容器的name叫nginx,一个pod中可以有多个容器,容器之间的name不一样。这个name是来区分不同容器。
第八行是镜像,容器使用的镜像。
第九、十行容器端口,容器端口80

③创建pod:https://kubernetes.io/zh-cn/docs/concepts/workloads/pods/,不知怎么写,可以参考官网。

在这里插入图片描述

④若不知每一行是什么含义,可以通过kubectl explain 进行查看每一行含义

列如:
想看pod的yaml文件中image的含义:kubectl explain po.spec.containers

在这里插入图片描述

⑤通过yaml文件创建pod:kubectl apply -f nginx-pod.yaml

在这里插入图片描述
也是可以访问的
在这里插入图片描述

以上两种方式都是可以的,建议用yaml文件创建pod

4、查看pod

4.1kubectl get po

kubectl get po

4.2kubectl get po -owide查看pod扩展信息(查看pod调度到哪个节点或者pod的ip)

在这里插入图片描述

4.3kubectl get -f nginx-pod.yaml

和kubectl get po看到的结果是一样的

在这里插入图片描述

创建pod时可以通过yam文件 -f创建,查看时也可以通过 -f进行查看

5、进入容器

5.1单容器

进入nginx的pod容器
kubectl exec -it nginx --bash

在这里插入图片描述

5.2多容器(pod中既有nginx,也有tomcat容器,但是想要进入tomcat容器,即需要加参数 -c)

指定进入tomcat的容器
kubectl exec -it nginx -c tomcat --bash

5.3补充

没有bash就用sh
kubectl exec -it calico-node-g8hsp -n kube-system --sh

5.4(有的时候想要获取容器的信息,可以不进入容器,直接执行容器里面的命令)

– 后面跟上要执行的命令即可
如想看环境变量

kubectl exec nginx – env

在这里插入图片描述

如想看进入容器后的路径
kubectl exec nginx – pwd

在这里插入图片描述

6、删除pod kubectl delete po pod_name

6.1也可以通过yaml文件进行删除 kubectl delete -f nginx-pod.yaml

6.2删多个 kubectl po busybox busybox2 nginx

7、日志kubectl logs

7.1格式kubectl logs -f POD_NAME -n POD_NAMESPACE

kubectl logs -f nginx
kubectl logs -f nginx-fc84677f-fxb47 --tail 10

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Material-UI】Checkbox 组件中的 Label Placement 设置详解
  • 基于SpringBoot+Vue的校园失物招领系统(带1w+文档)
  • 【产品经理】产品经理的产出有哪些?产品方案解决方案有哪些?
  • 零基础5分钟上手谷歌云GCP核心云开发技能 - 搭建和维护高可用数据库集群
  • 【JavaScript】数组四大方法命名 得push pop shift unshift的原因 和功能
  • cookie与session的区别+springboot使用
  • i2c讲解以及zyqn中的使用
  • vue的diff算法的【双端比较】策略
  • C++中如果函数a的参数是class v,class z是v的子类,可否将z的对象当参数传给函数a,可以
  • SystemUI plugin 开发
  • 2024年中职语文统编教材线上培训答案
  • 多线程 02:线程实现,创建线程的三种方式,通过多线程下载图片案例分析异同(Thread,Runnable,Callable)
  • python 文件打开、读、关闭练习
  • 【物联网】微信小程序ios如何自动打开蓝牙
  • Django Rest Framework -解析器
  • 【React系列】如何构建React应用程序
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • 4个实用的微服务测试策略
  • docker容器内的网络抓包
  • ECS应用管理最佳实践
  • express + mock 让前后台并行开发
  • extract-text-webpack-plugin用法
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • PHP 7 修改了什么呢 -- 2
  • Spring框架之我见(三)——IOC、AOP
  • Travix是如何部署应用程序到Kubernetes上的
  • Vue官网教程学习过程中值得记录的一些事情
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 百度小程序遇到的问题
  • 大型网站性能监测、分析与优化常见问题QA
  • 复习Javascript专题(四):js中的深浅拷贝
  • 技术发展面试
  • 聊聊hikari连接池的leakDetectionThreshold
  • 前端知识点整理(待续)
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 使用SAX解析XML
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 应用生命周期终极 DevOps 工具包
  • RDS-Mysql 物理备份恢复到本地数据库上
  • 大数据全解:定义、价值及挑战
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • ​iOS安全加固方法及实现
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • ​虚拟化系列介绍(十)
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #QT 笔记一
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (二) 初入MySQL 【数据库管理】
  • (二)JAVA使用POI操作excel
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (四)activit5.23.0修复跟踪高亮显示BUG
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解