Pod 调度基础

2024-08-23 11:52
文章标签 基础 调度 pod

本文主要是介绍Pod 调度基础,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.1.复制控制器 (replicationcontroller   rc) : 让你的pod的副本数,保存在你的预期值  , 几乎不用了做副本用

提前编辑好文件

1.创建

kubectl apply -f replicationcontroller-nginx.yaml

2.查看

kubectl get pod

3.删除一个pod并立即查看pod状态

kubectl delete pod nginx-9g78r -n default

4.删除 replicationcontroller

kubectl delete -f  replicationcontroller-nginx.yaml

标签选择器 :》标签
  标签定义的方式:
      基于等时的定义
      基于键值对定义方式:app: nginx
      基于集合的标签定义方式: (key: app,operator In,values:[nginx])
       app:nginx
       app:apache

2.1复制集控制器
deployment (部署) (无状态集控制器)
       滚动更新,他能够管理复制集控制器
       

2.创建RS

kubectl create -f replicaset-example.yaml   //提前编辑好yaml
查看
kubectl get pod
删除
kubectl delete -f replicaset-example.yaml

3.1无状态服务:nginx, apache, [tomcat]     特性:不会在本地存储持久化数据,没有依赖性

1.编写Deployment

vim nginx-deployment

2.使用kubectl create创建Deployment

kubectl create -f nginx-deployment.yaml

3.查看状态

kubectl get deploy

4.使用rollout查看整个Deployment的创建过程状态

kubectl rollout status deployment/nginx-deployment

5.查看这个Deployment 对应的RS

kubectl get rs -l app=nginx

6.查看Deployment创建的pod

kubectl get pods --show-labels

3.2更新Deployment

7.更新pod的image

kubectl set image deployment nginx-deployment nginx=nginx:1.9.1 --record
kubectl set image deployment nginx-deployment nginx=nginx:1.12.0 --record

(3)查看某次更新的详情

kubectl rollout history deployment/nginx-deployment --revision=2


4)回滚到指定版本

kubectl rollout undo deployment/nginx-deployment --to-revision=2


查看:

kubectl rollout history deployment/nginx-deployment


(5)回滚到上次版本
 

kubectl rollout undo deployment/nginx-deployment

4:扩容 deployment
(1)调整 pod 的副本数

kubectl scale deployment.v1.apps/nginx-deployment --replicas=3


查看

kubectl get pods

有状态集控制器:,mysql,redis,kafka  有依赖
有两种删除方式
       非级联删除:kubectl delete statefulset redis-sts --cascade=false
       级联删除: kubectl delete statefulset redis-sts

(2)创建 statefulset

kubectl create -f redis-statefulset.yaml


(3)查看statefilset 状态

kubectl get sts


(4)查看群集状态

kubectl get service
kubectl get poapp=redis-sts

2:statefulset扩容
(1)扩容,将副本数修改为 3
 

kubectl scale sts redis-sts --replicas=3



守护进程集控制器 (缩写ds)    
特点:副本数和node节点数相同

3:创建 Daemonset

kubectl create namespace dev
kubectl create -f daemonset-nginx.yaml


4:查看 Daemonset

kubectl get ds -n dev -o wide

5.删除DaemonSet

kubectl delete ds pod-controller -n dev


五:CronJob
Cronjob(计划任务,缩写为 cj)用于以时间为基准的周期性地执行任务,这些自动化任务和运行在 Linux系统上的 CronJob 一样


1:创建 cronJob
(2)创建cronjob

kubectl create -f cronjob-example.yaml


(3)查看
 

kubectl get cj

等待一会后可以查看生成的 pod
 

这篇关于Pod 调度基础的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1099306

相关文章

C#基础之委托详解(Delegate)

《C#基础之委托详解(Delegate)》:本文主要介绍C#基础之委托(Delegate),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 委托定义2. 委托实例化3. 多播委托(Multicast Delegates)4. 委托的用途事件处理回调函数LINQ

Java时间轮调度算法的代码实现

《Java时间轮调度算法的代码实现》时间轮是一种高效的定时调度算法,主要用于管理延时任务或周期性任务,它通过一个环形数组(时间轮)和指针来实现,将大量定时任务分摊到固定的时间槽中,极大地降低了时间复杂... 目录1、简述2、时间轮的原理3. 时间轮的实现步骤3.1 定义时间槽3.2 定义时间轮3.3 使用时

springboot的调度服务与异步服务使用详解

《springboot的调度服务与异步服务使用详解》本文主要介绍了Java的ScheduledExecutorService接口和SpringBoot中如何使用调度线程池,包括核心参数、创建方式、自定... 目录1.调度服务1.1.JDK之ScheduledExecutorService1.2.spring

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

深入理解Apache Airflow 调度器(最新推荐)

《深入理解ApacheAirflow调度器(最新推荐)》ApacheAirflow调度器是数据管道管理系统的关键组件,负责编排dag中任务的执行,通过理解调度器的角色和工作方式,正确配置调度器,并... 目录什么是Airflow 调度器?Airflow 调度器工作机制配置Airflow调度器调优及优化建议最

MySQL中my.ini文件的基础配置和优化配置方式

《MySQL中my.ini文件的基础配置和优化配置方式》文章讨论了数据库异步同步的优化思路,包括三个主要方面:幂等性、时序和延迟,作者还分享了MySQL配置文件的优化经验,并鼓励读者提供支持... 目录mysql my.ini文件的配置和优化配置优化思路MySQL配置文件优化总结MySQL my.ini文件

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

AI基础 L9 Local Search II 局部搜索

Local Beam search 对于当前的所有k个状态,生成它们的所有可能后继状态。 检查生成的后继状态中是否有任何状态是解决方案。 如果所有后继状态都不是解决方案,则从所有后继状态中选择k个最佳状态。 当达到预设的迭代次数或满足某个终止条件时,算法停止。 — Choose k successors randomly, biased towards good ones — Close