Varnish安装
1.1 安装要求
为了安装Varnish您需要先具备以下条件:
- 一个全新的、高配置的电脑。
- 安装64位系统,例如Linux、FreeBSD或者Solaris (x86 only)
- root用户权限
Varnish也可以被安装在其他的Unix系统上,但是我们没有进行广泛系统的测试。Varnish时不时也又有人将其运行在:
- 32位的Linux、FreeBSD系统
- OS X
- NetBSD
- OpenBSD
- 装有Cygwin的Windows
1.2 安装Varnish
因为是开源软件,你可以选择安装二进制包或者自己通过源代码进行编译安装。选择哪个只和个人的口味有关。如果您不知道怎么选择,我们建议您读完这一章节,然后选择你觉得最合适的安装方式即可。
1.2.1 源码还是二进制包?
安装Varnish的管理包跟使用的系统有关,典型的示例如下:
1.2.2 FreeBSD
二进制包:
pkg_add -r varnish
安装:
cd /usr/ports/varnish && make install clean
1.2.3 Red Hat / CentOS
我们会尽量保证repo.varnish-cache.org上面是最新的RPM包。你可以到Red Hat安装介绍查看更多信息。Varnish包含在EPEL仓库中,新版本会兼容旧版本的语法变更,所以只要老版本可以,新版本一般也是可用的。我们还是建议你从我们的仓库安装最新版本的Vainish。
1.2.4 Debian/Ubuntu
在Debian和Ubuntu系统上,我们可以通过运行sudo apt-get install varnish
来安装Varnish。但是这样安装可能不是安装的最新版本,如果你需要最新版本的Varnish,请在线查看Debian或Ubuntu安装介绍。
1.3 编译源代码
如果您的系统没有可用的二进制包,或者您由于其他原因想通过编译源代码的方式安装Varinish,请看以下步骤:
下载相应的tar发行包,你可以在http://repo.varnish-cache.org/source/找到它们。
如果您想修改Varnish,则可以直接从Github克隆我们的代码:
git clone git://git.varnish-cache.org/varnish-cache
1.3.1 Debian / Ubuntu系统编译安装依赖
为了能够成功安装varnish,在Ubuntu/Debian系统上你需要安装以下依赖包:
- automake
- autotools-dev
- libedit-dev
- libjemalloc-dev
- libncurses-dev
- libpcre3-dev
- libtool
- pkg-config
- python-docutils
- python-sphinx
- graphviz
1.3.2 Red Hat / CentOS系统编译安装依赖
为了在Red Hat / CentOS系统上安装varnish,你需要安装以下依赖包:
- autoconf
- automake
- jemalloc-devel
- libedit-devel
- libtool
- ncurses-devel
- pcre-devel
- pkgconfig
- python-docutils
- python-sphinx
- graphviz
1.3.3 编译Varnish
配置varnish需要安装以上依赖包。满足之后,运行如下命令:
cd varnish-cache
sh autogen.sh
sh configure
make
configure脚本可以加一些参数,但是在这里你可以忽略,我们可以在varnish运行的时候来添加这些参数。
安装之前你可能还要检查一些编译情况,这个可能需要话费几分钟,在这期间你可以先喝杯茶。
make check
如果出现一两个错误,不用担心。但是如果有大量错误,特别是像b00000.vtc测试失败,那就确实是有问题了,你就需要找一下问题出在什么地方。
1.3.4 安装
最后你可以做最后的处理了:sudo make install
varnish将会被安装在/usr/local
目录。varnishd
二进制文件是在/usr/local/sbin/varnishd,为了确保链接文件和很多共享库文件可以被找到,请运行sudoldconfig
命令。
1.4 下一步
安装成功之后,你可以继续阅读Varnish教程。
这个教程是为通过二进制包形式安装所写的。在实践中,这也意味着有些配置在通过源码安装的情况下是不能使用的,例如,你要启动Varnish守护进程可能要键入以下命令,而不是servicevarnish start
。
varnishd -a :6081 -T localhost:6082 -b localhost:8080