- 博客(65)
- 收藏
- 关注
原创 自动化运维工具---ansible的12个常用模块介绍
special_time #特殊的时间范围,参数:reboot(重启时),annually(每年),monthly(每月),weekly(每周),daily(每天),hourly(每小时)其中,我们比较常用的是/usr/bin/ansible和/usr/bin/ansible-playbook,而本章主要讲/usr/bin/ansible的使用。/usr/bin/ansible-pull #Ansible远程执行命令的工具,拉取配置而非推送配置(使用较少,海量机器时使用,对运维的架构能力要求较高)
2023-05-01 14:41:51
1441
原创 非常好用的自动化运维工具------ansible
Ansible可以同时管理Redhat系的Linux,Debian系的Linux,以及 Windows主机。管理节点只在执行脚本时与远程主机连接,没有特别的同步机制,所以断电等异常一般不会影响ansbile。ansible是自动化运维工具,基于Python开发,集合了众多运维工具(puppet、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于 paramiko 开发的,并且基于模块化工作,本身没有批量部署的能力。
2023-05-01 14:29:09
267
原创 使用Harbor构建docker私有仓库
Harbor 是VMware公司开源的云本地 registry 仓库,有可视化的Web管理界面,可以方便的管理和储存镜像。Harbor 支持在多个仓库直接进行复制镜像,提供用户管理和访问控制和活动审计。
2023-05-01 14:21:32
290
原创 使用Consul建立docker集群(consul + consul-template + registrator + docker)
Consul-Template是一个守护进程,用于实时查询Consul集群信息Consul-Template可以更新文件系统上任意数量的指定模板,生成配置文件更新完成以后,可以选择运行shell命令执行更新操作,重新加载Nginx。Consul-Template可以查询Consul中的服务目录、Key、Key-values等。这种强大的抽象功能和查询语言模板可以使Consul-Template特别适合动态的创建配置文件。
2023-05-01 14:04:31
168
原创 简单了解Docker Compose编排
-verbose:输出更多调试信息 --version:打印版本并退出 -f,--file FILE:使用特定的compose模板文件,默认为docker-compose.yml -p, --project-name NAME:指定项目名称,默认使用目录名称。no(默认,不重启),always(总是重启),no-failure(退出状态非0时重启),unless-stoped(容器退出时,忽略守护进程启动前停止的容器)ports:暴露容器端口,与-p相同,但端口不能低于60;例如:- 1234:80。
2023-04-23 17:46:34
55
原创 Docker镜像的创建
Dockerfile 是由一组指令组成的文件,其中每条指令对应 Linux 中的一条命令,Docker 程序将读取 Dockerfile 中的指令生成指定镜像。
2023-04-20 16:15:07
2002
原创 zabbix监控的报警机制
刚配置的自定义的监控项默认不会自动报警,首页也不会提示错误,需要配置触发器与报警动作才可以自定报警。触发器(trigger)设置一个条件,当触发条件发生后,会触发事件,执行某个动作动作(action)触发时间执行的动作,可以是发送邮件、短信,也可以是重启某个服务等。管理--->报警媒体类型--->创建媒体类型--->名称:Mail-Test类型:脚本脚本名称: mailx.sh脚本参数://新增以下三个参数。
2023-04-12 19:07:14
342
原创 部署 zabbix 客户端
【表达式】点击添加,【监控项】点击选择 Number of login users,【功能】选择 last(),【结果】选择 > 3,点击 【插入】【检查】点击【添加】,【检查类型】选择 Zabbix 客户端,【端口范围】设置成 10050,【键值】设置成 system.uname。点击上方菜单栏【Message templates】,点击【添加】,【Message type】选择 问题,点击【更新】【密码】可登录QQ邮箱页面,点击【设置】-->【账户】中的【生成授权码】,通过短信获取授权码。
2023-04-12 16:29:59
90
原创 部署 zabbix 服务端
/安装SCL(Software Collections),便于后续安装高版本的 php,默认 yum 安装的 php 版本为 5.4,版本过低,zabbix 5.0 版本对 php 版本最低要 7.2.0 版本。//修改 zabbix-front 前端源,安装 zabbix 前端环境到 scl 环境下。//修改 zabbix server 配置文件,修改数据库的密码。//添加数据库用户,以及 zabbix 所需的数据库信息。//安装 zabbix 所需的数据库。//获取 zabbix 的下载源。
2023-04-12 15:44:09
72
原创 ELK企业级日志分析系统概述及部署(图文详解)
ElasticSearch:是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。Elasticsearch 是用 Java 开发的,可通过 RESTful Web 接口,让用户可以通过浏览器与 Elasticsearch 通信。LogstashLogstash:主要用于日志收集,同时可以对数据处理,并输出给 Elasticsearch。
2023-04-06 15:29:07
243
原创 GFS分布式文件系统(理论+实验)
一、GlusterFS1.1 GlusterFS的概念1.2 GlusterFS的特点1.3 GlusterFS术语1.4 GlusterFS的工作流程1.5 后端存储如何定位文件1.6 GFS支持的七种卷二、模拟实验——部署 GlusterFS 群集2.1 环境准备2.2 安装、启动GlusterFS(所有node节点)2.3 添加节点到存储信任池中( node1 节点)2.4 根据规划创建卷分布式卷条带卷复制卷分布式条带卷分布式复制卷。
2023-04-05 12:51:54
215
原创 rsync+inotify远程同步部署实验(图文详解)
在Linux内核中,默认的inotify机制提供了三个调控参数:max_queue_events(监控事件队列,默认值为16384)、max_user_instances(最多监控实例数,默认值为128)、max_user_watches(每个实例最多监控文件数,默认值为8192)。rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用。否则处于静默等待状态。
2023-04-03 17:03:29
163
原创 Redis 集群部署实验(主从复制、哨兵、集群)
哨兵的启动依赖于主从模式,所以须把主从模式安装好的情况下再去做哨兵模式,所有节点上都需要部署哨兵模式,哨兵模式会监控所有的Redis工作节点是否正常,当Master出现问题的时候,因为其他节点与主节点失去联系,因此会投票,投票过半就认为这个Master的确出现问题,然后会通知哨兵间,然后从Slaves中选取一个作为新的Master。主从复制主要实现了数据的多机备份,以及对于读操作的。cluster-config-file nodes-6379.conf #840行,取消注释,群集名称文件设置。
2023-03-30 16:22:09
49
原创 Redis 高可用相关理论
在web服务器中,高可用是指服务器可以正常访问的时间,衡量的标准是在多长时间内可以提供正常服务(99.9%、99.99%、99.999%等等)但是在Redis语境中,高可用的含义似乎要宽泛一些,除了保证提供正常服务(如主从分离、快速容灾技术),还需要考虑数据容量的扩展、数据安全不会丢失等。
2023-03-29 15:32:07
56
原创 Redis数据库常用命令
一、Redis数据库常用命令keysexistsdeltyperenamerenamenxdbsize二、Redis多数据库常用命令多数据库间切换多数据库间移动数据清除数据库内数据。
2023-03-29 14:21:09
661
原创 NoSQL之 Redis配置与优化
若在服务器上只运行一个Redis进程,当多个客户端同时访问时,服务器的处理能力是会有一定程度的下降,若在同一台服务器上开启多个Redis进程,Redis在提高并发处理能力的同时会给服务器的CPU造成很大压力。Please select the redis executable path [] /usr/local/redis/bin/redis-server #需要手动修改为可执行文件路径,注意要一次性正确输入。Redis作为基于内存运行的数据库,缓存是其最常应用的场景之一。
2023-03-28 17:05:59
49
原创 数据库之MHA高可用集群部署及故障切换
------------------------组件解释----------------------------------------------------------------------------------#--------------------------配置文件解释--------------------------------------------------------------------------#代表此变量值为ifconfig ens33:1 down。
2023-03-25 14:56:30
620
原创 数据库之MySQL主从复制与读写分离
SQL slave thread(SQL从线程)处理该过程的最后一步,SQL线程从中继日志读取事件,并重放其中的事件而更新 Slave 服务器的数据,使其与 Master 服务器中的数据一致,只要该线程与 I/O 线程保持一致,中继日志通常会位于 OS 缓存中,所以中继日志的开销很小。由于使用MySQL Proxy需要写大量的Lua脚本,这些Lua脚本不是现成的,而需要自己编写,这对于并不熟悉MySQL Proxy内置变量和MySQL Protocol的人来说是非常困难的。但是它不支持事务和存储过程。
2023-03-25 14:25:39
134
原创 数据库之MySQL日志管理、备份与恢复
#--------------解释:开头210206 15:45:53表示时间,其他的现在用不到-----------------------------------##-------------解释:at xxx 表示位置点------------------------------------------------##-------------------------------插入第二个数据--------------------------
2023-03-25 14:03:04
475
原创 数据库之Mysql索引、事务与存储引擎
因为索引本身会消耗系统资源,在有索引的情况下,数据库会先进行索引查询,然后定位到具体的数据行,如果索引使用不当,反而会增加数据库的负担。MySQL中的数据用各种不同的技术存储在文件中,每种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力,这些不同的技术以及配套的功能在MySQL中称为存储引擎。#---------------查看后个字段的解释----------------------------------------------------一个表只能有一个主键,不允许有空值。
2023-03-25 13:41:54
72
原创 数据库之MySQL基本操作命令
如果表中有自增长字段,使用DELETE FROM 删除所有记录后,再次新添加的记录会从原来最大的记录 ID 后面继续自增写入记录。#-------------------------------参数解释---------------------------------------------------------------------------自增长字段必须是主键;#----------------------解释部分-----------------------------------------
2023-03-25 13:15:33
130
原创 数据库之简单了解MySQL
20世纪80年代初,IBM公司的关系数据库系统DB2问世,开始逐步取代层次与网状模型的数据库,成为行业主流。第三阵营:6.0-7.1阵营,就是MySQL Cluster版本, 为适应新时代对数据库的集群需求而开发。第二阵营:5.4-5.7阵营,整合了MySQL AB公司、社区和第三方公司开发的存储引擎,从而提高性能。功能:数据库的建立和维护功能、数据定义功能、数据操控功能、数据库的运行管理功能、通信功能。是一个人机系统,由硬件、OS、数据库、DBMS、应用软件和数据库用户组成。
2023-03-25 12:41:12
44
原创 编译安装mysql
3、使用命令 mysqladmin -u root -p password 123456 修改密码,123456为修改的密码,也可自己设置。echo "例如:输入“mysqladmin -u root -p password "123456" ” + 回车;echo -e "请将安装包mysql-boost-5.7.20.tar.gz放入/opt目录下"#2、请在/opt目录下放入mysql-boost-5.7.20.tar.gz安装包。#更改mysql安装目录和配置文件的属主属组。
2023-03-24 17:35:28
122
原创 高效多用的群集之Haproxy配合Nginx搭建Web集群
这部分配置是将haproxy的info日志记录到/var/log/haproxy/haproxy-info.log下,将notice日志记录到/var/log/haproxy/haproxy-notice.log下。默认haproxy的日志是输出到系统的syslog中,查看起来不是非常方便,为了更好的管理haproxy的日志,我们在生产环境中一般单独定义出来。需要修改rsyslog配置,为了便于管理。retries:重试次数,主要用于对集群节点的检查,如果节点多,且并发量大,设置为2次或3次。
2023-03-24 17:29:36
209
原创 高效多用的群集之部署LVS+Keepalived 高可用群集(DR模式)
判断LVS负载调度器、节点服务器的可用性,当master主机出现故障及时切换到backup节点保证业务正常,当 master 故障主机恢复后将其重新加入群集并且业务重新切换回 master 节点。补充:修改好主负载服务器上的配置文件后,感觉要改的好多,其实主备之间配置就三点不一样,这时候就可以远程复制一波啦。#12行修改,指定服务器(路由器)的名称,主备服务器名称须不同,主为LVS_01,备为LVS_02。#34行修改,指定虚拟服务器地址(VIP)、端口,定义虚拟服务器和Web服务器池参数。
2023-03-24 17:17:13
117
原创 高效多用的群集之LVS负载均衡群集(DR模式)
第二步:内核空间判断数据包的目标 IP 是本机 VIP ,此时 IPVS(IP 虚拟服务器)比对数据包请求的服务是否是集群服务,是集群服务就重新封装数据包。对节点服务器进行处理,设置内核参数arp_announce=2:系统不使用IP包的源地址来设置ARP请求的源地址,而选择发送接口的IP地址。发送ARP请求时,Linux默认使用IP包的源IP地址(即VIP)作为ARP请求包中的源IP地址,而不使用发送接口的IP地址。客户端收到回复报文,得到想要的服务,但是不会知道是哪台服务器处理的。
2023-03-24 16:54:52
28
原创 高效多用的群集之LVS负载均衡群集(NAT模式)
群集所提供的应用服务、由服务器池承担,其中每个节点具有独立的RIP地址(真实IP),只处理调度器分发过来的客户机请求。采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的Internet连接直接回应客户机,而不再经过负载调度器。群集:也被称为集群。类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口。LB的负载分配依赖于主节点的分流算法,将来自客户机的访问请求分担给多个服务器节点,从而缓解整个系统的负载。
2023-03-24 16:45:07
45
原创 web服务之Nginx+Tomcat实现负载均衡、动静分离(脚本安装)
反向代理(Reverse Proxy) 是指以 代理服务器(例:Nginx) 来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器(例:Tomcat),并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器(例:Nginx)对外就表现为一个反向代理服务器。服务端接收来自客户端的请求中,既有静态资源也有动态资源,静态资源由 Nginx 提供服务,动态资源由 Nginx 转发至后端。Nginx 处理静态资源的能力是 Tomcat 处理的6倍。
2023-03-24 16:20:11
69
原创 web服务之Tomcat
优化主要包括三方面,分别为操作系统优化(内核参数优化),Tomcat配置文件参数优化,Java虚拟机(JVM)调优。以上是一些常用的配置参数,还有好多其它的参数设置,还可以继续深入的优化,HTTP Connector 与AJP Connector 的参数属性值,可以参考官方文档的详细说明进行学习。-------java.sh中补充的知识点-----------------------------------#----------------参数解释-----------------------------
2023-03-24 16:10:55
533
原创 web服务之Nginx中的location匹配与rewrite重写跳转
再比如 location = /abc,则只匹配/abc ,/abc/或 /abcd不匹配。因为所有的地址都以 / 开头,所以这条规则将匹配到所有请求 比如访问 / 和 /data, 则 / 匹配, /data 也匹配,匹配/images/abc/1.html 文件,如果和正则 ~ /images/abc/1.html 相比,正则优先级更高。如“\n”匹配一个换行符,而“\$”则匹配“$”=为精确匹配 / ,主机名后面不能带任何字符串,比如访问 / 和 /data,则 / 匹配,/data 不匹配。
2023-03-24 15:58:34
212
原创 web服务之Nginx优化与防盗链
也就是缓存一天的时间,一天之内浏览器访问这个页面,都是用缓存中的数据,而不需要向 Nginx 服务器重新发出请求,减少了服务器的使用带宽。若将它设置为0,就禁止了keepalive 连接。若接收到来自客户端的其它请求,服务端会利用这个未被关闭的连接,而不需要再建立一个连接。当修改文件的权限或者属性的时候,就会更新这个时间,ctime并不是create time,更像是change time,当修改文件的内容数据的时候,就会更新这个时间,而更改权限或者属性,mtime不会改变,这就是和ctime的区别。
2023-03-24 15:43:38
67
原创 web服务之Nginx网站服务
通常web服务器放在反向代理的后面,这样就不能获取到客户的IP地址了,通过$remote_add拿到的IP地址是反向代理服务器的iP地址。反向代理服务器在转发请求的http头信息中,可以增加x_forwarded_for信息,用以记录原有客户端的IP地址和原来客户端的请求的服务器地址。#在Linux平台上,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。
2023-03-24 15:29:42
283
原创 iptables防火墙(四表五链)
mangle表 =>PREROUTING链 POSTROUTING链 INPUT链 OUTPUT链 FORWARD链。转发:PREROUTING===>FORWARD===>POSTROUTING。IP范围匹配:-m iprange --src-range IP范围。多端口匹配:-m multiport --sports 源端口列表。MAC地址匹配:-m mac --mac-source MAC地址。状态匹配:-m state --state 连接状态。
2023-02-05 08:34:15
1287
原创 Firewalld防火墙基础
Firewalld防火墙基础一、Firewalld概述二、Firewalld和iptables的关系三、Firewalld网络区域firewall-config图形工具介绍firewall-cmd命令行工具1.获取预定义信息2.区域管理3.服务管理(1).通过服务名字来管理规则更加人性化。(2).通过服务来组织端口分组的模式更加高效,如果一个服务使用了若干个网络端口,则服4.端口管理5.两种配置模式一、Firewalld概述Firewalld简介。
2023-02-05 08:33:32
75
原创 Shell编程之正则表达式与文本处理器
此时执行以下命令即可同时查找到“shirt”与“short”这两个字符串,其中“[]”中无论有几个字符, 都仅代表一个字符,也就是说“[io]”表示匹配“i”或者“o”。在 Linux/UNIX 系统中,awk 是一个功能强大的编辑工具,逐行读取输入文本,并根据指定的匹配模式进行查找,对符合条件的内容进行格式化输出或者过滤处理,可以在无交互的情况下实现相当复杂的文本操作,被广泛应用于 Shell 脚本,完成各种自动化配置任务。sort 命令的语法为“sort [选项] 参数”,其中常用的选项包括以下几种。
2023-02-05 08:33:15
97
原创 shell编程之免交互
判断上次输出的结果是否包含指定的字符串,如果有立即返回,否则就等待超时时间后返回,而expect只能捕捉由spawn启动的进程输出,所以一般两者连用,还有expect用于接收命令执行后的输出,然后和期望的字符串匹配。expect脚本可以接收从bash传递的参数,可以使用[lindex $argv n]获得,n从0开始,分别表示第一个,第二个…向进程发送字符串,用于模拟用户的输入,该命令不能自动回车换行,一般要加\r(回车)(1)标记可以使用任意的合法字符,不仅仅是EOF,但约定俗成的是EOF,必须大写。
2023-02-05 08:31:53
63
原创 shell函数
数组的特性就是一组数据类型相同的集合(不包括有一些编程语言提出来的关联数组的概念)。那么shell中数组是怎么定义的呢,我们来看两种数据类型:一是数值类型,二是字符串类型;获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于0。如果你希望直接从终端调用函数,可以将函数定义在主目录下的 .profile 文件,这样每次登录后,在命令提示符后面输入函数名字就可以立即调用。Shell 函数返回值只能是整数,一般用来表示函数执行成功与否,0表示成功,其他值表示失败。
2023-02-05 08:30:46
102
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人