- 博客(60)
- 收藏
- 关注
原创 Docker 基本管理
Docker 是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源,是在Linux容器里运行应用的开源工具,是一种轻量级的“虚拟机”,Docker 的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。Docker的Logo设计为蓝色鲸鱼拖着许多集装箱。鲸鱼可看作为宿主机,集装箱可理解为相互隔离的容器,每个集装箱中都包含自己的应用程序。Docker的设计宗旨,即通过对应用组件的。
2024-01-23 16:52:11
1168
原创 消息队列之王——Kafka
Kafka 是一个分布式的基于发布/订阅模式的消息队列(MQ,Message Queue),主要应用于大数据领域的实时计算以及日志收集。
2024-01-22 17:35:46
1650
1
原创 存储系统——Ceph
Ceph、TFS、FastDFS、MooseFS(MFS)、HDFS、GlusterFS(GFS),存储机制会把数据分散存储到多个节点上,具有高扩展性、高性能、高可用性等优点。Ceph使用C++语言开发,是一个开放、自我修复和自我管理的开源分布式存储系统。具有高扩展性、高性能、高可靠性的优点。Ceph目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack,Kubernetes都可与Ceph整合以支持虚拟机镜像的后端存储。
2024-01-17 17:28:15
1066
原创 监控系统——Zabbix
Zabbix是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。Zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。zabbix 由 2 部分构成,Zabbix server 与可选组件 Zabbix agent。通过C/S 模式采集数据,通过B/S 模式在 Web 端展示和配置。可以通过Zabbix agent,SNMP协议,端口监视等方法提供。
2024-01-17 11:42:29
964
原创 rsync 远程同步
(Remote Sync,远程同步) 是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用。在远程同步任务中,负责发起rsync同步操作的客户机称为发起端,而负责响应来自客户机的rsync同步操作的服务器称为同步源。在同步过程中,同步源负责提供文件的原始位置,发起端应对该位置具有读取权限。
2024-01-11 16:30:28
741
原创 Web 缓存代理—— Nginx、CDN
将源站点(Web应用服务器)的静态网页资源缓存到CDN节点上,用户请求资源时,通过与DNS的配合,找到最靠近用户的一台CDN缓存服务器,然后把资源数据快速地分发给用户,而不需要每个用户的请求都从源站点获取,从而避免网络拥塞、缓解源站点的压力,保证用户访问资源的速度和体验。,即较少经常更新的资源,如图片,css或js等进行缓存,从而在每次刷新浏览器的时候,不用重新请求,而是从。简而言之,就是将数据部署在各地的服务器中,通过负载均衡技术,让用户就近获取服务器中的数据。,如果不指定,最大会用掉所有磁盘空间。
2024-01-10 17:13:46
1256
原创 Redis 配置(二)
为每个节点添加一个从节点A1、B1、C1整个集群便有三个Master节点和三个slave节点组成,在节点B失败后,集群选举B1位为的主节点继续服务。集群由多组节点(Node)组成,Redis的数据分布在这些节点中。如果从节点和哨兵节点发生故障,被哨兵主观下线后,不会再有后续的客观下线和故障转移操作。后对16384取余来决定放置哪个哈希槽,通过这个值,去找到对应的插槽所对应的节点,然后直接自动跳转到这个对应的节点上进行存取操作。一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点。
2024-01-09 17:00:08
1106
原创 Redis 的配置与优化
在web服务器中,高可用是指服务器可以正常访问的时间,衡量的标准是在多长时间内可以提供正常服务(99.9%、99.99%、99.999%等等)。但是在Redis语境中,高可用的含义似乎要宽泛一些,除了保证提供正常服务(如主从分离、快速容灾技术),还需要考虑数据容量的扩展、数据安全不会丢失等。在Redis中,实现高可用的技术主要包括持久化、主从复制、哨兵和 Cluster集群,下面分别说明它们的作用,以及解决了什么样的问题。
2024-01-09 08:44:53
1167
原创 redis 的安装
关系型数据库:实例-->数据库-->表(table)-->记录行(row)、数据字段(column)非关系型数据库:实例-->数据库-->集合(collection)-->键值对(key-value)非关系型数据库不需要手动建数据库和集合(表)。Redis(远程字典服务器) 是一个开源的、使用 C 语言编写的 NoSQL 数据库。Redis基于内存运行并支持持久化,采用key-value(键值对)的存储形式,是目前分布式架构中不可或缺的一环。Redis服务器程序是单进程模型。
2024-01-08 09:07:54
1059
原创 MySQL主从复制与读写分离
在企业应用中,成熟的业务通常数据量都比较大,单台MySQL在安全性、高可用性和高并发方面都无法满足实际的需求。因此,需要配置多台主从数据库服务器以实现读写分离。
2024-01-03 17:23:24
881
原创 MySQL 高级SQL语句与存储过程
内连接select A.字段 from 左表 as A inner join 右表 as B on A.字段 = B.字段;select A.字段 from 左表 as A inner join 右表 as B using(同名字段);左/右连接select A.字段 from 左表 as A left join 右表 as B on A.字段 = B.字段 where B.字段 is not null;
2024-01-02 16:32:24
932
原创 MySQL 数据库
非关系数据库也被称作NoSQL (Not Only SQL),存储数据不以关系模型为依据,不需要固定的表格式。常用的非关系数据库:Redis、mongoDB等。如果同一个属性字段X在表一中是主键,而在表二中不是主键,则字段X称为表二的外键。主键表和外键表的理解:(1)以公共关键字作主键的表为主键表(父表、主表)(2)以公共关键字作外键的表为外键表(从表、外表)注意:与外键关联的主表的字段必须设置为主键。要求从表不能是临时表,主从表的字段具备相同的数据类型、字符长度和约束。
2023-12-24 16:29:54
233
原创 Haproxy搭建Web群集
目前常见的Web集群调度器分为软件和硬件通常使用开源的LVS、Haproxy、Nginx。LVS 性能最好,但是搭建相对复杂;Nginx 的 upstream模块支持群集功能,但是对群集节点健康检查功能不强,高并发性能没有 Haproxy好一般使用比较多的是F5、Array,也有很多人使用国内的一些产品,如梭子鱼、绿盟等。
2023-12-21 17:00:44
254
原创 Tomcat部署及优化
是 Java 语言开发的,Tomcat 服务器是一个免费的、开放源代码的Web 应用服务器,是 Apache 软件基金会的 Jakarta 项目中的一个核心项目,由 Apache、Sun 和其他一些公司及个人共同开发而成。Tomcat 属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是的首选。一般来说,Tomcat 虽然和 Apache 或者 Nginx 这些Web 服务器一样,具有处理 HTML 页面的功能。
2023-12-17 16:42:54
63
原创 LVS负载均衡群集部署 DR模式
修改源 MAC 地址为 Director Server 的 MAC地址,修改目标 MAC 地址为 Real Server 的 MAC 地址,源 IP 地址与目标 IP 地址没有改变,然后将数据包发送给 Real Server。net.ipv4.conf.lo.arp_announce = 2 #节点服务器不使用IP包的源IP(VIP)来作为ARP请求报文的源IP地址,而采用发送接口的IP来作为ARP请求报文的源IP地址。调整内核的 ARP 响应参数以阻止更新 VIP 的 MAC 地址,避免发生冲突。
2023-12-17 13:05:02
54
原创 LVS 负载均衡群集 NAT
互联网应用中,随着站点对硬件性能、响应速度、服务稳定性、数据可靠性等要求越来越高,单台服务器已经无法满足负载均衡及高可用的要求。为了解决这一问题,可以使用价格昂贵的小型机、大型机;或使用多台相对廉价的普通服务器构建服务群集,通过整合多台服务器,使用LVS来达到服务器的高可用和负载均衡,并以同一个IP地址对外提供相同的服务。在企业中常用的一种群集技术——LVS (Linux Virtual Server,Linux虚拟服务器)
2023-12-15 23:01:21
549
原创 Nginx rewrite 参数
(location = 完整路径) > (location ^~ 路径) > (location ~,~* 正则顺序) > (location 部分前缀路径) > (location /)
2023-12-11 18:59:50
209
原创 Nginx 优化与防盗链
应用程序配置文件优化:IO多路复用 use epoll;设置工作进程数 worker_processes 与CPU数量相同或auto;工作进程静态绑核 worker_cpu_affinity设置并发 worker_connections worker_rlimit_nofile。
2023-12-10 15:52:29
78
原创 LAMP LNMP 企业网站架构部署和优化
是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括Linux操作系统、Apache网站服务器、MySQL数据库服务器、PHP(或Perl、Python)网页编程语言。各组件的主要在构建LAMP平台时,各组件的。其中Apache和MySQL的安装并没有严格的顺序,PHP环境的安装一般放到最后安装,负责沟通 Web 服务器和数据库系统以协同工作。
2023-12-10 15:05:22
101
原创 Nginx网络服务
一款高性能、轻量级Web服务软件。稳定性高,系统资源消耗低,对HTTP并发连接的处理能力高。单台物理服务器可支持30 000~50 000个并发请求。他实现非常高效的反向代理、负载平衡,现在中国使用nginx网站用户有很多,例如: 新浪、网易、腾讯等。
2023-12-10 13:49:58
86
原创 Web基础与http服务
预派生模式,有一个主控制进程,然后生成多个子进程,使用select模型,最大并发1024,每个子进程有一个独立的线程响应用户请求,相对比较占用内存,但是比较稳定,可以设置最大和最小进程数,是最古老的一种模式,也是最稳定的模式,适用于访问量不是很大的场景。一种多进程和多线程混合的模型,有一个控制进程,启动多个子进程,每个子进程里面包含固定的线程,使用线程程来处理请求,当线程不够使用的时候会再启动一个新的子进程,然后在进程里面再启动线程处理请求,由于其使用了线程处理请求,因此可以承受更高的并发。
2023-12-09 16:33:44
310
原创 shell 编程之 NAT
SNAT 应用环境:局域网主机共享单个公网IP地址接入Internet (私有IP不能在Internet中正常路由) SNAT原理:源地址转换,根据指定条件修改数据包的源IP地址,通常被叫做源映射。在网关服务器上ping 检测。在内网服务器上修改网关。外网修改IP地址和网关。在snat基础上操作。
2023-12-03 16:23:04
36
原创 安全技术和防火墙
Linux 的防火墙体系主要工作在网络层,针对 TCP/IP 数据包实施过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙)。Linux 系统的防火墙体系基于内核编码实现, 具有非常稳定的性能和高效率,也因此获得广泛的应用。IP 信息包过滤系统,它实际上由两个组件 netfilter 和 iptables组成。主要工作在网络层,针对IP数据包,体现在对包内的IP地址、端口等信息的处理。iptables [-t 表名] 管理选项 [链名] [匹配条件] [-j 控制类型]
2023-11-29 19:35:15
72
原创 shell 编程之awk与sed
目录awk版本类型:区别:awk 工作过程工作原理awk 格式内置变量自定义变量模式 PATTERN模式为空正则匹配line ranges:行范围BEGIN END数组awk数组特性:访问,赋值数组元素数组长度数组 遍历数组去重复行sed sed格式 脚本格式单地址:地址范围:步进:~搜索替代 分组后项引用提取IP地址练习找到10:00到11:00之间的日志查看设备的连接状态 ss -nat awk(Aho, Weinberger, Kernighan):报告生成器,格式化文本输出,GNU
2023-11-28 18:19:42
125
原创 shell 编程之正则表达式
Regular Expressions,由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能,类似于增强版的通配符功能,但与通配符不同,通配符功能是用来处理文件名,而正则表达式是处理文本内容中字符。正则表达式被很多程序和开发语言所广泛支持:vim, less,grep,sed,awk, nginx,mysql 等。主要用来匹配字符串(命令结果,文本内容)。可以使用可以使用 man手册帮助。
2023-11-27 18:40:24
59
原创 shell 编程之函数与数组
目录函数查看函数列表函数的格式函数的作用范围 函数返回值函数的文件递归函数阶乘数组定义与调用数组数组名和索引数组的分类普通数组关联数组数组切片遍历数组 随机点名随机取值冒泡排序基本思想:算法思路 源于数学术语,即定义好了计算公式。函数就是一个功能模块,在函数中写好执行的命令即可。使用函数可以避免代码重复,增加可读性,简化脚本;使用函数可以将大的工程分割为若干小的功能模块,代码的可读性更强。函数要先定义在调用。 函数在shel脚本中仅在当前的shell环境中,有效shell脚本中函
2023-11-23 17:59:33
27
原创 shell 编程之条件语句
程序执行到“语句判断”,进行判断,如果“是”则执行“语句1”,“否”则就执行“语句2”,然后再结束。一真即为真,全假才为假,第一个命令为真,不需要执行第二个命令了, 一定为真了。程序执行到”语句判断",进行判断,如果“是”则执行“语句”,“否”则结束。-le: 第一个数小于或等于(Lesser or Equal)第二个数。-ge: 第一个数大于或等于(Greater or Equal)第二个数。第一一个命令为真,才需要执行第二个命令,全真才为真,一假即为假。-r:测试当前用户是否有权限读取(Read)
2023-11-21 18:28:35
29
原创 shell 编程规范与变量
bash定义好了。$*:表示所有位置参数的内容看成一个整体返回 返回所有$@:表示所有位置参数的内容分割成n份,每份作为一个独立的个体返回 返回所有:表示前一条命令执行后的返回状态,返回值为 0 表示执行正确,返回任何非 0值均表示执行出现异常$#:表示命令行中位置参数的总个数$0:表示当前执行的脚本或程序的名称 当前脚本的名字$$:当前bash的进程id: 后台任务最后一个id。
2023-11-20 18:12:00
35
原创 搭建 yum 仓库
yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间 为什么会有依赖关系的发生 因为linux本身就是以系统简洁为自身优势,所以在安装操作系统的时候并没有将所有的库文件以及编译软件包进行安装,所以在linux操作系统上进行软件安装的时候会出现软件包依赖的情况。yum由仓库和客户端组成,也就是整个yum由两部分组成,所以yum可以存放在两台服务器上。
2023-11-19 18:52:32
33
原创 网络文件共享服务 NFS
DAS存储是最常见的一种存储方式,尤其是在中小企业应用中。PC中的硬盘或只有一个外部SCSI接口的JBOD都属于DAS架构。DAS是指存储设备直接连接到服务器总线上,存储设备只与一台独立的主机连接,其他主机不能使用这个存储设备。DAS存储设备与服务器主机之间的连接通道通常采用SCSI连接,DAS存储设备主要是磁盘阵列(RAID: Redundant Arrays of Independent Disks)、磁盘簇JBOD:Just a Bunch Of Disks)等。 NAS存储就是存储设备
2023-11-19 17:57:06
253
原创 PXE 高效批量网络装机
PXE 的全称是 preboot execute environment它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统。pxe是通过网卡引导启动。
2023-11-19 13:38:15
39
原创 SSH——远程登录协议
(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程 复制等功能。SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令,SSH 为建立在应用层和传输层基础上的安全协议。对数据进行压缩,加快传输速度。
2023-11-14 18:09:36
140
原创 DNS——域名解析服务
将域名解析为IP地址,即通过dns服务器将www.baidu.com.解析成180.101.50.242。(The Internet Corporation for Assigned Names and Numbers)互联网名称与数字地址分配机构,负责在全球范围内对互联网通用顶级域名(gTLD)以及国家和地区顶级域名(ccTLD)系统的管理、以及根服务器系统的管理。Domain Name System 域名系统,应用层协议,是互联网的一项服务。
2023-11-13 22:45:20
491
原创 linux 网络
ifconfig其中,“ens33”中的“en”是“EtherNet”的缩写,表示网卡 以太网(局域网中的一种) 互联网类型为以太网,“s”表示热插拔插槽上的设备(hot-plug Slot),数字“33”表示插槽编号。
2023-11-10 08:38:06
192
原创 linux 文件系统与日志分析
文件数据包括元信息与实际数据;而文件的属性信息如:文件的大小,时间,类型,权限等,称为文件的元数据(meta data 元信息 )。元数据存放在inode(index node)表中。inode 表由很多条记录组成,一条记录对应存放了一个文件的元数据信息。文件存放在硬盘上,硬盘的最小存储单位是“扇区”,扇区存储大小为512字节。
2023-11-08 19:49:33
321
原创 系统安全及应用
如果第一行不注释,则root使用su切换普通用户就不需要输入密码(pam rootok. so模块的主要作用是使uid为0的用户,即root用户能够直接通过认证而不用输入密码。su - 用户名(UserName):登录式切换,会读取目标用户的配置文件,切换至自已的家目录,即完全切换;注意:su 切换新用户后,使用 exit 退回至旧的用户身份,而不要再用 su 切换至旧用户,否则会生成很多的bash子进程,环境可能会混乱。例如:可打开的文件数量,可运行的进程数量,可用内存空间。-l:例出当前的设置。
2023-11-08 09:51:57
27
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人