博文

ELK日志平台——Elasticsearch 8.x安装部署

图片
背景介绍:ELK日志平台是一种用于收集、存储、搜索、分析和可视化日志数据的开源工具组合。ELK代表Elasticsearch、Logstash和Kibana,这三个工具分别用于不同的功能:      Elasticsearch:用于存储和搜索日志数据的分布式搜索引擎,能够快速地存储、搜索和分析大量的数据。      Logstash:用于日志数据的收集、过滤和转发,可以从不同的来源收集数据,并将其标准化后发送到Elasticsearch等目标中。      Kibana:用于数据可视化和管理的工具,可以创建实时的仪表板和报告,帮助用户更好地理解和分析他们的日志数据。 通过这些工具的结合,ELK日志平台能够帮助用户更好地理解其系统和应用程序产生的日志数据,从而进行故障排查、性能优化和安全监控等工作。 一,Elasticsearch 8.x单机部署 官网YUM安装步骤: https://www.elastic.co/guide/en/elasticsearch/reference/8.13/rpm.html#rpm-repo 官网APT安装步骤: https://www.elastic.co/guide/en/elasticsearch/reference/8.13/deb.html#deb-repo 使用YUM或者APT安装后,不需要创建单独用户,直接使用systemctl管理。 systemctl enable elasticsearch.service systemctl start elasticsearch.service vim /etc/elasticsearch/elasticsearch.yml network.host: 0.0.0.0 #设置IP地址,任意网络可以访问 1.1,默认开启认证,使用HTTPS连接,下面关掉安全认证和ssl : xpack.security.enabled: false xpack.security.http.ssl: enabled: false xpack.security.transport.ssl: enabled: false 1...

vps小鸡配置swap记录

图片
背景:昨天晚上zabbix监控报警有一台vps内存爆了,然后就失联了,最后只能登录控制台重启😭。今天看了一下swap居然的没有开启的,小鸡的1G内存,不开swap还是压力山大啊! 一,查看是否启用swap,以及一些参数 #确认 swap 是否启用:没有输出则未启用 swapon -s #检查 swappiness 参数:默认60,该值范围从0到100,值越低,系统越不倾向于使用 swap cat /proc/sys/vm/swappiness #如有必要,通过以下命令进行调整: sysctl vm.swappiness=VALUE 二,开启swap: #创建 Swap 文件:这里使用dd创建了1G dd if=/dev/zero of=/swapfile bs=100M count=10 #设置 Swap 文件的权限:出于安全考虑,设置为只有 root 用户才能读写 chmod 600 /swapfile #将文件设置为 Swap 空间 mkswap /swapfile #启用 Swap 文件 swapon /swapfile #验证,查看 swapon -s free -m #配置开机自启动 vim /etc/fstab #在该文件添加以下内容 /swapfile none swap sw 0 0 三,修改swap: #在更改 swap 文件大小前,需要先禁用正在使用的 swap 文件 swapoff /swapfile #调整大小 fallocate -l 2G /swapfile #或者 dd if=/dev/zero of=/swapfile bs=200M count=10 #接下来就是和上面一样,权限,创建,启用,验证,查看 chmod 600 /swapfile mkswap /swapfile swapon /swapfile swapon -s free -m 四,删除swap: swapoff /swapfile #从 /etc/fstab 中移除 Swap 条目 # /swapfile none swap sw 0 0 rm /swapfile #删除 Swap 文件

部署RabbitMQ集群记录

图片
前言 :RabbitMQ是一款流行的开源消息代理和队列服务器,用于在分布式系统中异步地传递消息。这意味着系统或应用程序的不同部分可以通过发送消息到队列进行通信,而不是直接调用彼此的接口。由于系统组件可以独立地处理传入的消息,这种方式可以显著提高应用程序的可扩展性和健壮性。 一,实验背景 三台CentOS 7 部署rabbitmq集群(普通模式+镜像模式);以下是服务器IP信息 rabbitmq1:192.168.229.133 rabbitmq2:192.168.229.149 rabbitmq3:192.168.229.150 在/etc/hosts里面做好本地解析 二,安装步骤 2.1,单节点部署 yum update yum install erlang -y #安装二郎 #最新版已经不支持了,为了方便直接安装epel包里面的3.3.5 yum list |grep rabbitmq-server rabbitmq-server.noarch 3.3.5-34.el7 epel yum install rabbitmq-server.noarch -y #编辑配置文件 vim /etc/rabbitmq/rabbitmq.config 安装插件并启动服务 rabbitmq-plugins enable rabbitmq_management systemctl start rabbitmq-server.service systemctl status rabbitmq-server.service 查看节点状态,目前只有一个节点 [root@rabbitmq1 ~]# rabbitmqctl cluster_status Cluster status of node rabbit@rabbitmq1 ... [{nodes,[{disc,[rabbit@rabbitmq1]}]}, {running_nodes,[rabbit@rabbitmq1]}, {cluster_name,<<"rabbit@rabbitmq1">>}, {partitions,[]}] ...d...

HAProxy + Keepalived 动静分离实验记录

图片
前言 :在此前的讨论中,我们关注的是 LVS 的功能,这是一种专注于第四层(TCP/UDP协议)的负载均衡解决方案。而HAProxy则更为多才多艺,不仅能在第四层提供负载均衡,还能扩展至第七层,即应用层。HAProxy的这种灵活性允许它执行更加精细化的负载均衡策略,比如基于应用程序的负载均衡、基于URL的请求分发,以及对动态和静态内容的智能分离。 本次实验将专注于实现动静分离策略,并将其与之前介绍的 keepalived 结合起来,构建一个高度可用的动静分离负载均衡架构。这样,我们既保证了系统的高可用性,又通过HAProxy提升了请求处理的效率和速度。 一,实验背景 使用了6台虚拟机分别作为:HA1/2 、HTTP1/2 、PHP1/2 (为了简化数据库都没装,IP是自动分配的),最后客户端使用物理机。 Client:物理机(VMnet8)192.168.229.1 HA1:192.168.229.133 HA2:192.168.229.148 HTTP1:192.168.229.144 HTTP2:192.168.229.145 PHP1:192.168.229.146 PHP2:192.168.229.147 PS:注意要关闭防火墙和SELinux 二,实验步骤 2.1,安装与配置 Keepalived 在HA1-2之间配置keepalived来保证场景的高可用 #安装keepalived yum install keepalived.x86_64 -y #编辑配置keepalived文件 vim /etc/keepalived/keepalived.conf ! Configuration File for keepalived global_defs { router_id HA1 #两边不一样。 } vrrp_instance VI_1 { state MASTER #另外一台机器是BACKUP interface ens33 #心跳...

LVS-DR + Keepalived 搭建负载均衡

图片
接上一篇: LVS-DR实验记录 前言 :LVS前面说了,这里只简单说一下Keepalived吧 简介 :Keepalived是集群管理中保证集群高可用的一个服务软件,用来防止单点故障。主要用于提高基于TCP/IP(如HTTP、HTTPS等)服务的可用性。它通常与LVS(Linux Virtual Server)一起使用,但也可以独立用于其他类型的TCP/UDP服务。 Keepalived主要功能: 高可用性 :通过虚拟路由冗余协议(VRRP)实现高可用性。VRRP是一种遵循标准的协议,用于实现网络路径的故障转移。 负载均衡 :与LVS集成,提供基于IP包的负载均衡。 健康检查 :对应用程序或服务进行健康检查,以监测服务状态,并根据结果进行故障转移。 一,实验背景 1.1,使用了4台VMware虚拟机分别作为:LVS-DR1/2、RS1/2;而Client端我尝试用物理机。具体IP划分如下: Client:物理机(VMnet8) 192.168.229.1 VIP( lo:0 ): 192.168.229.200 LVS1(ens33): 192.168.229.133 LVS2(ens33): 192.168.229.135 RS1-WEB1: 192.168.229.142 RS2-WEB2: 192.168.229.143 PS:注意要关闭防火墙和SELinux 1.2,在2台LVS-DR上启用路由转发、4台虚拟机上都添加VIP [root@lvs-dr ~]#sysctl net.ipv4.ip_forward #查看是否开启路由转发 [root@lvs-dr ~]#net.ipv4.ip_forward = 0 #“0”代表没有开启 [root@lvs-dr ~]#vim /etc/sysctl.conf #开启转发功能 [root@lvs-dr ~]#net.ipv4.ip_forward = 1 #添加进去 [root@lvs-dr ~]#sysctl -p #使生效,"1"代表开启成功 ifconfig ...

LVS-DR实验记录

图片
接上一篇: LVS-NAT实验记录 LVS-DR工作原理: ①.客户端将请求发往前端的负载均衡器,请求报文源地址是CIP,目标地址为VIP。 ②.负载均衡器收到报文后,发现请求的是在规则里面存在的地址,那么它将客户端请求报文的源MAC地址改为自己DIP的MAC地址,目标MAC改为了RIP的MAC地址,并将此包发送给RS。 ③.RS发现请求报文中的目的MAC是自己,就会将次报文接收下来,处理完请求报文后,将响应报文通过lo接口送给eth0网卡直接发送给客户端。 一,实验背景 1.1,使用了3台VMware虚拟机分别作为:LVS-DR、RS1、RS2;而Client端我尝试用物理机。具体IP划分如下: Client:物理机(VMnet8) 192.168.229.1 VIP( lo:0 ): 192.168.229.200 LVS(ens33): 192.168.229.133 RS1-WEB1: 192.168.229.142 RS2-WEB2: 192.168.229.143 PS:注意要关闭防火墙和SELinux 1.2,在LVS-DR上启用路由转发、3台虚拟机上都添加VIP [root@lvs-dr ~]#sysctl net.ipv4.ip_forward #查看是否开启路由转发 [root@lvs-dr ~]#net.ipv4.ip_forward = 0 #“0”代表没有开启 [root@lvs-dr ~]#vim /etc/sysctl.conf #开启转发功能 [root@lvs-dr ~]#net.ipv4.ip_forward = 1 #添加进去 [root@lvs-dr ~]#sysctl -p #使生效,"1"代表开启成功 ifconfig lo:0 192.168.229.200/32 #添加VIP到环回口lo:0(在lvs-dr,web1/2上都要配置相同VIP) 二,配置LVS-DR 2.1,安装并启用LVS ...

LVS-NAT实验记录

图片
LVS简介:全称Linux Virtual Server,是一种负载均衡技术。它可以将网络服务的负载分散到多个服务器上,这些服务器构成一个服务器集群,对外表现为一个虚拟服务。本身并不提供服务,只是把特定的请求转发给对应的real server(真正提供服务的主机),从而实现集群环境中的负载均衡。 LVS-NAT工作原理: ①.客户端将请求发往前端的负载均衡器,请求报文源地址是CIP(客户端IP),后面统称为CIP),目标地址为VIP(负载均衡器前端地址,后面统称为VIP)。 ②.负载均衡器收到报文后,发现请求的是在规则里面存在的地址,那么它将客户端请求报文的目标IP地址改为了后端服务器的RIP地址并将报文根据算法发送出去。 ③.报文送到Real Server后,由于报文的目标地址是自己,所以会响应该请求,并将响应报文返还给LVS。 ④.然后lvs将此报文的源地址修改为本机并发送给客户端。 一,实验背景 Client: 192.168.9.131 LVS-外网: 192.168.9.129 VIP: 192.168.9.129 LVS-内网: 192.168.79.128 WEB1: 192.168.79.129 WEB2: 192.168.79.130 PS:注意要关闭防火墙和SELinux 二,内网WEB1/2服务器配置网站和路由 2.1,配置web服务 #安装httpd服务 [root@web1 ~]yum install -y httpd #启用http [root@web1 ~]systemctl start httpd #设置自启 [root@web1 ~]systemctl enable httpd #设置主页面(以web1为例) [root@web1 ~]echo "This is Web1" >/var/www/html/index.html 2.2,配置路由(指向出口-LVS服务器) #配置静态路由( WEB1/2都要配置 ) route add -net 192.168.9.0/24 gw 192.168.79.128 三,配置LVS路由功能和负载策略 3.1,启用路由转...