自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 Kubernetes——pod的管理及优化

在kubernetes中,所有的内容都抽象为资源,用户需要通过操作资源来管理kubernetes。kubernetes的本质上就是一个集群系统,用户可以在集群中部署各种服务所谓的部署服务,其实就是在kubernetes集群中运行一个个的容器,并将指定的程序跑在容器中。kubernetes的最小管理单元是pod而不是容器,只能将容器放在Pod中,kubernetes一般也不会直接管理Pod,而是通过Pod控制器来管理Pod的。Pod中服务的访问是由kubernetes提供的Service。

2025-10-21 02:23:11 850

原创 Kubernetes(K8s) —— 部署(保姆级教程)

k8s从1.24版本开始移除了dockershim,所以需要安装cri-docker插件才能使用docker 软件下载: https://github.com/Mirantis/cri-dockerd。: CRI-O的方式是Kubernetes创建容器最直接的一种方式,在创建集群的时候,需要借助于cri-o插件的方 式来实现Kubernetes集群的创建。官方网站: https://github.com/flannel-io/flannel。:默认情况下,K8S在创建集群时使用的方式。

2025-10-19 20:23:14 2104

原创 Kubernetes(k8s) —— 简介

在Docker 作为高级容器引擎快速发展的同时,在Google内部,容器技术已经应用了很多年Borg系统运行管理着成千上万的容器应用。Kubernetes项目来源于Borg,可以说是集结了Borg设计思想的精华,并且吸收了Borg系统中的经 验和教训。Kubernetes对计算资源进行了更高层次的抽象,通过将容器进行细致的组合,将最终的应用服务交 给用户。功能kubernetes的本质是一组服务器集群,它可以在集群的每个节点上运行特定的程序,来对节点中的容器 进行管理。目的是实现资源管理的自动化。

2025-10-18 16:55:18 733

原创 redis 集群——redis cluster(去中心化)

从最开始的一主N从,读写分离,再到Sentinel哨兵机制,单实例的Redis缓存足以应对大多数的使用场景,也能实现主从故障迁移。但是,在某些场景下,单实例存Redis缓存会存在的几个问题:(1)写并发:Redis单实例读写分离可以解决读操作的负载均衡,但对于写操作,仍然是全部落在了master节点上面,在海量数据高并发场景,一个节点写数据容易出现瓶颈,造成master节点的压力上升。

2025-09-11 16:03:02 959

原创 redis集群——哨兵模式

哨兵也叫 sentinel,它的作用是能够在后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库。每个哨兵(Sentinel)进程会向其它哨兵(Sentinel)、 Master、 Slave定时发送消息,以确认对方是否”活”着,如果发现对方在指定配置时间(此项可配置)内未得到回应,则暂时认为对方已离线,也就是所谓的”主观认为宕机” (主观:是每个成员都具有的独自的而且可能相同也可能不同的意识),英文名称: Subjective Down,简称SDOWN。有主观宕机,对应的有客观宕机。

2025-09-10 08:30:00 707

原创 redis集群——主从复制

在这个阶段主节点将自己执行的写命令发送给从节点,从节点接收命令并执行,从而保证主从节点数据的一致性。随着项目访问量的增加,对Redis服务器的操作也越加频繁,虽然Redis读写速度都很快,但是一定程度上也会造成一定的延时,那么为了解决访问量大的问题,通常会采取的一种方式是主从架构Master/Slave,Master 以写为主,Slave 以读为主。如果从节点保存的runid与主节点现在的runid不同,说明从节点在断线前同步的Redis节点并不是当前的主节点,只能进行全量复制。

2025-09-10 08:15:00 740

原创 Mysql集群——MHA高可用架构

MHA(Master HA)是一款开源的 MySQL 的高可用程序,它为 MySQL 主从复制架构提供了automating master failover 功能。MHA 在监控到 master 节点故障时,会提升其中拥有最新数据的slave 节点成为新的master 节点,在此期间,MHA 会通过其它从节点获取额外信息来避免一致性方面的问题。MHA 还提供了 master 节点的在线切换功能,即按需切换 master/slave 节点。

2025-09-09 19:42:10 907

原创 MySQL集群高可用架构——组复制 (MGR)

首先我们将多个节点共同组成一个复制组,在执行读写(RW)事务的时候,需要通过一致性协议层(Consensus 层)的同意,也就是读写事务想要进行提交,必须要经过组里“大多数人”(对应 Node 节点)的同意,大多数指的是同意的节点数量需要大于 (N/2+1),这样才可以进行提交,而不是原发起方一个说了算。​ group_replication_applier:用于来自组传入的更改,是应用直接来自组的事务的通道。组内的所有机器都是 primary 节点,同时可以进行读写操作,并且数据是最终一致的。

2025-09-07 11:49:45 806

原创 MySQL集群——主从复制进阶

在mysql5.5-5.6使用after_commit的半同步模式下,客户端事务在存储引擎层提交后,在得到从库确认的过程中,主库宕机了,此时主库在等待slave ACK的时候,虽然没有返回到当前客户端但是事务已经提交,其他客户端会读取到已经提交的事务,如果slave端还没有读到该事务的events,同时主库发生了crash,然后切换到备库,那么之前读到的事务就不见了。技术,全同步复制就是当主库提交事务之后,所有的从库节点必须收到并且apply这些事务,然后主库线程才能继续后续操作。

2025-09-06 08:45:00 1028

原创 MySQL集群——源码部署、主从复制

主从复制是指将主库的DDL和DML操作通过二进制日志(binlog)传到从库服务器中,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库的数据保持一致。MySQL支持一台主库同时向多台从库进行复制,从库同时也可以作为其他从服务器的主库,实现链状复制。

2025-09-06 08:30:00 312

原创 【Mysql语句练习】

13、从 student 表和 score 表中查询出学生的学号,然后合并查询结果。1、分别查询 student 表和 score 表的所有记录。3、从 student 表中查询计算机系和英语系的学生的信息。4、从 student 表中查询年龄小于 22 岁的学生信息。15、查询都是湖南的学生的姓名、年龄、院系和考试科目及成绩。14、查询姓张或者姓王的同学的姓名、院系和考试科目及成绩。2、查询 student 表的第 2 条到 5 条记录。8、用连接的方式查询所有学生的信息和考试信息。

2025-08-15 22:59:01 412

原创 【Mysql之DML练习】

(10)列出所有部门号为 102 和 103 且不是党员的职工号、姓名。(11)将职工表 t_worker 中的职工按出生的先后顺序排序。(6)创建一个只有职工号、姓名和参加工作的新表,名为工作日期表。(8)列出工资在 4000—8000 之间的所有职工姓名。(2)查询所有职工所属部门的部门号,不显示重复的部门号。(12)显示工资最高的前 3 名职工的职工号和姓名。(15)列出总人数大于等于 3 的部门号和总人数。(9)列出所有孙姓和李姓的职工姓名。(5)列出职工的平均工资和总工资。

2025-08-13 23:38:25 209

原创 【自动化备份全网服务器数据项目】

该项目共分为2个子项目,由环境搭建和实施备份两部分组成该项目旨在复习巩固系统服务部署使用、shell编程等知识,旨在让学生增加知识面,提高项目实习经历,充实简历。

2025-08-12 19:57:39 1225

原创 【MySQL——第三章 :MySQL库表操作】

SQL:结构化查询语言(Structured Query Language),在关系型数据库上执行数据操作、数据检索以及数据维护的标准语言。使用SQL语句,程序员和数据库管理员可以完成如下的任务改变数据库的结构更改系统的安全设置增加用户对数据库或表的许可权限在数据库中检索需要的信息对数据库的信息进行更新#查看所有支持的字符集# 或者使用\g替代定界符分号# \G表示将查询结果进行按列打印,即将查到的结构旋转90度变成纵向显示,不需要分号#查看支持的字符序#通过变量查看。

2025-08-10 14:48:24 1114

原创 【MySQL——第一章:数据库理论】

MySQL是一个小型关系数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被sun公司10亿美金收购。2009年,SUN又被Oracle以74亿美金收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于体积小、速度快、总体拥有成本低,尤其是开放源代码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

2025-08-10 14:12:05 842

原创 【Shell自动化脚本——for循环创建账户,测试主机连通性,for循环密码的修改】

编写脚本for2.sh,使用for循环,通过ping命令测试网段的主机连通性,IP前3段由用户输入,如:输入192.168.48 ,则ping 192.168.48.125-192.168.48.135,将可以ping通的主机IP地址写入到 /tmp/host_up.txt文件中,不能ping通的主机IP地址写入到:/tmp/host_down.txt文件中。(4)编写脚本for3.sh,通过for循环登录主机修改对方root账户密码。(3)多台主机间通过ssh-copy-id进行免密登录。

2025-08-02 15:43:04 349

原创 【Shell脚本自动化编写——报警邮件,检查磁盘,web服务检测】

3、通过查看端口的方式判断该程序是否运行。1、编辑检查磁盘的自动化脚本。3、每天检查一次磁盘剩余空间。1、配置邮件ssl证书。

2025-08-01 21:13:21 379

原创 【Cpolar实现内网穿透】

部署文档:https://dashboard.cpolar.com/get-started。使用nginx建立网站。

2025-07-31 21:38:20 485

原创 【分布式的个人博客部署】

【代码】分布式的个人博客部署。

2025-07-31 02:13:05 1137

原创 【DNS服务配置—实现正反向解析】

综合练习:两个主机一个web服务器,一个dns服务器,实现对web服务器的正反向域名解析。2.dns服务器来实现对sczl文件域名网站的正反向解析。1.web服务器需要传入一个sczl文件,作为网站地址。

2025-07-26 13:54:41 380

原创 【搭建网络服务网站】

(1)学生信息网站只有song和tian两人可以访问,其他用户不能访问。2.给该公司创建三个子界面分别显示学生信息,教学资料和缴费网站,基于,可以访问网站内容为 welcome to openlab!(2)访问缴费网站实现数据加密基于https访问。综合练习:请给mingde搭建web网站。

2025-07-23 01:13:23 336

原创 Linux练习二

在这里插入图片描述](https://i-blog.csdnimg.cn/direct/d7fc2384b40d473993405f01fc28d0bf.png。3.测试是否能免密登录服务端redhat账户。定位第3行,修改为阿里的时间服务地址。在第26行设置谁可以访问本机进行同步。修改第3行为master服务器的地址。1.在服务端新建用户redhat。2.给服务端master上传密钥。2.开机启动服务,并打开服务。表明已连接阿里时间服务器。表示已经连接到服务端。查看redhat账户。

2025-07-19 20:39:21 390

原创 Linux操作系统练习一

atd是单一执行的例行性任务(一次性),crond是循环执行的例行性任务(周期性)

2025-07-18 14:27:00 271

原创 Python练习(7)

有多个科研项目,每个项目需要不同技能的人员,用字典表示,键为项目名,值为所需技能集合。在线游戏中有多个玩家,每个玩家有不同的游戏角色和技能等级,用字典表示,键为玩家名,值为角色和技能等级的字典。一家商店有多个商品的库存信息,以字典形式存储,键为商品名称,值为库存数量。现在需要统计每个学生的平均成绩,并找出平均成绩最高的学生。餐厅有多个菜品分类,每个分类有不同的菜品,用字典表示,键为分类名,值为菜品集合。在一个社交网络中,用户之间的好友关系用字典表示,键为用户名称,值为该用户的好友集合。

2025-05-17 16:56:29 556

原创 Python练习(6)

一个基因是基因组的一个子串,它从三元组ATG后开始并在三元组TAG、TAA或TGA之前结束。此外,基因字符串的长度是3的倍数,而且基因不包含三元组ATG、TAG、TAA和TGA。(1)从左到右对奇数位置的数字进行 ×2 操作,如果结果为两位数,则将两位数加在一起得到一个一位数。编写程序,当用户想输入一段信息时(包含字母、数字、空格,忽略字母大小写),他需要按哪些键?输入两个英文单词,判断其是否为相似词,所谓相似词是指两个单词包含相同的字母。输出结果,为相似词输出YES,否则输出NO。

2025-05-08 23:09:25 789

原创 Python学习笔记(列表相关操作)

无论是内置函数、对象函数,用起来确实很方便,但是作为初学者,你必须懂得它们背后的运行逻辑!所谓的二维列表,其实本质上就是一个一维列表,只不过该一维列表中的每一个元素为其他的一维列表。根据循环的特性来去解决特定的问题,而不是学习循环本身,学算法思想!希尔排序、堆排序、快速排序、归并排序、计数排序、基数排序、桶排序。前提数据必须是有序的(升序、降序),它是二分查找的升级版本。循环之间的好坏其实也有区别,主要在于数据的分布情况。(3)趋于稳定(方差小,相等值比较多)前提数据必须是有序的(升序、降序)

2025-04-14 18:35:20 440

原创 Python学习笔记(列表)

列表是一种有序的可变序列(容器中的元素是可以改变的),它可以容纳任意类型的元素(整数、小数、字符串、布尔、列表、字典、元组…都可以),当然为了方便统一管理和存储,一般都建议存储的是同类型的元素。为什么会存在列表?就是因为不想用多个变量存储多个数据,这样子的话不方便操作。a = 1b = 2c = 1d = 3所谓的列表,就是堆内存中,地址连续且大小相等的一组连续的存储空间列表中,元组之间用逗号分隔,整个列表用方括号[]括起来的。# 创建空列表# 通过list()内置函数创建空列表。

2025-04-14 18:29:54 923

原创 Python笔记(函数基础编程练习)

编写一个函数,计算一个整数各个数字的和,例如 输入234,输出9,因为2 + 3 + 4 = 9。

2025-04-14 18:26:40 481

原创 Python笔记(变量与函数内存分析)

exe.clss总而言之,在Python中,变量(包含函数名)一律存储的数据对象在堆内存中的地址!

2025-04-14 18:24:34 918 1

原创 Python练习(5)

连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], …图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。编程程序,对给定的数组 [1, 2, 3, 4, 5, 6, 7, 8, 9] 进行随机打乱,并输出打乱后的结果。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为 5 和 7 在原数组里被 4 隔开。

2025-04-14 00:35:27 1016

原创 Python练习(4)

(1)使用函数的好处是什么?(2)如何定义一个函数?如何调用一个函数?(3)给出术语函数头、形参、实参的定义(4)无返回值函数能不能有return语句?下面语句中的return函数是否会造成语法错误?(5)编写下面函数的函数头(并指出函数是否有返回值)给定销售额和提成率,然后计算销售提成。给定年份和月份,然后打印该月的日历。计算平方根判断一个数是不是偶数,如果是则返回true。按指定次数打印一条消息。给定贷款额、还款年数和年利率,然后计算月支付额对于给定的小写字母,给出相应的大写字母。(6)确定并改正

2025-04-02 17:02:18 1106

原创 Python练习

答:1,循环的开始:循环从哪里开始,起点一般我们使用变量来标记的2,循环的继续条件:反过来说就是结束条件,用于判断循环是否继续执行的;(循环全部执行完毕,中途结束)3,循环体:需要被重复执行的内容4,循环的控制变量:用于控制循环的进度。

2025-03-30 19:18:29 1119

原创 Python学习笔记(6)

函数也是用于处理重复性代码问题的,这些代码是具有独立功能性的,我们可以将这些类似的代码进行一次封装(函数),之后再想去实现同样的功能时,可以直接复用曾经写到的这个函数。def 函数名(参数列表):函数体return 返回值def :定义函数的关键字函数名:自定义的函数名称,规则与标识符一致的;所有单词字母小写,单词之间用下划线分隔。参数列表:就是给函数传递的一些原始数据,函数根据这些数据去做具体的计算。参数可以不指定数据类型。函数体:就是上述说的具体的计算,今后在编写函数时,

2025-03-24 17:11:46 1863

原创 Python学习笔记(5)

例如:两个台阶,有两种跳法(1+1,2);四个台阶,有五种跳法(1+1+1+1,2+1+1,1+2+1,1+1+2,2+2)延伸【剪刀石头布 I】的问题,利用循环将程序改为,计算机和电脑谁先赢三次,谁就是终极胜利者。输入两个正整数,计算其最大公约数,例如4和2的最大公约数是2,16和24的最大公约数是8。一只青蛙,一次可以跳一个台阶或者两个台阶,现有n个台阶,问该青蛙有多少种不同的跳法?水仙花数,是一个三位数,且这个数的个位、十位和百位的立方和等于该数字本身,例如。如下所示,是一个高度为9的菱形。

2025-03-23 13:24:48 1217

原创 Python学习笔记(4)

(1)循环能够解决的问题如果需要重复执行一些代码的话,就选择使用循环结构(递归)遍历一组数据:将一组数据中的每一个元素都进行访问寻找特定数据:就是在遍历的基础上,对每一个元素进行判断,直到寻找到目标批量处理数据:还是在遍历的基础上,对每一个元素都做相同的操作重复指定次数:重复跟一组数据没关系,就是重复执行直到条件满足或者不满足模拟数学规律:就是将数学当中的一些经典问题,可能需要用到循环来解决(2)循环四要素循环的开始:循环从哪里开始,起点一般我们使用变量来标记的。

2025-03-23 13:23:15 1269

原创 Python学习笔记(3)

BMI是根据体重测量健康的方式,通过以千克为单位的体重除以以米为单位的身高的平方计算而出。(1)输入的数字和随机产生的数字完全相同(包括顺序),奖金为10000元。输出有三行,第一行输出计算机出的啥,第二行输出用户出的啥,第三行输出结果。(2)输入的数字和随机产生的数字相同(不包括顺序),奖金为3000元。(3)输入的数字和随机产生的数字有一位数相同,奖金为1000元。输出两行,第一行输出那个随机产生的两位数,第二行输出用户的奖金。(4)输入的数字和随机产生的数字都不相同,没有奖金,0元。

2025-03-23 13:21:54 799

原创 Python学习笔记(2)

对于字符串、列表等可迭代对象则是进行重复操作。输入六个数据,分别表示三角形三个顶点的坐标x1、y1、x2、y2、x3和y3,数据之间用空格分隔。函数的基本功能就是暂停程序的运行,等待用户输入一行数据,然后将用户输入的内容。所谓的异常,就是在代码的编译期间和运行期间出现的一些错误,会导致程序终止运行。需要注意的是,输入的是字符串,后续该得需要将字符串转为所需要的数据类型。将变量的值除以右侧表达式的值,然后将结果(浮点数)重新赋给该变量。将变量的值进行右侧表达式指定次幂的运算,然后将结果重新赋给该变量。

2025-03-23 13:16:47 1047

原创 Python学习笔记(1)

(1)数值型整数(int):用于表示整数,注意一点Python中int数据可以存储任意大小整数,不会像其他语言(C\C++ Java)会存在整型溢出的问题浮点数(float):用于表述小数,浮点数存在科学计数法,由于小数实际上用二进制存储的,可能会存在误差(如果要进行非常精确的小数运算时,浮点数就不适用)复数:由实部和虚部构成数字,a + bj(2)布尔类型(bool)只有两个值 和,常用于逻辑判断。Python中 表示真,表示假,但是从实际而言,就是用1和0来表示的。(3)字符串类型(str)字符

2025-03-23 13:12:34 930

原创 Python基础

print(2 * 2 - 3 > 2 and 4 - 2 > 5) # False,2 * 2 - 3 > 2 为 False,4 - 2 > 5 为 False。print(2 * 2 - 3 > 2 or 4 - 2 > 5) # False,2 * 2 - 3 > 2 为 False,4 - 2 > 5 为 False。直线A上的两个点是$(x1,y1)$和$(x2,y2)$,直线B上的两个点是$(x3,y3)$和$(x4,y4)$(5)$k$是一个世纪的某一年,即$year \% 100$

2025-03-16 23:50:18 1866

原创 Python初学者第一天

答:硬件由主机和外部设备组成主机:CPU,GPU, 内存外部设备:输出设备,输入设备,储存设备,网络设备软件由系统软件和应用软件组成。

2025-03-15 19:56:50 944

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除