Varnish相关命令
一、varnishd命令
-a:指定varnish服务的监听端口与ip
例:-a 192.168.1.100:80
-f:指定配置文件
例:-f /usr/local/varnish/default.vcl
-n:指定varnish工作目录
例:-n /usr/local/varnish
-P:指定varnish进程ID号存放的文件
例: -P /usr/local/varnish/varnish.pid
-s:指定varnish缓存数据的文件
例: -s file,/usr/local/varnish/cache.data,1G
-T:管理varnish主机的IP与端口
例: -T 192.168.8.12:3500
-S:管理varnish主机使用的密钥文件
例: -S /etc/vc
-p:指定varnish运行时的参数
-p thread_pools=2:指定varnish开启的线程池的个数,与CPU个数或核心数一致
-p thread_pool_min=50:指定每个线程池中最少开启线程数量
-p thread_pool_max=5000:指定每个线程池中最多开启线程数量
-p thread_pool_timeout=30:当线程池中线程的数量超过最小值,且30s内没有客户端的请求,则对线程数量进行释放的最小值
-p lru_interval=30:没有指定缓时间的数据如果一直处于未命中状态,则缓存时间为该值,单位是s 程序–进程(获取程序所需的资源)–线程
二、varnishadm命令
格式:
varnishadm [-t timeout] [-S sercet_file] [-T address:port] [-n name] [command […]]
varnishadm [-t timeout] [-S sercet_file] [-T address:port] [-n name] [command […]]
-t:等待完成操作的时间
-S:认证的
1、清除缓存:varnishadm ban req.url “~”/
2、varnishadm命令界面
生成密钥:dd if=/dev/random of=/etc/vc cont=1
开启varnish:
[root@localhost varnish-4.1.11]# varnishd -a 192.168.10.1:80 -f /usr/local/varnish/default.vcl
-n /usr/local/varnish
-P /usr/local/varnish/varnish.pid
-s file,/usr/local/varnish/cache.data,1G
-T 192.168.10.1:3500
-S /etc/vc -p thread_pools=2
-p thread_pool_min=50
-p thread_pool_max=1000
-p thread_pool_timeout=30
-p lru_interval=20
进入交互式页面,对varnish进行管理
[root@localhost ~]# varnishadm -T 192.168.10.1:3500 -S /etc/vc
varnishadm -T 192.168.10.1:3500 -S /etc/vc
varnish> status
varnish> stop
varnish> start
varnish> backend.list
三、varnishstat 查看状态的参数
[root@localhost ~]# cp /usr/local/varnish/.vsm /usr/local/varnish/var/varnish/localhost.localdomain/.vsm
[root@localhost ~]# varnishstat
四、varnishncsa 用来简单查看日志
1、后端生成日志文件
[root@localhost varnish]# varnishlog -n /usr/local/varnish/ -w /usr/local/varnish/varnish.log &
-n:工作目录
-w:生成日志文件
2、客户端访问:curl 192.168.10.1 生成日志
3、重新开启一个终端,这个日志文件是不可读的
[root@localhost varnish]# cd /usr/local/varnish
[root@localhost varnish]# cat varnish.log
4、所以将 varnishlog进程关掉,生成的varnish.log文件也删掉
[root@localhost varnish]# rm -rf /usr/local/varnish/varnish.log
5、采用varnishncsa生成一个可读的日志文件
[root@localhost varnish]# varnishncsa -n /usr/local/varnish/ -w /usr/local/varnish/varnish.log &
[root@localhost varnish]# cat /usr/local/varnish/varnish.log