如何使用Rex管理你的服务器?(1)
如何使用Rex管理你的服务器?(1)
Rex是一款服务器协调和配置管理工具。有了Rex,你可以通过配置管理和软件部署的完整流程,由集中点来管理所有服务器。
简而言之,Rex就好比Make命令。有一个集中式Rexfile,你可以在其中定义任务。这些任务通过SSH在远程机器上执行。任务采用普通perl编写而成。
你可以从网站http://rexify.org/获得Rex。
前言
在本文中,我将使用Subversion来管理所有任务。你也可以使用其他任何软件配置管理(SCM)系统,只要它支持类似Subversion的外部命令的命令。我使用Ubuntu 12.04,但你也可以使用其他发行版。
我不会在每一个命令后面加上后缀“sudo”;必要的话,请使用“sudo”。
在本文中,我将建立两个示例项目。一个项目名为“website”,另一个项目名为“database”,因为在大公司中,系统管理员和数据库管理员常常是分开设立的。这两个项目都将使用可以由中央操作团队来管理的“常见任务”(common tasks)。
我将使用多个服务器:
•Subversion服务器,svn01
•数据库服务器,db01
•Web服务器,web01
•工作站,wks01
创建版本库
首先,你得安装全部所需的软件包。在Subversion服务器上执行这个命令。
svn01# apt-get install libapache2-svn subversion apache2-mpm-prefork
现在,编辑文件/etc/apache2/mods-enabled/dav_svn.conf,把下列代码粘贴到该文件中(更换现有的内容)。
DAV svn
SVNParentPath /var/lib/svn
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
现在,创建目录/var/lib/svn和所有所需的版本库。我会在后面描述版本库的内容。
svn01# mkdir /var/lib/svn
svn01# cd /var/lib/svn
svn01 /var/lib/svn# svnadmin create common
svn01 /var/lib/svn# svnadmin create service
svn01 /var/lib/svn# svnadmin create database
svn01 /var/lib/svn# svnadmin create website
svn01 /var/lib/svn# chown -R www-data:
我们创建了版本库后,需要为apache建立验证机制。
svn01# htpasswd -c /etc/apache2/dav_svn.passwd your-user-name
现在,可以重新启动 apache了。
svn01# service apache2 restart
恭喜你!你的Subversion服务器现在准备就绪了。不妨直奔你的工作站,检出版本库。
评论暂时关闭