自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux服务器 部署飞书信息发送服务

飞书信息发送服务是指将飞书信息发送服务部署到一个Linux服务器上。飞书是一款企业级的即时通讯和协作工具,支持发送消息给飞书的功能。通过部署飞书信息发送服务,可以方便内网发送信息给外网飞书。

2023-12-21 13:24:18 1984

原创 Redis 配置文件详解 - 持久化(RDB、AOF)

目录Redis 配置文件详解单位包含 INCLUDES网络 NETWORK通用 GENERAL快照 SNAPSHOTTING (持久化)复制 REPLICATION(主从复制) 安全 SECURITY(账号密码设置)​编辑 限制 CLIENTS追加模式 APPEND ONLY MODE Redis 持久化RDB ( Redis DataBase )什么是RDB呢?触发机制:如何恢复rdb文件里面的数据:RDB持久化的优缺点:AOF ( Append Only File) 什么是AOF呢? AOF的配置

2023-09-15 10:53:44 551

原创 Kubernetes 使用configmap挂载卷给Pod内的nginx容器,并且实现nginx的代理服务

再次访问浏览器,产科nginx的Web服务是否发布。

2023-09-13 17:54:38 1153

原创 Kubernetes Configmap + Secret

secret。

2023-09-13 15:14:11 144

原创 Redis 事务 - 监控测试

悲观锁:很悲观,认为什么时候都会出问题,无论做什么都会加锁!乐观锁:很乐观,认为什么时候都不会出问题,所以不会上锁!更新数据的时候去判断一下,在此期间是否有人修改过这个数据。

2023-09-13 12:27:08 397

原创 Redis 三种特殊的数据类型 - Geospatial地理位置 - Hyperloglog基数统计的算法 - Bitmaps位图(位存储)

优点∶占用的内存是固定,2^64不同的元素的技术,只需要废12KB内存!因为我们的目的是计数用户数量,而并不是用来保存用户id的。两个状态的,都可以使用Bitmaps!#规则:两极是无法直接添加的,我们一般会下载城市数据,直接通过java或者python程序导入!传统的方式,set 保存用户的id,然后就可以统计set 中的元素数量作为标准判断!(获得所有的附近的人的地址,定位!这个功能可以推算地理位置的信息,比如说两地之间的距离,方圆几里之内的人。如我需要查询朋友的定位,附近的人,打车所需距离的计算?

2023-09-13 11:36:03 199

原创 Kubernetes 部署发布镜像(cubefile:0.4.0)

目录实验:部署发布镜像(cubefile:0.4.0)需求分析:1、部署Kubenetes环境:2、撰写 cubefile-deployment.yaml 文件代码解释:遇到的问题:问题解决 :3、撰写 cubefile-service.yaml 文件代码解释:遇到的问题:4、最后测验查看端口和进程:​编辑浏览器访问:​编辑参考:Kubernetes的介绍(组件、Pod)和 安装使用_Claylpf的博客-CSDN博客代码解释:遇到的问题:其中比较重要的部分是我使用了 command:

2023-09-11 17:59:48 204

原创 实现分别在Linux、Docker、Kubernetes上安装部署Mysql、Redis、Nginx软件

一键安装Mysql脚本。一键安装Redis脚本。一键安装Nginx脚本。

2023-09-08 15:10:17 526

原创 Redis List类型命令 - Set类型命令 - SortedSet类型命令

双向链表(Doubly Linked List)是一种常见的链表数据结构,与单向链表不同,它的每个节点除了包含指向下一个节点的指针外,还包含一个指向前一个节点的指针。这使得双向链表可以在两个方向上遍历链表,从头部到尾部,或者从尾部到头部。

2023-09-05 18:38:01 470

原创 Redis Redis的数据结构 - 通用命令 - String类型命令 - Hash类型命令

我们能通过官方网站提供的文档来了解我们需要使用的redis数据类型。当我们使用TTL查看到剩余时间为-1的时候,他表示的就是永久有效。我们可以通过拼接key的结构实现多层级结构。使用KEYS命令查看所有的key。因此,我们需要使用到Hash类型。

2023-09-05 16:49:40 967 1

原创 Nacos docker实现nacos高可用集群项目

Nacos提供了一个集中的配置管理系统,公司可以将应用程序的配置信息存储在Nacos中,并让应用程序动态地获取配置。总之,Nacos在公司内的应用主要是为了支持微服务架构和提供服务治理的各个方面,从而帮助公司更好地构建、管理和维护分布式应用程序,提高系统的可用性、可维护性和可扩展性。:Nacos可以定期检查注册的服务实例的健康状态,如果某个实例出现故障,Nacos会自动将其从注册表中注销,并自动进行故障恢复。Nacos 提供了一个 DNS 服务,可以通过服务名称动态解析到相应的服务实例的 IP 地址。

2023-09-05 16:36:30 751

原创 Redis Redis介绍、安装 - Redis客户端

目录redis是什么,他的应用场景是什么?Redis的一些主要特点和应用场景:redis的官方网站:Redisredis是键值型数据库:(也就是key-value模式)(跟python的字典很像)认识NoSQL SQL和NoSQL的区别数据库结构之间的区别数据库关联之间的区别SQL查询和非SQL查询的区别事务上的差异总结认识Redis特征:一、安装Redis1、单机安装Redis(linux安装 -- Centos7.9)1.1、安装Redis依赖(Redis是基于C语言编译的,因此首先需要安装Redis所

2023-09-04 16:14:40 4732

原创 基于Mysqlrouter+MHA+keepalived实现高可用半同步 MySQL Cluster项目

目录项目名称: 基于Mysqlrouter + MHA + keepalived实现半同步主从复制MySQL ClusterMySQL Cluster: 项目架构图:项目环境:项目描述:项目IP地址规划:项目步骤:一、准备10台全新虚拟机,按照IP规划配置好静态IP,修改主机名。安装部署Ansible,并建立Ansible的免密通道,调用一键二进制安装MySQL脚本,自动化批量部署MySQL1、根据ip规划配置好静态ip2、修改主机名 3、建立Ansible免密通道4、安装部署ansible5、准备好MyS

2023-08-15 13:21:13 2145

原创 Mysql 搭建MHA高可用架构,实现自动failover,完成主从切换

如果报错,多看日志/var/log/masterha/app1/manager.log注意是否每台mysql间都建立了ssh免密通道,否则会报错如果报错,思考是否软链接建立好了?或者主从复制搭建正确了在 manager 节点上测试 mysql 主从连接情况,最后出现 MySQL Replication Health is OK 字样说明正常。

2023-08-14 11:54:15 1863 1

原创 Mysql压力测试(sysbench)

这一串的意思,就是说在test_db这个库里,构造20个测试表,每个测试表里构造100万条测试数据,测试表的名字会是类似于sbtest1,sbtest2这个样子的。这个意思就是说,在每秒2996.03个请求中,有2091.83个请求是读请求,600.80个请求是写请求,303.40个请求是其他的请求,就是对QPS进行了拆解。意思是参照这个命令的设置去构造出来我们需要的数据库里的数据,他会自动创建20个测试表,每个表里创建100万条测试数据,所以这个工具是非常的方便的。这个意思就是有10个线程在压测。

2023-08-12 16:04:00 3804 1

原创 Mysql - 配置Mysql主从复制-keepalived高可用-读写分离集群

VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)是一种网络协议用于提高路由器系统的可用性和可靠性。它通过将多个路由器组合成一个虚拟路由器,只有一个路由器处于活动状态,其他路由器都是备份状态,从而达到提供冗余和故障转移的目的。vip:virtual ip 虚拟IP地址,这个地址是对外提供服务的VRRP原理及配置 - 榕霖 - 博客园 (cnblogs.com)提供冗余。

2023-08-11 21:38:10 2900 2

原创 Python 装饰器 - 推导式(列表推导式) - 迭代器 - 生成器 - 闭包

闭包是在函数内部定义的函数,它可以访问其外部函数的变量,即使外部函数已经执行完毕并且其作用域不再存在。这种机制允许变量的状态在函数调用之间得以保留。

2023-08-09 17:05:02 501

原创 GO-Python 结构体的应用 - 结构体内存对齐 - go实现ATM存取钱 - python 高阶函数(map映射器函数、filter过滤器函数、sorted排序函数)

import ("fmt"/*Web API => 返回数据给使用者 => json// 定义返回的数据格式,将返回的数据用json的方式打印出来// s.json() => 将它转换成json格式(string)后端开发:API => 访问url => 返回数据(无页面) => 访问者标准化返回:"message": "参数不完整“,*/// 定义返回的数据格式,将返回的数据用json的方式打印出来// 将它转换成json格式(string)// 访问测试。

2023-08-08 16:24:53 181

原创 计算机网络day16 防火墙 - iptables - netfilter - iptables的四表五链 - iptables命令 - iptables的匹配条件 - iptables端口实验

iptables的条件:1.协议:tcp udp icmp-p protocol 小写的p-p icmp --icmp-type 8 ping请求报文-p icmp --icmp-type 0 ping响应报文2.端口号:3.ip地址-s source4.mac地址5.状态6.其他ens33接口上不接收tcp三次握手的第一个包--》不允许新的连接产生了常见的数据包处理方式ACCEPT:放行数据包DROP:丢弃数据包REJECT:拒绝数据包,给一个回复。

2023-08-03 21:42:20 942

原创 go 结构体 - 值类型、引用类型 - 结构体转json类型 - 指针类型的种类 - 结构体方法 - 继承 - 多态(interface接口) - 练习

空接口可以表示任意类型的值。空接口的作用在于可以在不确定类型的情况下,用于保存和传递各种不同类型的值。由于空接口可以表示任意类型的值,所以它在某些场景下非常有用,比如在函数参数中,可以接受不同类型的参数,或者在数据结构中,可以存储不同类型的元素。// 空接口// 该test函数可以接收任意类型的数据,空接口的定义方式// 空接口的使用。

2023-08-01 21:59:15 1031

原创 python面向对象 - __new__的使用 - 单例模式 - super() - 类创建链表(单链、双链) - 类的方法 - 元类(type) - ABC类(抽象基类)

_new__方法用于控制对象的创建过程,它返回一个类的实例。cls参数表示当前类本身,可以使用它来创建新对象。*args和**kwargs是传递给构造方法__init__的参数。__new__和__init__一起完成了对象的创建和初始化过程。# 自定义元类:一个类继承自type,它就是一个自定义元类# 自定义元类 -- 拦截类的创建class ModelMeta(type): #元类# 获取所有的属性和方法,检查自定义属性名中有没有以“_”开头的。

2023-07-31 21:36:03 267

原创 计算机网络day15 HTTP协议 - 工作原理 - URI - 状态码 - nginx实现HTTP和HTTPS协议 - 连接方式和有无状态 - Cookie和Session和token - 报文结构

什么是token - 简书 (jianshu.com)Token的引入:Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应运而生。Token的定义:Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。

2023-07-30 16:50:15 615

原创 计算机网络 day14 DNS域名劫持、DNS域名污染 - CDN的工作流程 - DNS的记录类型 - 搭建DNS缓存/主域名服务器 - DNAT-SNAT实验项目

CDN使用Anycast技术,将相同的IP地址分配给全球不同地区的服务器节点,用户请求将导向离用户最近的服务器,从而实现高效的内容交付。CDN提供商会在DNS解析层面进行优化,通过返回离用户最近的CDN节点的IP地址,将用户的请求导向最近的节点,从而实现就近访问。本地DNS服务器会将DNS解析请求发送给CDN加速DNS,并由CDN加速DNS返回离用户最近的CDN节点的IP地址,而不是源服务器的IP地址。CDN会在边缘节点上缓存动态内容的副本,并与源服务器进行实时同步,以确保用户获取最新的内容。

2023-07-28 21:07:25 2123

原创 计算机网络 day13 TCP拥塞控制 - tcpdump - DHCP协议 - DHCP服务器搭建 - DNS域名解析系统 - DNS域名解析过程

包括src、dst、dst or src、dst and src,这些关键字指明了传输的方向,比如src 192.168.1.1说明数据包源地址是192.168.1.1,dst net 192.168.0.0指明目的网络地址是192.168.0.0,默认是监控主机对主机的src和dst,即默认监听本机和目标主机的所有数据。如果本地解析器的缓存中没有对应的解析结果,它会从根域名服务器开始,逐级向下查询,直到找到负责该域名的权威域名服务器,并将解析结果返回给用户。:一旦慢启动阶段结束,发送方进入拥塞避免阶段。

2023-07-27 22:03:04 1277

原创 Kubernetes ConfigMap - Secret - 使用ConfigMap来配置 Redis

使用微服务架构的话,存在多个服务共用配置的情况,如果每个服务中单独一份配置的话,那么更新配置就很麻烦,使用configmap可以友好的进行配置共享。使用k8s部署应用,当你将应用配置写进代码中,就会存在一个问题,更新配置时也需要打包镜像,configmap可以将配置信息和docker镜像解耦。对于一些非敏感数据,比如应用的配置信息,则可以使用ConfigMap。其次,configmap可以用来保存单个属性,也可以用来保存配置文件。顾名思义,是用于保存配置数据的键值对,

2023-07-26 11:15:19 668

原创 python 面向对象编程的特点 - 封装 - 继承(经典类、新式类) - 多态 - 静态方法、类方法 - 下划线的使用 - 回合制攻击游戏实验

类属性MAX = 10# 实例方法# 实例方法:没有任何修饰,第一个参数selfdef __init__(self, name): #self代表实例本身# 静态方法# 静态方法:使用@staticmethod装饰器,没有额外的参数# 写在函数/类上方用@修饰对象称为装饰器# 如果定义一个类中方法的时候,没有用到类和实例相关的数据时,可以定义成静态方法def static_method(): #括号中什么都没有# 给实例添加了一个MAX。

2023-07-25 20:59:45 541

原创 python 面向对象 - 类 - 实例 - 类的使用 - self - init方法 - ATM面向对象实验

类属性(所有实例都共用的)bank = "中国银行"# 初始化函数(每个实例的数据)# 初始化了三个数据 balance, no, location => 形式参数# self => 创建的这个实例# 实例属性(每个实例都有属性自己的值)# 实例方法pass# 生成一台ATM机 --》实例化 --》生成实例(某一个具体的对象)atm1 = ATM(10000, "No.0001", "湖南长沙农大路农大支行")

2023-07-24 20:39:47 303

原创 Kubernetes pv-pvc-nfs-service综合实验

随意访问一台主机的ip地址的30579端口,看是否出现画面。创建pod使用pvc。

2023-07-23 20:27:03 447

原创 Python-Go python模块与包 - GO问题 - GO容量测试

python中自定义模块的简述模块 => python文件包 => 目录初始化 __init__.py => 初始化文件,当导入包的时候会自动执行python包中的文件是独立的,(与go区分)注意:当模块被导入的时候,模块中的代码都会被执行一次,建议每次导入模块的时候就导入模块的某个函数即可,否则很容易出现错误链接:https://pan.baidu.com/s/12jZiYPEmHDpWOQMlGTGEUQ?pwd=zouh提取码:zouh。

2023-07-23 15:49:54 390

原创 go学习 模块与包 - Init函数 - 如何导入第三方包 - 切片与数组的数据传递方式 - go中文件的读写

main文件// import 包名/子包名// 取别名 => 有时候有些包的名字特别长.可以取别名// 仅仅执行sc/user包中的初始化信息// 注意事项:包名与目录名不一致,必须取一个别名 "sc/user" => 路径//import (// "fmt"//)//// 变量,大写字母开头,小写字母开头//// 大写字母开头的变量,Public// 小写字母开头,私有的不能使用// init函数 => 初始化一些变量/数据的时候使用当使用传值方式将参数传递给函数时,

2023-07-21 22:13:13 500

原创 计算机网络 day12 TCP的三次握手和四次挥手(详细过程) - 扫描端口脚本 - socket的种类 - 网络攻击方式(SYN洪水攻击、DOS攻击、DDOS攻击、CC攻击)

目录TCP的头部封装实验:如果我需要知道某台机器的6个端口,22 23 25 3306 80 8000 哪些端口是开放的,哪些没有开放?如何做呢?shell脚本:python脚本:socket的分类:网络socket和文件socket参考文章(GOOD):4.1 TCP 三次握手与四次挥手面试题 | 小林codingTCP的三次握手​编辑面试时该怎么讲TCP的三次握手呢?TCP三次握手报文解释:TCP三次握手状态解释:总结:为什么需要进行三次握手,我们进行两次不行吗?listen 时候参数 backlog

2023-07-20 21:37:03 190

原创 Kubernetes Volume及其类型(NFS、SAN) - PV - PVC - PV与PVC与Pod的关系

持久卷是集群资源,就像节点也是集群资源一样。PV 持久卷和普通的 Volume 一样, 也是使用卷插件来实现的,只是它们拥有独立于任何使用 PV 的 Pod 的生命周期。卷的应用程序必须能够容忍这种可用性的降低,以及因底层磁盘的耐用性特征而带来的潜在的数据丢失风险。卷仍然取决于底层节点的可用性,并不适合所有应用程序。是集群中的一块存储,可以由管理员事先制备, 或者使用。卷的内容在删除 Pod 时会被保存,卷只是被卸载。卷所代表的是某个被挂载的本地存储设备,例如。表达的是用户对存储的请求。

2023-07-19 21:38:45 1792

原创 计算机网络 day11 tcpdump - 传输层 - netstat - socket - nc - TCP/UDP头部

在进行网络故障排查时,。,也可能需要使用来帮助诊断和解决问题。(网络层)IP层提供点到点的连接,而它主要负责在,并确保可靠、有序地传输数据。

2023-07-19 20:17:37 1463

原创 计算机网络 day10 DNAT问题 - 堡垒机 - WLAN

WLAN通信是通过无线信号传输的,因此更容易受到安全威胁,如未经授权的访问、数据窃取、黑客入侵等。:WLAN允许无线连接,不需要使用有线电缆,使得用户可以在范围内自由移动,方便进行移动办公或者设备之间的无线连接。相比有线网络,WLAN的覆盖范围较小,需要在目标区域内安装多个AP来提供全面的覆盖。:通过WLAN,用户可以在覆盖范围内的任何位置连接到网络,无需受限于有线连接的位置和距离限制。:使用WLAN连接的移动设备(如智能手机、平板电脑等)在无线通信过程中消耗更多的电池电量,相比于使用有线连接的设备。

2023-07-18 22:03:33 594

原创 Kubernetes Dashboard部署安装

创建dashboard成功!跟grafana差不多。

2023-07-17 20:09:38 7267

原创 计算机网络 day9 DNAT实验

(原来是firewall网关服务器的WAN口的IP地址,也就是192.168.2.1)修改为。(我们开启的监听端口为8000端口),以确保数据包能够正确地被内网服务器接收。如下拓扑图就很生动的展示了我们的IP包通过firewall网关服务器的时候,(192.168.1.1),以实现数据包的转发到内网(局域网)。(原来是firewall的网关服务器的80端口)修改为。:如果进行端口映射,防火墙网关服务器可以将数据包的。在linux网关服务器(防火墙)上操作。查看iptables是否生效。(linux客户机)

2023-07-17 18:32:52 2443

原创 Kubernetes - HPA-VPA - metrics介绍和安装 - HPA实验

并通过Metrics API在 Kubernetes apiserver 中公开它们, 以供Horizo​​ntal Pod Autoscaler(HPA )和Vertical Pod Autoscaler(VPA)使用。这与 “垂直(Vertical)” 扩缩不同,对于 Kubernetes,VPA是通过改变启动的Pod的cpu使用率和内存大小的。,而且它仅能留存最近收集到的指标数据,因此,如果用户。,以便为每个 Pod 提供适当的资源。中运行的 Pod 的副本数量。,以匹配观察到的指标, 例如,

2023-07-17 10:59:41 928

原创 计算机网络 day8 动态路由 - NAT - SNAT实验 - VMware的网卡的3种模式

dhcp服务器给仅主机模式的虚拟机分配ip地址的时候,没有告诉虚拟机网关的ip,没有配置网关,导致虚拟机不能进行跨网段通信,只能和真实机器通信。1.桥接模式: bridge 直接连接到物理网络,其实就是虚拟机和真实机器在同一个局域网里,利用真实机器的网卡连接到真实的交换机上或者路由器上。: 你的虚拟机只是和你的真实机器通信,不能跟别人的真实机器或者虚拟机通信,避免ip地址冲突。虚拟机和真实机器在同一个网段,地位是平等的。不同的vlan --》不同vlan对应不同的网段 --》做了隔离的。

2023-07-16 17:04:49 2678

原创 计算机网络 day7 扫描IP脚本 - 路由器 - ping某网址的过程

是一个给l是linux系统里管理所有的网络连接的服务,可以禁用网卡,启用网卡。nmcli n 可以查看网络是否 被禁用。

2023-07-14 19:43:10 26430

原创 计算机网络 day6 arp病毒 - ICMP协议 - ping命令 - Linux手工配置IP地址

向局域网中的其他设备发送虚假的ARP响应包,将合法的IP地址与错误的MAC地址关联起来。--》超时时间(ping不通的时候,最多等待多久)(如:每个ping包有1秒的时间,如果有5个ping包,就有5秒的时间)--》 时间间隔 (默认1秒,可以设置为0.1秒,很快就完成了):禁止icmp的请求报文 --》 可以禁止ping。静态绑定正确的网关的mac地址:arp -s命令。:某种格式的数据 --》 报告某些信息的文字。--》 期限 总共只有1秒。--》 发送数据包的数量。2、先检查网络是否联通。

2023-07-13 18:35:50 3248

空空如也

空空如也

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

TA关注的人

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