关于 五月, 2011 的文章

让SVN用户能够修改自身密码的PHP页面

在苦苦搜寻和反复实践之后,终于成功了,虽然该php程序的原作者已经无从知晓,但仍然要表示感谢,同时鄙视那些不经过实践就把文章转来转去的人。
因为那样做除了增加点可怜的PV,根本帮助不了任何人,只会浪费他人的时间。

源码安装SVN的过程请参考我的这篇文章:http://heylinux.com/archives/917.html

1.修改Apache配置文件
因为我在安装和配置SVN的时候,对Apache的配置文件进行过优化,将所有关于SVN的配置都写在了/opt/apache2/conf/extra/httpd-svn.conf中,然后再通过主配置文件/opt/apache2/conf/httpd.conf中Include conf/extra/httpd-svn.conf方式来调用。
因此,我这里需要修改的就是/opt/apache2/conf/extra/httpd-svn.conf文件,加入以下内容(其中第1,2,6行请根据实际情况进行修改):

Alias /svntools "/opt/apache2/htdocs/svntools"
<Directory "/opt/apache2/htdocs/svntools">
Require valid-user
AuthType Basic
AuthName "GridTeam`s subversion tools"
AuthUserFile "/opt/subversion/conf/svn_passwdfile"
</Directory>

2.创建修改自身密码的php页面
mkdir /opt/apache2/htdocs/svntools
cd /opt/apache2/htdocs/svntools

vim svnpass.php
输入以下内容(其中第135,136行请根据实际情况进行修改):
阅读全文 »

,

2 Comments

Subversion+svnmanager结合Apache+Mysql+Php的源码安装与配置实践

Subversion作为目前最流行的版本控制软件,得到了广泛的应用。但是单独直接使用Subversion的话,在安全性和易用性上都存在问题,比如 明文密码 和 账号与权限树的管理 等方面。因此,目前一般通过svnmanager来解决易用性问题(图形化界面),通过结合apache来解决安全性问题(账号的加密以及对SSL传输的支持)。

下面,是我对 Subversion+svnmanager结合Apache+Mysql+Php的源码安装与配置实践 进行的总结,按照下面的步骤,就可以完成整个过程。并且由于是源码安装与配置,因此可以支持所有的Linux平台,希望能对大家有所帮助。

1.安装配置apache
wget http://apache.etoak.com//httpd/httpd-2.2.18.tar.bz2

tar xjvf httpd-2.2.18.tar.bz2

cd httpd-2.2.18
./configure --prefix=/opt/apache2 --enable-so --enable-dav --enable-dav-fs --enable-maintainer-mode --with-included-apr --enable-rewrite --enable-ssl --enable-proxy --enable-proxy-http

--enable-so 开启动态库支持,svn要求apache必须启用so
--enable-dav --enable-dav-fs 是支持svn认证使用的
--enable-maintainer-mode 开启调试模式
--with-included-apr 使用内置的apr
--enable-rewrite 开启rewrite
--enable-ssl 开启SSL
--enable-proxy 开启proxy支持
--enable-proxy-http 开启proxy http支持

make
make install

创建apache用户
useradd -M apache

修改apache配置文件,让它以用户apache身份运行
vi /opt/apache2/conf/httpd.conf
============================
User apache
Group apache
============================
阅读全文 »

,

7 Comments

感谢四方


No Comments

虚拟化技术总结与经验分享

云计算与融合
近几年来,“云计算”与“融合”等概念炒得沸沸扬扬,其相关技术非常值得我们去进行关注。
就我的理解而言,数据中心要实现云计算,虚拟化无疑是一个重要的基础,但虚拟化本身并不是云计算,而只是走向云计算的途径之一;
至于“融合”,则主要是为了解决目前运营商和企业的IT基础设施无序化建设所提出的一种解决思路,虚拟化则是一个重要的手段,具体方法是将众多服务器硬件资源,通过虚拟化技术将它们形成一系列虚拟的“资源池”,再重新利用起来。

目前虚拟化软件有很多厂商都在做,成功商用的也有很多家,下面我就自己的一些了解,和周围一些前辈的经验分享,来简单的总结一下。

虚拟化技术
在x86服务器上的虚拟化技术上可分为:
硬件协助虚拟化与操作系统虚拟化,而操作系统虚拟化又可分为全虚拟化与半虚拟化。

硬件协助虚拟化(Hardware-Assisted-Virtualization)
两大CPU厂商的 Intel VT-x 与 AMD-V 技术。
应用:在BIOS设置中打开该功能选项,可以使Xen等半虚拟化软件支持全虚拟化。

全虚拟化(Full Virtualization)
中央处理器与其他的硬设备都虚拟化。
优点:操作系统只要有支持虚拟化系统提供的硬设备 ,就可以不修改操作系统而直接在虚拟机上安装该操作系统。
缺点:因为所有的硬设备都由虚拟产生,所以当虚拟机上的操作系统要读取某一个硬设备时,都需要通过虚拟化系统才能读取真实的硬设备,因而效能往往比较差。
代表:Vmware ESX Server

半虚拟化(Paravirtualization)
虚拟化系统仅提供中央处理器的虚拟化能力。
优点:硬件设备则与真实机器共享同一个硬件设备,因此使用硬件设备的效率较佳。
缺点:操作系统必须修改内核才能安装在半虚拟化系统中的虚拟机器中,这样就无法直接支持像Windows这样的非开放源代码操作系统。
代表:Citrix XenServer

商业虚拟化软件
VMware ESX Server
VMware的企业级应用软件,直接运行在服务器裸机上,是基于硬件之上的架构。用同一台服务器底层硬件,划分出若干虚机,集中管理,能够很方便的实现集群,负载均衡,热迁移等功能。通过 VMware vSphere 可集中管理多台VMware ESX Server主机。
通过我对四川省公司电信云计算平台相关技术负责人的调研了解,目前中国电信已经开始采用VMware的全套技术构建其云计算平台了,并且已经开始了广泛的试点应用,所有新上线的IT系统均需要审核并考虑部署到该平台当中,其中不包括 核心IT系统(如营帐、计费系统)以及配置与IO需求很高的系统。

Microsoft Hyper-V
微软Hyper-V虚拟化平台,以Xen的虚拟化技术为基础开发而成的,目前已整合到64位的Windows Server 2008。

Citrix XenServer
VMware的企业级应用软件,直接运行在服务器裸机上,是基于硬件之上的架构。以Xen的虚拟化技术为基础开发而成的,其白金版与企业版支持高可用性(High availability,HA)备援,以及Xen-Motion虚拟机在线转移等功能,精简版可以免费下载与使用,但对免费授权有所限制,需要每年申请license。Citrix XenCenter 可集中管理多台 Citrix XenServer。

Parallels Virtuozzo Containers
Parallels的企业级应用软件,声称其与VMware系列产品相比能够提供更高的性能。

IBM与HP基于自身硬件的虚拟化解决方案

开源及免费虚拟化软件
VMware Server
VMware的免费虚拟化软件,支持Windows与Linux平台,通过VMware Server Console工具可进行图形化管理。

Xen
Xen是开源虚拟化的一面旗帜。Xen是一专为x86服务器虚拟化准备的开源软件包,是由英国剑桥大学开发,运行在Linux上,支持Windows和Linux等操作系统的虚拟化。
它对商业虚拟化软件公司如微软、VMware等有重大的影响,迫使这些公司将一些工具开源,免费供用户使用。

Red Hat KVM
KVM:Kernel Virtual Module的简写,是从RHEL5.4开始推出的虚拟化技术,目前只支持在64位的RHEL5.4以及后续新版本的操作系统上运行。

VirtualBox
由Sun Microsystems公司出品的虚拟化软件,功能丰富易用,但在网络方面仍需改进。

OpenVZ
OpenVZ是开源虚拟化软件,使用Virutozzo软件的内核,Virutozzo是Parallels公司的企业级虚拟化软件。

经验分享
VMware是目前最领先的虚拟化厂商,其产品与技术也最受认可,在项目中如果需要考虑虚拟化的解决方案,选择VMware将是最容易被接受和认可的,因为目前像电信这样的运营商已经开始利用VMware的产品搭建其云计算平台了;
VMware的售价昂贵,目前官方报价是10万元每CPU;
VMware以外的其它虚拟化软件在严格意义上都不是全虚拟化;
半虚拟化的性能要优于全虚拟化;
部分半虚拟化软件经过改进之后,通过CPU的硬件协助虚拟化就可以支持全虚拟化了,例如在Xen上安装Windows;
如果需要考虑成本,同时兼顾系统的性能与稳定性,推荐在Linux上通过VMware Server 与 Xen来实现;
VMware Server 部署与实现要比Xen方便,但性能上Xen更好;
VMware Server 2.0 相比 1.0 而言,推荐使用更稳定和低资源耗用的1.0;
推荐购买采用Xen技术实现的VPS,而不是OpenVZ;
Xen推荐采用各Linux发行版的二进制版本,不推荐自己编译安装Xen;
……
更多经验分享还需要大家共同探讨。

, , , ,

2 Comments