<?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 &#187; Technical</title>
	<atom:link href="http://www.instacarma.com/blog/category/technical/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>Sat, 10 Mar 2012 21:44:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<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>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[<div class="sticky_post"><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>
<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>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>
		<item>
		<title>Active Directory</title>
		<link>http://www.instacarma.com/blog/technical/active-directory/</link>
		<comments>http://www.instacarma.com/blog/technical/active-directory/#comments</comments>
		<pubDate>Sat, 04 Sep 2010 16:06:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[domain]]></category>
		<category><![CDATA[Forest]]></category>
		<category><![CDATA[Microsoft Windows]]></category>
		<category><![CDATA[Object]]></category>
		<category><![CDATA[Organizational Unit]]></category>
		<category><![CDATA[Scalability]]></category>
		<category><![CDATA[Schema]]></category>
		<category><![CDATA[Single Logon Process]]></category>
		<category><![CDATA[Tree]]></category>
		<category><![CDATA[Trust]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1316</guid>
		<description><![CDATA[Filed under: Active Directory, domain, Forest, Microsoft Windows, Object, Organizational Unit, Scalability, Schema, Single Logon Process, Tree, Trust An Active Directory is a directory structure used on Microsoft Windows based computers and servers to store information and data about networks and domains. Here are some of the important parameters used in Active Directory. Object: An [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/active-directory/'>Active Directory</a>, <a href='http://www.instacarma.com/blog/tag/domain/'>domain</a>, <a href='http://www.instacarma.com/blog/tag/forest/'>Forest</a>, <a href='http://www.instacarma.com/blog/tag/microsoft-windows/'>Microsoft Windows</a>, <a href='http://www.instacarma.com/blog/tag/object/'>Object</a>, <a href='http://www.instacarma.com/blog/tag/organizational-unit/'>Organizational Unit</a>, <a href='http://www.instacarma.com/blog/tag/scalability/'>Scalability</a>, <a href='http://www.instacarma.com/blog/tag/schema/'>Schema</a>, <a href='http://www.instacarma.com/blog/tag/single-logon-process/'>Single Logon Process</a>, <a href='http://www.instacarma.com/blog/tag/tree/'>Tree</a>, <a href='http://www.instacarma.com/blog/tag/trust/'>Trust</a></p>
<p><!-- p, li { white-space: pre-wrap; } --><!--StartFragment-->An<strong> Active Directory</strong> is a directory structure used on <strong>Microsoft Windows</strong> based computers and servers to store information and data about networks and domains. Here are some of the important parameters used in <strong>Active Directory</strong>.</p>
<p><strong>Object</strong>: An object is anything that can be part of the directory. e.g: user, group, shared folder, printer etc.</p>
<p><strong>Organizational Unit</strong>: It is a Active Directory container into which you can place users, groups, computers, and other organizational units in a hierarchial manner for ease of administration or management.</p>
<p><strong>Domain</strong>: A domain is a collection of objects. The benefits of a domain are Centralized Administration &#8211; Management of the entire domain can be done with access to one database.</p>
<blockquote><p><strong>Single Logon Process</strong> &#8211; Access to network resources can be granted through a single logon.</p>
<p><strong>Scalability</strong> &#8211; Very large networks can be created.</p></blockquote>
<p><strong>Organizational Unit</strong>: An organizational unit is a container with objects.</p>
<p><strong>Tree</strong>: Trees are a collection of one or more Domains.</p>
<p><strong>Forest</strong>: A forest is a collection of Trees.</p>
<p><strong>Schema</strong>: The structure of Active Directory Domain Service database is the schema.  A schema is a set of attributes used to describe a particular object in Active Directory.</p>
<p><strong>Trust</strong>: A trust is a relationship established between two or more domains to allow users in one domain to be authenticated by a domain controller in another domain.<!--EndFragment--></p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/active-directory/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/active-directory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Configure StarWind?</title>
		<link>http://www.instacarma.com/blog/technical/how-to-configure-starwind/</link>
		<comments>http://www.instacarma.com/blog/technical/how-to-configure-starwind/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 16:10:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[clustered]]></category>
		<category><![CDATA[Configure StarWind]]></category>
		<category><![CDATA[http://www.starwindsoftware.com]]></category>
		<category><![CDATA[iSCSI]]></category>
		<category><![CDATA[Multiple Concurrent iSCSI Connections]]></category>
		<category><![CDATA[shared storage]]></category>
		<category><![CDATA[StarWind]]></category>
		<category><![CDATA[StarWind Software]]></category>
		<category><![CDATA[Virtual Device]]></category>
		<category><![CDATA[Windows Server]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1311</guid>
		<description><![CDATA[Filed under: clustered, Configure StarWind, http://www.starwindsoftware.com, iSCSI, Multiple Concurrent iSCSI Connections, shared storage, StarWind, StarWind Software, Virtual Device, Windows Server StarWind(Based on iSCSI) is used to create a shared storage area on a Windows Server for use with clustered environment. Download the software from http://www.starwindsoftware.com and complete the installation steps. Then, Start &#62; All Programs [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/clustered/'>clustered</a>, <a href='http://www.instacarma.com/blog/tag/configure-starwind/'>Configure StarWind</a>, <a href='http://www.instacarma.com/blog/tag/httpwww-starwindsoftware-com/'>http://www.starwindsoftware.com</a>, <a href='http://www.instacarma.com/blog/tag/iscsi/'>iSCSI</a>, <a href='http://www.instacarma.com/blog/tag/multiple-concurrent-iscsi-connections/'>Multiple Concurrent iSCSI Connections</a>, <a href='http://www.instacarma.com/blog/tag/shared-storage/'>shared storage</a>, <a href='http://www.instacarma.com/blog/tag/starwind/'>StarWind</a>, <a href='http://www.instacarma.com/blog/tag/starwind-software/'>StarWind Software</a>, <a href='http://www.instacarma.com/blog/tag/virtual-device/'>Virtual Device</a>, <a href='http://www.instacarma.com/blog/tag/windows-server/'>Windows Server</a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } --><strong>StarWind</strong>(Based on<strong> iSCSI</strong>) is used to create a <strong>shared storage</strong> area on a <strong>Windows Server</strong> for use with <strong>clustered</strong> environment.</p>
<p>Download the software from <strong>http://www.starwindsoftware.com</strong> and complete the installation steps. Then,</p>
<ol>
<li>Start &gt; All Programs &gt; <strong>StarWind Software</strong> &gt; StarWind</li>
<li>Click on Connect, provide the username and password.</li>
<li>Right click on Targets, you will get options to Add a new target.</li>
<li>Enable the correct device type.</li>
<li>Select the method to add a device (In case the device is already created, use: Mount Existing Device) else, create A Virtual Device.</li>
<li>Specify the disk location and size.</li>
<li>Specify Image File device parameters (Make sure you enable Allow Multiple Concurrent iSCSI Connections for a cluster environment).</li>
<li>Choose a target name and complete the installation.</li>
</ol>
<blockquote><p><strong>iSCSI</strong>: Internet Small Computer Interface for linking data storage facilities</p>
<p><strong>Uses port</strong> : 860 and 3260</p></blockquote>
<p>The <strong>Microsoft iSCSI Initiator Service</strong> has to be started by running <strong>services.msc</strong>, where you’ll get the services listed over. To access a virtual disk,</p>
<ol>
<li>Start &gt; Administrative tools &gt; iSCSI Initiator</li>
<li>iSCSI Initiator properties will open, then go to Discovery &gt; Click on Discovery Portal &gt; Add the IP or the domain and check the port (default port is 3260)</li>
<li>Once IP/domain is added, goto Favourite Targets and refresh to get the list of targets.</li>
<li>Under the Targets option you can connect/disconnect a particular virtual disk.</li>
</ol>
<p>Once this is done, the virtual disks will be available under Server</p>
<blockquote><p>Manager &gt; Storage &gt; Disk Management.</p></blockquote>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/how-to-configure-starwind/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/how-to-configure-starwind/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Share point 2007: Basic farm Installation</title>
		<link>http://www.instacarma.com/blog/technical/share-point-2007-basic-farm-installation/</link>
		<comments>http://www.instacarma.com/blog/technical/share-point-2007-basic-farm-installation/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 17:57:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Back-end database server]]></category>
		<category><![CDATA[Basic farm Installation]]></category>
		<category><![CDATA[configure IIS]]></category>
		<category><![CDATA[Front-end Web server]]></category>
		<category><![CDATA[Hardware requirements]]></category>
		<category><![CDATA[IIS 6.0]]></category>
		<category><![CDATA[IIS 7.0]]></category>
		<category><![CDATA[Internet Information Services]]></category>
		<category><![CDATA[Microsoft .Net Framework 3.5]]></category>
		<category><![CDATA[Microsoft SQL Server 2000]]></category>
		<category><![CDATA[Microsoft SQL Server 2005]]></category>
		<category><![CDATA[Microsoft SQL Server 2008]]></category>
		<category><![CDATA[Microsoft Windows Server 2003]]></category>
		<category><![CDATA[NTLM]]></category>
		<category><![CDATA[Office SharePoint Server]]></category>
		<category><![CDATA[Officeserver.exe]]></category>
		<category><![CDATA[Service Pack 3]]></category>
		<category><![CDATA[Share point 2007]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint Installation]]></category>
		<category><![CDATA[SharePoint Server 2007]]></category>
		<category><![CDATA[SP3]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1295</guid>
		<description><![CDATA[Filed under: Back-end database server, Basic farm Installation, configure IIS, Front-end Web server, Hardware requirements, IIS 6.0, IIS 7.0, Internet Information Services, Microsoft .Net Framework 3.5, Microsoft SQL Server 2000, Microsoft SQL Server 2005, Microsoft SQL Server 2008, Microsoft Windows Server 2003, NTLM, Office SharePoint Server, Officeserver.exe, Service Pack 3, Share point 2007, SharePoint, SharePoint [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/back-end-database-server/'>Back-end database server</a>, <a href='http://www.instacarma.com/blog/tag/basic-farm-installation/'>Basic farm Installation</a>, <a href='http://www.instacarma.com/blog/tag/configure-iis/'>configure IIS</a>, <a href='http://www.instacarma.com/blog/tag/front-end-web-server/'>Front-end Web server</a>, <a href='http://www.instacarma.com/blog/tag/hardware-requirements/'>Hardware requirements</a>, <a href='http://www.instacarma.com/blog/tag/iis-6-0/'>IIS 6.0</a>, <a href='http://www.instacarma.com/blog/tag/iis-7-0/'>IIS 7.0</a>, <a href='http://www.instacarma.com/blog/tag/internet-information-services/'>Internet Information Services</a>, <a href='http://www.instacarma.com/blog/tag/microsoft-net-framework-3-5/'>Microsoft .Net Framework 3.5</a>, <a href='http://www.instacarma.com/blog/tag/microsoft-sql-server-2000/'>Microsoft SQL Server 2000</a>, <a href='http://www.instacarma.com/blog/tag/microsoft-sql-server-2005/'>Microsoft SQL Server 2005</a>, <a href='http://www.instacarma.com/blog/tag/microsoft-sql-server-2008/'>Microsoft SQL Server 2008</a>, <a href='http://www.instacarma.com/blog/tag/microsoft-windows-server-2003/'>Microsoft Windows Server 2003</a>, <a href='http://www.instacarma.com/blog/tag/ntlm/'>NTLM</a>, <a href='http://www.instacarma.com/blog/tag/office-sharepoint-server/'>Office SharePoint Server</a>, <a href='http://www.instacarma.com/blog/tag/officeserver-exe/'>Officeserver.exe</a>, <a href='http://www.instacarma.com/blog/tag/service-pack-3/'>Service Pack 3</a>, <a href='http://www.instacarma.com/blog/tag/share-point-2007/'>Share point 2007</a>, <a href='http://www.instacarma.com/blog/tag/sharepoint/'>SharePoint</a>, <a href='http://www.instacarma.com/blog/tag/sharepoint-installation/'>SharePoint Installation</a>, <a href='http://www.instacarma.com/blog/tag/sharepoint-server-2007/'>SharePoint Server 2007</a>, <a href='http://www.instacarma.com/blog/tag/sp3/'>SP3</a>, <a href='http://www.instacarma.com/blog/tag/windows-server-2008/'>Windows Server 2008</a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } --></p>
<p lang="en"><span style="font-size: x-small;"><em><strong>Hardware requirements</strong></em></span></p>
<ul>
<li><span style="font-size: x-small;">Front-end Web server and application server computers: a dual-processor computer with processor clock speeds of 2.5-gigahertz (GHz) or higher and a minimum of 2 gigabytes (GB) of RAM.</span></li>
<li><span style="font-size: x-small;">Back-end database server: a dual-processor computer with processor clock speeds of 2.0 GHz or higher and a minimum of 2 GB of RAM.</span></li>
</ul>
<p lang="en"><span style="font-size: x-small;"><em><strong>Software requirements Web and Application Server</strong></em></span></p>
<ul>
<li><span style="font-size: x-small;"><strong>Microsoft Windows Server 2003</strong> (Standard, Enterprise, Datacenter, or Web Edition) with Service Pack 1 (SP1)</span></li>
<li><strong><span style="font-size: x-small;">Microsoft .Net Framework 3.5</span></strong></li>
<li><span style="font-size: x-small;">The Web server and application server computers must be configured as Web servers running <strong>Microsoft Internet Information Services</strong> (IIS) in IIS 6.0 / IIS 7.0</span></li>
</ul>
<p lang="en"><span style="font-size: x-small;"><em><strong>Back-End Database Server</strong></em></span></p>
<p lang="en"><span style="font-size: x-small;">The back-end database server computer must be running <strong>Microsoft SQL Server 2008</strong> or running <strong>Microsoft SQL Server 2005</strong> or <strong>Microsoft SQL Server 2000</strong> with Service Pack 3 (SP3) or later</span></p>
<p lang="en"><span style="font-size: x-small;"><em><strong>Note :</strong></em> Install standalone sql server or clustered sql server 2008/2005 on a separate machine. It is required during the sharepoint installation.</span></p>
<p lang="en"><span style="font-size: x-small;"><em><strong>Security accounts required for the Sharepoint installation</strong></em></span></p>
<p lang="en"><span style="font-size: x-small;">To install Office<strong> SharePoint Server 2007</strong> in a server farm environment, at-least 2 accounts are required:</span></p>
<p lang="en"><span style="font-size: x-small;">A user account that you can use to install Office SharePoint Server 2007 and run the SharePoint Products and Technologies Configuration Wizard. This account must be:</span></p>
<ul>
<li><span style="font-size: x-small;">A domain user account.</span></li>
<li><span style="font-size: x-small;">A member of the Administrators group on each of your front-end servers.</span></li>
<li><span style="font-size: x-small;">A member of the SQL Server Logins, which grants login access to your SQL Server instance.</span></li>
<li><span style="font-size: x-small;">A member of the SQL Server Database Creator server role, which grants permission to create and alter databases.</span></li>
<li><span style="font-size: x-small;">A member of the SQL Server Security Administrators server role, which grants permission to manage server logins.</span></li>
</ul>
<p lang="en"><span style="font-size: x-small;"><em><strong>Install and configure IIS</strong></em></span></p>
<p lang="en"><span style="font-size: x-small;"><strong>IIS</strong> is not installed or enabled by default in <strong>Windows Server 2008</strong>. To make your server a Web server, you must install and enable IIS.</span></p>
<ul>
<li><span style="font-size: x-small;">Click Start, point to All Programs, point to Administrative Tools, and then click Configure Your Server Wizard.</span></li>
<li><span style="font-size: x-small;">On the Welcome to the Configure Your Server Wizard page, click Next.</span></li>
<li><span style="font-size: x-small;">On the Preliminary Steps page, click Next.</span></li>
<li><span style="font-size: x-small;">On the Server Role page, click Application server (IIS, ASP.NET), and then click Next.</span></li>
<li><span style="font-size: x-small;">On the Application Server Options page, click Next.</span></li>
<li><span style="font-size: x-small;">On the Summary of Selections page, click Next.</span></li>
<li><span style="font-size: x-small;">Click Finish.</span></li>
</ul>
<p lang="en"><span style="font-size: x-small;"><em><strong>Install and configure 2007 Office SharePoint Server</strong></em></span></p>
<p lang="en"><span style="font-size: x-small;">It is recommended that you install and configure Office <strong>SharePoint Server 2007</strong> on all of your front-end servers before you configure Office SharePoint Server 2007 services and create sites. If you want to build a minimal server farm configuration, and incrementally add front-end servers to expand the farm, you can install and configure Office SharePoint Server 2007 on a single front-end server and configure the front-end server as both a Web server and an application server. Regardless how many front-end servers you have in your server farm, you must have SQL Server running on at least one back-end database server before you install Office SharePoint Server 2007 on your front-end servers.</span></p>
<p lang="en"><span style="font-size: x-small;"><em><strong>Run 2007 Office SharePoint Server Setup</strong></em></span></p>
<ol>
<li><span style="font-size: x-small;">Run <strong>Officeserver.exe</strong>, on one of your Web server computers.</span></li>
<li><span style="font-size: x-small;">On the Enter your Product Key page, enter your product key and click Continue.</span></li>
<li><span style="font-size: x-small;">On the Read the Microsoft Software License Terms page, review the terms, select the I accept the terms of this agreement check box, and then click Continue.</span></li>
<li><span style="font-size: x-small;">On the Choose the installation you want page, click Advanced.</span></li>
<li><span style="font-size: x-small;">click Complete, and then click Install Now.( that will act as an application server and Web server)</span></li>
<li><span style="font-size: x-small;">When Setup finishes, a dialog box appears telling you that you must complete the configuration of your server. Make sure that the Run the SharePoint Products and Technologies Configuration Wizard now check box is selected.</span></li>
</ol>
<p lang="en"><span style="font-size: x-small;"><em><strong>Run the SharePoint Products and Technologies Configuration Wizard</strong></em></span></p>
<p lang="en"><span style="font-size: x-small;"> After Setup finishes, you can use the SharePoint Products and Technologies Configuration Wizard to configure Office SharePoint Server 2007. The SharePoint Products and Technologies Configuration Wizard automates several configuration tasks, including: installing and configuring the configuration database, installing Office SharePoint Server 2007 services, and installing SharePoint Central Administration. Use the following instructions to run the SharePoint Products and Technologies Configuration Wizard.</span></p>
<ol>
<li><span style="font-size: x-small;">On the Welcome to SharePoint Products and Technologies page, click Next.</span></li>
<li><span style="font-size: x-small;">Click Yes in the warning dialog box that appears notifying you that some services might need to be restarted during configuration.</span></li>
<li><span style="font-size: x-small;">On the Connect to a server farm page, select  the following option</span></li>
<li><span style="font-size: x-small;">If this is the first front-end server that you are configuring in your server farm, click No, I want to create a new server farm, and then click Next.</span></li>
<li><span style="font-size: x-small;">On the Specify Configuration Database Settings dialog box, in Database server, type the name of the computer that is running SQL Server, select  the following option</span></li>
<li><span style="font-size: x-small;">If this is the first server that you are configuring in your server farm, type a name for your configuration database in Database name, or use the default database name.</span></li>
<li><span style="font-size: x-small;">In User name , type the user name of the account used to connect to the computer running SQL Server (be sure to type the user name in the format DOMAIN\username).</span></li>
<li><span style="font-size: x-small;">In Password, type the user&#8217;s password, and click Next.</span></li>
<li><span style="font-size: x-small;">On the Configure SharePoint Central Administration Web Application page, select the Specify port number check box and type a port number if you want the SharePoint Central Administration Web application to use a specific port, or leave the Specify port number check box unchecked if you do not care which port number the SharePoint Central Administration Web application uses. </span></li>
<li><span style="font-size: x-small;">On the Configure SharePoint Central Administration Web Application dialog box, select NTLM authentication (the default), click Next.</span></li>
<li><span style="font-size: x-small;">On the Completing the SharePoint Products and Technologies Wizard page, click Next.</span></li>
<li><span style="font-size: x-small;">On the Configuration Successful page, click Finish.</span></li>
</ol>
<p lang="en"><span style="font-size: x-small;"><em><strong>Adding nodes to the existing server farm</strong></em></span></p>
<p lang="en"><span style="font-size: x-small;">It is very similar to our base installation. we should install share point on the machines which you want to join to the server farm. </span></p>
<ol>
<li><span style="font-size: x-small;">On the Welcome to SharePoint Products and Technologies page, click Next.</span></li>
<li><span style="font-size: x-small;">Click Yes in the warning dialog box that appears notifying you that some services might need to be restarted during configuration.</span></li>
<li><span style="font-size: x-small;">On the Connect to a server farm page, select  the following option</span></li>
<li><span style="font-size: x-small;">If you have already configured your first server in your server farm, click Yes, I want to connect to an existing server farm, and then click Next.</span></li>
<li><span style="font-size: x-small;">On the Specify Configuration Database Settings dialog box, in Database server, type the name of the computer that is running SQL Server, select  the following option</span></li>
<li><span style="font-size: x-small;">If this is the first server that you are configuring in your server farm, type a name for your configuration database in Database name, or use the default database name.</span></li>
<li><span style="font-size: x-small;">In User name , type the user name of the account used to connect to the computer running SQL Server (be sure to type the user name in the format DOMAIN\username).</span></li>
<li><span style="font-size: x-small;">In Password, type the user&#8217;s password, and click Next.</span></li>
<li><span style="font-size: x-small;">On the Configure SharePoint Central Administration Web Application page, select the Specify port number check box and type a port number if you want the SharePoint Central Administration Web application to use a specific port, or leave the Specify port number check box unchecked if you do not care which port number the SharePoint Central Administration Web application uses. </span></li>
<li><span style="font-size: x-small;">On the Configure SharePoint Central Administration Web Application dialog box, select NTLM authentication (the default), click Next.</span></li>
<li><span style="font-size: x-small;">On the Completing the SharePoint Products and Technologies Wizard page, click Next.</span></li>
<li><span style="font-size: x-small;">On the Configuration Successful page, click Finish.</span></li>
</ol>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/share-point-2007-basic-farm-installation/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/share-point-2007-basic-farm-installation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setting up a Private Cloud using Ubuntu 10.04</title>
		<link>http://www.instacarma.com/blog/technical/setting-up-a-private-cloud-using-ubuntu-10-04/</link>
		<comments>http://www.instacarma.com/blog/technical/setting-up-a-private-cloud-using-ubuntu-10-04/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 18:00:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles and tutorials]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[/etc/eucalyptus/eucalyptus.conf]]></category>
		<category><![CDATA[AMI]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[Cloud Controller]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[Cluster Controller]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[euca]]></category>
		<category><![CDATA[euca2ools]]></category>
		<category><![CDATA[Eucalyptus]]></category>
		<category><![CDATA[eucalyptus-nc]]></category>
		<category><![CDATA[Node Controller]]></category>
		<category><![CDATA[Setting up a Private Cloud]]></category>
		<category><![CDATA[Ubuntu 10.04]]></category>
		<category><![CDATA[Ubuntu Cluster]]></category>
		<category><![CDATA[VMs]]></category>
		<category><![CDATA[VNET_BRIDGE]]></category>
		<category><![CDATA[walrus]]></category>
		<category><![CDATA[X.509]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://instacarma.com/blog/?p=1263</guid>
		<description><![CDATA[Filed under: /etc/eucalyptus/eucalyptus.conf, AMI, API, cloud, cloud computing, Cloud Controller, cluster, Cluster Controller, EC2, euca, euca2ools, Eucalyptus, eucalyptus-nc, Node Controller, Setting up a Private Cloud, Ubuntu 10.04, Ubuntu Cluster, VMs, VNET_BRIDGE, walrus, X.509, Xen If we can get the Ubuntu 10.04 latest server edition, this can be done easily. As it comes with an option [...]]]></description>
			<content:encoded><![CDATA[<p>Filed under: <a href='http://www.instacarma.com/blog/tag/etceucalyptuseucalyptus-conf/'>/etc/eucalyptus/eucalyptus.conf</a>, <a href='http://www.instacarma.com/blog/tag/ami/'>AMI</a>, <a href='http://www.instacarma.com/blog/tag/api/'>API</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/cloud-controller/'>Cloud Controller</a>, <a href='http://www.instacarma.com/blog/tag/cluster/'>cluster</a>, <a href='http://www.instacarma.com/blog/tag/cluster-controller/'>Cluster Controller</a>, <a href='http://www.instacarma.com/blog/tag/ec2/'>EC2</a>, <a href='http://www.instacarma.com/blog/tag/euca/'>euca</a>, <a href='http://www.instacarma.com/blog/tag/euca2ools/'>euca2ools</a>, <a href='http://www.instacarma.com/blog/tag/eucalyptus/'>Eucalyptus</a>, <a href='http://www.instacarma.com/blog/tag/eucalyptus-nc/'>eucalyptus-nc</a>, <a href='http://www.instacarma.com/blog/tag/node-controller/'>Node Controller</a>, <a href='http://www.instacarma.com/blog/tag/setting-up-a-private-cloud/'>Setting up a Private Cloud</a>, <a href='http://www.instacarma.com/blog/tag/ubuntu-10-04/'>Ubuntu 10.04</a>, <a href='http://www.instacarma.com/blog/tag/ubuntu-cluster/'>Ubuntu Cluster</a>, <a href='http://www.instacarma.com/blog/tag/vms/'>VMs</a>, <a href='http://www.instacarma.com/blog/tag/vnet_bridge/'>VNET_BRIDGE</a>, <a href='http://www.instacarma.com/blog/tag/walrus/'>walrus</a>, <a href='http://www.instacarma.com/blog/tag/x-509/'>X.509</a>, <a href='http://www.instacarma.com/blog/tag/xen/'>Xen</a></p>
<p><!-- p, li { white-space: pre-wrap; } --><!--StartFragment-->If we can get the <strong>Ubuntu 10.04</strong> latest server edition, this can be done easily. As it comes with an option to select whether we need to setup a normal server or <strong>Ubuntu Cluster</strong>. On the main cluster controller we can select the cluster option and also need to specify the IP range needed for the nodes. So, once the cluster server is setup, while installing on nodes, it automatically detects the node and necessary ssh-key authentication also will be done. We just need to give which IP from the range has to be used for the node.</p>
<p>Before starting would like to mention that, <strong>Eucalyptus</strong> has 3 major packages.</p>
<p><strong>Cluster Controller</strong>:  provides support for the virtual network overlay</p>
<p><strong>Cloud Controller</strong>: includes the front-end services and the Walrus storage system.</p>
<p><strong>Node Controller</strong>: that interacts with XEN to manage individual VMs.</p>
<p>While doing the setup from package installation:</p>
<p>Cloud/Cluster/Storage/Walrus Front End Server(s)</p>
<p>1. Need to install Ubuntu server 10.04.</p>
<p>2. Necessary packages has to be installed</p>
<blockquote><p>sudo apt-get install eucalyptus-cloud eucalyptus-cc eucalyptus-walrus eucalyptus-sc</p></blockquote>
<p>While installting these packages we would be getting options to define the IP range and to specify the server&#8217;s hostname.</p>
<p>3. On the nodes also we need to install the server and update the archives.</p>
<p>4. Necessary packages has to be installed.</p>
<blockquote><p>sudo apt-get install eucalyptus-nc</p></blockquote>
<p>5. Next we need to set the primary interface of the node as a bridge. While creating virtual network interfaces, the node controller will add it to this bridge. Usually a bridge can be set by making below given modifications in the /etc/network/interfaces file.</p>
<blockquote><p>
auto br0<br />
iface br0 inet dhcp<br />
bridge_ports eth0<br />
bridge_fd 9<br />
bridge_hello 2<br />
bridge_maxage 12<br />
bridge_stp off</p></blockquote>
<p>Once this is set need to restart the networking daemon.</p>
<p>6. In the /etc/eucalyptus/eucalyptus.conf VNET_BRIDGE has to be changed to $bridge. Then restart the node controller using</p>
<blockquote><p>
/etc/init.d/eucalyptus-nc restart</p></blockquote>
<p>7. Now, the cloud controller and the all other controller like node, storage and warlus controller should be able to communicate each other via ssh keys. This has to be enabled. While installing cluster using 10.04 UEC cd, ssh-key authentication is done automatically.</p>
<p>To enable ssh keys, on the target controller (node, storage or warlus)</p>
<p>-&gt; temporarily set a password for the eucalyptus user</p>
<blockquote><p>
sudo passwd eucalyptus</p></blockquote>
<p>-&gt; Then from the cloud controller</p>
<blockquote><p>
sudo -u eucalyptus ssh-copy-id -i ~eucalyptus/.ssh/id_rsa.pub eucalyptus@&lt;IP_OF_NODE&gt;</p></blockquote>
<p>-&gt; Then we can remove the temporary password.</p>
<blockquote><p>
sudo passwd -d eucalyptus</p></blockquote>
<p>8. Next step is to define controller&#8217;s IP Addresses in the eucalyptus configuration file and then register</p>
<p>In /etc/eucalyptus/eucalyptus.conf file on the cluster controller</p>
<p>Define the shell variable CC_NAME in /etc/eucalyptus/eucalyptus-cc.conf</p>
<p>Define the shell variable CC_IP_ADDR in /etc/eucalyptus/eucalyptus-ipaddr.conf, as a space separated list of one or more IP addresses.</p>
<p>Define the shell variable WALRUS_IP_ADDR in /etc/eucalyptus/eucalyptus-ipaddr.conf, as a single IP address.</p>
<p>Define the shell variable SC_IP_ADDR in /etc/eucalyptus/eucalyptus-ipaddr.conf, as a space separated list of one or more IP addresses.</p>
<p>9. Now for each controller, we need to start the publication</p>
<blockquote><p>sudo start eucalyptus-walrus-publication (Warlus controller)</p>
<p>sudo start eucalyptus-sc-publication (Storage controller)</p>
<p>sudo start eucalyptus-cc-publication (Cluster controller)</p>
<p>sudo start eucalyptus-nc-publication (Node controller)</p></blockquote>
<p>10. Need to start the listeners on the <strong>cluster</strong> and <strong>cloud controllers</strong></p>
<blockquote><p>sudo start uec-component-listener</p></blockquote>
<p>The regitration process can be verified by checking the log file<strong> /var/log/eucalyptus/registration.log</strong></p>
<p>11. Now since the cloud is setup and the controllers have started communicating, the users of the cloud would need to donwload thier login credentials.</p>
<p>From your web browser access the URL: https://&lt;cloud-controller-ip-address&gt;:8443/</p>
<p>For the first time, username &#8216;admin&#8217; and password &#8216;admin&#8217; can be used(you will be prompted to change your password).</p>
<p>Then follow the on-screen instructions to update the admin password and email address.</p>
<p>Once the first time configuration process is completed, click the &#8216;credentials&#8217; tab located in the top-left portion of the screen.</p>
<p>Click the &#8216;Download Credentials&#8217; button to get your certificates</p>
<p>Save them to ~/.euca</p>
<p>Unzip the downloaded zipfile into a safe location (~/.euca) unzip -d ~/.euca mycreds.zip</p>
<p>12. Next need to setup <strong>EC2 API</strong> and <strong>AMI</strong> tools on your server using X.509 certificates.</p>
<p>For this on the cloud controller sudo apt-get install <strong>euca2ools</strong></p>
<p>13. Next step is to install necessary images on the nodes. There will be few default stored images, we can either use it or else usually an image according to the needs would be created and installed.</p>
<p>The cloud is setup and applications are deployed to it, we would need to make changes accordingly.</p>
<p>The main advantage of <strong>cloud computing</strong> is that both small and medium sized businesses can instantly obtain the benefits of the enormous infrastructure without having to implement and administer it directly. This also permits accessibility to multiple data centers anywhere on the globe. It also means that as the need for resources increases, companies can add additional service as and when needed from the cloud computing vendor.</p>
<p><!--EndFragment--></p>
<div class="alignright"><div class="g-plusone" data-href="http://www.instacarma.com/blog/technical/setting-up-a-private-cloud-using-ubuntu-10-04/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.instacarma.com/blog/technical/setting-up-a-private-cloud-using-ubuntu-10-04/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.902 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-05-07 20:11:57 -->
<!-- Compression = gzip -->
