68、配置本地 yum 源
CentOS 7 配置本地 yum 源,参考这个专栏就足够了。
1)备份原来的 yum 源
创建一个目录,备份原来的 yum 源文件
cd /etc/yum.repos.d/
mkdir bak
mv *.repo bak
2)挂载镜像
新建一个目录,用于挂载镜像
mkdir /opt/centos
将镜像包上传到目录/root
cd /root
mount -o loop CentOS-7-x86_64-DVD-1810.iso /opt/centos
3)新建 yum 源
编写 httpyum.repo 文件
vim /etc/yum.repo.d/httpyum.repo
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
4)查看镜像内容
查看镜像有哪些内容
ls -l /opt/centos/
5)关闭防火墙和 selinux
为了减少不必要的麻烦,关闭它们
systemctl stop firewalld
setenforce 0
写入配置文件,让它永久生效
sed -i.bak 's/^SELINUX=.*$/SELINUX=disabled/g' /etc/selinux/config
6)安装 httpd
这是为了给其他服务器提供服务,让它们可以使用这个软件仓库
yum clean all && yum repolist
yum -y install httpd
7)新建目录
目的是,将镜像挂载到这个目录下
mkdir /var/www/html/centos
8)拷贝挂载内容过去
将镜像内容拷贝到 http 的目录下
cp -rfv /opt/centos/* /var/www/html/centos/
9)启动服务并设置开机启动
启动 http 服务,并且将该服务设置成开机启动
systemctl start httpd && systemctl enable httpd
10)修改 yum 源
其中,本机的 IP地址为 192.168.1.20,需要根据实际情况,换成自己的服务器的 IP 地址
vim /etc/yum.repo.d/httpyum.repo
name=centos
baseurl=http://192.168.1.20/centos
gpgcheck=0
enabled=1
11)清除缓存列出 rpm 包
清缓存,重新加载
yum clean all && yum repolist
69、查看日志中访问次数最多的前 10 个 IP
访问 apache 服务的前 10 个 IP
cat /var/log/httpd/access_log | awk '{print $1}'| sort |uniq -c | sort -rn|head
70、Nginx 负载均衡策略
假设 Nginx 服务器 IP 和端口为:192.168.1.101:80
两台后端服务器 IP 和端口:
192.168.1.102:8080
192.168.1.103:8080
则系统访问地址:http://192.168.1.101
Nginx 负载均衡策略有以下6种
Nginx 配置文件 nginx.conf
1)轮询:请求按照时间顺序,排列次序,逐一分配到后端服务器
http {
#配置轮询
upstream backend_servers {
server 192.168.1.102:8080;
server 192.168.1.103:8080;
}
server {
listen 80;
server_name example.com;
location / {
#将请求转发到upstream服务器组中的一个服务器上
proxy_pass http://backend_servers;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
2)加权轮询:考虑后端接受的权重,指定后端轮询的几率。
http {
#配置加权轮询
upstream backend_servers {
server 192.168.1.102:8080 weight=3;
server 192.168.1.103:8080 weight=1;
}
server {
listen 80;
server_name example.com;
location / {
#将请求转发到upstream服务器组中的一个服务器上
proxy_pass http://backend_servers;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
3)IP哈希:根据哈希结果,将请求分配到后端服务器
http {
#配置ip哈希
upstream backend_servers {
ip_hash;
server 192.168.1.102:8080;
server 192.168.1.103:8080;
}
server {
listen 80;
server_name example.com;
location / {
#将请求转发到upstream服务器组中的一个服务器上
proxy_pass http://backend_servers;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
4)最少连接数:将请求转发给当前连接数最少的后端服务器
http {
#配置最少连接数
upstream backend_servers {
least_conn;
server 192.168.1.102:8080;
server 192.168.1.103:8080;
}
server {
listen 80;
server_name example.com;
location / {
#将请求转发到upstream服务器组中的一个服务器上
proxy_pass http://backend_servers;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
5)Fair算法:基于每个后端服务器的响应时间和连接数来动态调整权重,以实现更均匀的负载分布
http {
#配置Fair算法
upstream backend_servers {
fair;
server 192.168.1.102:8080;
server 192.168.1.103:8080;
}
server {
listen 80;
server_name example.com;
location / {
#将请求转发到upstream服务器组中的一个服务器上
proxy_pass http://backend_servers;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
6)URL哈希:将请求的 URL 转换为一个哈希值,然后将哈希值映射到后端服务器列表的一个服务器上
http {
#配置URL哈希
upstream backend_servers {
hash $request_uri;
server 192.168.1.102:8080;
server 192.168.1.103:8080;
}
server {
listen 80;
server_name example.com;
location / {
#将请求转发到upstream服务器组中的一个服务器上
proxy_pass http://backend_servers;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
学了就行动起来吧,更多运维问题,后续更新。
更多命令请前往 :Linux 专栏内容合集