CentOS7下使用yum安装Nginx
下载对应当前系统版本的nginx包(package)安装 openssl 、 zlib 、 gcc 、pcre依赖1yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel pcre-devel 安装 pcre 依赖:1234wget https://nchc.dl.sourceforge.net/project/pcre/pcre/8.45/pcre-8.45.tar.gztar -xvf pcre-8.45.tar.gz && cd pcre-8.45./configuremake && make install 下载nginx的rpm包:1wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 建立nginx的yum仓库1rpm -ivh...
利用split分割文件或者二进制文件
前言 当需要将较大的数据上传到服务器,或从服务器下载较大的日志文件时,往往会因为网络或其它原因而导致传输中断而不得不重新传输。这种情况下,可以先将大文件分割成小文件后分批传输,传完后再合并文件。 1. 分割文件文件分割可以使用split命令,该即支持文本文件分割,又支持二进制文件分割;而合并文件可以使用cat命令。 1.1 文本文件分割分割文本文件时,可以按文件大小分割,也可以按文本行数分割。 按文件大小分割 按文件大小分割文件时,需要以-C参数指定分割后的文件大小: 1$ split -C 100M large_file.txt stxt 如上所示,我们将大文件large_file.txt按100M大小进行分割,并指定了分割后文件前缀stxt;当不指定前缀时,split会自动对分割文件进行命名,一般会以x开头。 按行分割 文本文件还可以以行为单位进行分割,以行数进行分割时会忽略文件大小,并以-l参数指定分割后文件的行数: 1$ split -l 1000 large_file.txt stxt 1.2...
k8s环境下,nginx做websocket负载的方案梳理
websocket server websocket server demo:https://github.com/mrniko/netty-socketio-demo Dockerfile 123456FROM maven:3.8.5-openjdk-17 as buildWORKDIR /user/src/appCOPY . .RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ && mvn clean package -DskipTestsCMD mvn exec:java -f pom.xml 部署(保证pod可以被独立访问)statefulset方式 使用statefulset+headless service的方式对pod进行独立访问 DNS:...
nginx-sticky安装及负载均衡使用
转自:...
负载均衡配置和算法原理
转自:https://tinychen.com/20200319-nginx-03-load-balancing/ nginx的负载均衡配置,包括http、tcp和udp负载均衡,以及Round robin、Least connections、Least time(Nginx Plus专属)、Generic hash、Random、IP hash(HTTP模块专属)的原理分析。 1、http负载均衡我们先来看一小段配置文件 12345678910upstream backend { server 10.0.0.1:80 weight=1; server nginx.example.com:80 weight=2; }server { location / { proxy_pass http://backend; }} 这是一个简单的使用upstream模块对http服务进行指定权重的负载均衡的配置文件,一般存放在nginx目录下的conf.d文件夹中。 server可以使用Unix...
ssh远程主机执行命令或脚本
免密操控(或者使用sshpass工具,看下面)ps: 免密操控不可以逆向, 就是说可以一个主控方, 多个被控方, 但不可以一个被控方,多个主控方 以下以gitlab-runner账户远程免密登陆root@192.168.56.100为例 先执行su gitlab-runner切换到gitlab-runner账户 在你的主控端机器上使用 ssh-keygen命令创建公钥,使用ssh-keygen -t rsa来创建,程序会问你存放目录,如果不需要修改,直接回车几次即可 将/.ssh目录下id_rsa.pub文件拷贝到受控机器的`/.ssh目录中,然后将文件内容导入到~/.ssh/authorized_keys`文件 1234主控方机器执行:scp ~/.ssh/id_rsa.pub root@192.168.56.100:~/.ssh/id_rsa.pub受控方机器执行:cat ~/.ssh/id_rsa.pub >>...
linux.net.ipv4等若干参数
Linux下TCP/IP及内核参数优化有多种方式,参数配置得当可以大大提高系统的性能,也可以根据特定场景进行专门的优化,如TIME_WAIT过高,DDOS攻击等等。如下配置是写在**/etc/sysctl.conf**中,可使用sysctl -p生效,相关参数仅供参考,具体数值还需要根据机器性能,应用场景等实际情况来做更细微调整。 net.core.netdev_max_backlog = 262144#该参数决定了,网络设备接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目,我推荐262144。 net.core.optmem_max = 10000000#该参数指定了每个套接字所允许的最大缓冲区的大小 net.core.rmem_default = 10000000#指定了接收套接字缓冲区大小的缺省值(以字节为单位)。 net.core.rmem_max = 16777216#指定了接收套接字缓冲区大小的最大值(以字节为单位,我推荐16M。 net.core.somaxconn...
Nginx反向代理中proxy_set_header参数说明
转自: https://www.cnblogs.com/kevingrace/p/8269955.html Nginx proxy_set_header:即允许重新定义或添加字段传递给代理服务器的请求头。该值可以包含文本、变量和它们的组合。在没有定义proxy_set_header时会继承之前定义的值。默认情况下,只有两个字段被重定义: 12proxy_set_header Host $proxy_host;proxy_set_header Connection close; 如果启用缓存,来自之前请求的头字段“If-Modified-Since”, “If-Unmodified-Since”, “If-None-Match”, “If-Match”, “Range”, 和 “If-Range” 将不会被代理服务器传递。一个不会变化的“Host”头请求字段可通过如下方式被传递: 1proxy_set_header Host ...
nginx中$host,$http_host和$proxy_host区别
nginx中$host、$http_host和$proxy_host区别 变量 是否显示端口 值 $host 不显示端口 浏览器请求的ip,不显示端口 $http_host 端口存在则显示 浏览器请求的ip和端口号 $proxy_host 默认80端口不显示,其它显示 被代理服务的ip和端口号(当proxy_pass配置的是upstream, 则$proxy_host是不生效的) 配置反向代理时,接口请求报404问题应用描述:前端应用域名为A(ww.a.com), 后端服务域名为B(www.b.com); 为了解决跨域问题,配置nginx反向代理如下: 1234567...proxy_set_header Host $host;...location ^~ /api/ { rewrite "^/api/(.*)$" /$1...
tcpdump的使用
转自: https://cloud.tencent.com/developer/article/1840203 简介tcpdump 是一款强大的网络抓包工具,它使用 libpcap 库来抓取网络数据包,这个库在几乎在所有的 Linux/Unix 中都有。熟悉 tcpdump 的使用能够帮助你分析调试网络数据,本文将通过一个个具体的示例来介绍它在不同场景下的使用方法。不管你是系统管理员,程序员,云原生工程师还是 yaml 工程师,掌握 tcpdump 的使用都能让你如虎添翼,升职加薪。 基本语法和使用方法tcpdump的常用参数如下: 1tcpdump -i eth0 -nn -s0 -v port 80 -i : 选择要捕获的接口,通常是以太网卡或无线网卡,也可以是 vlan 或其他特殊接口。如果该系统上只有一个网络接口,则无需指定。 -nn : 单个 n 表示不解析域名,直接显示 IP;两个 n 表示不解析域名和端口。这样不仅方便查看 IP 和端口号,而且在抓取大量数据时非常高效,因为域名解析会降低抓取速度。 -s0 : tcpdump 默认只会截取前 96...
