自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于SNAT+DNAT发布内网K8S及Jenkins+gitlab+Harbor模拟CI/CD的综合项目

基于SNAT+DNAT发布内网K8S及Jenkins+gitlab+Harbor模拟CI/CD的综合项目centos 7.9(11台,3台k8s集群2核2G,1台gitlab4核8G,7台1核1G),docker 24.0.5,nginx1.21.1,prometheus ,grafana ,gitlab ,Jenkins ,Harbor ,zabbix ,ansible 等。

2023-09-05 15:11:16 6164

原创 CI/CD 持续集成 持续交付

持续集成是指。持续集成的目的,是。它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。注:持续集成简单来说,就是。将软件个人研发的部分向软件整体部分交付,频繁进行集成以便更快地发现其中的错误。1.开发新功能2.修复bug。

2023-08-30 10:59:37 1035

原创 基于mha+mycat2+gtid的半同步主从复制双vip高可用MySQL集群

基于mha+mycat2+gtid的半同步主从复制双vip高可用MySQL集群11台Linux服务器构建一个高可用能读写分离的高效MySQL集群,处理大并发的后端MySQL业务。该项目使用gitd实现半同步主从复制,mha实现MySQL主从自动切换,引入了mycat2实现读写分离,利用keepalived对mycat2服务器做双vip架构,再用dns做负载均衡,prometheus+Grafana对MySQL集群监控和出图,最后用sysbench做压力测试。

2023-08-25 00:46:05 2008

原创 Linux —— keepalived

Keepalived 是一个用 C 语言编写的路由软件。这个项目的主要目标是为 Linux 系统和基于 Linux 的基础设施提供简单而强大的负载均衡和高可用性功能。Keepalived 开源并且免费的软件。

2023-08-24 13:50:53 1443

原创 Linux —— nginx服务

代理其实就是一个中介,A和B本来可以直连,中间插入一个C,C就是中介。刚开始的时候,代理多数是帮助内网client访问外网server用的后来出现了反向代理,"反向"这个词在这儿的意思其实是指方向相反,即代理将来自外网客户端的请求转发到内网服务器,从外到内。

2023-08-24 13:50:38 2218

原创 计算机网络

通过单向hash函数对原文进行哈希,将需加密的明文“摘要”成一串固定长度(如128bit)的密文,不同的明文摘要成的密文其结果总是不相同,同样的明文其摘要必定一致,并且即使知道了摘要也不能反推出明文。

2023-08-16 14:36:06 2158

原创 Promethues监控+Grafana出图工具

Prometheus是一个开源系统监控和警报工具包,最初是在SoundCloud上构建的。自 2012 年成立以来,许多公司和组织都采用了 Prometheus,该项目拥有非常活跃的开发人员和用户社区。它现在是一个独立的开源项目,独立于任何公司进行维护。为了强调这一点,并澄清项目的治理结构,Prometheus于2016年加入了云原生计算基金会,成为继Kubernetes之后的第二个托管项目。

2023-08-09 15:55:02 242

原创 Linux —— ansible自动化运维工具

Ansible是一个部署一群远程主机的工具;Ansible通过SSH协议实现远程节点和管理节点之间的通信。理论上说,只要管理员通过ssh登录到一台远程主机上能做的操作,Ansible都可以做到。Ansible是python开发的,故依赖一些python库和组件,如:paramiko,PyYaml和jinja三个关键组件;

2023-08-04 16:57:11 1047

原创 linux系统性能监控

MMU寻址过程:当MMU翻译虚拟地址,首先根据 页表基地址寄存器 中的物理地址 找到 第0级页表,然后将虚拟页号0 (第47-39位)作为页表索引,读取第0级页表项,在其中存储着下一级(第1级)页表页的物理地址,MMU按照类似方式将虚拟地址的虚拟页号1(38-30位)作为页表项,往下类推,找到第3级页表中的页表找到该虚拟地址对应的物理页号,再结合虚拟地址中的页内偏移量即可获得最终的物理地址。系统平均负载是指过去的1分钟,5分钟,15分钟,处于可运行或就绪或者阻塞的状态的进程的平均数量。

2023-08-03 16:36:54 1158

原创 MySQL——读写分离

读写分离,基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部署与实施的。

2023-09-09 21:30:46 620

原创 MySQL——主从复制

比如master:A,slave:B,C。当A挂了后,B执行了所有A传过来的事务。当C连接到B后,在自己的binlog找到最后一次A传过来的GTID。然后C将这个GTID发送给B,B获取到这个GTID,就开始从这个GTID的下一个GTID开始发送事务给C。这种自我寻找复制位置的模式减少事务丢失的可能性以及故障恢复的时间。2.

2023-09-09 21:15:29 913

原创 MySQL——常见问题

replace: 要插入的数据中索引值不同于表中任意一条数据的索引值,就增加一条新的数据,等同于insert,否则,替换原来的数据,等同于先delete再insert。2、当使用 IS NOT NULL 或者 IS NULL 时,只能查出字段中没有不为NULL的或者为 NULL 的,不能查出空值。4、在进行count()统计某列的记录数的时候,如果采用的NULL值,会别系统自动忽略掉,但是空值是会进行统计到其中的。2.系统(linux)调优,内存,文件系统,内核等参数的调优。3.3 分区,分表,分库。

2023-09-09 17:46:17 1964

原创 MySQL——备份和还原

这种类型的备份适用于较小的数据量,您可以在其中编辑数据值或表结构,或者在不同的机器架构上重新创建数据。差异备份也要先进行一次完全备份,但是和增量备份不同的是,每次差异备份都备份和原始的完全备份不同的数据。也就是说,差异备份每次备份的参照物都是原始的完全备份,而不是上一次的差异备份。逻辑备份: 备份是表结构和产生数据的过程(create,insert) --》工艺(方法)和流程--》可以产生想要的数据 --》渔。备份的好处是每次备份需要备份的数据较少,耗时较短,占用的空间较小;2.每天的凌晨3点开始备份。

2023-09-09 17:45:33 546

原创 MySQL——日志

什么时候会产生二进制日志?binlog是记录所有数据库表结构变更(例如CREATE、ALTER TABLE…)以及表数据修改(INSERT、UPDATE、DELETE…)的二进制日志。二进制日志不是存储引擎管理的,是MySQL内部的相关线程去完成。二进制日志保存下来有2个过程:flush:将二进制日志写到binlog_buffer里sync:将binlog_buffer里的内容刷盘到disk里binlog file二进制的作用:1.恢复数据(增量)2.主从复制需要使用。

2023-09-09 17:21:53 279

原创 MySQL——索引

目的:在查询的时候提升效率。

2023-09-09 16:44:06 410

原创 MySQL——锁

多线程访问共享资源的时候,避免不了资源竞争而导致数据错乱的问题,所以我们通常为了解决这一问题,都会在访问共享资源之前加锁。Mysql中的锁机制基本上都是采用的悲观锁来实现的。行锁就是一锁锁一行或者多行记录,mysql的行锁是基于索引加载的,所以行锁是要加在索引响应的行上,即命中索引行锁的特征:锁冲突概率低,并发性高,但是会有死锁的情况出现。表锁就是一锁锁一整张表,在表被锁定期间,其他事务不能对该表进行操作,必须等当前表的锁被释放后才能进行操作。表锁响应的是非索引字段,即全表扫描,全表扫描时锁定整张表,sql

2023-09-09 13:55:53 355

原创 MySQL——事务

一个数据库事务由一条或多条sql语句构成,它们形成一个逻辑的工作单元。这些sql语句要么全部执行成功,要么全部执行失败。

2023-09-09 00:26:48 497

原创 Linux——zabbix

当zabbix自带的模板不能满足公司的需求的时候,就需要设置自定义监控项。这里以监控ssh服务为例前提是已经执行了上面的安装配置。

2023-09-08 00:55:07 275

原创 关系型数据库和非关系型数据库

举例来说,一个电商网站可能会使用 MySQL 来存储订单信息、用户信息、商品信息等结构化数据,以及使用 Redis 来存储用户购物车、商品缓存等非结构化数据。关系型数据库是以关系(表格)为基础的数据库,它采用了 SQL(Structured Query Language)作为数据操作语言,常见的关系型数据库包括 MySQL、Oracle、SQL Server 等。而非关系型数据库则适用于需要处理非结构化或半结构化数据的应用场景,如日志处理、社交网络、物联网等。

2023-09-06 15:10:21 631

原创 MySQL——存储引擎

通过上述的分析,基本上可以考虑使用InnoDB来替代MyISAM引擎了,原因是InnoDB自身很多良好的特点,比如事务支持、存储 过程、视图、行级锁定等等,在并发很多的情况下,相信InnoDB的表现肯定要比MyISAM强很多。另外,任何一种表都不是万能的,只用恰当的针对业务类型来选择合适的表类型,才能最大的发挥MySQL的性能优势。一般来说,如果需要事务支持,并且有较高的并发读取频率(MyISAM的表锁的粒度太大,所以当该表写并发量较高时,要等待的查询就会很多了),InnoDB是不错的选择。

2023-09-06 14:39:02 401

原创 kubernetes常见面试问题详解

CPU 利用率已经降到 0,所以 HPA 将自动缩减副本数量至 1。为什么会将副本数降为1,而不是我们部署时指定的replicas: 2呢?因为在创建HPA时,指定了副本数范围,这里是minReplicas: 1,maxReplicas: 10。所以HPA在缩减副本数时减到了1。

2023-09-04 16:23:17 2204

原创 kubernetes——RBAC鉴权

*] [] [*]Resources 代表这个角色可以访问的资源 *.* 代表任意命名空间里的任意资源Verbs : 可以采取的动作 : get list watch。

2023-09-04 15:51:53 196

原创 kubernetes——ingress

是k8s内部的一个资源对象-> ingress控制器: 是k8s里启动的一个pod,运行的是nginx的镜像,实现k8s内部的service(ClusterIP类型)的负载均衡。

2023-09-04 15:03:03 281

原创 Python算法——滑动窗口问题

关于滑动窗口的概念,请自行到网上搜索相关资料,了解清楚再看本博客。

2023-08-31 17:06:56 854

原创 发布的策略

应用程序升级面临最大挑战是新旧业务切换,将软件从测试的最后阶段带到生产环境,同时要保证系统不间断提供服务。,目的是尽可能避免因发布导致的流量丢失或服务不可用问题。

2023-08-31 13:47:57 95

原创 Python基础算法——反转链表

是一个正整数,它的值小于或等于链表的长度。你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。的整数倍,那么请将最后剩余的节点保持原有顺序。个节点一组进行翻转,请你返回修改后的链表。,请你反转链表,并返回反转后的链表。

2023-08-30 16:56:55 747

原创 docker常见面试问题详解

下面,就让我来详细说明一些这些问题。

2023-08-30 10:32:20 2231

原创 容器和宿主机之间的存储问题

作用:方便备份恢复数据,实现数据共享。

2023-08-29 14:51:11 229

原创 Python算法——排序算法(冒泡、选择、插入、快速、堆排序、并归排序、希尔、计数、桶排序、基数排序)

【代码】Python算法——排序算法(冒泡、选择、插入、快速)

2023-08-28 16:00:45 609

原创 Linux —— nfs文件系统

NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。

2023-08-24 10:02:15 1042

原创 Linux —— dns服务

域名系统 (Domain Name System) 的缩写,它是由解析器和域名服务器组成的,又名“域名解析服务器”.作用:进行域名解析正向解析: 域名--》ip反向解析: ip--》域名dns解析的过程:先看hosts文件里是否有对应的域名,如果没有就问dns服务器要,进行域名解析hosts文件的缺点: 只能给自己做域名解析dns的好处: 整个互联网里的机器都可以解析,服务的范围要广域名解析的过程,就是引导客户机去访问哪里域名哪里可以购买?阿里云腾讯云华为云等。

2023-08-17 15:28:15 849

原创 Shell编程——字符串

[ -n string ]] string 的长度大于0 nonzero。[[ -z string ]] string 的长度为0 zero。

2023-08-08 16:49:29 57

原创 shell编程基础

定义:shell编程是使用linux命令来进行写程序的语言脚本语言:写linux里执行命令的脚本脚本就是一个文件,里面有很多的linux命令+if+for+case+while等流控语言shell脚本执行顺序是从上而下,一条一条的执行,如果某条命令执行出错,后面的命令是否执行呢?答案: 执行(( 整数的运算和比较 ))[[ 字符串的比较 ]]为什么需要变量?----传递信息、数据变量是临时存放数据的一个容器[root@localhost shell]# sg="xiaowei"[root@loc

2023-08-08 16:49:11 62

原创 linux——计划任务

什么是计划任务?提前计划某个时间点做某件事情 --》定时定点去完成某个任务闹铃脚本: 帮助我们去完成某些事情的工具计划任务: 帮助我们去执行脚本不需要人去执行了,提升了工作效率,解放了人力linux 系统则是由 cron (crond) 这个系统服务来控制的。Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的。命令。

2023-08-08 16:46:49 1228

原创 Linux —— 日志

日志: log : 某个程序记录所有的发生的事情到一个文件里,这个文件里的信息就是日志什么是日志?日记: diary 某个人将某天发生的事情记录下来,方便以后查看 --》记录某个人一天发生的事情日志会记录哪些?时间+服务器+进程+发生的事情:1、方便查询以前的事情,可以审计 2、记录出错的信息,方便故障排查 3、大数据分析缺点:消耗内存、cpu、磁盘等资源。

2023-08-08 10:58:01 1049

原创 Linux——ssh服务

ssh是一个远程登录相关的协议,主要的用途是登陆到远程电脑中执行命令。叫安全外壳协议(ecureell),是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。ssh服务: 实现远程登录和远程控制,在网络上传输的数据是加密的SSH 是一种协议, 存在多种实现,既有商业实现,也有开源实现(OSSH,OpenSSH)。本文使用的自有软件 OpenSSH, 毕竟它是目前最流行的 SSH 实现,而且是所有操作系统的默认组件。

2023-08-04 15:37:29 2904

原创 Shell编程——基本命令及使用

awk 截取字段awk 截取字段[[ -n string ]] 判断string 的长度大于0 nonzero[[ -z string ]] 判断string 的长度为0 zeroseq 产生数字序列xargs 将前面命令的输出送到后面的命令作为参数使用tr 1.字符转换。

2023-07-27 14:53:26 230

原创 基于k8s+prometheus实现双vip可监控Web高可用集群

概述本项目对于前面所学的知识进行归纳总结,通过该实验提高对相关知识的掌握,利用k8s集群结合prometheus实现一个双vip可监控web的高可用集群,其中使用pv持久卷和pvc持久卷申请结合nfs保障数据一致性,采用k8s管理docker集群对外发布web服务,让外网的用户可以访问到内网的数据,使用nginx做负载均衡,keepalived实现双vip高可用,并通过ab软件进行压力测试和调整参数来实现性能优化,使用promentus+grafana对web进行监控和出图。项目概述。

2023-04-10 19:37:26 9153

原创 k8s——configmap-secret-nginx实验

4台linux虚拟机,并已经搭建好k8s环境。

2023-04-01 16:29:30 1173

原创 kubernetes——pv+pvc+nfs实验

4台centos7虚拟机 (都已经搭建好k8s)

2023-03-30 22:16:29 479

空空如也

空空如也

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

TA关注的人

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