nginx-location根据不同参数跳转

介绍 最近项目有个需求,需要根据不同的用户id跳转到后端不同接口,通过查看文档配置完成,特记录如下 配置 server { listen 8093; server_name localhost; access_log logs/access_8093.log main; location /test/get{ proxy_redirect off; proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $http_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 定义一个变量为0

keepalived检查方法

HTTP及SSL GET检测 这里有几个要点: 1、两者都有两种检测方式,一种是简单的基于返回码确认;另一种是基于确认后端页面内容hash值,确认前后是否发生变化(是不是感觉有点高端,还有简单的防止页面被篡改的作用,当然,动态页面显然不行); 2、两者都是处理简单的GET请求,基于post返回值确认是否正常,这种方法显然不适用 ,不过POST方式是可以通过MISC_CHECK方式进行支持检测的; 3、两者配置语法上相同,只不过类型名不同而已 。同属于大的web请求范畴,只不过一个走的HTTP协议,一个走的HTTPS协议; 基于状态码的检测 配置如下: real_server 192.168.2.195 80 { weight 1 HTTP_GET { url { path /index.html status_code 200 #http://192.168.2.188/index.

Elasticsearch之集群角色类型

角色划分 在Elasticsearch中,有很多角色,常用的角色有如下: Master Node: 主节点,该节点不和应用创建连接,每个节点都保存了集群状态,master节点不占用磁盘IO和CPU,内存使用量一般。 master节点控制整个集群的元数据。只有Master Node节点可以修改节点状态信息及元数据(metadata)的处理,比如索引的新增、删除、分片路由分配、所有索引和相关 Mapping 、Setting 配置等等。 Elasticsearch如果做集群的话Master节点至少三台服务器或者三个Master实例加入相同集群(生产建议每个es实例部署在不同的设备上),三个Master节点最多只能故障一台Master节点,数据不会丢失,如果三个节点故障两个节点,则造成数据丢失并无法组成集群 Master eligible nodes: 合格节点,每个节点部署后不修改配置信息,默认就是一个 eligible 节点,该节点可以参加选主流程,成为Mastere节点。该节点也保存了集群节点的状态。eligible节点比Master节点更节省资源,因为它还未成为 Master 节点,只是有资格成功Master节点。 有资格成为Master节点但暂时并不是Master的节点被称为 eligible 节点,该节点只是与集群保持心跳,判断Master是否存活,

centos 配置sudo记录日志

sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。 编辑/etc/rsyslog.conf文件 #添加一行 local2.debug /var/log/sudo.log 编辑 visudo #添加3行 Defaults logfile=/var/log/sudo.log Defaults loglinelen=0 Defaults !syslog 创建日志文件 touch /var/log/sudo.log 重启服务 systemctl restart rsyslog 普通用户操作 [svnuser@node1 ~]$sudo

centos常见编译错误

ERROR: the HTTP XSLT module requires the libxml2/libxslt yum -y install libxml2 libxml2-dev yum -y install libxslt-devel ERROR: the HTTP image filter module requires the GD library. yum -y install gd-devel ERROR: the GeoIP module requires the GeoIP library. yum -y install GeoIP GeoIP-devel GeoIP-data ERROR: the Google perftools

nginx配置location总结及rewrite规则写法

一个示例: 已=开头表示精确匹配 如 A 中只匹配根目录结尾的请求,后面不能带任何字符串。 ^~ 开头表示uri以某个常规字符串开头,不是正则匹配 ~ 开头表示区分大小写的正则匹配; ~* 开头表示不区分大小写的正则匹配 / 通用匹配, 如果没有其它匹配,任何请求都会匹配到 优先级: (location =) > (location 完整路径) > (location ^~ 路径) > (location ~,~* 正则顺序) > (location 部分起始路径) > (/) location = / { # 精确匹配 / ,主机名后面不能带任何字符串 [ configuration A ] } location / { # 因为所有的地址都以 / 开头,所以这条规则将匹配到所有请求 # 但是正则和最长字符串会优先匹配 [ configuration B ] } location /documents/ { # 匹配任何以 /documents/ 开头的地址,匹配符合以后,还要继续往下搜索 # 只有后面的正则表达式没有匹配到时,这一条才会采用这一条

LVS+Keepalived 高可用负载均衡

介绍 LVS 是一种预装在 Linux 系统中,基于四层、具有强大性能的反向代理服务器。ipvsadm 是 LVS 的命令行管理工具。 LVS 特点是: 首先它是基于 4 层的网络协议的,抗负载能力强,对于服务器的硬件要求除了网卡外,其他没有太多要求; 配置性比较低,这是一个缺点也是一个优点,因为没有可太多配置的东西,大大减少了人为出错的几率; 应用范围比较广,不仅仅对 web 服务做负载均衡,还可以对其他应用(mysql)做负载均衡; LVS 架构中存在一个虚拟 IP 的概念,需要向 IDC 多申请一个 IP 来做虚拟 IP。 Keepalived 是一个基于 VRRP 协议来实现的服务高可用方案,可以利用其来避免 IP 单点故障,一般与其它负载均衡技术(如 LVS

clickhouse安装教程

系统配置 在 /etc/security/limits.conf 这个文件的末尾加入一下内容: * soft nofile 65536 * hard nofile 65536 * soft nproc 131072 * hard nproc 131072 在/etc/security/limits.d/90-nproc.conf 这个文件的末尾加入一下内容: * soft nofile 65536 * hard nofile 65536 * soft nproc 131072 * hard nproc 131072 重启服务器之后生效,用 ulimit -n 或者 ulimit -a 查看设置结果 修改 /etc/selinux/

Presto安装部署文档

主节点协调器安装 首先将presto.tar.gz 放在 软件安装目录比如 /web/soft/ 下,然后解压 tar –zxvf presto.tar.gz 解压后将压缩包删除 进入 /web/soft/presto/presto-server-0.232/etc 下 编辑 node.properties: node.environment=production node.id=hadoop1 node.data-dir=/web/soft/presto/data node.id 是每个节点的唯一标识,每个节点id不一样; node.data-dir 是日志配置文件等的目录,需要将 /web/soft替换为你软件的安装目录 进入

kubeadmin 修改证书有效期到 100年

kubeadmin 修改证书有效期到 100年 1. 获取源码 访问:https://github.com/kubernetes/kubernetes/releases,下载特定版本源码 wget https://github.com/kubernetes/kubernetes/archive/v1.20.4.tar.gz tar -zxvf v1.20.4.tar.gz mv v1.20.4.tar.gz kubernetes cd kubernetes 2. 修改证书有效期 查看网上的资料主要有两个地方需要修改 修改 CA 有效期为 100年(默认为 10年)