<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>InstaCarma Blog</title>
	<atom:link href="http://www.instacarma.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.instacarma.com/blog</link>
	<description>Information Resource for Web Hosting Technical Support and Server Management</description>
	<lastBuildDate>Tue, 24 May 2011 10:01:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2</generator>
		<item>
		<title>InstaCarma Launches Client Portal &#8211; A Complete Process Management Solution</title>
		<link>http://www.instacarma.com/blog/company-updates/instacarma-launches-client-portal-a-complete-process-management-solution/</link>
		<comments>http://www.instacarma.com/blog/company-updates/instacarma-launches-client-portal-a-complete-process-management-solution/#comments</comments>
		<pubDate>Tue, 24 May 2011 10:01:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Company Updates]]></category>
		<category><![CDATA[air application]]></category>
		<category><![CDATA[client portal]]></category>
		<category><![CDATA[Complete Process Management Solution]]></category>
		<category><![CDATA[Instacarma]]></category>
		<category><![CDATA[launches]]></category>
		<category><![CDATA[manage support operations]]></category>
		<category><![CDATA[Process Tracking System]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1460</guid>
		<description><![CDATA[Filed under: air application, client portal, Complete Process Management Solution, Instacarma, launches, manage support operations, Process Tracking System, UI Instacarma launches its very own and exclusive Client Portal application for the  dedicated and semi dedicated hosting support customers , an Air Application that lets them manage and monitor the tech support operations with ease from [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/air-application/'>air application</a>, <a href='http://www.instacarma.com/blog/tag/client-portal/'>client portal</a>, <a href='http://www.instacarma.com/blog/tag/complete-process-management-solution/'>Complete Process Management Solution</a>, <a href='http://www.instacarma.com/blog/tag/instacarma/'>Instacarma</a>, <a href='http://www.instacarma.com/blog/tag/launches/'>launches</a>, <a href='http://www.instacarma.com/blog/tag/manage-support-operations/'>manage support operations</a>, <a href='http://www.instacarma.com/blog/tag/process-tracking-system/'>Process Tracking System</a>, <a href='http://www.instacarma.com/blog/tag/ui/'>UI</a></p>
<p><!-- p, li { white-space: pre-wrap; } --><!--StartFragment-->Instacarma launches its very own and exclusive Client Portal application for the  dedicated and semi dedicated hosting support customers , an Air Application that lets them manage and monitor the tech support operations with ease from a single point that is integrated to InstaCarma&#8217;s Work and Process Tracking System called VisionCarma. With a rich and attractive UI and interesting statistics from the Support Team, this is another step from InstaCarma in their continued effort to provide world class services to their customers and to add robustness to their clients IT Infrastructure management with an Internet Application that gives valuable pointers to monitor their support operations.</p>
<p>Mr. Aromal Rajagopal, CEO of the company, stated that  the beauty of the application is that it brings in a lot of transparency to its customers with live support information and statistics like the tech currently working in shift, how long he has been handling the current shift,  the number of tickets handled so far, average response time maintained, monthly ticket trends and response time trends. On top of this, it also gives the clients access to their billing information that includes their invoice history , pending invoices,  payment status etc. The application also facilitates getting in touch with the Management layer of the company  via email or to directly chat with the tech in shift. This can be an extremely useful feature for the clients to have more accessibility and  transparency when it comes to the service delivery provided by InstaCarma.</p>
<p>The Client Portal is an extremely handy, useful and efficient application for clients to access their offshore team members  and will ensure that they are not only able to manage support operations with ease, but also control and contrive the work environment in the company which ultimately will lead to better productivity and accountability. Client Portal&#8217;s backend system VisionCarma is the backbone of InstaCarma&#8217;s operations and manages everything from Human Resources, Productivity , Performance, Quality Assurance and SLA Compliances and definitely adds a lot of value to this application.</p>
<p>InstaCarma&#8217;s customers are sure to benefit a lot from this Client Portal as it would provide them with an easy way to monitor the work process and communicate with their techs working remotely which is one of the biggest concerns for any company. This is another major step from InstaCarma towards improving Client experience and providing them with control and faster communication channel.<!--EndFragment--></p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/company-updates/instacarma-launches-client-portal-a-complete-process-management-solution/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/company-updates/instacarma-launches-client-portal-a-complete-process-management-solution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Varnish Caching Engine with Apache</title>
		<link>http://www.instacarma.com/blog/technical/varnish-caching-engine-with-apache/</link>
		<comments>http://www.instacarma.com/blog/technical/varnish-caching-engine-with-apache/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 07:49:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[Caching]]></category>
		<category><![CDATA[Varnish]]></category>
		<category><![CDATA[Varnish Caching Engine]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1452</guid>
		<description><![CDATA[Filed under: apache, Caching, Varnish, Varnish Caching Engine Assume : domain to be accessed is accessible via the url domain.com Varnish caching engine will run infront of Apache in port 80, and internally forward the requests to Apache. Installation of Varnish: 1. Download Varnish source file from sourceforge.net 2. Install libraries below via yum, as [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/apache/'>apache</a>, <a href='http://www.instacarma.com/blog/tag/caching/'>Caching</a>, <a href='http://www.instacarma.com/blog/tag/varnish/'>Varnish</a>, <a href='http://www.instacarma.com/blog/tag/varnish-caching-engine/'>Varnish Caching Engine</a></p>
<p>Assume : domain to be accessed is accessible via the url domain.com<br />
Varnish caching engine will run infront of Apache in port 80, and internally forward the requests to Apache.</p>
<p>Installation of Varnish:</p>
<p>1. Download Varnish source file from sourceforge.net<br />
2. Install libraries below via yum, as well as any other dependencies.</p>
<p><em>yum install logrotate libgomp gcc cpp binutils kernel-headers glibc-headers glibc-devel pcre-devel</em></p>
<p>3. Do ./configure, make, make install to install varnish<br />
4. Configure Apache to listen on another port 8080 and restart Apache for changes to reflect.<br />
5. Start Varnish as below, before that you can configure the default config file /usr/local/etc/varnish/default.vcl as mentioned in (6)<br />
If varnish available under services, configure the file below with the parameters below:</p>
<p>Code:</p>
<blockquote><p>DAEMON_OPTS=&#8221;-a :80 \<br />
-T localhost:6082 \<br />
-f /usr/local/etc/varnish/default.vcl\<br />
-S /etc/varnish/secret \<br />
-s malloc,200M \</p></blockquote>
<p>And do</p>
<p>Code:</p>
<blockquote><p>/etc/rc.d/init.d/varnish start</p></blockquote>
<p>If its not available under services, start it as below:</p>
<p>Code:</p>
<blockquote><p>varnishd -f /usr/local/etc/varnish/default.vcl -T 127.0.0.1:6082  -a 0.0.0.0:80  -s malloc,200M</p></blockquote>
<p>If you want to connec to the commandline interface use</p>
<blockquote><p>varnishd -f /usr/local/etc/varnish/default.vcl -T 127.0.0.1:6082  -a 0.0.0.0:80  -s malloc,200M -d</p></blockquote>
<p>6. A sample config file for Apache is as below. It can be tweaked as per customization required as outlined in http://www.varnish-cache.org/trac/wiki/Introduction</p>
<p>Code:</p>
<blockquote><p>backend default {<br />
.host = &#8220;69.50.217.14&#8243;;<br />
.port = &#8220;8080&#8243;;<br />
}</p>
<p>acl purge {<br />
&#8220;localhost&#8221;;<br />
&#8220;69.50.217.14&#8243;;<br />
}</p>
<p>sub vcl_recv {</p>
<p>// Strip cookies for static files:<br />
if (req.url ~ &#8220;\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|pdf|txt|tar|wav|bmp|rtf|js|flv|swf|html|htm)$&#8221;) {<br />
unset req.http.Cookie;<br />
return(lookup);<br />
}</p>
<p>// Remove has_js and Google Analytics __* cookies.<br />
set req.http.Cookie = regsuball(req.http.Cookie, &#8220;(^|;\s*)(__[a-z]+|has_js)=[^;]*&#8221;, &#8220;&#8221;);</p>
<p>// Remove a &#8220;;&#8221; prefix, if present.<br />
set req.http.Cookie = regsub(req.http.Cookie, &#8220;^;\s*&#8221;, &#8220;&#8221;);</p>
<p>// Remove empty cookies.<br />
if (req.http.Cookie ~ &#8220;^\s*$&#8221;) {<br />
unset req.http.Cookie;<br />
}</p>
<p>if (req.request == &#8220;PURGE&#8221;) {<br />
if (!client.ip ~ purge) {<br />
error 405 &#8220;Not allowed.&#8221;;<br />
}<br />
purge(&#8220;req.url ~ &#8221; req.url &#8221; &amp;&amp; req.http.host == &#8221; req.http.host);<br />
error 200 &#8220;Purged.&#8221;;<br />
}<br />
}</p>
<p>sub vcl_hash {<br />
if (req.http.Cookie) {<br />
set req.hash += req.http.Cookie;<br />
}<br />
}</p>
<p>sub vcl_fetch {</p>
<p>// Strip cookies for static files:<br />
if (req.url ~ &#8220;\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|pdf|txt|tar|wav|bmp|rtf|js|flv|swf|html|htm)$&#8221;) {<br />
unset beresp.http.set-cookie;<br />
}</p>
<p>// Varnish determined the object was not cacheable<br />
if (!beresp.cacheable) {<br />
set beresp.http.X-Cacheable = &#8220;NO:Not Cacheable&#8221;;<br />
}</p>
<p>// You don&#8217;t wish to cache content for logged in users<br />
elsif(req.http.Cookie ~&#8221;(UserID|_session)&#8221;) {<br />
set beresp.http.X-Cacheable = &#8220;NO:Got Session&#8221;;<br />
return(pass);<br />
}</p>
<p>// You are respecting the Cache-Control=private header from the backend<br />
elsif ( beresp.http.Cache-Control ~ &#8220;private&#8221;) {<br />
set beresp.http.X-Cacheable = &#8220;NO:Cache-Control=private&#8221;;<br />
return(pass);<br />
}</p>
<p>// You are extending the lifetime of the object artificially<br />
elsif ( beresp.ttl &lt; 1s ) {<br />
set beresp.ttl   = 300s;<br />
set beresp.grace = 300s;<br />
set beresp.http.X-Cacheable = &#8220;YES:Forced&#8221;;<br />
}</p>
<p>// Varnish determined the object was cacheable<br />
else {<br />
set beresp.http.X-Cacheable = &#8220;YES&#8221;;<br />
}</p>
<p>return(deliver);<br />
}</p></blockquote>
<p>7. Varnish Cache log can be started using the command below:</p>
<p>Code:</p>
<blockquote><p>/usr/local/bin/varnishlog -w /tmp/vlog &amp;</p></blockquote>
<p>And tailing /tmp/vlog to see the dump of the requests handled by Varnish.</p>
<p>8. Any other problems with Apache can be checked from Apache error log, for instance http://domain.com shows a blank page.<br />
9. You can also benchmark the difference in performance before and after using Varnish using the Apache bench marking tool ab and the commandline below:</p>
<p>Code:</p>
<blockquote><p>ab -n1000 -c100 http://domain.com/</p></blockquote>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/varnish-caching-engine-with-apache/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/varnish-caching-engine-with-apache/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>File Uploading with Paper clip</title>
		<link>http://www.instacarma.com/blog/technical/file-uploading-with-paper-clip/</link>
		<comments>http://www.instacarma.com/blog/technical/file-uploading-with-paper-clip/#comments</comments>
		<pubDate>Sun, 27 Feb 2011 07:13:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[File Uploading with Paper clip]]></category>
		<category><![CDATA[Paper clip]]></category>
		<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1438</guid>
		<description><![CDATA[Filed under: File Uploading with Paper clip, Paper clip, rails This is one of the most useful plug in that can be used in your application when you require to upload a file as attachment to your application, its quite easy to use and with the help of paperclip scaffolding you can achieve file upload [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/file-uploading-with-paper-clip/'>File Uploading with Paper clip</a>, <a href='http://www.instacarma.com/blog/tag/paper-clip/'>Paper clip</a>, <a href='http://www.instacarma.com/blog/tag/rails/'>rails</a></p>
<p><a href="http://instacarma.com/blog/wp-content/uploads/2011/02/blog.png"><img class="alignright size-full wp-image-1441" title="blog" src="http://instacarma.com/blog/wp-content/uploads/2011/02/blog.png" alt="" width="242" height="174" /></a>This is one of the most useful plug in that can be used in your application when you require to upload a file as attachment to your application, its quite easy to use and with the help of paperclip scaffolding you can achieve file upload feature very easily, below i have explained the steps to create a simple application using scaffolding that enables the file upload feature with the help of paperclip plugin.</p>
<p>Steps:<br />
Install the required gems to run the paperclip plugin from the below mentioned command,</p>
<p style="padding-left: 30px;"><em>$ gem sources -a http://gemcutter.org<br />
http://gemcutter.org added to sources<br />
$ sudo gem install view_mapper<br />
Successfully installed view_mapper-0.2.0<br />
1 gem installed Installing ri documentation for view_mapper-0.2.0&#8230;<br />
Installing RDoc documentation for view_mapper-0.2.0&#8230;</em></p>
<p>1. First you need to create a rails app and change the database.yml setting and set things to install the plug in $rails student -d mysql</p>
<p>2 Then you have to just install the paperclip plugin into your application from the below mentioned command,</p>
<p style="padding-left: 30px;"><em>$ ./script/plugin install git://github.com/thoughtbot/paperclip.git</em></p>
<p>3. Once the plugin is installed, let me show you to create a simple scaffold with paperclip file attachment feature in it.<br />
Just create a simple scaffold and check it out,</p>
<p style="padding-left: 30px;"><em>$ ./script/generate scaffold_for_view Student name:string branch:string comment:string &#8211;view paperclip:photo</em></p>
<p>Then you need to enter $ rake db:create and $ rake db:migrate<br />
This will create the paperclip file attachment feature, just run $ script/server and check it out. The display looks just like the image i have mentioned at the beginning.</p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/file-uploading-with-paper-clip/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/file-uploading-with-paper-clip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configure Sphinx in Rails application</title>
		<link>http://www.instacarma.com/blog/technical/configure-sphinx-in-rails-application/</link>
		<comments>http://www.instacarma.com/blog/technical/configure-sphinx-in-rails-application/#comments</comments>
		<pubDate>Wed, 23 Feb 2011 09:26:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Configure Sphinx]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[Sphinx]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1430</guid>
		<description><![CDATA[Filed under: Configure Sphinx, PostgreSQL, rails, Sphinx Install Sphinx Just run the following three commands on your server or dev machine to install Sphinx: ./configure make sudo make install That will setup Sphinx with default for use with MySQL. If you want to use it with PostgreSQL, then run configure with the following flag: ./configure [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/configure-sphinx/'>Configure Sphinx</a>, <a href='http://www.instacarma.com/blog/tag/postgresql/'>PostgreSQL</a>, <a href='http://www.instacarma.com/blog/tag/rails/'>rails</a>, <a href='http://www.instacarma.com/blog/tag/sphinx/'>Sphinx</a></p>
<p><strong>Install Sphinx</strong></p>
<p>Just run the following three commands on your server or dev machine to install Sphinx:</p>
<p style="padding-left: 30px;"><em>./configure make sudo make install</em></p>
<p>That will setup Sphinx with default for use with MySQL. If you want to use it with PostgreSQL, then run configure with the following flag:</p>
<p style="padding-left: 30px;"><em>./configure &#8211;with-pgsql</em></p>
<p>Note: you can download the sphinx from http://sphinxsearch.com/downloads/beta/</p>
<p><strong>Install Thinking Sphinx</strong></p>
<p>Even though there are a couple of Sphinx plugins for Rails, I chose to go with Thinking Sphinx, as it seems to be the most popular and feature complete.<br />
So you can install it as a Rails plugin using script/plugin install command:</p>
<p><em>script/plugin install git://github.com/freelancing-god/thinking-sphinx.git</em></p>
<p><strong>Writing code to use sphinx search:</strong></p>
<p>We now need to index our models. This consists of adding a few small lines of code into each model that you want to be able to search. So lets say we have a Blog app (doesn’t everyone!), which has a Post model. And that Post model contains the usual title and description fields. We therefore add the following bit of code beneath our association declarations in</p>
<p style="padding-left: 30px;"><em>app/models/post.rb:<br />
define_index do indexes title, description end</em></p>
<p>Those very short three lines will tell Thinking Sphinx to index the title and description fields of the Post model, and allow us to search through all our posts. Now we just need to index and start Sphinx. And Thinking Sphinx makes this very easy with it’s handy Rake tasks.<br />
Just run this:</p>
<p style="padding-left: 30px;"><em>rake ts:rebuild</em></p>
<p>That will stop (if it is started), index and start Sphinx for you. Now we need to create a quick search form. This will eventually be a global site search, and not just a Post search. So we will create a new controller:</p>
<p style="padding-left: 30px;"><em>script/generate controller search</em></p>
<p>Then create a view at app/views/search/index.html.erb and place the form within it:<br />
Now in your new Search controller, create a new create action:</p>
<p style="padding-left: 30px;"><em>def create @posts = Post.search params[:search] end</em></p>
<p>Create your create view at app/views/search/create.html.erb with a bit of code to display your @posts in the usual way.</p>
<p>Note: We can even paginate our results using the WillPaginate plugin:</p>
<p style="padding-left: 30px;"><em>def create<br />
@posts = Post.search params[:search], :page =&gt; params[:page], :per_page =&gt; 10 end</em></p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/configure-sphinx-in-rails-application/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/configure-sphinx-in-rails-application/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Install Image-magick and rmagick for rails</title>
		<link>http://www.instacarma.com/blog/technical/install-image-magick-and-rmagick-for-rails/</link>
		<comments>http://www.instacarma.com/blog/technical/install-image-magick-and-rmagick-for-rails/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 10:49:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Install Image-magick]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[rmagick]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1424</guid>
		<description><![CDATA[Filed under: Install Image-magick, rails, rmagick Start by removing any old versions previously installed via apt-get: sudo apt-get remove imagemagick Then update apt-get and install some supporting packages: sudo apt-get update *(sudo apt-get install libperl-dev gcc libjpeg62-dev libbz2-dev libtiff4-dev libwmf-dev libz-dev libpng12-dev libx11-dev libxt-dev libxext-dev libxml2-dev libfreetype6-dev liblcms1-dev libexif-dev perl libjasper-dev libltdl3-dev graphviz gs-gpl pkg-config)* [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/install-image-magick/'>Install Image-magick</a>, <a href='http://www.instacarma.com/blog/tag/rails/'>rails</a>, <a href='http://www.instacarma.com/blog/tag/rmagick/'>rmagick</a></p>
<p>Start by removing any old versions previously installed via apt-get:</p>
<p style="padding-left: 30px;"><em>sudo apt-get remove imagemagick</em></p>
<p>Then update apt-get and install some supporting packages:</p>
<p style="padding-left: 30px;"><em>sudo apt-get update</em></p>
<p style="padding-left: 30px;"><em>*(sudo apt-get install<br />
libperl-dev gcc libjpeg62-dev libbz2-dev<br />
libtiff4-dev libwmf-dev libz-dev libpng12-dev<br />
libx11-dev libxt-dev libxext-dev libxml2-dev<br />
libfreetype6-dev liblcms1-dev libexif-dev perl<br />
libjasper-dev libltdl3-dev graphviz gs-gpl pkg-config)*</em></p>
<p>*its a single line command.</p>
<p>get the Imagemagick package from this link:</p>
<p><em>http://www.imagemagick.org/script/install-source.php#unix</em></p>
<p>Once the source is downloaded, uncompress it:</p>
<p style="padding-left: 30px;"><em>tar -xzf ImageMagick.tar.gz</em></p>
<p>Now configure and make:</p>
<p style="padding-left: 30px;"><em>cd ImageMagick-6.5.0-0<br />
./configure<br />
sudo make<br />
sudo make install</em></p>
<p>Add the following line to ~/.bashrc:</p>
<p style="padding-left: 30px;"><em>export LD_LIBRARY_PATH=/usr/local/lib</em></p>
<p>Update: If you still get an error like the one above, try running ldconfig:</p>
<p style="padding-left: 30px;"><em>sudo ldconfig</em></p>
<p>You can confirm the install and available formats with:</p>
<p style="padding-left: 30px;"><em>identify -list format</em></p>
<p>Once Image magick is installed install rmagick gem by typing the command:</p>
<p style="padding-left: 30px;"><em>$sudo gem install rmagick</em></p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/install-image-magick-and-rmagick-for-rails/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/install-image-magick-and-rmagick-for-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Servermascot &#8211; An Instant Hit</title>
		<link>http://www.instacarma.com/blog/company-updates/servermascot-an-instant-hit/</link>
		<comments>http://www.instacarma.com/blog/company-updates/servermascot-an-instant-hit/#comments</comments>
		<pubDate>Wed, 26 Jan 2011 10:26:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Company Updates]]></category>
		<category><![CDATA[ServerMascot]]></category>
		<category><![CDATA[sysadmin]]></category>
		<category><![CDATA[webstore]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1408</guid>
		<description><![CDATA[Filed under: ServerMascot, sysadmin, webstore Within just three weeks of the successful launch of a revolutionary product by InstaCarma, ServerMascot has become an instant hit. The customers are pouring in and are very happy with the range of services and support provided by ServerMascot. A team of expert Engineers here at ServerMascot ensure that the [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/servermascot/'>ServerMascot</a>, <a href='http://www.instacarma.com/blog/tag/sysadmin/'>sysadmin</a>, <a href='http://www.instacarma.com/blog/tag/webstore/'>webstore</a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 		PRE.cjk { font-family: "DejaVu Sans", monospace } --><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Within just three weeks of the successful launch of a revolutionary product by InstaCarma, ServerMascot has become an instant hit. The customers are pouring in and are very happy with the range of services and support provided by ServerMascot. A team of expert Engineers here at ServerMascot ensure that the customers get their work done in time and with utmost accuracy. ServerMascot has also received some great testimonials from the customers within this short span of its launch. Some of the testimonials include,</span></span></p>
<p><em><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">I&#8217;m really happy with your service, everything works perfect. Thanks for your help, soon I&#8217;ll be with you for other projects that need.</span></span></em><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><strong><br />
Erasmo</strong></span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em>Servermascot is reliable, diligent and professional. This company is strongly recommended!</em><strong><br />
Dylan</strong></span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em>Thanks Servermascot, your fast delivery and efficient service is highly appreciated. We will definitely continue to hire services from you in the future too.</em><strong><br />
Saurav Gupta</strong></span></span></p>
<p>﻿</p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/company-updates/servermascot-an-instant-hit/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/company-updates/servermascot-an-instant-hit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>InstaCarma Launches One-stop Web store for installation/setups on servers</title>
		<link>http://www.instacarma.com/blog/company-updates/instacarma-launches-one-stop-web-store-for-installationsetups-on-servers/</link>
		<comments>http://www.instacarma.com/blog/company-updates/instacarma-launches-one-stop-web-store-for-installationsetups-on-servers/#comments</comments>
		<pubDate>Wed, 05 Jan 2011 20:26:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Company Updates]]></category>
		<category><![CDATA[companies]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[industry]]></category>
		<category><![CDATA[installations]]></category>
		<category><![CDATA[launch]]></category>
		<category><![CDATA[one-stop store]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[server admin]]></category>
		<category><![CDATA[server administration]]></category>
		<category><![CDATA[server owners]]></category>
		<category><![CDATA[ServerMascot]]></category>
		<category><![CDATA[setups]]></category>
		<category><![CDATA[webstore]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1397</guid>
		<description><![CDATA[Filed under: companies, hosting, industry, installations, launch, one-stop store, Server, server admin, server administration, server owners, ServerMascot, setups, webstore With the onset of the year 2011, InstaCarma has taken yet another leap ahead with the launch of a brand new web store &#8220;ServerMascot&#8221;. This is a one of a kind Web Store where anyone and [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/companies/'>companies</a>, <a href='http://www.instacarma.com/blog/tag/hosting/'>hosting</a>, <a href='http://www.instacarma.com/blog/tag/industry/'>industry</a>, <a href='http://www.instacarma.com/blog/tag/installations/'>installations</a>, <a href='http://www.instacarma.com/blog/tag/launch/'>launch</a>, <a href='http://www.instacarma.com/blog/tag/one-stop-store/'>one-stop store</a>, <a href='http://www.instacarma.com/blog/tag/server/'>Server</a>, <a href='http://www.instacarma.com/blog/tag/server-admin/'>server admin</a>, <a href='http://www.instacarma.com/blog/tag/server-administration/'>server administration</a>, <a href='http://www.instacarma.com/blog/tag/server-owners/'>server owners</a>, <a href='http://www.instacarma.com/blog/tag/servermascot/'>ServerMascot</a>, <a href='http://www.instacarma.com/blog/tag/setups/'>setups</a>, <a href='http://www.instacarma.com/blog/tag/webstore/'>webstore</a></p>
<p>With the onset of the year 2011, InstaCarma has taken yet another leap  ahead with the launch of a brand new web store &#8220;ServerMascot&#8221;. This is a  one of a kind Web Store where anyone and everyone can order server  admin services ranging from a simple gallery or LAMP installation to  complicated load balancing, clustering or virtualization solutions.  ServerMascot proves to be a convenient and easily accessible solution  for customers struggling with one time installations and setups to get  easy access to expert admins and engineers and that too at a highly  competitive rate.</p>
<p>An innovative and one of the kind service  model from InstaCarma,which is a premium solutions provider and partner  for the Hosting Industry with a wide expertise of 8 years serving the  hosting industry, Servermascot aims at bringing its best to help server  owners and companies to effortlessly resolve their one time  installation/setup requirements, thereby eliminating the loop holes  within their infrastructure for ensuring the smooth running of their  operations . An experienced lot of Engineers and Server Admins with a  wide range of certifications from Redhat, Microsoft and VMware etc  ensure that the Installations/setups are handled on time with utmost  precision. ServerMascot carries with itself all the expertise and  experience that InstaCarma has gained over the years by providing top  notch solutions to its existing customers and is supported by its  industy best and proven quality assurance procedures, work processes and  systems.</p>
<p>ServerMascot provides its customers the flexibility to  order setups or installations as per their choices or requirements with  the option to customize them or choose the time flexibility to get this  work done at an amazingly low price. Its an order-on-demand admin  service that can be utilized anytime,anywhere with the service delivered  to you with absolutely no delay. ServerMascot provides discounts on  extended time deliveries which can prove to be economical for customers  with less time constraints as well as delivery at an urgent basis  wherein the service will be handled on priority and delivered within  minimal time,a definite boon for those who are in urgent requirement for  the installation/setup. Customers can also suggest a new  Product/Service if they do not find their desired product listed with  ServerMascot. Understanding the importance and need for reduced IT  infrastructure costs for hosting companies or server owners,  Servermascot is the perfect one-stop solution for their admin needs with  a highly competetive product pricing backed by industry best service  delivery standards. Its a solution that is a perfect steal for the  hosters and one that cannot be overlooked.</p>
<p>We would be glad if you could visit our store at <a href="http://www.servermascot.com/" target="_blank">www.servermascot.com</a> and let us know of any services you would like to see and we will add them to the portfolio.</p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/company-updates/instacarma-launches-one-stop-web-store-for-installationsetups-on-servers/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/company-updates/instacarma-launches-one-stop-web-store-for-installationsetups-on-servers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cloud Computing Security</title>
		<link>http://www.instacarma.com/blog/technical/cloud-computing-security/</link>
		<comments>http://www.instacarma.com/blog/technical/cloud-computing-security/#comments</comments>
		<pubDate>Tue, 04 Jan 2011 13:56:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[Cloud Computing Attacks]]></category>
		<category><![CDATA[Data Security Lifecycle]]></category>
		<category><![CDATA[Network Security]]></category>
		<category><![CDATA[Operating System Security]]></category>
		<category><![CDATA[Operational Security]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1394</guid>
		<description><![CDATA[Filed under: cloud, cloud computing, Cloud Computing Attacks, Data Security Lifecycle, Network Security, Operating System Security, Operational Security, security There are a lot of concerns in the minds of experts while moving to cloud computing. The first one is information or data security. While cost and ease of use are two great benefits of cloud [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/cloud/'>cloud</a>, <a href='http://www.instacarma.com/blog/tag/cloud-computing/'>cloud computing</a>, <a href='http://www.instacarma.com/blog/tag/cloud-computing-attacks/'>Cloud Computing Attacks</a>, <a href='http://www.instacarma.com/blog/tag/data-security-lifecycle/'>Data Security Lifecycle</a>, <a href='http://www.instacarma.com/blog/tag/network-security/'>Network Security</a>, <a href='http://www.instacarma.com/blog/tag/operating-system-security/'>Operating System Security</a>, <a href='http://www.instacarma.com/blog/tag/operational-security/'>Operational Security</a>, <a href='http://www.instacarma.com/blog/tag/security/'>security</a></p>
<p>There are a lot of concerns in the minds of experts while moving to cloud computing. The first one is information or data security. While cost and ease of use are two great benefits of cloud computing, there are significant security concerns that need to be addressed when considering moving critical applications and sensitive data to public and shared cloud environments. Prior to any move to the cloud, it’s simple common sense and good practice to ensure that the necessary security procedures, standards, guidelines and processes are already in place at home to ensure the technical security of data.</p>
<p>In a cloud, data can be moved through data centers in different international locations in response to varying levels of demand. Data located in any country may be governed by the laws of that country and there are sophisticated regulatory demands on businesses to ensure the security of the information they hold and generate. Furthermore, organizations have legal obligations to preserve data and ensure that it is available for any legal proceedings—called<br />
electronic discovery—even if the customer is not in direct possession or control of that data. Therefore, cloud customers must seek contractual assurance regarding the geographical storage and transit of their cloud-based data, to ensure compliance with existing as well as the inevitable introduction of new laws governing Therefore, cloud customers must seek contractual assurance regarding the geographical storage and transit of their cloud-based data, to ensure compliance with existing as well as the inevitable introduction of new laws governing.</p>
<p><strong>Physical Security</strong></p>
<p>The cloud provider is responsible for providing platform and infrastructure security. Physical access should be strictly controlled by professional security staff utilizing video surveillance, state of the art intrusion detection systems, and other electronic means. As a result, an organization is responsible for managing:</p>
<ul>
<li> The physical location of the data center (affecting which country’s law applies);</li>
<li>The security of the data center</li>
<li>The trustworthiness of system administrators; and</li>
<li>The documented information security program that protects the confidentiality, integrity, and availability of data and systems, including, but not limited to, configuration, patching, incident response, and business continuity management.</li>
</ul>
<p><strong>Environmental Controls</strong></p>
<p>Cloud computing clusters architecture should be designed with resiliency and redundancy in mind,<br />
helping minimize single points of failure and the impact of common equipment failures and<br />
environmental risks. Dual circuits, switches, networks, and other necessary devices are utilized<br />
to provide redundancy. Facilities infrastructure at the data centers has been designed to be<br />
robust, fault tolerant, and concurrently maintainable.</p>
<p><strong>Operational Security</strong></p>
<p><strong>Network Security</strong>: Most of the cloud computing providers employs multiple layers of defense to help protect the network perimeter from external attacks. Enforcement of network segregation using industry standard firewall and ACL technology can prevent network attacks.<br />
<strong>Operating System Security</strong>: You have to make sure that a standard hardened operating system (OS), and security fixes are uniformly deployed to the entire infrastructure.<br />
Access Control: Authentication controls and Authorization controls are very much required in host levels and application levels to prevent unauthorized access.</p>
<p><strong>Data Security Lifecycle</strong></p>
<p>The Data Security Lifecycle consists of six phases as shown in the diagram given below:<br />
<strong>Data security</strong>: Confidentiality, Integrity, Availability, Authenticity, Authorization, Authentication, and Non-Repudiation.<br />
<strong>Location of the data</strong>: There must be assurance that the data, including all of its copies and backups is stored only in geographic locations permitted by contract, SLA, and/or regulation. For instance, use of “compliant storage” as mandated by the European Union for storing electronic health records can be an added challenge to the data owner and cloud service provider.<br />
<strong>Data remanance or persistence</strong>: Data must be effectively and completely removed to be deemed ‘destroyed.’ Therefore, techniques for completely and effectively locating data in the cloud, erasing/destroying data, and assuring the data has been completely removed or rendered unrecoverable must be available and used when required.<br />
In addition, the destruction of information is more difficult to guarantee in a shared environment. Encryption, and the provision of different encryption keys for each customer in a public cloud may go some way to mitigate this, but not all cloud providers can offer this.<br />
It is wise to ensure that data isn’t held in a proprietary format and is readily transferable to other systems as required. The format of information entrusted to a provider should be agreed and be documented in the contract.</p>
<p><strong>Cloud Computing Attacks</strong></p>
<p><strong>Denial of Service attacks</strong>: Some security professionals have argued that the cloud is more vulnerable to DoS attacks, because it is shared by many users, which makes DoS attacks much more damaging. Twitter suffered a devastating DoS attack during 2009.<br />
<strong>Side Channel attacks</strong>: An attacker could attempt to compromise the cloud by placing a malicious virtual machine in close proximity to a target cloud server and then launching a side channel attack.<br />
<strong>Authentication attacks</strong>: Authentication is a weak point in hosted and virtual services and is frequently targeted. There are many different ways to authenticate users; for example, based on what a person knows, has, or is. The mechanisms used to secure the authentication process and the methods used are a frequent target of attackers.<br />
<strong>Man-in-the-middle cryptographic attacks</strong>: This attack is carried out when an attacker places himself between two users. Anytime attackers can place themselves in the communication’s path, there is the possibility that they can intercept and modify communications.</p>
<p>Cloud computing therefore offers real benefits to companies seeking a competitive edge in today’s fast growing economy. A lot of providers are moving into this area, and the competition is driving prices even lower. Attractive pricing, the ability to free up staff for other duties, and the ability to pay for “as needed” services will continue to drive more businesses to consider cloud computing. The decision to move to cloud-based services should fit into the organization’s overall corporate objectives. A cloud provider must be able to deliver the security, availability, audit and reporting configurations you require. It is therefore essential that enterprises seeking the benefits of cloud computing ensure that their cloud providers can deliver the levels of security and control that they need and should expect.</p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/cloud-computing-security/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/cloud-computing-security/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How Does Vmware differentiate itself as a Virtualization Solution Platform?</title>
		<link>http://www.instacarma.com/blog/technical/how-does-vmware-differentiate-itself-as-a-virtualization-solution-platform/</link>
		<comments>http://www.instacarma.com/blog/technical/how-does-vmware-differentiate-itself-as-a-virtualization-solution-platform/#comments</comments>
		<pubDate>Fri, 24 Dec 2010 19:23:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[bare-metal]]></category>
		<category><![CDATA[ESX]]></category>
		<category><![CDATA[Hyper-V]]></category>
		<category><![CDATA[Hypervisor]]></category>
		<category><![CDATA[virtualization]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[Vsphere]]></category>
		<category><![CDATA[X86 architecture]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1389</guid>
		<description><![CDATA[Filed under: bare-metal, ESX, Hyper-V, Hypervisor, virtualization, VMware, Vsphere, X86 architecture, Xen Vmware is the leader in the infrastructure Virtualization space with industry&#8217;s first bare-metal X86 architecture that was launched in 2001, and now into the fourth generation of Vsphere infrastructure suite. Vsphere is now a fully mature production ready enterprise class Virtualization solution with [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/bare-metal/'>bare-metal</a>, <a href='http://www.instacarma.com/blog/tag/esx/'>ESX</a>, <a href='http://www.instacarma.com/blog/tag/hyper-v/'>Hyper-V</a>, <a href='http://www.instacarma.com/blog/tag/hypervisor/'>Hypervisor</a>, <a href='http://www.instacarma.com/blog/tag/virtualization/'>virtualization</a>, <a href='http://www.instacarma.com/blog/tag/vmware/'>VMware</a>, <a href='http://www.instacarma.com/blog/tag/vsphere/'>Vsphere</a>, <a href='http://www.instacarma.com/blog/tag/x86-architecture/'>X86 architecture</a>, <a href='http://www.instacarma.com/blog/tag/xen/'>Xen</a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } -->Vmware is the leader in the infrastructure Virtualization space with  industry&#8217;s first bare-metal X86 architecture that was launched in 2001, and now into the fourth generation of  Vsphere  infrastructure suite. Vsphere is now a fully mature production ready enterprise class Virtualization solution with a customer base that includes all 100 of the Fortune 100 companies. Their solution stands out in terms of reliability, scalability, flexibility and efficiency.</p>
<p>We&#8217;ll now see what are the key differentiators that gives Vmware its competetive edge over other virtualization solution providers like Xen or Hyper-V.</p>
<ul>
<li>Vmware&#8217;s greatest advantage is its 	bare-metal Hypervisor that lays the foundation for its 	Virtualization platform.  The hypervisor with a  small disk 	footprint of 70Mb and its non-reliance on any general purpose OS 	makes its less error prone, coupled with the direct driver model 	that gives it higher performance and greater virtual machine 	density.</li>
</ul>
<ul>
<li>Its a highly reliable platform 	that gives maximum uptime advantages by making use of technologies 	such as  distributed resource scheduling, logical resource pools,  	Vmotion, hot-add resources and Storage motion, HA , Fault tolerance 	and NIC teaming.  Many competetors such as Xen or Hyper-V do not 	come with the complete capabilities or offers limited features 	compared to whats offered by Vmware.</li>
</ul>
<ul>
<li>Vmware&#8217;s management tool or the 	vCenter is a comprehensive and completely SLA-driven virtualization 	management platform catering to all requirements of managing the 	datacenter such as cluster and resource pool management, BCDR 	setups, DRS, HA and Fault Tolerance, Vmotion rules, patch 	management, vmSafe and vShield zones and distributed virtual switch 	and NIC teaming rules.</li>
</ul>
<ul>
<li>Vmware also offers the largest 	hardware compatibility list compared to other competitors supporting 	more than 1000 servers, 500 HBAs, 300 network I/O cards and more 	than 53 guest operating systems, the highest in the industry. It 	also has partnership alliances with more than 400 enterprise 	software vendors giving it the broadest support for applications.</li>
</ul>
<ul>
<li>Though Vmware&#8217;s per license costs 	may look to be more expensive than Xen or Hyper-V solutions, on the 	long run Vmware offers unparalleled Return On Investment (ROI), 	lowered capital expenditures (Capex) and reduced operating expenses 	(Opex) in the data center and above all, lower cost per application 	by utilizing features such as CPU and memory Over-Commit,transparent 	page sharing,  thin provisioning of  virtual disks giving Vmware a 	very high VM density ,better performance and consolidation ratios.</li>
</ul>
<p>Vmware is by far the most trusted and reliable Virtualization platform available now for production systems and  reported by Garnet as the leader in this industry. The stability of Vmware was rightly said by  Redmondmag.com that the least  stable part  of ESX is usually the administrator. The code is virtually bomb-proof. Citrix Xen and Hyper-V are catching up with their virtualization features but still comes with a lot of limitations that needs to be taken care of to bridge the gap with Vmware.</p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/how-does-vmware-differentiate-itself-as-a-virtualization-solution-platform/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/how-does-vmware-differentiate-itself-as-a-virtualization-solution-platform/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installation of openQRM</title>
		<link>http://www.instacarma.com/blog/technical/installation-of-openqrm-2/</link>
		<comments>http://www.instacarma.com/blog/technical/installation-of-openqrm-2/#comments</comments>
		<pubDate>Tue, 07 Dec 2010 21:52:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[bridge-utils]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[iscsi-target]]></category>
		<category><![CDATA[lvm2]]></category>
		<category><![CDATA[nfs-kernel-server]]></category>
		<category><![CDATA[openQRM]]></category>
		<category><![CDATA[qemu-kvm]]></category>
		<category><![CDATA[vblade]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1381</guid>
		<description><![CDATA[Filed under: bridge-utils, Installation, iscsi-target, lvm2, nfs-kernel-server, openQRM, qemu-kvm, vblade Preparing Network: Install “bridge-utils” # sudo apt-get install bridge-utils Now edit /etc/network/interfaces and setup a bridge using a static, private ip-address. #cat /etc/network/interfaces auto lo iface lo inet loopback auto br0 iface br0 inet static address 192.168.3.251 netmask 255.255.255.0 gateway 192.168.3.1 bridge_ports eth0 bridge_fd 0 [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/bridge-utils/'>bridge-utils</a>, <a href='http://www.instacarma.com/blog/tag/installation/'>Installation</a>, <a href='http://www.instacarma.com/blog/tag/iscsi-target/'>iscsi-target</a>, <a href='http://www.instacarma.com/blog/tag/lvm2/'>lvm2</a>, <a href='http://www.instacarma.com/blog/tag/nfs-kernel-server/'>nfs-kernel-server</a>, <a href='http://www.instacarma.com/blog/tag/openqrm/'>openQRM</a>, <a href='http://www.instacarma.com/blog/tag/qemu-kvm/'>qemu-kvm</a>, <a href='http://www.instacarma.com/blog/tag/vblade/'>vblade</a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } --><strong><span style="font-size: small;"><span style="text-decoration: underline;">Preparing Network</span></span><span style="font-size: small;">:</span></strong></p>
<p><span style="font-size: small;">Install “bridge-utils”</span></p>
<p><span style="font-size: small;"> # sudo apt-get install bridge-utils</span></p>
<p><span style="font-size: small;">Now edit /etc/network/interfaces and setup a bridge using a static, private ip-address.</span></p>
<p><span style="font-size: small;"> #cat /etc/network/interfaces</span></p>
<blockquote><p><span style="font-size: small;">auto lo</span><br />
<span style="font-size: small;">iface lo inet loopback</span><br />
<span style="font-size: small;">auto br0</span><br />
<span style="font-size: small;">iface br0 inet static</span><br />
<span style="font-size: small;">address 192.168.3.251</span><br />
<span style="font-size: small;">netmask 255.255.255.0</span><br />
<span style="font-size: small;">gateway 192.168.3.1</span><br />
<span style="font-size: small;">bridge_ports eth0</span><br />
<span style="font-size: small;">bridge_fd 0</span><br />
<span style="font-size: small;">bridge_hello 2</span><br />
<span style="font-size: small;">bridge_maxage 12</span><br />
<span style="font-size: small;">bridge_stp off</span></p></blockquote>
<ul></ul>
<p><span style="font-size: small;">#sudo /etc/init.d/networking restart</span></p>
<p><span style="font-size: small;">#brctl show</span></p>
<blockquote><p><span style="font-size: small;">bridge name       bridge id                STP enabled        interfaces</span><br />
<span style="font-size: small;">br0               8000.002215be747a        no                 eth0</span></p></blockquote>
<p><span style="font-size: small;">Now setup the static ip-address (192.168.3.251) and hostname in /etc/hosts. Please make sure that the hostname (cloud) does not appear in the line starting with 127.0.0.1.</span></p>
<p><span style="font-size: small;">#cat /etc/hosts</span></p>
<blockquote><p><span style="font-size: small;">127.0.0.1         localhost</span><br />
<span style="font-size: small;">192.168.88.3      cloud  cloud</span></p></blockquote>
<p><span style="font-size: small;"># The following lines are desirable for IPv6 capable hosts</span></p>
<blockquote><p><span style="font-size: small;">::1       localhost ip6-localhost ip6-loopback</span><br />
<span style="font-size: small;">fe00::0 ip6-localnet</span><br />
<span style="font-size: small;">ff00::0 ip6-mcastprefix</span><br />
<span style="font-size: small;">ff02::1 ip6-allnodes</span><br />
<span style="font-size: small;">ff02::2 ip6-allrouters</span></p></blockquote>
<p><strong><span style="font-size: small;"><span style="text-decoration: underline;">Preparing Storage</span></span><span style="font-size: small;">:</span></strong></p>
<p><span style="font-size: small;">Install lvm2, nfs-kernel-server, iscsi-target and vblade.</span></p>
<p><span style="font-size: small;">#apt-get install lvm2 nfs-kernel-server iscsitarget vblade</span></p>
<p><span style="font-size: small;">Now prepare the dedicated partition to be used with lvm, then create a logical volume group “vol”.</span></p>
<p><span style="font-size: small;">#pvcreate /dev/sda3</span></p>
<p><span style="font-size: small;">#pvs</span></p>
<p><span style="font-size: small;">PV           VG    Fmt Attr PSize        PFree</span><br />
<span style="font-size: small;">/dev/sda3          lvm2 &#8212;     186.23g 186.23g</span></p>
<p><span style="font-size: small;">#vgcreate vol /dev/sda3</span></p>
<p><span style="font-size: small;">Volume group &#8220;vol&#8221; successfully created</span></p>
<p><span style="font-size: small;">#vgs</span></p>
<p><span style="font-size: small;">VG     #PV #LV #SN Attr      VSize     VFree</span><br />
<span style="font-size: small;">vol      1   0    0 wz&#8211;n- 186.22g 186.22g</span></p>
<p><span style="font-size: small;">Edit /etc/default/iscsitarget and set the iscsitarget to be started on boot-up.</span></p>
<p><span style="font-size: small;">#cat /etc/default/iscsitarget</span></p>
<p><span style="font-size: small;">ISCSITARGET_ENABLE=true</span></p>
<p><span style="font-size: small;">Then start the iscsitarget and nfs-kernel-server services.</span></p>
<p><span style="font-size: small;">#/etc/init.d/iscsitarget start</span></p>
<p><span style="font-size: small;">#/etc/init.d/nfs-kernel-server start</span></p>
<p><strong><span style="font-size: small;"><span style="text-decoration: underline;">Prepare Storage</span></span><span style="font-size: small;">:</span></strong></p>
<p><span style="font-size: small;">For the openQRM Server Database backend we install “mysql-server”.</span></p>
<p><span style="font-size: small;">#apt-get install -y mysql-server</span></p>
<p><span style="font-size: small;">For sake of simplicity we have left the myslq-password empty.</span></p>
<p><strong><span style="font-size: small;"><span style="text-decoration: underline;">Prepare KVM</span></span><span style="font-size: small;">:</span></strong></p>
<p><span style="font-size: small;"> Install the “kvm” package.</span></p>
<p><span style="font-size: small;">#apt-get install -y kvm</span></p>
<p><span style="font-size: small;">Reading package lists&#8230; Done</span><br />
<span style="font-size: small;">Building dependency tree</span><br />
<span style="font-size: small;">&#8230;..&lt;snip&gt;</span><br />
<span style="font-size: small;">Setting up qemu-kvm (0.12.3+noroms-0ubuntu9) &#8230;</span><br />
<span style="font-size: small;">qemu-kvm start/running</span><br />
<span style="font-size: small;">Setting up kvm (1:84+dfsg-0ubuntu16+0.12.3+noroms+0ubuntu9) &#8230;</span><br />
<span style="font-size: small;">Processing triggers for libc-bin &#8230;</span><br />
<span style="font-size: small;">ldconfig deferred processing now taking place</span></p>
<p><strong><span style="font-size: small;"><span style="text-decoration: underline;">Install openQRM:</span></span></strong></p>
<p><span style="font-size: small;"> We build openQRM from the sources which are available in the openQRM Projects subversion repository. </span></p>
<p><span style="font-size: small;">#sudo apt-get install -y subversion make</span></p>
<p><span style="font-size: small;">Now checkout the openQRM sources from the svn repository.</span></p>
<p><span style="font-size: small;">#svn co https://openqrm.svn.sourceforge.net/svnroot/openqrm openqrm</span></p>
<p><span style="font-size: small;">#cd openqrm/trunk/src/</span></p>
<p>“<span style="font-size: small;">make” requires a working internet connection. If no internet is available on this system you</span></p>
<p><span style="font-size: small;">can   download  the build-cache which will avoid any downloads using:</span></p>
<p><span style="font-size: small;">http://sourceforge.net/projects/openqrm/files/openQRM-4.6/source/openqrm-thirdparty-cache.tgz/download </span></p>
<p><span style="font-size: small;">#make</span></p>
<p><span style="font-size: small;">All compilation results are cached by the openQRM build-system. To ensure all components are build correctly simply run “make” again. The second (and every further “make” run) will just takes a few seconds. </span></p>
<p><span style="font-size: small;">Then run “make install”.</span></p>
<p><span style="font-size: small;">#make install</span></p>
<p><span style="font-size: small;">And finally initialize and start openQRM by “make start”.</span></p>
<p><span style="font-size: small;">#make start</span></p>
<p><span style="font-size: small;">Once initialization is complete, please configure your openQRM Server at: http://[server-ip-address]/openqrm/</span></p>
<p><span style="font-size: small;">-&gt; User: openqrm -&gt; Password: openqrm</span></p>
<p>“<span style="font-size: small;">make   start” triggers a check for the openQRM runtime-dependencies which will install all   additional required packages automatically. At first start the openQRM Server is initialized.</span></p>
<p><span style="font-size: small;"><span style="text-decoration: underline;">Configure openQRM</span></span><span style="font-size: small;">:</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;">Login to your openQRM Server at http://localhost/openqrm [http://localhost/openqrm] . User and password is “openqrm”. </span></p>
<ul>
<li><span style="font-size: small;">First select the bridge-interface as the openQRM 	management network-device.</span></li>
<li><span style="font-size: small;">Then select “myslq” as the Database to use as the 	openQRM backend.</span></li>
<li><span style="font-size: small;">And then configure the Database connection credentials.</span></li>
</ul>
<p><span style="font-size: small;">The openQRM is now fully configured and will forward to the Datacenter Dashboard.</span></p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/installation-of-openqrm-2/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/installation-of-openqrm-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>An overview on openQRM</title>
		<link>http://www.instacarma.com/blog/technical/an-overview-on-openqrm/</link>
		<comments>http://www.instacarma.com/blog/technical/an-overview-on-openqrm/#comments</comments>
		<pubDate>Thu, 25 Nov 2010 15:22:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Appliance]]></category>
		<category><![CDATA[automation]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[Data Center Management]]></category>
		<category><![CDATA[Datacenter]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[open Qlusters Resource Manager]]></category>
		<category><![CDATA[openQRM]]></category>
		<category><![CDATA[P-to-V Migration]]></category>
		<category><![CDATA[scalable management]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[V-to-P Migration]]></category>
		<category><![CDATA[V-to-V Migration]]></category>
		<category><![CDATA[virtual machines]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1362</guid>
		<description><![CDATA[Filed under: Appliance, automation, cloud, cloud computing, Data Center Management, Datacenter, kernel, open Qlusters Resource Manager, openQRM, P-to-V Migration, scalable management, Storage, V-to-P Migration, V-to-V Migration, virtual machines OpenQRM(open Qlusters Resource Manager) is an Open Source Data Center Management and Cloud Computing Platform. It is a fully community driven, Open-Source project backed up by main [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/appliance/'>Appliance</a>, <a href='http://www.instacarma.com/blog/tag/automation/'>automation</a>, <a href='http://www.instacarma.com/blog/tag/cloud/'>cloud</a>, <a href='http://www.instacarma.com/blog/tag/cloud-computing/'>cloud computing</a>, <a href='http://www.instacarma.com/blog/tag/data-center-management/'>Data Center Management</a>, <a href='http://www.instacarma.com/blog/tag/datacenter/'>Datacenter</a>, <a href='http://www.instacarma.com/blog/tag/kernel/'>kernel</a>, <a href='http://www.instacarma.com/blog/tag/open-qlusters-resource-manager/'>open Qlusters Resource Manager</a>, <a href='http://www.instacarma.com/blog/tag/openqrm/'>openQRM</a>, <a href='http://www.instacarma.com/blog/tag/p-to-v-migration/'>P-to-V Migration</a>, <a href='http://www.instacarma.com/blog/tag/scalable-management/'>scalable management</a>, <a href='http://www.instacarma.com/blog/tag/storage/'>Storage</a>, <a href='http://www.instacarma.com/blog/tag/v-to-p-migration/'>V-to-P Migration</a>, <a href='http://www.instacarma.com/blog/tag/v-to-v-migration/'>V-to-V Migration</a>, <a href='http://www.instacarma.com/blog/tag/virtual-machines/'>virtual machines</a></p>
<p><!-- p { margin-bottom: 0.21cm; } --><span style="font-size: small;">OpenQRM(open Qlusters Resource Manager) is an Open Source Data Center Management and Cloud Computing Platform. It is a fully community driven, Open-Source project backed up by main Sponsor openQRM Enterprise.  It offers full automation of data centers and their scalable management.</span></p>
<p><span style="font-size: small;"> Datacenters are custom and complex environments due to the number of involved subsystems like physical servers, virtual machines, different operating systems, network components, network  configuration and network services like DNS and dhcpd plus a system- and service monitoring etc. and the complexity of each subsystem. OpenQRM aims at offering a centralized management of all these within a single administration console. </span></p>
<p><span style="font-size: small;"> </span></p>
<p><span style="font-size: small;"> openQRM simplifies the complex tasks by using the concept of &#8216;breaking&#8217; the datacenters into manageable subsystems. Each subsystem is separately implemented via. A plugin which provides the functionality to manage it. Then open QRM creates automated and generic   interfaces between the different components via its completely plug-able software architecture. Actually the base server of openQRM is designed to just have a single function, to manage plugins.</span></p>
<p><span style="font-size: small;"> openQRM has a unique architecture that unifies physical and virtual machine deployment within a single management console. openQRM integrates with all mainstream virtualization   technologies and supports transparent P-to-V,  V-to-P and also V-to-V  migrations. The “plug-ability”   of openQRM helps combine open-source and commercial third-party components for data center   administration. </span></p>
<p><span style="font-size: small;"> </span></p>
<p><span style="font-size: small;"><span style="text-decoration: underline;">Working</span></span><span style="font-size: small;">:</span></p>
<p><span style="font-size: small;"> A server(Linux) consists of the following components :</span></p>
<p><span style="font-size: small;"> -&gt;         (Linux) Kernel</span></p>
<p><span style="font-size: small;"> -&gt;         kernel modules</span></p>
<p><span style="font-size: small;"> -&gt;         Initial Ramdisk (initrd)</span></p>
<p><span style="font-size: small;"> -&gt;	 Root-filesystem</span></p>
<p><span style="font-size: small;"> It is to be noted that all these components are files. Hence openQRM treats the systems as files. Hence it is recommended to use Modern Storage Systems.</span></p>
<p><span style="font-size: small;"> In general, a small, initial ramdisk is used by Linux systems to pre-setup the init procedure by running /sbin/init. The initrd is responsible for finding and mounting the root-filesystem. openQRM  uses this generic Linux mechanism in an enhanced way by making the process of finding and mounting the root-filesystem completely plug-able. In openQRM the storage-plugin helps the booting system  within the initrd stage in mounting the root-filesystem. Since storage-types are plug-able in openQRM, any kind of external, remote storge devices can be used.</span></p>
<p><span style="font-size: small;"> The following is the boot process of openQRM:</span></p>
<ul>
<li><span style="font-size: small;">Bios is configured to do a network-boot (PXE)</span></li>
<li><span style="font-size: small;">System sends a PXE request and asks for an automated 	network-configuration via dhcp</span></li>
<li><span style="font-size: small;">openQRM&#8217;s dhcpd-server answers the request and provides 	an ip-address</span></li>
<li><span style="font-size: small;">System activates its network-configuration and reads 	its PXE-configuration from the openQRM server</span></li>
<li><span style="font-size: small;">System downloads its operating system kernel and 	initial ramdisk (initrd)</span></li>
<li><span style="font-size: small;">System executes the Operating System kernel and loads 	the initial ramdisk</span></li>
<li><span style="font-size: small;">Within the ramdisk network-hardware is being 	automatically detected and initialized</span></li>
<li><span style="font-size: small;">Having full network connection the system now downloads 	its full set of kernel modules</span></li>
<li><span style="font-size: small;">Additional hardware-detection with all available kernel 	modules</span></li>
<li><span style="font-size: small;">System gets configuration parameters from the openQRM 	server</span></li>
</ul>
<p><span style="font-size: small;">By now hardware is detected and the network is fully initialized. The system can continue in two different ways now:</span></p>
<p><span style="font-size: small;">1. As idle, free server resource</span></p>
<p><span style="font-size: small;">OR  2. As an active, assigned resource acting as a service provider</span></p>
<p><span style="font-size: small;"> In case the system is active assigned to a started appliance, the following steps are executed:</span></p>
<ul>
<li><span style="font-size: small;">The deployment type check and method of the 	server-image assigned to its appliance</span></li>
<li><span style="font-size: small;">The image-deployment hook provided by specific 	storage-plugin is downloaded</span></li>
<li><span style="font-size: small;">System executes “mount_root” function provided in 	the image-deployment hook</span></li>
<li><span style="font-size: small;">The image-deployment hook mounts the 	server-image-location from the remote storage </span></li>
<li><span style="font-size: small;">Kernel- and kernel-modules files are transferred to the 	root-filesystem mounted rw </span></li>
<li><span style="font-size: small;">The openQRM-client is being installed on to the mounted 	root-filesystem</span></li>
<li><span style="font-size: small;">The image-deployment hook re-mounts the 	server-image-location read-only</span></li>
<li><span style="font-size: small;">System continues with regular init (running /sbin/init 	on the root-filesystem)</span></li>
<li><span style="font-size: small;">During futher init procedure of the System, the 	openQRM-client is started</span></li>
<li><span style="font-size: small;">Further plugin services are started</span></li>
</ul>
<p><span style="font-size: small;">openQRM&#8217;s hardware detection uses “pcimodules”. The “pcimodules” command is available as a patch for the “pcituils” package and simply lists all needed kernel modules according the pci ids of the detected hardware. “pcimodules” hardware detection method on physical and virtual systems is found to detect much more hardware than the “hwsetup” utility. </span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;"><span style="text-decoration: underline;">Resource</span></span></p>
<p><span style="font-size: small;"> A resource in openQRM is “everything which has a CPU and some memory”. Resources in openQRM have different types such as Physical Systems, Virtualization Host or Virtual Machine. According its type openQRM interfaces and communicates with the specific resource.</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;"><span style="text-decoration: underline;">Kernel</span></span></p>
<p><span style="font-size: small;"> Kernels in openQRM are Linux Operating System kernels which can be assigned to   resources. This happens automatically through the appliance model through openQRM&#8217;s integrated,   centralized network-boot-manager PXELINUX from the Syslinux project.</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;"><span style="text-decoration: underline;">Image</span></span></p>
<p><span style="font-size: small;"> An image (server-image) is located on a network-attached storage device (NAS or  SAN) and contains a root-filesystem of an Operating system supported by openQRM. The image is  completely self-contained and, via the appliance model it and in combination with a kernel can be started on any available (idle) resource. The server-image root-filesystem may be a minimal Operating system installation which is then further leveraged (e.g.via the Puppet integration) or it also can be a full installed completely pre-configured set of applications. An image can even be a snapshot of an existing server or a clone or copy of an an existing server-image.</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;"><span style="text-decoration: underline;">Appliance</span></span></p>
<p><span style="font-size: small;"> It represents one(or more) of the actual services which should be provided by the Datacenter. An appliance is the combination of a kernel, an (server-) image, a resource and service requirements plus service-level-agreements(SLA). With those informations openQRM then fully   automates the management of the specific services running on the appliance&#8217;s server-image.</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;"><span style="text-decoration: underline;">Storage</span></span></p>
<p><span style="font-size: small;"> A storage component in openQRM consists of an integrated resource containing some  kind  of network-attachable storage  (NAS or SAN). Storages in openQRM are providing the image-locations, meaning the place where server-images are stored and directly attached to resource as required. By creating a storage server openQRM then exactly knows how to interface with its specific   storage technology and further allows automated management of the available storage space and volumes.</span></p>
<p><!-- p { margin-bottom: 0.21cm; } --><span style="font-size: small;"><span style="text-decoration: underline;">Migrations</span></span><span style="font-size: small;">:</span></p>
<p><span style="font-size: small;"> openQRM </span><span style="font-size: small;">supports transparent P-to-V,  V-to-P and also V-to-V  migrations. </span></p>
<p><span style="font-size: small;"> </span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;"><span style="text-decoration: underline;">P-to-V Migration</span></span></p>
<p><span style="font-size: small;"> Since resources are decoupled from their root-files-systems migration   appliances from physical server to virtual machines is complete transparent and easy. The steps below outline how to exchange an appliance physical resource with a virtual one :</span></p>
<ul>
<li><span style="font-size: small;">stop the appliance</span></li>
</ul>
<ul>
<li><span style="font-size: small;">edit the applinace</span></li>
</ul>
<ul>
<li><span style="font-size: small;">change the “resource-type” from “Physical System” 	to a “Virtulization-type VM”</span></li>
</ul>
<ul>
<li><span style="font-size: small;">select a new resource from the type 	“Virtulization-type”</span></li>
</ul>
<ul>
<li><span style="font-size: small;">save the appliance</span></li>
</ul>
<ul>
<li><span style="font-size: small;">start the appliance</span></li>
</ul>
<p><span style="font-size: small;">The appliance will now start using the new, virtual resource as defined in the appliance configuration.</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;"><span style="text-decoration: underline;">V-to-P Migration</span></span></p>
<p><span style="font-size: small;"> This is similar to the P2V migration. The steps to migrate an appliance from a virtual machine to a physical system :</span></p>
<ul>
<li><span style="font-size: small;">stop the appliance</span></li>
</ul>
<ul>
<li><span style="font-size: small;">edit the appliance</span></li>
</ul>
<ul>
<li><span style="font-size: small;">change the “resource-type” to “Physical System”</span></li>
</ul>
<ul>
<li><span style="font-size: small;">select a new resource from the type “Physical System”</span></li>
</ul>
<ul>
<li><span style="font-size: small;">save the appliance</span></li>
</ul>
<ul>
<li><span style="font-size: small;">start the appliance</span></li>
</ul>
<p><span style="font-size: small;">The appliance now runs on a physical system.</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;"><span style="text-decoration: underline;">V-to-V Migration</span></span></p>
<p><span style="font-size: small;"> Using the same method appliances can be moved from one Virtualization type to another. Here the steps necessary for the migration :</span></p>
<ul>
<li><span style="font-size: small;">stop the appliance (Virtualization type A)</span></li>
</ul>
<ul>
<li><span style="font-size: small;">edit the appliance</span></li>
</ul>
<ul>
<li><span style="font-size: small;">change the appliance resource type from 	“Virtualization-VM” (type A) to “Virtualization-VM” (type B)</span></li>
</ul>
<ul>
<li><span style="font-size: small;">select a new resource from “Virtualization-VM” 	(type B)</span></li>
</ul>
<ul>
<li><span style="font-size: small;">save the apliance</span></li>
</ul>
<ul>
<li><span style="font-size: small;">start the appliance</span></li>
</ul>
<p><span style="font-size: small;">The appliance will now start using the new, virtual resource(Virtualization type B) as defined in the   appliance configuration.</span></p>
<p><span style="font-size: small;"><span style="text-decoration: underline;">Requirements</span></span><span style="font-size: small;">:</span></p>
<blockquote>
<ul>
<li><span style="font-size: small;"> Simple Proof-of-Concept Setup</span></li>
<li><span style="font-size: small;">1 Physical System dedicated for the openQRM Server</span></li>
<li><span style="font-size: small;"> VT CPU Extension (full Virtualization Support)</span></li>
<li><span style="font-size: small;"> A free partition dedicated for the server-image store (at least 20 GB)</span></li>
<li><span style="font-size: small;"> 1 GB Memory</span></li>
<li><span style="font-size: small;"> Basic Setup</span></li>
<li><span style="font-size: small;"> 3 Physical Systems (openQRM Server, Storage and Virtualization Host)</span></li>
<li><span style="font-size: small;"> VT CPU Extension (full Virtualization Support)</span></li>
<li><span style="font-size: small;">A free partition dedicated for the server-image store (at least 100GB)  on the system dedicated for the Storage Production Setup</span></li>
<li><span style="font-size: small;"> 4+N Physical Systems (2 for openQRM Server HA, N Storage and N Virtualization Hosts)</span></li>
<li><span style="font-size: small;"> VT CPU Extension (full Virtualization Support)</span></li>
</ul>
</blockquote>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/an-overview-on-openqrm/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/an-overview-on-openqrm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL High Availability Storage Options</title>
		<link>http://www.instacarma.com/blog/technical/mysql-high-availability-storage-options/</link>
		<comments>http://www.instacarma.com/blog/technical/mysql-high-availability-storage-options/#comments</comments>
		<pubDate>Wed, 17 Nov 2010 16:15:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[DRBD]]></category>
		<category><![CDATA[high availability]]></category>
		<category><![CDATA[Mysql]]></category>
		<category><![CDATA[MySQL Cluster]]></category>
		<category><![CDATA[MySQL Replication]]></category>
		<category><![CDATA[Storage]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1353</guid>
		<description><![CDATA[Filed under: DRBD, high availability, Mysql, MySQL Cluster, MySQL Replication, Storage There are various solutions available for achieving high availability and scalability of MySQL data/service. &#8216;MySQL Replication&#8217; and &#8216;MySQL Cluster&#8217; the solutions offered and supported by MySQL. Third-party solutions such as DRBD (Distributed Replicated Block Device) and Heartbeat can also be used or one could [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/drbd/'>DRBD</a>, <a href='http://www.instacarma.com/blog/tag/high-availability/'>high availability</a>, <a href='http://www.instacarma.com/blog/tag/mysql/'>Mysql</a>, <a href='http://www.instacarma.com/blog/tag/mysql-cluster/'>MySQL Cluster</a>, <a href='http://www.instacarma.com/blog/tag/mysql-replication/'>MySQL Replication</a>, <a href='http://www.instacarma.com/blog/tag/storage/'>Storage</a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 		H2 { margin-bottom: 0.21cm } 		H2.western { font-family: "Nimbus Roman No9 L", "Times New Roman", serif } 		H2.cjk { font-family: "DejaVu Sans" } 		H2.ctl { font-family: "DejaVu Sans" } -->There are various solutions available for achieving high availability and scalability of MySQL data/service. &#8216;MySQL Replication&#8217; and &#8216;MySQL Cluster&#8217; the solutions offered and supported by MySQL. Third-party solutions such as DRBD (Distributed Replicated Block Device) and Heartbeat can also be used or one could implement a combination of these technologies.</p>
<p>The two solutions offered by MySQL are discussed here. Of these, MySQL Cluster is considered a feasible and reliable solution and is our subject of interest.</p>
<p><em><span style="text-decoration: underline;"><strong>MySQL Replication</strong></span></em><em><strong>:</strong></em><strong> </strong></p>
<p>It enables data from one MySQL server instance to be replicated to another MySQL server instance. It allows replication of data from a single master server to any number of slaves using a simple setup. However, this is an asynchronous replication solution, so the synchronization does not take place in real time, and data replication among all slaves is can not guaranteed always.</p>
<ul>
<li><strong>Advantages</strong>
<ul>
<li>This  can be implemented on any platform (which MySQL 		supports) and isn&#8217;t OS specific.</li>
<li>Replication is asynchronous and can be stopped and restarted 		at any time, and is easily manageable during network issues.</li>
<li>Data can be replicated from one master to any number of 		slaves. This is suitable for environments with heavy reads, but 		light writes, by spreading the load across multiple slaves.</li>
</ul>
</li>
<li><strong>Disadvantages</strong>
<ul>
<li>Data can only be written to the master.</li>
<li>There is no guarantee that data on master and slaves will be 		consistent at a given point in time. Due to asynchronous 		replication of data, there may be a small delay between data being 		written to the master and it being available on the slaves.</li>
</ul>
</li>
<li><strong>Recommended uses</strong>
<ul>
<li>Scale-out solutions that require a large number of reads but 		fewer writes (for example, web serving).</li>
<li>Logging/data analysis of live data. Queries can be performed 		on the slave without affecting the operation of the master.</li>
<li>Online backup (high availability &#8211; when used in combination 		with heartbeat). However, since asynchronous replication is used, 		the data may be incomplete.</li>
<li>Offline backup &#8211; Snapshot of existing data at a given point 		of time can be taken by replicating the data to a slave.</li>
</ul>
</li>
</ul>
<p><em><span style="text-decoration: underline;"><strong>MySQL Cluster</strong></span></em><em><strong>:</strong></em><em> </em></p>
<p><em> It is a is a high-availability, high-redundancy synchronous solution that enables multiple MySQL instances to share database information. Data in a cluster can be read from or written to any node within the cluster, and information will be distributed to the other nodes. </em></p>
<p>This  technology enables clustering of in-memory databases in a shared-nothing system. Shared-nothing means each component is allocated its own memory and disk and such an architecture allows the system to work with very inexpensive hardware, and with a minimum of specific requirements for hardware or software. Use of shared storage mechanisms such as SAN, NFS etc is not supported.</p>
<ul>
<li><strong>Advantages</strong>
<ul>
<li>Offers multiple read and write nodes for data storage.</li>
<li>Provides automatic failover between nodes. Only transaction 		information for the active node being used is lost in the event of 		a failure.</li>
<li>Data on nodes is instantaneously distributed to the other 		data nodes.</li>
</ul>
</li>
<li><strong>Disadvantages</strong>
<ul>
<li>Available on a limited range of platforms.</li>
</ul>
</li>
</ul>
<p>Only a development version is available for Microsoft Windows and Apple Mac OSX. It is not supported on SuSE Eneterprise Linux 11 as of this writing. Please check the following link for more details:     http://www.mysql.com/support/supportedplatforms/cluster.html</p>
<ul>
<li>
<ul>
<li>Nodes within a cluster should be connected via a LAN; 		geographically separate nodes are not supported. However, you can 		replicate from one cluster to another using MySQL Replication, 		although the replication in this case is still asynchronous.</li>
</ul>
</li>
<li><strong>Recommended uses</strong>
<ul>
<li>Applications that need very high availability, such as 		telecoms and banking.</li>
<li>Applications that require an equal or higher number of 		writes compared to reads.</li>
</ul>
</li>
</ul>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/mysql-high-availability-storage-options/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/mysql-high-availability-storage-options/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installation of openQRM using KVM</title>
		<link>http://www.instacarma.com/blog/technical/installation-of-openqrm-using-kvm/</link>
		<comments>http://www.instacarma.com/blog/technical/installation-of-openqrm-using-kvm/#comments</comments>
		<pubDate>Mon, 15 Nov 2010 21:56:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Install openQRM]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[iscsi-target]]></category>
		<category><![CDATA[KVM]]></category>
		<category><![CDATA[lvm2]]></category>
		<category><![CDATA[nfs-kernel-server]]></category>
		<category><![CDATA[openQRM]]></category>
		<category><![CDATA[vblade]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1348</guid>
		<description><![CDATA[Filed under: Install openQRM, Installation, iscsi-target, KVM, lvm2, nfs-kernel-server, openQRM, vblade Preparing Network: Install “bridge-utils” # sudo apt-get install bridge-utils Now edit /etc/network/interfaces and setup a bridge using a static, private ip-address. #cat /etc/network/interfaces auto lo iface lo inet loopback auto br0 iface br0 inet static address 192.168.3.251 netmask 255.255.255.0 gateway 192.168.3.1 bridge_ports eth0 bridge_fd [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/install-openqrm/'>Install openQRM</a>, <a href='http://www.instacarma.com/blog/tag/installation/'>Installation</a>, <a href='http://www.instacarma.com/blog/tag/iscsi-target/'>iscsi-target</a>, <a href='http://www.instacarma.com/blog/tag/kvm/'>KVM</a>, <a href='http://www.instacarma.com/blog/tag/lvm2/'>lvm2</a>, <a href='http://www.instacarma.com/blog/tag/nfs-kernel-server/'>nfs-kernel-server</a>, <a href='http://www.instacarma.com/blog/tag/openqrm/'>openQRM</a>, <a href='http://www.instacarma.com/blog/tag/vblade/'>vblade</a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } --><span style="font-size: small;"><span style="text-decoration: underline;">Preparing Network</span></span><span style="font-size: small;">:</span></p>
<p><span style="font-size: small;">Install “bridge-utils”</span></p>
<p><span style="font-size: small;"># sudo apt-get install bridge-utils</span></p>
<p><span style="font-size: small;">Now edit /etc/network/interfaces and setup a bridge using a static, private ip-address.</span></p>
<p><span style="font-size: small;">#cat /etc/network/interfaces</span></p>
<p><span style="font-size: small;">auto lo</span></p>
<p><span style="font-size: small;">iface lo inet loopback</span></p>
<p><span style="font-size: small;">auto br0</span></p>
<p><span style="font-size: small;">iface br0 inet static</span></p>
<p><span style="font-size: small;">address 192.168.3.251</span></p>
<p><span style="font-size: small;">netmask 255.255.255.0</span></p>
<p><span style="font-size: small;">gateway 192.168.3.1</span></p>
<p><span style="font-size: small;">bridge_ports eth0</span></p>
<p><span style="font-size: small;">bridge_fd 0</span></p>
<p><span style="font-size: small;">bridge_hello 2</span></p>
<p><span style="font-size: small;">bridge_maxage 12</span></p>
<p><span style="font-size: small;">bridge_stp off</span></p>
<p><span style="font-size: small;">#sudo /etc/init.d/networking restart</span></p>
<p><span style="font-size: small;">#brctl show</span></p>
<p><span style="font-size: small;">bridge name       bridge id                STP enabled        interfaces</span></p>
<p><span style="font-size: small;">br0               8000.002215be747a        no                 eth0</span></p>
<p><span style="font-size: small;">Now setup the static ip-address (192.168.3.251) and hostname in /etc/hosts. Please make sure that the hostname (cloud) does not appear in the line starting with 127.0.0.1.</span></p>
<p><span style="font-size: small;">#cat /etc/hosts</span></p>
<p><span style="font-size: small;">127.0.0.1         localhost</span></p>
<p><span style="font-size: small;">192.168.88.3      cloud  cloud</span></p>
<p><span style="font-size: small;"># The following lines are desirable for IPv6 capable hosts</span></p>
<p><span style="font-size: small;">::1       localhost ip6-localhost ip6-loopback</span></p>
<p><span style="font-size: small;">fe00::0 ip6-localnet</span></p>
<p><span style="font-size: small;">ff00::0 ip6-mcastprefix</span></p>
<p><span style="font-size: small;">ff02::1 ip6-allnodes</span></p>
<p><span style="font-size: small;">ff02::2 ip6-allrouters</span></p>
<p><span style="font-size: small;"><span style="text-decoration: underline;">Preparing Storage</span></span><span style="font-size: small;">:</span></p>
<p><span style="font-size: small;">Install lvm2, nfs-kernel-server, iscsi-target and vblade.</span></p>
<p><span style="font-size: small;">#apt-get install lvm2 nfs-kernel-server iscsitarget vblade</span></p>
<p><span style="font-size: small;">Now prepare the dedicated partition to be used with lvm, then create a logical volume group “vol”.</span></p>
<p><span style="font-size: small;">#pvcreate /dev/sda3</span></p>
<p><span style="font-size: small;">#pvs</span></p>
<p><span style="font-size: small;">PV           VG    Fmt Attr PSize        PFree</span></p>
<p><span style="font-size: small;">/dev/sda3          lvm2 &#8212;     186.23g 186.23g</span></p>
<p><span style="font-size: small;">#vgcreate vol /dev/sda3</span></p>
<p><span style="font-size: small;">Volume group &#8220;vol&#8221; successfully created</span></p>
<p><span style="font-size: small;">#vgs</span></p>
<p><span style="font-size: small;">VG     #PV #LV #SN Attr      VSize     VFree</span></p>
<p><span style="font-size: small;">vol      1   0    0 wz&#8211;n- 186.22g 186.22g</span></p>
<p><span style="font-size: small;">Edit /etc/default/iscsitarget and set the iscsitarget to be started on boot-up.</span></p>
<p><span style="font-size: small;">#cat /etc/default/iscsitarget</span></p>
<p><span style="font-size: small;">ISCSITARGET_ENABLE=true</span></p>
<p><span style="font-size: small;">Then start the iscsitarget and nfs-kernel-server services.</span></p>
<p><span style="font-size: small;">#/etc/init.d/iscsitarget start</span></p>
<p><span style="font-size: small;">#/etc/init.d/nfs-kernel-server start</span></p>
<p><span style="font-size: small;"><span style="text-decoration: underline;">Prepare Storage</span></span><span style="font-size: small;">:</span></p>
<p><span style="font-size: small;">For the openQRM Server Database backend we install “mysql-server”.</span></p>
<p><span style="font-size: small;">#apt-get install -y mysql-server</span></p>
<p><span style="font-size: small;">For sake of simplicity we have left the myslq-password empty.</span></p>
<p><span style="font-size: small;"><span style="text-decoration: underline;">Prepare KVM</span></span><span style="font-size: small;">:</span></p>
<p><span style="font-size: small;"> Install the “kvm” package.</span></p>
<p><span style="font-size: small;">#apt-get install -y kvm</span></p>
<p><span style="font-size: small;">Reading package lists&#8230; Done</span></p>
<p><span style="font-size: small;">Building dependency tree</span></p>
<p><span style="font-size: small;">&#8230;..&lt;snip&gt;</span></p>
<p><span style="font-size: small;">Setting up qemu-kvm (0.12.3+noroms-0ubuntu9) &#8230;</span></p>
<p><span style="font-size: small;">qemu-kvm start/running</span></p>
<p><span style="font-size: small;">Setting up kvm (1:84+dfsg-0ubuntu16+0.12.3+noroms+0ubuntu9) &#8230;</span></p>
<p><span style="font-size: small;">Processing triggers for libc-bin &#8230;</span></p>
<p><span style="font-size: small;">ldconfig deferred processing now taking place</span></p>
<p><span style="font-size: small;"><span style="text-decoration: underline;">Install openQRM:</span></span></p>
<p><span style="font-size: small;"> We build openQRM from the sources which are available in the openQRM Projects subversion repository. </span></p>
<p><span style="font-size: small;">#sudo apt-get install -y subversion make</span></p>
<p><span style="font-size: small;">Now checkout the openQRM sources from the svn repository.</span></p>
<p><span style="font-size: small;">#svn co https://openqrm.svn.sourceforge.net/svnroot/openqrm openqrm</span></p>
<p><span style="font-size: small;">#cd openqrm/trunk/src/</span></p>
<p>“<span style="font-size: small;">make” requires a working internet connection. If no internet is available on this system you</span></p>
<p><span style="font-size: small;">can   download  the build-cache which will avoid any downloads using:</span></p>
<p><span style="font-size: small;">http://sourceforge.net/projects/openqrm/files/openQRM-4.6/source/openqrm-thirdparty-cache.tgz/download </span></p>
<p><span style="font-size: small;">#make</span></p>
<p><span style="font-size: small;">All compilation results are cached by the openQRM build-system. To ensure all components are build correctly simply run “make” again. The second (and every further “make” run) will just takes a few seconds. </span></p>
<p><span style="font-size: small;">Then run “make install”.</span></p>
<p><span style="font-size: small;">#make install</span></p>
<p><span style="font-size: small;">And finally initialize and start openQRM by “make start”.</span></p>
<p><span style="font-size: small;">#make start</span></p>
<p><span style="font-size: small;">Once initialization is complete, please configure your openQRM Server at: http://[server-ip-address]/openqrm/</span></p>
<p><span style="font-size: small;">-&gt; User: openqrm -&gt; Password: openqrm</span></p>
<p>“<span style="font-size: small;">make   start” triggers a check for the openQRM runtime-dependencies which will install all   additional required packages automatically. At first start the openQRM Server is initialized.</span></p>
<p><span style="font-size: small;"><span style="text-decoration: underline;">Configure openQRM</span></span><span style="font-size: small;">:</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;">Login to your openQRM Server at http://localhost/openqrm [http://localhost/openqrm] . User and password is “openqrm”. </span></p>
<ul>
<li><span style="font-size: small;">First select the bridge-interface as the openQRM 	management network-device.</span></li>
<li><span style="font-size: small;">Then select “myslq” as the Database to use as the 	openQRM backend.</span></li>
<li><span style="font-size: small;">And then configure the Database connection credentials.</span></li>
</ul>
<p><span style="font-size: small;">The openQRM is now fully configured and will forward to the Datacenter Dashboard.</span></p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/installation-of-openqrm-using-kvm/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/installation-of-openqrm-using-kvm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>InstaCarma attends conference on Enterprise Architecture led by John Zachman</title>
		<link>http://www.instacarma.com/blog/company-updates/instacarma-attends-conference-on-enterprise-architecture-led-by-john-zachman/</link>
		<comments>http://www.instacarma.com/blog/company-updates/instacarma-attends-conference-on-enterprise-architecture-led-by-john-zachman/#comments</comments>
		<pubDate>Fri, 08 Oct 2010 18:26:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Company Updates]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1342</guid>
		<description><![CDATA[Our Director of Operations Mrs. Indu Aromal, attended the conference on Enterprise Architecture by Mr. John Zachman,the originator of the “Zachman Framework for Enterprise Architecture”   held in Bangalore at the Le Meridien and organized by ICMG . The conference was basically designed for Company Owners, Directors, CXOs, Topline Managers and Enterprise Architects to share [...]]]></description>
			<content:encoded><![CDATA[<p>Our Director of Operations <strong>Mrs. Indu Aromal</strong>, attended the conference on<strong> Enterprise Architecture</strong> by Mr. John Zachman,the originator of the  “Zachman Framework for Enterprise Architecture”   held in Bangalore at  the Le Meridien and organized by ICMG . The conference was basically  designed for Company Owners, Directors, CXOs, Topline Managers and  Enterprise Architects to share the know-how behind engineering  Enterprises, managing complexity and change in an organization and  translating strategies to operation. <a href="http://instacarma.com/blog/wp-content/uploads/2010/10/Zachman.jpg"><img class="alignright size-medium wp-image-1345" title="Zachman" src="http://instacarma.com/blog/wp-content/uploads/2010/10/Zachman-225x300.jpg" alt="" width="225" height="300" /></a></p>
<p>The conference , lead by<strong> John A. Zachman</strong>, gave some excellent insights into the laws of nature  that governs the behaviour of an organization and went on to establish  that a well engineered enterprise with a sound architecture in place is  the master key for the success of an enterprise. John A. Zachman,  is  the founder of the “Framework for Enterprise Architecture” which has  received broad acceptance around the world as an integrative framework.  His descriptive representations for Enterprises is considered as the  &#8220;periodic table&#8221; for an enterprise, just like how the period table makes  the base of Scientific Chemistry. Mr. Zachman is not only known for his  work on Enterprise Architecture, but is also known for his early  contributions to IBM’s Information Strategy methodology (Business  Systems Planning) as well as to their Executive team planning techniques  (Intensive Planning). The legendary Zachman is also the author of the  book &#8220;The Zachman Framework for Enterprise Architecture : A Primer on  Enterprise Engineering and Manufacturing&#8221; and is currently the Chief  Executive Officer of his own education and consulting business, Zachman  International. He is also the Chairman of the Board of Zachman Framework  Associates, a worldwide consortium managing conformance to the Zachman  Framework principles and Chief Executive Officer of the Zachman  Institute for Framework Advancement (ZIFA), an organization that  conducts seminars on Enterprise Architecture.</p>
<p>The conference  covered various agendas such as Modern enterprise &amp; its dependency,  Defining framework for Enterprise Architecture, Enterprise objectives,  Enterprise Architecture:its implementation practicalities , Architecture  methodologies, Enterprise Architecture management and Guidelines for an  action plan. John has given a clear insight into using his framework as  the guideline for engineering an enterprise that is integrated,  flexible, aligned,interoperable and extendible. InstaCarma is sure to  benefit a great deal from the invaluable insights from this living  legend and will be incorporating his methodology in its enterprise  architecture.</p>
<p><img src="file:///C:/Users/MOBIN/AppData/Local/Temp/moz-screenshot.png" alt="" /></p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/company-updates/instacarma-attends-conference-on-enterprise-architecture-led-by-john-zachman/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/company-updates/instacarma-attends-conference-on-enterprise-architecture-led-by-john-zachman/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL High Availability</title>
		<link>http://www.instacarma.com/blog/technical/mysql-high-availability/</link>
		<comments>http://www.instacarma.com/blog/technical/mysql-high-availability/#comments</comments>
		<pubDate>Tue, 28 Sep 2010 18:36:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Advantages]]></category>
		<category><![CDATA[Disadvantages]]></category>
		<category><![CDATA[DRBD (Distributed Replicated Block Device)]]></category>
		<category><![CDATA[failover]]></category>
		<category><![CDATA[Heartbeat]]></category>
		<category><![CDATA[high availability]]></category>
		<category><![CDATA[Mysql]]></category>
		<category><![CDATA[MySQL Cluster]]></category>
		<category><![CDATA[MySQL High Availability]]></category>
		<category><![CDATA[MySQL Replication]]></category>
		<category><![CDATA[Scalability]]></category>
		<category><![CDATA[SuSE Eneterprise]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1332</guid>
		<description><![CDATA[Filed under: Advantages, Disadvantages, DRBD (Distributed Replicated Block Device), failover, Heartbeat, high availability, Mysql, MySQL Cluster, MySQL High Availability, MySQL Replication, Scalability, SuSE Eneterprise There are a various solutions available for achieving high availability and scalability of MySQL data/service. &#8216;MySQL Replication&#8217; and &#8216;MySQL Cluster&#8217; the solutions offered and supported by MySQL. Third-party solutions such as [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/advantages/'>Advantages</a>, <a href='http://www.instacarma.com/blog/tag/disadvantages/'>Disadvantages</a>, <a href='http://www.instacarma.com/blog/tag/drbd-distributed-replicated-block-device/'>DRBD (Distributed Replicated Block Device)</a>, <a href='http://www.instacarma.com/blog/tag/failover/'>failover</a>, <a href='http://www.instacarma.com/blog/tag/heartbeat/'>Heartbeat</a>, <a href='http://www.instacarma.com/blog/tag/high-availability/'>high availability</a>, <a href='http://www.instacarma.com/blog/tag/mysql/'>Mysql</a>, <a href='http://www.instacarma.com/blog/tag/mysql-cluster/'>MySQL Cluster</a>, <a href='http://www.instacarma.com/blog/tag/mysql-high-availability/'>MySQL High Availability</a>, <a href='http://www.instacarma.com/blog/tag/mysql-replication/'>MySQL Replication</a>, <a href='http://www.instacarma.com/blog/tag/scalability/'>Scalability</a>, <a href='http://www.instacarma.com/blog/tag/suse-eneterprise/'>SuSE Eneterprise</a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } -->There are a various solutions available for achieving high availability and scalability of MySQL data/service. &#8216;MySQL Replication&#8217; and &#8216;MySQL Cluster&#8217; the solutions offered and supported by MySQL. Third-party solutions such as DRBD (Distributed Replicated Block Device) and Heartbeat can also be used or one could implement a combination of these technologies.</p>
<p>The two solutions offered by MySQL are discussed here. Of these, MySQL Cluster is considered a feasible and reliable solution and is our subject of interest.</p>
<p><em><span style="text-decoration: underline;"><strong>MySQL Replication</strong></span></em><em><strong>:</strong></em><strong> </strong></p>
<p>It enables data from one MySQL server instance to be replicated to another MySQL server instance. It allows replication of data from a single master server to any number of slaves using a simple setup. However, this is an asynchronous replication solution, so the synchronization does not take place in real time, and data replication among all slaves is can not guaranteed always.</p>
<ul>
<li><strong>Advantages</strong>
<ul>
<li>This  can be implemented on any platform (which MySQL 		supports) and isn&#8217;t OS specific.</li>
<li>Replication is asynchronous and can be stopped and restarted 		at any time, and is easily manageable during network issues.</li>
<li>Data can be replicated from one master to any number of 		slaves. This is suitable for environments with heavy reads, but 		light writes, by spreading the load across multiple slaves.</li>
</ul>
</li>
<li><strong>Disadvantages</strong>
<ul>
<li>Data can only be written to the master.</li>
<li>There is no guarantee that data on master and slaves will be 		consistent at a given point in time. Due to asynchronous 		replication of data, there may be a small delay between data being 		written to the master and it being available on the slaves.</li>
</ul>
</li>
<li><strong>Recommended uses</strong>
<ul>
<li>Scale-out solutions that require a large number of reads but 		fewer writes (for example, web serving).</li>
<li>Logging/data analysis of live data. Queries can be performed 		on the slave without affecting the operation of the master.</li>
<li>Online backup (high availability &#8211; when used in combination 		with heartbeat). However, since asynchronous replication is used, 		the data may be incomplete.</li>
<li>Offline backup &#8211; Snapshot of existing data at a given point 		of time can be taken by replicating the data to a slave.</li>
</ul>
</li>
</ul>
<p><em><span style="text-decoration: underline;"><strong>MySQL Cluster</strong></span></em><em><strong>:</strong></em><em> </em></p>
<p><em> It is a is a high-availability, high-redundancy synchronous solution that enables multiple MySQL instances to share database information. Data in a cluster can be read from or written to any node within the cluster, and information will be distributed to the other nodes. </em></p>
<p>This  technology enables clustering of in-memory databases in a shared-nothing system. Shared-nothing means each component is allocated its own memory and disk and such an architecture allows the system to work with very inexpensive hardware, and with a minimum of specific requirements for hardware or software. Use of shared storage mechanisms such as SAN, NFS etc is not supported.</p>
<ul>
<li><strong>Advantages</strong>
<ul>
<li>Offers multiple read and write nodes for data storage.</li>
<li>Provides automatic failover between nodes. Only transaction 		information for the active node being used is lost in the event of 		a failure.</li>
<li>Data on nodes is instantaneously distributed to the other 		data nodes.</li>
</ul>
</li>
<li><strong>Disadvantages</strong>
<ul>
<li>Available on a limited range of platforms.</li>
</ul>
</li>
</ul>
<p>Only a development version is available for Microsoft Windows and Apple Mac OSX. It is not supported on SuSE Eneterprise Linux 11 as of this writing. Please check the following link for more details:     http://www.mysql.com/support/supportedplatforms/cluster.html</p>
<ul>
<li>
<ul>
<li>Nodes within a cluster should be connected via a LAN; 		geographically separate nodes are not supported. However, you can 		replicate from one cluster to another using MySQL Replication, 		although the replication in this case is still asynchronous.</li>
</ul>
</li>
<li><strong>Recommended uses</strong>
<ul>
<li>Applications that need very high availability, such as 		telecoms and banking.</li>
<li>Applications that require an equal or higher number of 		writes compared to reads.</li>
</ul>
</li>
</ul>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/mysql-high-availability/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/mysql-high-availability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

