您的位置:首页 > 移动开发

Setting Up WikiBench Application in Cloud

2015-03-06 07:17 246 查看

Setting Up WikiBench Application in Cloud

Recently I've installed wikibench on cloud servers using ubuntu for my project. The process is troublesome because some of the pitfalls are not documented and there are some problems within the implementation. Here I'd like to share my experience to make life
easier for others.

Prepare Phase

Download WikiBench from website: http://www.wikibench.eu/

Note that the newest release 0.3.2 is incomplete. I revert to the 0.3.1 release.

The detailed introduction of the WikiBench benchmark can be found in http://blog.flux7.com/blogs/benchmarks/application-benchmarking-on-aws-using-wikibench

Download Wikipedia dump. The official website gave a link which points to a bunch of files https://archive.org/details/enwiki-20080103. Among them you only need to download the enwiki-20080103-pages-articles.xml.bz2 file.

Download MediaWiki application from https://www.mediawiki.org/wiki/News. Here's a major pitfall that haven't been documented by the author. Please read carefully. The
WikiBench is only compatible with MediaWiki before version 1.19 because in 1.19, they introduce a new filed rev_sha in the revision table which is not in the WikiLoader of the WikiBench application and the database dump file. I revert the version to 1.18 and
it works. Don't use apt-get to install MediaWiki!

Create a security group in the cloud that allows the servers within the same security group can talk to each other. Create 2 servers in this security group. One is the application server and the other is the database server.

Install MediaWiki Phase

In the application server, install apache2, and php. Here are the installation commands for ubuntu:

sudo apt-get update
sudo apt-get upgrade


sudo apt-get install apache2 php5 php5-mysql libapache2-mod-php5


In the database server, install mysql-server.

sudo apt-get update
sudo apt-get upgrade


sudo apt-get install mysql-server


Configure the database server so that the application server can access it.

sudo vi /etc/mysql/my.cnf


comment the line bind-address = 127.0.0.1

Grant permission for users at the application server to access mysql. Open mysql console using root

mysql -u root -h localhost -p


GRANT ALL PRIVILEGES ON *.* TO 'user'@'address or ip' IDENTIFIED BY 'password' WITH GRANT OPTION;

FLUSH PRIVILEGES;


Upload MediaWiki to the application server. Unzip the file and move the content to /var/www/. Rename the folder as mediawiki. Edit the apache2 default site configuration
file.

sudo vi /etc/apache2/sites-available/default


Set the document root as /var/www instead of /var/www/mediawiki. This is important because the wikibench translates the urls in traces to /mediawiki/something. If the document root is /var/www/mediawiki, then nothing
will be found.

Restart apache2 service

sudo service apache2 restart


In your browser, go to http://application_server/mediawiki and follow the instructions to set the application. Download the final LocalSettings.php file and move it to /var/www/mediawiki.

Install WikiBench

How to install and run WikiBench can be found in http://blog.flux7.com/blogs/benchmarks/application-benchmarking-on-aws-using-wikibench and
it works perfectly fine.

The thing important is that when using traces downloaded from WikiBench website. Use epoth_ts instead of data_ts.

The other thing is that in the trace there are some static files such as image, and css files missing which causes 404 errors. My solution is to filter all the static accesses and keep traces with '.php'. This not only eliminates 404 errors but also significantly
reduces the size of traces.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: