varnish
1、安装varnish
[root@Centos01 ~]#yum install varnish -y
[root@Centos01 ~]# rpm -ql varnish
/etc/logrotate.d/varnish
/etc/varnish
/etc/varnish/default.vcl //配置各Child/Cache线程的缓存策略;
/etc/varnish/varnish.params // 配置varnish服务进程的工作特性,例如监听的地址和端口,缓存机制;
/usr/bin/varnishadm
/usr/lib/systemd/system/varnish.service //varnish服务
/usr/lib/systemd/system/varnishlog.service //日志持久的服务
/usr/lib/systemd/system/varnishncsa.service //日志持久的服务
/usr/sbin/varnish_reload_vcl //VCL配置文件重载程序
/usr/sbin/varnishd //主程序
/usr/bin/varnishtest //测试工具程序
/var/lib/varnish
/var/log/varnish
/usr/bin/varnishhist //以下几个是Shared Memory Log交互工具
/usr/bin/varnishlog
/usr/bin/varnishncsa
/usr/bin/varnishstat
/usr/bin/varnishtop
2、修改/etc/varnish/varnish.params文件
[root@Centos01 ~]# vi /etc/varnish/varnish.params //修改以下两项
VARNISH_LISTEN_PORT=80
VARNISH_STORAGE="file,/var/cache/varnish,256M"
[root@Centos01 ~]# mkdir pv /var/cache/varnish
[root@Centos01 ~]# chown varnish.varnish /var/cache/varnish //修改属主属组为varnish
[root@Centos01 ~]# systemctl start varnish
[root@Centos01 ~]# ss -tnl | egrep "80|6082"
LISTEN 0 10 127.0.0.1:6082 *:*
LISTEN 0 128 *:80 *:*
LISTEN 0 128 :::80 :::*
3、修改后端服务器地址及端口
[root@Centos01 ~]# vi /etc/varnish/default.vcl //修改以下内容
backend default {
.host = "172.17.0.1"; //后端服务器地址
.port = "80";
}
[root@Centos01 ~]# varnish_reload_vcl //切记生产环境不能轻易重启缓存服务器,修改VCL配置文件后重载reload即可生效
Loading vcl from /etc/varnish/default.vcl
Current running config name is
Using new config name reload_2021-01-06T14:35:13
VCL compiled.
VCL 'reload_2021-01-06T14:35:13' now active
available 0 boot
available 0 reload_2021-01-06T12:10:20
active 0 reload_2021-01-06T14:35:13
Done
[root@Centos01 ~]# docker run --name nginx1 -d nginx:alpine
[root@Centos01 ~]# docker exec -it nginx1 /bin/sh
/ # ifconfig
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:01
inet addr:172.17.0.1 Bcast:172.17.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:656 (656.0 B) TX bytes:0 (0.0 B)
/ # cd /usr/share/nginx/html/ //默认的网页文件路径
/usr/share/nginx/html # ls
50x.html index.html