k8s(六)---pod

news2024/9/24 3:29:31

六、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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1981953.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

k8s(七)---标签

一、标签(适用于资源定位) label是一对key和value,创建标签后,方便对资源进行分组管理。 1.帮助 kubectl label --help 2.打标签 pod 针对于pod打标签 key是env,value是test kubectl label po nginx envtest 给pod打标签 3.查看 k…

Qcustomplot绘制实时动态曲线??

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

uviewPlus 组件库的使用

文章目录 1、 1、 全局引入样式文件 (该语句是文档中提及但是不存在的语句)

mysql的安装配置与基础用户使用

第五周 周一 早 mysql安装配置 1.官网下载或者wget [rootmysql ~]# ls anaconda-ks.cfg initserver.sh mysql-8.0.33-1.el7.x86_64.rpm-bundle.tar mysql-community-client-8.0.33-1.el7.x86_64.rpm mysql-community-client-plugins-8.0.33-1.el7.x86_64.rpm mysql-c…

Dockerfile 容器镜像制作 私有仓库

Dockerfile 概述 制作镜像 FROM CMD # ENTRYPOINT 与 CMD 执行方式为 ${ENTRYPOINT} ${-${CMD}} apache 镜像 nginx 镜像 php-fpm 镜像 docker 私有仓库

单位工作邮箱如何实现快速开通

单位工作邮箱如何实现快速开通?单位工作邮箱快速开通需分析需求、选合适服务商、备材料、注册验证配置MX记录、创账户。开通前需测试邮件收发、功能及安全,确保稳定运行。本文将详细介绍单位工作邮箱的前期准备以及快速开通的流程。 一、需求分析与规划…

有了谷歌账号在登录游戏或者新APP、新设备时,要求在手机上点击通知和数字,怎么办?

有的朋友可能遇到过,自己注册或购买了谷歌账号以后,在自己的手机上可以正常登录,也完成了相关的设置,看起来一切都很完美,可以愉快地玩耍了。 但是,随后要登录一个游戏的时候(或者登录一个新的…

[Web安全架构] HTTP协议

文章目录 前言1. HTTP1 . 1 协议特点1 . 2 URL1 . 3 Request请求报文1 . 3 .1 请求行1 . 3 .2 请求头1 . 3 .3 请求正文1 . 3 .4 常见传参方式 1 . 4 Response响应报文1 . 4 .1 响应行1 . 4 .2 响应头1 . 4 .3 响应正文 2. Web会话2 .1 Cookie2 .2 Session2 .3 固定会话攻击 前…

TypeScript循环

循环 循环 一直重复的做某一件事 循环需要的必须条件:1.开始条件 2.结束条件3.变量的更新 while循环允许程序在满足特定条件时重复执行一段代码块,直到条件不再满足为止 结构:while(条件表达式){ //需要重复执行的代码块 } let a:numb…

【ESP01开发实例】-ESP-01网络天气数据获取

ESP-01网络天气数据获取 文章目录 ESP-01网络天气数据获取1、硬件准备与接线2、天气数据获取准备3、代码实现在本文中,将展示如何使用 ESP8266 (ESP-01) Wi-Fi 模块构建一个简单的互联网气象站。 ESP8266 可以访问互联网(网页)并从为全球许多城市提供免费天气信息的网站获取…

监控员工电脑的软件有哪些?四款监控员工电脑的软件分享!

古之治事,必明察秋毫,以驭群才。今之世,科技日新,监控之术亦随之而变。有软件四款,专司员工电脑之监,以助上司洞察细微,安内攘外。今略陈其要,尤以“安企神”为详。 一、安企神软件 …

Linux笔记 --- 传统链表

目录 链表 单向链表 单向循环链表 双向链表 设计表 初始化 在auchor后插入节点, 在auchor前插入节点 删除节点 传统链表 通过使用链表我们可以将一个数组中的数据分开到不同位置存放并使用指针指向他们,使之逻辑相连,解决了顺序存储所需要…

软件更新中的风险识别与质量保证机制分析

​ ​ 您好,我是程序员小羊! “微软蓝屏”事件暴露了网络安全哪些问题? 近日,一次由微软视窗系统软件更新引发的全球性“微软蓝屏”事件,不仅成为科技领域的热点新闻,更是一次对全球IT基础设施韧性与安全性…

ChatTTS文本转语音本地部署结合内网穿透实现远程使用生成AI音频

文章目录 前言1. 下载运行ChatTTS模型2. 安装Cpolar工具3. 实现公网访问4. 配置ChatTTS固定公网地址 前言 本篇文章主要介绍如何快速地在Windows系统电脑中本地部署ChatTTS开源文本转语音项目,并且我们还可以结合Cpolar内网穿透工具创建公网地址,随时随…

Rabbitmq的死信队列与如何利用死信队列实现延迟队列

如果设置了队列的 TTL 属性,那么一旦消息过期,就会被队列丢弃(如果配置了死信队列被丢到死信队列中)。而如果仅设置消息的 TTL 属性,即使消息过期,也不一定会被马上丢弃,因为消息是否过期是在即将投递到消费者之前判定…

Unity复制资源目录并添加新的引用关系

有时候需要复制一个场景目录制作新的场景,打包场景也是独立资源,不希望资源复用。我们直接使用CtrlD复制资源,里面的预设,材质等都还是指向原有的,所以废话不多说,直接上代码。 操作窗口 首先是制作一个复…

电机控制器功率模块液冷散热参数计算

电机控制器功率模块液冷散热参数计算 1.概述2.热量与流量的关系3.功率模块损耗发热量计算4.案例计算 1.概述 该文档做为评估分析电机控制器功率模块在液冷散热条件下的相关参数参考计算说明。 2.热量与流量的关系 首先我们要确认产生热量的位置和数量。对于电机控制器来说&am…

DyFusion:基于动态融合的交叉注意三维目标检测 论文解析

目录 概况 创新点详解 1、跨注意力动态融合 Cross-Attention Dynamic Fusion (1)特征提取 (2)体素特征编码 (3) BEV特征提取 (4)特征动态融合 ①线性变换 ②对Q(BEV特征)和…

【CNN】卷积神经网络的相关介绍及计算

文章目录 传统神经网络结构卷积神经网络结构输入的区域大小计算特征值卷积结果计算公式卷积参数共享池化层最大池化特征图变化经典网络 传统神经网络结构 传统神经网络(左边的图2D的)可以叫wxb、全连接层、FC、MLP、多层感知机、多个线性层堆在一起&…

Python 爬虫入门(八):爬虫工程化及Scrapy简介「详细介绍」

Python 爬虫入门(八):爬虫工程化及Scrapy简介「详细介绍」 前言1. Python1.1 Python 简介1.2 Python 爬虫的优势1.3 必须掌握的 Python 基础知识1.3.1 基本语法1.3.2. 函数和模块1.3.3 文件操作1.3.4 数据处理1.3.5 类和对象1.3.6 异常处理 2…