k8s-Pod

1、Pod 简介:

(1) 概念:

Pod 是 Kubernetes 中创建和管理的,最小的可部署的计算单元。Pod中存储了一组(一个或多个)容器,以及怎样运行这些容器的声明,这些容器共享存储、网络和环境(Pod 中的容器不是隔离的,而是被统一调度的)。

Pod 中的容器通常被自动安排到集群中的同一物理机或虚拟机上,并可以一起进行调度。

(2) 如何使用 Pod:

① 运行单个容器的 Pod:"一个 Pod 一个容器" 模型,可以将 Pod 看作单个容器的包装器,并由 Kubernetes 直接管理 Pod。

② 运行多个协同工作的容器 的 Pod: 位于同一 Pod的容器形成单个内聚的服务单元,例如一个容器将文件从共享卷提供给公众, 另一个容器则刷新或更新这些文件。 Pod 将这些容器和存储资源打包为一个可管理的实体。

2、Pod 基本操作:

(1) 常用命令:

① 查看默认命名空间的 pod

kubectl get pods / pod / po

● k8s集群创建后存在两个命名空间:default 和 kube-system

② 查看指定命名空间的 pod

kubectl get pods / pod / po -n 命名空间名称

③ 查看所有命名空间的 pod:

kubectl get pods / pod / po -A

④ 查看默认命名空间下 pod 的详细信息:

kubectl get pods -o wide

⑤ 查看所有命名空间下 pod 的详细信息:

kubectl get pods -o wide -A

⑥ 实时监控 pod 的状态:

kubectl get pod -w

(2) 创建 Pod:

① 以命令方式创建:

pod:kubectl run nginx(pod名) --image=nginx:1.19

container:docker run --name nginx nginx:1.19

② 声明式创建:

把创建 pod 的信息放到配置文件中,一次编写可在任意文件上运行。

● 配置文件需要填写的信息:

apiVersion:指定api版本;

kind:指定配置文件所声明的类型;

metadata:指定pod的元数据,可以指定 pod 名和命名空间;

spec:描述容器的详细信息。

● 编写示例:

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
     - name: nginx
       image: nginx:1.19
       ports:
         - containerPort: 80

● 运行配置文件:

kubectl create -f nginx-pod.yml

kubectl apply -f nginx-pod.yml

create 仅是 pod 不存在时创建,如果已存在则报错 ;apply 不存在创建,存在则更新配置(推荐使用 apply)。

③ 使用 IDEA 插件生成 pod 模版:

在 IDEA 中下载 k8s 插件:

自动生成 pod 模版:

(3) Pod 进阶命令:

① 删除 pod:

根据 pod 名:kubectl delete pod pod名称(kubectl delete pod nginx)

根据配置文件:kubectl delete -f pod.yml

② 进入 pod 中的容器:

kubectl exec -it pod名 -- bash (只进入 pod 中第一个容器)

kubectl exec -it pod名 -c 容器名 -- bash (进入 pod 中指定容器)

③ 查看 pod 日志:

kubectl logs -f pod名

kubect logs -f pod名 -c 容器名(查看 pod 中指定容器的日志)

④ 查看 pod 描述信息:

kubectl describe pod pod名

3、Pod 运行多个容器:

① 创建 pod:

在 IDEA 中远程连接master,编写好 yml 文件后再拖动文件上传到服务器对应的文件夹中

apiVersion: v1
kind: Pod
metadata:
  name: mypod
  labels:
    app: mypod
spec:
  containers:
    - name: nginx
      image: nginx:1.19
      imagePullPolicy: IfNotPresent
      ports:
        - containerPort: 80

    - name: redis
      image: redis:5.0.10
      imagePullPolicy: IfNotPresent
      ports:
        - containerPort: 6379

  restartPolicy: Always

② 运行 pod:

kubectl apply -f mypod.yml

4、pod 的 labels(标签):

(1) 概念:

标签是附加到 Kubernetes 对象(例如 Pod)上的键值对,相当于起一个别名,有了别名可以对 pod 进行过滤和筛选。每个对象都可以定义一组键(key)/值(value)标签,但是每个键(key)对于给定对象必须是唯一的。

(2) 语法:

(3) 标签基本操作:

① 查看标签:

kubectl get pods --show-labels

② 添加标签键值对:

kubectl label pod pod名称 标签键值对

③ 覆盖标签:

kubectl label --overwrite pod mypod env=test

④ 删除标签 (标签键-):

kubectl label pod mypod env-

5、pod 的生命周期:

(1) 概念:

Pod 遵循预定义的生命周期,起始于 Pending 阶段,如果 pod 中至少其中有一个容器正常启动,进入 Running 阶段,之后 Pod 中如果没有容器启动失败则进入 Succeeded 阶段,否则进入 Failed 阶段。Pod 在其生命周期中只会被调度一次(要么是 Succeeded,要么是 Failed)。

(2) pod 阶段:

Pod 的阶段(Phase)是 Pod 在其生命周期中所处位置的简单宏观概述。

当一个 Pod 被删除时,执行一些 kubectl 命令会展示这个 Pod 的状态为 Terminating(终止)。Terminating 并不是 Pod 阶段之一,而是 Pod 终止的期限,默认为 30 秒。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

简易的JS逆向解码

在实战的漏洞挖掘中阅读JS有以下几个作用: 1.JS中存在插件名字,根据插件找到相应的漏洞直接使用 通过控制台大致阅读网站JS代码发现此网页引用了北京的一家公司的代码,并且使用了h-net的框架,接下来我们可以百度这家公司或者是这…

智能优化算法应用:基于水循环算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于水循环算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于水循环算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.水循环算法4.实验参数设定5.算法结果6.参考文…

【精选】SpringMVC简介及其执行流程,参数获取方式

SpringMVC简介 MVC模型 MVC全称Model View Controller,是一种设计创建Web应用程序的模式。这三个单词分别代表Web应用程序的三个部分: Model(模型):指数据模型。用于存储数据以及处理用户请求的业务逻辑。在Web应用中&…

C#基础——语法学习

C#的基本语法 在介绍基本语法之前我们先来大概讲一下创建好的这些文件都是做什么的 .sln文件:将项目和解决方案项结合到一起 .vs文件夹:用来存储当前解决方案中关于用户的设置和自定义项,比如断点,主题等。(一般都将其…

短信打开小程序

获取 URL Scheme | 微信开放文档 静态网站 H5 跳小程序 | 微信开放文档

阿里云SMC迁移RedHat/CentOS 5 内核升级

阿里云SMC迁移RedHat/CentOS 5 内核升级 1. 起因 服务器需要迁移上阿里云,有几台服务器用的是Redhat 5.x,在使用SMC进行迁移时出现以下报错. [2023-12-13 09:50:55] [Error] Check System Info Failed, codeS16_111, msgGet OS Info Failed: [error] grub is too old for C…

工作随记:long类型数据迁移问题小记

文章目录 概要整体解决方法方法一:用COPY的方法:方法二:PL/SQL(如上)方法三:直接就把LONG转换成CLOB类型方法四:exp/imp 技术过程 概要 工作随记:在做技术方案发现客户数据库的表存在与系统表空间&#xf…

OpenAI 承认 ChatGPT 最近确实变懒,承诺修复问题

文章目录 一. ChatGPT 指令遵循能力下降引发用户投诉1.1 用户抱怨回应速度慢、敷衍回答、拒绝回答和中断会话 二. OpenAI 官方确认 ChatGPT 存在问题,展开调查三. OpenAI 解释模型行为差异,回应用户质疑四. GPT-4 模型变更受人事动荡和延期影响 一. Chat…

基于Java SSM框架实现固定设备资产管理系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现固定设备资产管理系统演示 摘要 21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认…

二、结合各种图形库实现各种demo(11-20)

demo地址https://bidding-m.gitee.io/maptalks-test-next/#/ 11、isects 12、right click menu 13、infoWindow 14、image marker 15、multi image marker 16、vector-marker-fill 17、line-gradient-arrow 18、rotated-marker-with-line 19、smoothness-line 20、polygon 欢迎…

orb-slam2学习总结

目录 视觉SLAM 1、地图初始化 2、ORB_SLAM地图初始化流程 3、ORB特征提取及匹配 1、对极几何 2、对极约束 (epipolar constraint) 3、基础矩阵F、本质矩阵E 5、单目尺度不确定性 6、单应矩阵(Homography Matrix) 6.1 什么是单应矩…

干不完的996,加不完的007,浅谈程序员的内卷化

目录 一. 什么是内卷化 二. 程序员的内卷化 2.1. 码农时代 2.2. 开源时代 2.3. 加班文化 三. 如何不被内卷化 3.1. Stay Hungry, Stay Foolish 3.2. 工程能力 3.2.1. 架构 3.2.2. 规范 3.2.3. 管理 3.2.4. 排错 3.3. 学会思考 四. 结尾 一. 什么是内卷化 最近开始…

【算法与数据结构】37、LeetCode解数独

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:本题也是一道困难题,难点在于如何构建数独棋盘,如何检查棋盘的合法性&#xff…

Halcon一维码识别

文章目录 参数连接halcon 自带案例1(设置校验位识别条码)Halcon 自带案例2(设置对比度识别条码)Halcon 自带案例3(存在曲面变形)Halcon 自带案例4(设置条码扫描线)Halcon 自带案例5&…

Linux---Ubuntu操作系统

1. Ubuntu操作系统的介绍 Ubuntu操作系统是属于Linux操作系统中的一种,它是免费、稳定又可以拥有绚丽界面的一个操作系统 2. Ubuntu图形界面的介绍 任务栏 窗口操作按钮 窗口菜单条 任务栏效果图: 窗口操作按钮效果图: 窗口菜单条效果图: 3. 与Windows目录结…

『C++成长记』拷贝构造函数

🔥博客主页:小王又困了 📚系列专栏:C 🌟人之为学,不日近则日退 ❤️感谢大家点赞👍收藏⭐评论✍️ 目录 一、拷贝构造函数 📒1.1拷贝构造函数的概念 📒1.2拷贝构造…

Java项目-瑞吉外卖Day6

导入用户地址功能,为用户添加地址: 添加AddressBook实体类,创建相关service,mapper,serviceImpl,controller类。 controller类直接使用的资料提供的代码。 实现菜品展示移动端开发: 看到前端发…

添加,更换和删除 vSphere License

目录 1. 删除 License2. 添加 License(1)输入许可证密钥(2)编辑许可证名称(3)确认许可证信息 3. 分配/更换 License(1)为 vCenter Server 分配 License(2)为 …

Android : 序列化 Parcelable 简单应用

1.Parcelable 介绍 Parcelable 是 Android 提供的一个序列化接口,用于将数据写入 Parcel,以及从 Parcel 中读取数据。一个类只要实现了这个接口,该类的对象就可以被序列化,主要用于 IPC(进程间通信)、Bind…

产品经理之如何编写竞品分析(医疗HIS系统管理详细案例模板)

目录 一.项目周期 二.竞品分析的目的 三.竞品分析包含的维度 四.如何选择竞品 五.竞品画布 六.案例模板 一.项目周期 在整个项目的周期,产品经理所做的事情主要在项目前期做市场分析、需求调研等,下面一张图概况了整个项目周期产品经理、开发工程师…