Geuni's Blog

通过Keepalived & HAProxy,实现Nginx高可用及负载均衡

这篇文章将介绍如何使用Keepalived + HAproxy组合的方式,搭建Nginx的高可用负载均衡架构。 先看看单独使用Keepalived或HAProxy的时候会有什么问题或缺点。 1. Nginx + Keepalived : 该方案缺点是资源使用效率不高,只能在吞吐量不高的场景下使用。 不使用LVS的情况下,我们能做的就是主备(Active-Passive)架构,既然备机...

Redis源码方式安装及Sentinel配置

安装环境及Redis源码版本 OS: Ubuntu 22.04.3 LTS Redis: 7.2.3 如下,准备3个VM No. host name IP node roles #1 redis-server1 172.25.254.131 ...

Kafka介绍,安装及集群搭建

什么是kafka? Kafka是一个分布式的事件流平台,用于大规模数据的收集,处理,存储,集成。它的应用场景包含分布式数据流,流处理,数据集成,pub/sub消息。 为更好的理解kafka,我们需要先知道什么是事件。 什么是事件? 事件是应用程序用于识别或记录的任何类型的操作,事件,变更。例如一次支付,一次网页点击,一次温度读取以及任何对所发生事件的描述。 事件可以看作为通知与状态的组...

Redis Sentinel的failover过程

Redis Sentinel是 Redis实现高可用(HA)的组件(非集群支持)。Reids有个叫Redis Cluster产品, Sentinel与它无关,Sentinel给无需集群环境的用户提供简单的故障转移功能。 Sentinel的基本功能: Monitoring : Sentinel以自动化的failover(故障转移)为目的,持续监控master/slave的状态。 ...

解决ES未分配分片的相关问题,“X 个分片有 Y 个失败”

我们打开kibana的时候,有时候能看到“X 个分片有 Y 个失败”的错误信息,这通常是个别索引存在未分配分片所导致的问题。 这时候我们的ES节点状态通常是Yellow或是Red状态。 先了解一下ES Shard的4种状态: INITIALIZING - 分片初始化状态,该状态下shard不可用。新建索引或刚启动节点的时候短暂的发生。 RELOCATI...

解决Git error: Your local changes to the following files would be overwritten by merge

当本地修改的代码与远程仓库的代码有冲突时pull代码会发生如下错误: 1 2 3 4 error: Your local changes to the following files would be overwritten by merge: README.md Please commit your changes or stash them before you merge. Abo...

关于MySQL - SELECT list is not in GROUP BY clause and contains nonaggregated column错误

错误信息: 1 [42000][1055] Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'mydb.t.address' which is not functionally dependent on columns in GROUP BY clause; t...

Linux源码编译方式安装OpenResty及第三方模块

以下安装方法完全适用于nginx的安装,下面./configure阶段只需要去掉--with-luajit参数,安装OpenResty主要为了使用LuaJIT。 安装依赖 因为OpenResty是基于Nginx构建的,安装之前需要先安装Nginx的依赖组件。 PCRE - 正则库,Nginx Core及Rewrite模块需要用到它。 zlib - 提...

Nacos集群(clustering)异常,unable to find local peer: *.*.*.*, all peers: []

现象: 公司新系统要上线了,生产环境搭建Nacos集群之后,发现有些节点无法被识别。 nacos.log日志文件显示节点正常启动,没有异常日志,不过看naming-server.log日志报了一些异常,无法匹配节点信息。 1 2 3 4 5 6 7 8 9 10 11 12 13 2022-01-11 08:31:03,630 WARN NamingProxy java.io.IOE...

Ruby gem,bundler默认源替换为国内镜像,可解决bundler install卡住等问题

国内使用bundler install等命令时,经常出现卡住或响应慢的现象,替换为国内源即可解决问题。 gem 1 2 3 4 5 # 添加 TUNA 源并移除默认源 gem sources --add https://mirrors.tuna.tsinghua.edu.cn/rubygems/ --remove https://rubygems.org/ # 列出已有源 gem sou...