网站建设毕业设计中期报告/深圳网站页面设计
一 为什么使用控制器
pod控制器
作用:1.pod类型资源删除,不会重建
2.控制器可以帮助用户监控,并保证节点上运行定义好的pod副本数
3.pod超过或低于用户期望,控制器会创建、删除pod副本数量
控制器类型:
- RS控制器:按照用户期望的副本数量,创建pod, 用户写yaml,定义RS控制器,去定义pod模板,pod按照这个模板去运行
- deployment控制器
- DaemonSet
二 详解rs控制器原理
RS控制器原理:副本数保障、标签选择器
2.1 创建RS控制器
[root@k8s-master ~]# cat rs-nginx.yml
apiVersion: apps/v1
kind: ReplicaSet
metadata:name: nginx-rsnamespace: lxyspec:replicas: 3selector:matchLabels:app: nginxtemplate:metadata:name: nginx-podlabels:app: nginxspec:containers:- name: nginx-containersimage: nginx:1.14.0imagePullPolicy: IfNotPresentports:- name: httpcontainerPort: 80
kubectl create -f rs-nginx.yml
kubectl -n lxy get rs -owide
kubectl -n lxy get pods -l app=nginx -owide
2.2 删除Pod,查看rs如何保障副本数
删掉一个pod,但是会马上创建一个
2.3 pod和rs关系
kubectl -n lxy describe rs nginx-rs
2.4 修改RS控制器
1.对yaml修改副本数,修改资源配置:kubectl apply -f rs-nginx.yml
2.编辑RS控制器:kubectl -n lxy edit rs nginx-rs (有些是无法修改)
三 Deploy控制器与弹性扩缩容
kubectl scale --help
kubectl -n lxy scale --replicas=X rs nginx-rs
root@k8s-master ~]# kubectl -n lxy get pods -owide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nginx-2 1/1 Running 2 5d17h 10.2.20.143 k8s-node13 <none> <none>
nginx-rs-2zhzn 1/1 Running 0 7h25m 10.2.231.96 k8s-node12 <none> <none>
nginx-rs-7p64w 1/1 Running 0 7h25m 10.2.20.146 k8s-node13 <none> <none>
[root@k8s-master ~]# kubectl -n lxy scale --replicas=4 rs nginx-rs
replicaset.apps/nginx-rs scaled
[root@k8s-master ~]# kubectl -n lxy get pods -owide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nginx-2 1/1 Running 2 5d17h 10.2.20.143 k8s-node13 <none> <none>
nginx-rs-2zhzn 1/1 Running 0 7h34m 10.2.231.96 k8s-node12 <none> <none>
nginx-rs-7p64w 1/1 Running 0 7h34m 10.2.20.146 k8s-node13 <none> <none>
nginx-rs-8jf8p 1/1 Running 0 4s 10.2.20.150 k8s-node13 <none> <none>
nginx-rs-k9dvr 1/1 Running 0 4s 10.2.20.149 k8s-node13 <none> <none>
[root@k8s-master ~]# kubectl -n lxy scale --replicas=2 rs nginx-rs
replicaset.apps/nginx-rs scaled
[root@k8s-master ~]# kubectl -n lxy get pods -owide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nginx-2 1/1 Running 2 5d17h 10.2.20.143 k8s-node13 <none> <none>
nginx-rs-2zhzn 1/1 Running 0 7h34m 10.2.231.96 k8s-node12 <none> <none>
nginx-rs-7p64w 1/1 Running 0 7h34m 10.2.20.146 k8s-node13 <none> <none>
nginx-rs-8jf8p 0/1 Terminating 0 12s 10.2.20.150 k8s-node13 <none> <none>
nginx-rs-k9dvr 0/1 Terminating 0 12s 10.2.20.149 k8s-node13 <none> <none>
获取当前rs资源的Yaml: kubectl -n lxy get rs nginx-rs -oyaml
四 Deploy与rs原理
Deployments | Kubernetes
kubectl -n kube-system get deploy coredns -o yaml
[root@k8s-master ~]# cat deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-deploymentnamespace: lxy
spec:replicas: 2selector:matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginximage: nginx:1.14.2ports:- containerPort: 80resources:limits:cpu: 100mmemory: 200Mirequests:cpu: 100mmemory: 200Mi
[root@k8s-master ~]# kubectl get deployments.apps -owide -n lxy
NAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES SELECTOR
nginx-deployment 2/2 2 2 110s nginx nginx:1.14.2 app=nginx
[root@k8s-master ~]# kubectl get rs -n lxy
NAME DESIRED CURRENT READY AGE
nginx-deployment-58df99679c 2 2 2 115s
nginx-rs 2 2 2 8h
[root@k8s-master ~]# kubectl get pods -l app=nginx -n lxy
NAME READY STATUS RESTARTS AGE
nginx-deployment-58df99679c-tqxps 1/1 Running 0 119s
nginx-deployment-58df99679c-zhvcj 1/1 Running 0 119s
nginx-rs-2zhzn 1/1 Running 0 8h
nginx-rs-7p64w 1/1 Running 0 8h
pod和rs和deployment关系
kubectl describe pods nginx-deployment-AAA-XX
kubectl describe rs nginx-deployment-AAA
五 滚动更新详解原理
蓝绿更新:起一个新的Pod+删除一个旧pod,接替就是滚动更新
六 更新镜像版本其他玩法
1.kubectl edit rs资源
2.kubectl scale --replicas=xxx rs rs名
3.edit 编辑deployment资源
4.deployment提供了 修改镜像版本 参数 kubectl set image
七 版本更新与回滚详解
因为rs控制器还在,数据还在 kubectl get rs -owide -w / kubectl get rs -owide -n lxy
#查看版本是1.14.2
kubectl get deployments.apps -n lxy -owide
#修改版本为1.14.1
kubectl -n lxy set image deployment nginx-deployment nginx=nginx:1.14.1
#这时候在查看是1.14.1,使用命令回归后,恢复成1.14.2
kubectl rollout undo deployment nginx-deployment -n lxy
八 详解版本记录号玩法
1.kubectl create -f last-deploy-nginx.yml --record ----创建的时候,记录版本号
2.查看deploy版本信息
kubectl rollout history deployment last-nginx-deployment
kubectl rollout status deployment last-nginx-deployment
kubectl rollout history deployment last-nginx-deployment --revision=2(指定那个版本的镜像信息)
3.指定回滚到哪个版本
kubectl rollout undo deployment last-nginx-deployment --to-revision=1
相关文章:

K8s-控制器
一 为什么使用控制器 pod控制器 作用:1.pod类型资源删除,不会重建 2.控制器可以帮助用户监控,并保证节点上运行定义好的pod副本数 3.pod超过或低于用户期望,控制器会创建、删除pod副本数量 控制器类型&am…...

Meta 发布 LLAMA 3.1;特斯拉无人出租车推迟至 10 月;谷歌将向 Waymo 再投 50 亿美元
先瞧一下 Chat 和 Agent 的差异。 Chat(聊天):纯粹的 Chat,宛如一个主要由“大脑与嘴”组成的智能体,着重于信息处置和语言沟通。诸如 ChatGPT 这般的系统,其能够领会用户的询问,给出有益且连贯…...

C 语言基础概念总结
C 语言基础概念总结 一、数据类型 目录 C 语言基础概念总结 一、数据类型 基本数据类型 构造数据类型 二、变量与常量 三、运算符与表达式 算术运算符 关系运算符 逻辑运算符 赋值运算符 自增自减运算符 四、控制流语句 顺序结构 选择结构 循环结构 五、函数 …...

Django教程(000):初识Django
Django 是一个高级 Python Web 框架,旨在快速开发、简洁、实用。Django 提供了众多内置功能,使得开发者可以专注于编写应用程序的业务逻辑,而不需要过多关注底层细节。以下是 Django 的详细介绍: 1. Django 简介 Django 是一个开放源代码的 Web 框架,由 Python 编写,最…...

SQLynx数据库管理工具
背景:业主对网络安全要求比较高,不提供VPN等远程工具,也不能开放3306端口到互联网。那怎么样运维数据库就是个难题?找到了SQLynx这个可以网页访问的数据库管理工具,给大家分享一下。 1.介绍 SQLynx原名SQL Studio&…...

Java基础06:变量,常量,作用域(狂神说Java)
一.变量 有了static,即类变量,就可以不用new了可以直接调用,类变量之后再细讲 二.常量 三.变量的命名规范...

inflight 守恒建模
去上海博物馆参观古埃及文物展,人太多,体验很差,我可以当讲解员的,但没人听,都只为拍照发圈。 平心而论,老家殷墟可与之一战,建议将殷墟交给国家运营,而不是一个地级市文旅。 无心…...

HarmonyOS NEXT星河版零基础入门到实战
文章目录 一、HarmonyOS NEXT介绍学习内容1、鸿蒙APP开发2、能力套件开发3、全场景开发适合人群 持续更新中✒️总结 一、HarmonyOS NEXT介绍 放弃安卓框架之后,HarmonyOS NEXT成为真正独立于安卓、iOS的操作系统,堪称是一场史无前例的脱胎换骨。在其众多…...

测试开发面试题---JVM
JAVA的内存区域 程序计数器:线程私有的,保存当前线程的字节码文件。JAVA虚拟机栈:包含局部变量信息,用于方法的调用和执行。本地方法栈:与JAVA虚拟机栈类似,但只服务于本地方法。堆:所有线程共…...

python库 - jsonpath
JSONPath 是一种用于从 JSON 数据中提取数据的查询语言,类似于 XML 中的 XPath。它允许通过路径表达式来导航和查询 JSON 结构中的数据。JSONPath 在处理 API 响应、配置文件和复杂数据结构时非常有用。 以下是一些常用的 JSONPath 表达式及其功能: $&…...

[RK3588][Android12] Android->OTA包超过4个G导致打包失败
测试平台 Platform: RK3588 OS: Android12 问题说明: 有的客户需要往系统中内置大量apk,这样就导致最终打包的OTA包超过4个G,从而导致打包OTA的时候报错:Zipfile size would require ZIP64 extensions 解决方法: 可能…...

(雷达数据处理中的)跟踪算法(3) – 可用于目标跟踪实践的数据集介绍解析
说明 本博文作为跟踪算法系列博文的第3篇,对可用于目标跟踪的一份数据集进行了介绍,本文介绍的这份数据集将用于后续博文的目标跟踪实践。读者在阅读本博文前,建议先看看本系列的第一篇博文[1]:(雷达数据处理中的)跟踪…...

【C语言报错已解决】Use of Uninitialized Variable
🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 引言: 在编程中,未初始化的变量是一个常见的问题,它可能导致程序的行为变得不可预测。未初…...

3 Go语言的变量声明
本专栏将从基础开始,循序渐进,由浅入深讲解Go语言,希望大家都能够从中有所收获,也请大家多多支持。 查看相关资料与知识库 专栏地址:Go专栏 如果文章知识点有错误的地方,请指正!大家一起学习,…...

PyMySQL库的使用方法
过程和步骤: 安装 PyMySQL 首先,需要使用 pip 安装 PyMySQL 库: pip install pymysql连接数据库 使用 PyMySQL.connect() 方法可以建立到 MySQL 数据库的连接: import pymysql# 配置数据库连接参数 config {host: localhost…...

iOS 创建一个私有的 CocoaPods 库
创建一个私有的 CocoaPods 库(pod)涉及几个步骤,包括设置私有的 Git 仓库、创建 Podspec 文件、发布到私有仓库等等。以下是详细步骤: 设置私有 Git 仓库 首先,在 GitHub、GitLab 或 Bitbucket 上创建一个新的私有仓库…...

Linux_实现UDP网络通信
目录 1、实现服务器的逻辑 1.1 socket 1.2 bind 1.3 recvfrom 1.4 sendto 1.5 服务器代码 2、实现客户端的逻辑 2.1 客户端代码 3、实现通信 结语 前言: 在Linux下,实现传输层协议为UDP的套接字进行网络通信,网络层协议为IPv4&am…...

C# 代理模式
栏目总目录 概念 代理模式是一种结构型设计模式,它为其他对象提供一种代理以控制对这个对象的访问。在代理模式中,我们创建一个具有现有对象(称为“真实对象”或“被代理对象”)相同功能的代理对象。代理对象可以在客户端和目标对…...

【1】Python机器学习之基础概念
1、什么是机器学习 最早的机器学习应用——垃圾邮件分辨 传统的计算机解决问题思路: 编写规则,定义“垃圾邮件”,让计算机执行对于很多问题,规则很难定义规则不断变化 机器学习在图像识别领域的重要应用: 人脸识别…...

HashMap源码解析
目录 一:put方法流程 二:get方法 三:扩容机制 一:put方法流程 public V put(K key, V value) {return putVal(hash(key), key, value, false, true); }final V putVal(int hash, K key, V value, boolean onlyIfAbsent,boolean evict) {No…...

[Javascript】前端面试基础3【每日学习并更新10】
Web开发中会话跟踪的方法有那些 cookiesessionurl重写隐藏inputip地址 JS基本数据类型 String:用于表示文本数据。Number:用于表示数值,包括整数和浮点数。BigInt:用于表示任意精度的整数。Boolean:用于表示逻辑值…...

C++自定义字典树结构
代码 #include <iostream> using namespace std;class TrieNode { public:char data;TrieNode* children[26];bool isTerminal;TrieNode(char ch){data ch;for (int i 0; i < 26; i){children[i] NULL;}isTerminal false;} }; class Trie { public:TrieNode* ro…...

dockerfile部署wordpress
1.将容器直接提交成镜像 [rootlocalhost ~]# docker commit 8ecc7f6b9c12 nginx:1.1 sha256:9a2bb94ba6d8d952527df616febf3fbc8f842b3b9e28b7011b50c743cd7b233b [rootlocalhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx …...

CSS(二)——CSS 背景
CSS 背景 CSS 背景属性用于定义HTML元素的背景。 CSS 背景属性 Property描述background简写属性,作用是将背景属性设置在一个声明中。background-attachment背景图像是否固定或者随着页面的其余部分滚动。background-color设置元素的背景颜色。background-image把…...

开机出现grub无法进入系统_电脑开机出现grub解决方法
最近有小伙伴问我电脑开机出现grub无法进入系统怎么回事?电脑开机出grub的情况有很多,电脑上安装了Linux和Win10双系统,但是由于格式化删除了Linux之后,结果win10开机了之后,直接显示grub>,无法…...

uboot 设置bootargs配置内核网络挂载根文件系统
uboot 设置bootargs配置内核网络挂载根文件系统 uboot设置bootargs env set bootargs "mem256M consolettyAMA0,115200 root/dev/nfs init/linuxrc nfsrootnfs主机地址:nfs路径/busybox/rootfs_glibc_arm64,prototcp rw nfsvers3 rootwait ip板子地址:nfs主机地址:网关:2…...

Vue3+.NET6前后端分离式管理后台实战(三十一)
1,Vue3.NET6前后端分离式管理后台实战(三十一)...

22集 如何minimax密钥和groupid-《MCU嵌入式AI开发笔记》
22集 如何获取minimax密钥和groupid-《MCU嵌入式AI开发笔记》 minimax密钥获取 https://www.minimaxi.com/platform 进入minimax网站,注册登录后,进入“账户管理”, 然后再点击“接口密钥”,然后再点击“创建新的密钥”。 之…...

决策树的概念
决策树的概念 决策树是一种监督学习算法,主要用于分类任务。它通过构建一棵树结构模型来进行预测,其中每个内部节点表示一个特征属性上的判断条件,每条边代表一个判断结果对应的分支,而叶节点则代表最终的类别标签。 应用领域 …...

C++《类和对象》(中)
一、 类的默认成员函数介绍二、构造函数 构造函数名与类同名内置类型与自定义类型析构函数拷贝构造函数 C《类和对象》(中) 一、 类的默认成员函数介绍 默认成员函数就是⽤⼾没有显式实现,编译器会⾃动⽣成的成员函数称为默认成员函数。 那么我们主要学习的是1&…...