<?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>inVURTED.com &#187; Tutorials</title>
	<atom:link href="http://invurted.com/category/tutes/feed/" rel="self" type="application/rss+xml" />
	<link>http://invurted.com</link>
	<description>With great virtualisation comes great responsibility!</description>
	<lastBuildDate>Fri, 27 Jan 2012 04:43:00 +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>[TUTORIAL] Windows 2008 testing environment using Vmware Player part 2</title>
		<link>http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player-part-2/</link>
		<comments>http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player-part-2/#comments</comments>
		<pubDate>Fri, 27 Jan 2012 03:33:43 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows 2008]]></category>

		<guid isPermaLink="false">http://invurted.com/?p=425</guid>
		<description><![CDATA[In Part 1 we installed Vmware Player and installed Windows 2008 R2 Enterprise into a virtual machine. In this second part, we&#8217;ll look at setting up another virtual machine and deploying our first domain controller for the testing environment. We could definitely go back and setup another virtual machine using the the same process as [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>In <a href="http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player/">Part 1</a> we installed Vmware Player and installed Windows 2008 R2 Enterprise into a virtual machine. In this second part, we&#8217;ll look at setting up another virtual machine and deploying our first domain controller for the testing environment.<span id="more-425"></span></p>
<p>We could definitely go back and setup another virtual machine using the <a href="http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player/">the same process as before</a>. However, this takes too long; the least of which we have to wait for Windows 2008 R2 to re-install.</p>
<p>An easier option is to copy the existing virtual machine files to a new directory and paste it as a new virtual machine. </p>
<ol>
<li>Right click on our perviously built virtual machine (inv-dc01), select <em>Copy</em> and then right click and <em>Paste</em> into the same directory. This will create two copies of the virtual machine, <em>inv-dc01</em> (the original) and <em>inv-dc01 &#8211; Copy</em>. This process can be repeated as many times as we like until the local drive is full.</p>
<p><a href="http://invurted.com/wp-content/uploads/tutorial0201.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0201-279x300.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="279" height="300" class="alignnone size-medium wp-image-428" /></a></p>
<p>For the moment, all that is required is the two copies of the virtual machine.</li>
<li>Rename <em>inv-dc01 &#8211; Copy</em> to <em>_TMPL-inv-dc01</em>. Now we have a TEMPLATE version of a virtual machine with Windows 2008 R2 installed and can continue to take copies of it as needed.</li>
</ol>
<p>Onto setting up our domain controller.</p>
<ol>
<li>Open the <em>Vmware virtual machine configuration</em> file by double clicking or right click and open the <em>Vmware virtual machine configuration</em> file with Vmware Player.<br />
<a href="http://invurted.com/wp-content/uploads/tutorial0202.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0202-300x109.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="300" height="109" class="alignnone size-medium wp-image-430" /></a></li>
<li>Once the operating system has started, use <em>CTRL+ALT+INSERT</em> to get to the login screen.<br />
<a href="http://invurted.com/wp-content/uploads/tutorial0203.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0203-300x263.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="300" height="263" class="alignnone size-medium wp-image-431" /></a><br />
At this point login as the user we created or login as Administrator. If you login as Administrator, Windows will prompt you to change the password. The Administrator password will also have to meet complexity requirements ie. uppercase, lowercase, letter, number and special characters.</li>
<li>Next up is the all important Vmware Tools. VMware Tools package adds drivers and utilities to improve the graphical performance for different guest operating systems, including mouse tracking. The package also enables some integration between the guest and host systems, including shared folders, plug-and-play devices, clock synchronisation, and cutting-and-pasting across environments.<br />
<a href="http://invurted.com/wp-content/uploads/tutorial0204.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0204-300x263.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="300" height="263" class="alignnone size-medium wp-image-432" /></a><br />
Click &#8220;Install Tools&#8221; in the bottom bar of the window to start the install process.
</li>
<li>You may want to close this window for the moment to allow the Vmware Tools installer to run.<a href="http://invurted.com/wp-content/uploads/tutorial0205.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0205-300x263.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="300" height="263" class="alignnone size-medium wp-image-433" /></a>
</li>
<li>If this dialog fails to appear, open Windows Explorer, browse to the CD drive of the virtual machine and run <em>setup.exe</em> manually.<br />
<a href="http://invurted.com/wp-content/uploads/tutorial0206.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0206-300x263.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="300" height="263" class="alignnone size-medium wp-image-434" /></a><br />
Install Vmware Tools using the default settings; there is no real benefit to be gained from changing the default options in our scenario.<br />
<a href="http://invurted.com/wp-content/uploads/tutorial0207.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0207-300x243.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="300" height="243" class="alignnone size-medium wp-image-435" /></a><br />
Once the installer has completed, reboot the virtual machine and then log back in when it has restarted.</li>
</ol>
<p>Once the desktop is initialised, there are a couple of configurations required before we can create the domain controller. Primarily, the IP address and the Windows machine name.</p>
<ol>
<li>The domain controller ABSOLUTLEY has to have a statically assigned IP address, and the easiest (and most fun!) way to do this is set it via the command line:</p>
<pre>netsh interface ip show config</pre>
<p><a href="http://invurted.com/wp-content/uploads/tutorial0208.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0208-300x239.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="300" height="239" class="alignnone size-medium wp-image-450" /></a><br />
This will show all the adapters currently available to the virtual machine. The interface that we are interested in is <em>Local Area Connection</em>. Once we have establised that it is available and has an IP address allocated from DHCP, it needs to be changed to a static IP address.</p>
<pre>netsh interface ip set address name="Local Area Connection" static 192.168.0.10 255.255.255.0 192.168.0.1 1</pre>
<p>This set the static IP of 192.168.0.10, subnet mask of 255.255.255.0 and default gateway (which we don&#8217;t need for the moment) of 192.168.0.1. For the purposes of completeness, it&#8217;s best to put the gateway in.<br />
DNS is still required, but configuring the domain controller will automatically install this service on the domain controller.<br />
Running <code>ipconfig</code> from the command line should verify the configuration has been applied.</li>
<li>Finally we&#8217;re at the point of installing the domain controller! From the command prompt, run <code>dcpromo</code> to start the install.<br />
<a href="http://invurted.com/wp-content/uploads/tutorial0209.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0209-300x239.jpg" alt="vmware player windows 2008 tutorial" title="vmware player windows 2008 tutorial" width="300" height="239" class="alignnone size-medium wp-image-452" /></a></li>
<li>From here it is a simple matter of following the prompts.
<ul>
<li>At the <code>Active Directory Domain Services Installation Wizard</code> make sure <em>Use advanced mode installation</em> is NOT selected and press <em>Next</em>.</li>
<li>The next window is a warning about incompatibilites with Windows NT 4.0. Just press <em>Next</em>.</li>
<li><code>Choose a Deployment Configuration</code> &#8211; Check the <em>Create a new domain in a new forest</em> and press <em>Next</em>.</li>
<li><code>Name the Forest Root Domain</code> &#8211; In the <em>FQDN of the forest root domain</em> enter the name of your network. For our purposes, any name will do. <em>invurted.local</em> is acceptable. Press <em>Next</em>.</li>
<li><code>Set forest functional level</code> &#8211; Select <em>Windows 2008 R2</em> from the drop down list. This will mean that all domain controllers have to have at least Windows 2008 R2 as their operating systems. Press <em>Next</em>.</li>
<li><code>Additional Domain Controllers</code> &#8211; Make sure the <em>DNS Server</em> option is ticked and press <em>Next</em>. Select <em>Yes</em> for any dialog boxes that appear.</li>
<li><code>Location for Database, Log Files and SYSLOG</code> &#8211; Accept the default locations and press <em>Next</em>.</li>
<li><code>Directory Services Restore Mode Password</code> &#8211; Enter the password of P@ssw0rd in both fields and press <em>Next</em>.</li>
<li><code>Summary</code> &#8211; Verify your settings and press <em>Next</em>.</li>
<li><code>Active Directory Domain Services Installation Wizard</code>Active Directory will now start installing. At the completion, reboot the virtual machine. If everything is successful, upon reboot, your domain controller setup is complete.</li>
</ul>
</li>
</ol>
<p>Upon successful restart and login using the Administrator username and password, we want to look at our new domain. From the start menu, select Administrative Tools and launch the Active Directory Users and Computer program. This will allow us to create any users, groups and Organisation Units that are required.</p>
<p>I almost forgot! We need to rename our domain controller. In previous versions of Windows this was painful, especially as the virtual machine is a domain controller. In Windows 2008 there is more tolerance to name changes. It&#8217;s not the sort of thing that I would want to do regularly, but is possible.<br />
In the start menu, right click on Computer and select Properties.<br />
<a href="http://invurted.com/wp-content/uploads/tutorial0210.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0210-300x239.jpg" alt="" title="tutorial0210" width="300" height="239" class="alignnone size-medium wp-image-458" /></a><br />
Chose Change settings and accept any warnings that appear on screen.</p>
<p>In the Sytem Properties, select Change and, again, accept any warning that appear.<br />
<a href="http://invurted.com/wp-content/uploads/tutorial0211.jpg"><img src="http://invurted.com/wp-content/uploads/tutorial0211-300x239.jpg" alt="" title="tutorial0211" width="300" height="239" class="alignnone size-medium wp-image-459" /></a><br />
In the computer name field enter the new name for the computer. For our purposes, inv-dc01 will do fine. Press OK twice and then close the system properties. At this point, it is a good idea to restart the machine again.</p>
<p>That’s Part 2 complete. In Part 3 we’ll look at configuring the virtual machine as a domain member server.</p>
<p>As ever, if you have any questions, please email me (contactme [at] invurted dot com).</p>
<div class="shr-publisher-425"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-windows-2008-testing-environment-using-vmware-player-part-2%2F' data-shr_title='%5BTUTORIAL%5D+Windows+2008+testing+environment+using+Vmware+Player+part+2'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-windows-2008-testing-environment-using-vmware-player-part-2%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-windows-2008-testing-environment-using-vmware-player-part-2%2F' data-shr_title='%5BTUTORIAL%5D+Windows+2008+testing+environment+using+Vmware+Player+part+2'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[TUTORIAL] Windows 2008 testing environment using Vmware Player part 1</title>
		<link>http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player/</link>
		<comments>http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player/#comments</comments>
		<pubDate>Fri, 27 Jan 2012 01:22:47 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows 2008]]></category>

		<guid isPermaLink="false">http://invurted.com/?p=401</guid>
		<description><![CDATA[Following a number of requests, I have written a tutorial on setting up a Windows 2008 testing environment. Part 1 looks at installing Vmware Player and setting up the first virtual machine ASSUMPTIONS: A supported operating system is used. Vmware Player supports most Microsoft operating systems as well as a number of Linux distributions. For [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Following a number of requests, I have written a tutorial on setting up a Windows 2008 testing environment. Part 1 looks at installing Vmware Player and setting up the first virtual machine<span id="more-401"></span><br />
ASSUMPTIONS: </p>
<ul>
<li>A supported operating system is used. Vmware Player supports most Microsoft operating systems as well as a number of Linux distributions. For the purposes of this tutorial, Windows 7 is the operating system used as the base.</li>
<li>The account on the Windows 7 base operating system is either a member of the Local Administrators group or can elevate priveledges as required.</li>
<li>At least 50 &#8211; 100 GB of storage space is available for all the virtual machines. It&#8217;s better to err on the side of caution.</li>
<li>Vmware Player is the chosen hypervisor. Vmware Workstation could as easily be used if available. We use Vmware Player as the hypervisor due to it&#8217;s cross platform compatibility and its free licensing.</li>
<li>We are only doing the setup of the first virtual machine. Further configuration will be done in subsequent tutorials.</li>
</ul>
<p>On to the fun bits! As with most hypervisor technologies, the result of what we are doing here is allowing me to run two (or more) instances of operating systems on the one hardware platform. Vmware Player is our chosen hypervisor because it removes a lot of the guess work from deploying virtual machines. Vmware Workstation definitely gives us more granular control over the final conifguration. For our purposes, the default RAM, CPU and storage configurations are more than acceptable.</p>
<ol>
<li>Install Vmware player following all the default configuration options. There is little need to change the installation path etc. unless absolutley necessary.</li>
<li>Once installed, run the program and select &#8220;Create new Virtual Machines&#8221;.<br />
<a href="http://invurted.com/wp-content/uploads/inv01.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv01-300x182.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="182" class="alignnone size-medium wp-image-403" /></a><br />
This will start the wizard driven configuration of the new virtual machine that we will use as the basis for the testing environment.</li>
<li>One of the first configuration options is the installation media. We&#8217;re focussing on the first two options; providing either a CDROM or an ISO file to install from. It&#8217;s possible to network boot a virtual machine, but that&#8217;s something for later.<a href="http://invurted.com/wp-content/uploads/inv02.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv02-300x255.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="255" class="alignnone size-medium wp-image-405" /></a><br />
If we load a CDROM into the drive, Vmware Player should recognise the operating system. Similarly with an ISO file.<br />
<a href="http://invurted.com/wp-content/uploads/inv03.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv03-300x272.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="272" class="alignnone size-medium wp-image-406" /></a></li>
<li>Next up, the all important licence key. Windows 2008 R2, Enterprise will install without a key being provided. It will install in Evaluation Mode giving us sixty days to activate with a valid licence. Again, for purely testing purposes, we can ignore the licence key and come back to it later if we need to. The only configuration to be aware of is the version of Windows 2008 to install. The CDROM (or ISO file, in this case) has a number of different versions available. Make sure <em>Windows 2008 R2 Enterprise</em> is the selected option.<br />
<a href="http://invurted.com/wp-content/uploads/inv04.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv04-300x272.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="272" class="alignnone size-medium wp-image-407" /></a><br />
The only other piece of information needed is the first user who is installed. The username can be Administrator, but Vmware Player will throw back a warning. Windows 2008 doesn&#8217;t treat the Administrator account the same as previous operating systems. To perform most administrative functions, we still have to elevate the credentials. The user name is <em>invurted</em> and a password of <em>P@ssw0rd</em> to meet complexity requirements.</li>
<li>Now we apply the name and location of the virtual machine. This is where the space requirement comes in. By default, Vmware Player saves the virtual machine files to the current user&#8217;s directory. Both the name and the save location can be changed at this point. A recommendation would be make sure the volume that you are saving the virtual machines to has enough space for all the hard disks that will be created.<br />
<a href="http://invurted.com/wp-content/uploads/inv05.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv05-300x272.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="272" class="alignnone size-medium wp-image-408" /></a></li>
<li>The next step is to configure the virtual hard disk. In the physical world this would be the hard disk used as an installation target for Windows. It&#8217;s exactly the same in the virtual machine. The main difference is that the size represents the maximum size that the &#8220;physical&#8221; hard drive will be reported as to the Windows operating system.<br />
<a href="http://invurted.com/wp-content/uploads/inv06.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv06-300x272.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="272" class="alignnone size-medium wp-image-409" /></a><br />
As this server will only provide domain controller and networking services for the lab environment, it&#8217;s been configured as a 20GB hard drive. In the real world, we would attach a second virtual hard drive of larger size that would store all of the application data, leaving the operating system with a volume all to itself.</li>
<li>Almost there!<br />
<a href="http://invurted.com/wp-content/uploads/inv07.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv07-300x272.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="272" class="alignnone size-medium wp-image-410" /></a><br />
We have our final configuration ready to go. Before powering on the virtual machine for the first time, we need to customise the virtual machine.<br />
	<a href="http://invurted.com/wp-content/uploads/inv08.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv08-300x255.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="255" class="alignnone size-medium wp-image-411" /></a><br />
The networking configuration is the one major limitation of Vmware Player. Vmware Workstation has a lot more configuration options available.<br />
The three options are:</p>
<ul>
<li>Bridged &#8211; the virtual machine will use an available physical adapter for the virtual machine. This will appear on the network as a separate device from the host operating system. As out virtual machine will be a domain controller, we don&#8217;t want to expose it to the real, potentially production, nework.<br />
<strong>DO NOT use a bridged adapter unless you are absolutley certain it is required.</strong></li>
<li>NAT &#8211; the virtual machine will use the same IP address assigned to a physical adapter. Both the virtual machine and the host OS will appear on the network as the &#8220;same&#8221; device.<br />
<strong>DO NOT use a bridged adapter unless you are absolutley certain it is required.</strong></li>
<li>Host only &#8211; This will create a software based virtual switch that virtual machines will be plugged into. The virtual machine will have no network connectivity unless a virutal routing device is created. This is the safest option as it removes the ability for our test lab to interfere with the real, production network.</li>
</ul>
</li>
</li>
<li><a href="http://invurted.com/wp-content/uploads/inv09.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv09-300x249.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="249" class="alignnone size-medium wp-image-412" /></a>As the machine powers up for the first time, we should see the familiar Windows starting screen. If at this point you don&#8217;t see it, check that the CDROM or ISO file is properly mounted.<br />
<a href="http://invurted.com/wp-content/uploads/inv11.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv11-300x194.jpg" alt="" title="inv11" width="300" height="194" class="alignnone size-medium wp-image-418" /></a><br />
We need to mount the CDROM or ISO file through this interface.<br />
<a href="http://invurted.com/wp-content/uploads/inv12.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv12-300x243.jpg" alt="" title="inv12" width="300" height="243" class="alignnone size-medium wp-image-419" /></a><br />
Once this is done, press <strong>CTRL+ALT+INSERT</strong> to force a reset of the virtual machine. If you hit <strong>CTRL+ALT+DELETE</strong>, this will open up the option to get to the task manager of the host operating system.</li>
<li>Go and get a cup of tea, sit back and relax because Windows 2008 is installing and there&#8217;s very little required at this point.<br />
<a href="http://invurted.com/wp-content/uploads/inv10.jpg" target="_blank"><img src="http://invurted.com/wp-content/uploads/inv10-300x243.jpg" alt="vmware player tutorial windows 2008" title="vmware player tutorial windows 2008" width="300" height="243" class="alignnone size-medium wp-image-413" /></a><br />
Once Windows has finished installing, we should be presented with this screen. From this point on, there is no difference between the virual machine and a real version of Windows 2008.<br />
Power off the virtual machine and move onto Part 2!
</li>
</ol>
<p>That&#8217;s Part 1 complete. In <a href="http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player-part-2/">Part 2</a> we&#8217;ll look at configuring the virtual machine as a domain controller and deploying additional servers for the rest of the lab.</p>
<p>As ever, if you have any questions, please email me (contactme [at] invurted dot com).</p>
<div class="shr-publisher-401"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-windows-2008-testing-environment-using-vmware-player%2F' data-shr_title='%5BTUTORIAL%5D+Windows+2008+testing+environment+using+Vmware+Player+part+1'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-windows-2008-testing-environment-using-vmware-player%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-windows-2008-testing-environment-using-vmware-player%2F' data-shr_title='%5BTUTORIAL%5D+Windows+2008+testing+environment+using+Vmware+Player+part+1'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/tutorial-windows-2008-testing-environment-using-vmware-player/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[TUTORIAL] Failure to Enter Maintenance Mode</title>
		<link>http://invurted.com/tutorial-failure-to-enter-maintenance-mode/</link>
		<comments>http://invurted.com/tutorial-failure-to-enter-maintenance-mode/#comments</comments>
		<pubDate>Fri, 03 Apr 2009 02:34:37 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[maintenance mode]]></category>

		<guid isPermaLink="false">http://invurted.com/?p=255</guid>
		<description><![CDATA[Greetings, faithful reader, This one is as much a reminder for me as it is one to you! When you&#8217;re entering Maintenance Mode, the Vmware ESX server will always try to Vmotion all of it&#8217;s hosted virtual machines away. Problems can occur when hosts fail to migrate when entering Maintenace Mode. The server will stop [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Greetings, faithful reader,</p>
<p>This one is as much a reminder for me as it is one to you! <span id="more-255"></span></p>
<p>When you&#8217;re entering Maintenance Mode, the Vmware ESX server will always try to Vmotion all of it&#8217;s hosted virtual machines away. Problems can occur when hosts fail to migrate when entering Maintenace Mode. The server will stop at two percent and then time out. Regrettably, there is no notification that an individual Virtual Machine&#8217;s Vmotion event fails.</p>
<p>However, there is another cause as well: if your cluster is both HA (High Availability) and DRS (Distributed Resource Scheduling) enabled, when you put an ESX server into Maintenance mode, DRS will generate a five star recommendation. Manual mode, however, requires user interaction and you have to tell the ESX cluster to initiate the Vmotion events. Once I accept the recommendations, Vmotion will start and the target ESX server will be placed in Maintenance Mode.</p>
<p>There is one other case where it will fail. This one falls into the category of &#8220;undocumented system feature&#8221;.  The summary is:</p>
<p>From: http://kb.vmware.com/selfservice/viewContent.do?externalId=1007156&#038;sliceId=1</p>
<blockquote>
<ul>
<li>An ESX host fails to enter maintenance mode in a VMware High Availability (HA) or DRS cluster </li>
<li>Hosts fail to migrate when attempting to enter maintenance mode </li>
<li>The progress indicator remains at 2% indefinitely</li>
<li>Trying to remediate a host and getting a time out error when trying to enter the maintenance mode</li>
</ul>
<p>Cause:<br />
This is normal behavior for a VMware HA/DRS cluster that is using strict admission control.</p>
<p>Disabling strict admission control (allowing virtual machines to power on even if they violate constraints) should allow a host to enter maintenance mode in this situation but a bug was discovered whereby it did not.<br />
Resolution:</p>
<p>For a permanent solution, upgrade to VirtualCenter 2.5 Update 3.</p>
<p>To workaround the issue, temporarily disable VMware HA in the cluster settings. You will then be able to put the ESX Server host into Maintence mode and do the work required. You can then re-enable HA on your cluster.</p></blockquote>
<div class="shr-publisher-255"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-failure-to-enter-maintenance-mode%2F' data-shr_title='%5BTUTORIAL%5D+Failure+to+Enter+Maintenance+Mode'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-failure-to-enter-maintenance-mode%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-failure-to-enter-maintenance-mode%2F' data-shr_title='%5BTUTORIAL%5D+Failure+to+Enter+Maintenance+Mode'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/tutorial-failure-to-enter-maintenance-mode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[TUTORIAL] Boot ESX 3i from USB key</title>
		<link>http://invurted.com/boot-esx-3i-from-usb-key/</link>
		<comments>http://invurted.com/boot-esx-3i-from-usb-key/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 05:33:02 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[esx 3i]]></category>

		<guid isPermaLink="false">http://invurted.com/?p=243</guid>
		<description><![CDATA[This one is getting filed under &#8220;Try it really soon!&#8221; However, randomly answering an email, I came across this document on http://www.vminfo.nl detailing the process for making a bootable USB key with ESX 3i installed. Certainly, the document goes into a lot more detailed instructions, but here&#8217;s a bit of a summary: Using an archiving [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>This one is getting filed under &#8220;Try it really soon!&#8221; However, randomly answering an email, I came across this document on http://www.vminfo.nl detailing the process for making a bootable USB key with ESX 3i installed.<span id="more-243"></span></p>
<p>Certainly, the document goes into a lot more detailed instructions, but here&#8217;s a bit of a summary:</p>
<ol>
<li>Using an archiving program eg. IZArc, extract the contents of the Vmware ESX 3i ISO image. Given it&#8217;s an ISO, you could also mount it using DaemonTools or it&#8217;s like.</li>
<li>Once the files are extracted, find the INSTALL.TGZ file and open it.</li>
<li>Navigate to the <code>\usr\lib\vmware\installer</code> directory.</li>
<li>Open the <code>Vmware-VMvisor-big-3.5.0_Update_2-11072.i386.dd.bz2</code> file. This may take a while, so patience, young padawan! Then extract the un-compressed .dd file</li>
<li>Restore the boot image to the USB thumb drive. Effectively, you&#8217;re restoring a &#8220;virtual hard drive&#8221; (in this case the .dd file extracted above.</li>
<li>Now that&#8217;s done, it&#8217;s time to test! Boot the sucker and play with ESX 3i!</li>
</ol>
<p>The only real &#8220;gotcha&#8221; in this one is pretty obvious: make sure you have a motherboard that can boot from USB. Thankfully, these days most new motherboards have this ability. If in doubt check your motherboard manual or the manufacturer&#8217;s website.</p>
<p>Regrettably, I don&#8217;t have a font big enough OR bold enough to stress that this is UNSUPPORTED IN A PRODUCTION ENVIRONMENT!! Try it at your own risk!</p>
<p><a href="http://invurted.com/wp-content/uploads/esx3iusb.pdf">ESX 3i on USB</a></p>
<div class="shr-publisher-243"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Fboot-esx-3i-from-usb-key%2F' data-shr_title='%5BTUTORIAL%5D+Boot+ESX+3i+from+USB+key'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Fboot-esx-3i-from-usb-key%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Fboot-esx-3i-from-usb-key%2F' data-shr_title='%5BTUTORIAL%5D+Boot+ESX+3i+from+USB+key'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/boot-esx-3i-from-usb-key/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>[TUTORIAL] Force Virtual Machine to shutdown</title>
		<link>http://invurted.com/tutorial-force-virtual-machine-to-shutdown/</link>
		<comments>http://invurted.com/tutorial-force-virtual-machine-to-shutdown/#comments</comments>
		<pubDate>Fri, 12 Dec 2008 03:38:52 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[virtual machine]]></category>

		<guid isPermaLink="false">http://invurted.com/?p=182</guid>
		<description><![CDATA[Occassionally, when you try to shut down a virtual machine the progress bar will stop meaning that the process will never complete in the background. The following steps will allow you to force the shutdown of a running virtual machine. Logon to the ESX host where the virtual machine is running and become root. vmware-cmd [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Occassionally, when you try to shut down a virtual machine the progress bar will stop meaning that the process will never complete in the background. The following steps will allow you to force the shutdown of a running virtual machine.<span id="more-182"></span></p>
<ol>
<li>Logon to the ESX host where the virtual machine is running and become root.</li>
<li><code>vmware-cmd -l</code> to list all the registered virtual machines.</li>
<li><code>vmware-cmd /path/copied/from/vmware-cmd getstate</code> to get state of the target virtual machine.<br />
If the state requires an answer:</p>
<ul>
<li><code>vmware-cmd /path/copied/from/vmware-cmd answer</code></li>
</ul>
<p>If no answer is needed:</p>
<ul>
<li><code>vmware-cmd /path/copied/from/vmware-cmd stop trysoft</code></li>
</ul>
<p>If trysoft does not work use <code>vmware-cmd /path/copied/from/vmware-cmd stop hard</code></li>
<li>If the vmware-cmd does not work, the next step is to kill the master user world id.</li>
<li><code>cat /proc/vmware/vm/*/names |grep <strong>vmname</strong></code> replace <strong>vmname</strong> with the name of the virtual machine that has hung. From this list, get the VMID</li>
<li><code>less /proc/vmware/vm/<strong>vmid</strong> value/cpu/status</code> where <strong>vmid</strong> value is the number from above.</li>
<li>Scroll over to the right until you find the group field that shows vm.####. The #### numbers are the master user world id.</li>
<li><code>/usr/lib/vmware/bin/vmkload_app -k 9 <strong>####</strong></code> where <strong>####</strong> is the master user world id. If the command is successful you will get a WARNING message that a signal 9 is being sent.</li>
<li>If <code>vmkload_app </code>does not help the next thing to try is to crash the virtual machine with the <code>vm-support -X</code> command.</li>
<li><code>vm-support -x </code>to get the vmid.</li>
<li>From a directory that has ample space <code>vm-support -X <strong>####</strong></code> where <strong>####</strong> is the vmid.</li>
<li>Answer all the questions with the default answers. The entire process takes about 10 minutes and creates an archive log that can be submitted to support. It will also crash the vm</li>
</ol>
<div class="shr-publisher-182"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-force-virtual-machine-to-shutdown%2F' data-shr_title='%5BTUTORIAL%5D+Force+Virtual+Machine+to+shutdown'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-force-virtual-machine-to-shutdown%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-force-virtual-machine-to-shutdown%2F' data-shr_title='%5BTUTORIAL%5D+Force+Virtual+Machine+to+shutdown'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/tutorial-force-virtual-machine-to-shutdown/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iSCSI security</title>
		<link>http://invurted.com/tutorial-iscsi-security/</link>
		<comments>http://invurted.com/tutorial-iscsi-security/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 00:48:45 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[iscsi]]></category>

		<guid isPermaLink="false">http://invurted.com/?p=177</guid>
		<description><![CDATA[iSCSI, as a storage option, has less performance than fibre channel ie. it is limited to the speed of the HBAs or the network card being used, however it is far cheaper and I can leaverage my existing infrastructure to put in an iSCSI SAN. The problem becomes, in a TCP/IP network, how do I [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>iSCSI, as a storage option, has less performance than fibre channel ie. it is limited to the speed of the HBAs or the network card being used, however it is far cheaper and I can leaverage my existing infrastructure to put in an iSCSI SAN. The problem becomes, in a TCP/IP network, how do I protect the data moving between the SAN and the hosts?<span id="more-177"></span><br />
To start with, what is iSCSI? Functionally, there is no difference between Fibre Channel, iSCSI and a local SCSI controller. All three send SCSI commands to hard disks. Both Fibre Channel and iSCSI transmit over fiber and TCP/IP networks, respectively; making the network storage appear as &#8220;local&#8221; storage for the iSCSI client (or initiator).<br />
As I mentioned, iSCSI uses TCP/IP networks to transport the SCSI commands from the initiator to the target (the iSCSI SAN). iSCSI uses the default TCP port 3260 and provides no native security on communication between the initiator and the target.<br />
Here&#8217;s where the challenges begin.<br />
To start with, if my iSCSI traffic is shared on a production network there are two problems. The most dangerous is network sniffers for obvious reasons.<br />
The other immediate problem is network contention. If my iSCSI SAN shares the same network as all my production network there is a big problem with performance as my normal traffic will be competing for access with iSCSI.<br />
The solution to both problems is network isolation. This isn&#8217;t so much best practice as it is mandatory. Wether the iSCSI network is physically isolated to it&#8217;s own infrastructure or using IEEE 802.1Q (VLAN tagging), the iSCSI network should now be invisible and/or inaccessible to the production network. The only notable exception becomes the requirement for servers to access the iSCSI implementation. Easily fixed by the addition of network adapters to the servers. Even if I need to populate each server with additional NICs, this should still be cheaper than the most simple Fibre Channel implementation.<br />
Okay, now we have isolation to provide security but what about securing the communication itself.<br />
The obvious solution is IPSec. The not so obvious problem is the overhead to IPSec. For a storage network, it doesn&#8217;t seem optimal to have to encrypt and decrypt each packet as it is transmitted and received. Certainly, as of the writing of this article, there is no support for IPSec in ESX3.5 specifically.<br />
So the only real option left (in ESX particular) is authentication to verify my identity. ESX supports CHAP authentication only for iSCSI initiators and targets.<br />
CHAP (Challenge Handshake Authentication Protocol) is used to verify the identity of clients in a Point-to-point network. Your identity is verifed by using a three way handshake. After the initial link CHAP authentication is done at random intervals during the entire conversation. The one weakness is the reliance on a shared secret ie. the client&#8217;s password. ESX <strong>does not</strong> support per target credentials either. So one CHAP username and password sent to all iSCSI targets.<br />
The CHAP process goes something like the following:</p>
<ol>
<li>After the completion of the link establishment phase, the authenticator sends a &#8220;challenge&#8221; message to the peer.</li>
<li>The peer responds with a value calculated using a one-way hash function, such as an MD5 checksum hash.</li>
<li>The authenticator checks the response against its own calculation of the expected hash value. If the values match, the authenticator acknowledges the authentication; otherwise it should terminate the connection.</li>
<li>At random intervals the authenticator sends a new challenge to the peer and repeats steps 1 through 3.</li>
</ol>
<p>An example of CHAP authentication can be seen between two Cisco 3640 routers. The network is a fairly simple on and looks like this:<br />
<a href="http://invurted.com/wp-content/uploads/setup1.jpg"><img class="aligncenter size-medium wp-image-179" title="setup1" src="http://invurted.com/wp-content/uploads/setup1-300x153.jpg" alt="" width="300" height="153" /></a><br />
After enabling the serial interfaces between the two routers, I enable and configure PPP encapsulation. On the second router (R2) , I enable CHAP authentication and view debugging information on the first router (R1)</p>
<p><code><br />
*Mar 1 00:25:39.971: Se1/0 PPP: Using default call direction<br />
*Mar 1 00:25:39.975: Se1/0 PPP: Treating connection as a dedicated line<br />
*Mar 1 00:25:39.975: Se1/0 PPP: Session handle[26000001] Session id[0]<br />
*Mar 1 00:25:39.975: Se1/0 PPP: Authorization required<br />
*Mar 1 00:25:40.255: Se1/0 PPP: No authorization without authentication<br />
*Mar 1 00:25:40.259: Se1/0 CHAP: I CHALLENGE id 1 len 23 from "r2"<br />
*Mar 1 00:25:40.299: Se1/0 CHAP: Unable to authenticate for peer</code><br />
R2 is waiting for authentication from R1 and is unable to get authentication information. Now I configure CHAP authentication on r1 and observe the following:<br />
<code><br />
*Mar 1 00:26:26.867: Se1/0 LCP: Received AAA AUTHOR Response PASS<br />
*Mar 1 00:26:26.867: Se1/0 IPCP: Received AAA AUTHOR Response PASS<br />
*Mar 1 00:26:26.871: Se1/0 CHAP: O SUCCESS id 12 len 4<br />
*Mar 1 00:26:27.055: Se1/0 CHAP: I SUCCESS id 15 len 4<br />
*Mar 1 00:26:27.059: Se1/0 PPP: Sent CDPCP AUTHOR Request<br />
*Mar 1 00:26:27.063: Se1/0 PPP: Sent IPCP AUTHOR Request<br />
*Mar 1 00:26:27.071: Se1/0 CDPCP: Received AAA AUTHOR Response PASS<br />
*Mar 1 00:26:28.055: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up</code><br />
The shared secret is exchanged between the two and the Serial interface is changed to an up state.</p>
<div class="shr-publisher-177"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-iscsi-security%2F' data-shr_title='iSCSI+security'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-iscsi-security%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-iscsi-security%2F' data-shr_title='iSCSI+security'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/tutorial-iscsi-security/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[PRACTICE] Fixed length subnet masking #2</title>
		<link>http://invurted.com/practice-fixed-length-subnet-masking-2/</link>
		<comments>http://invurted.com/practice-fixed-length-subnet-masking-2/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 04:53:04 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[fixed length subnet mask]]></category>
		<category><![CDATA[ip]]></category>
		<category><![CDATA[practice]]></category>

		<guid isPermaLink="false">http://invurted.com/2008/12/practice-fixed-length-subnet-masking-2/</guid>
		<description><![CDATA[Following on in the series, here is the second subnet masking example. You have been given the network range 192.168.128.0/24. Your task is to break it down into six networks. The questions you have to answer are, how many hosts on each network, and what are the network IDs and broadcast IDs for each of [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Following on in the series, here is the second subnet masking example.</p>
<p>You have been given the network range 192.168.128.0/24. Your task is to break it down into six networks. The questions you have to answer are, how many hosts on each network, and what are the network IDs and broadcast IDs for each of the networks.</p>
<p>I will post the answer on Friday 12th December, 2008 at 3:30pm EDST.</p>
<p><span id="more-170"></span></p>
<p>Sorry for the lateness of the solution. I have been as sick as a dog for the last few days, hence no update.</p>
<p><a href="http://invurted.com/practice-fixed-length-subnet-masking-1/">Last time</a> we talked breaking networks up based on host requirements. This time we&#8217;re working with the network portion of the IP address.</p>
<p>When we were working with hosts, we worked from the thirty-second bit. Or, from right to left. This time we&#8217;re working from left to right to break up an IP range.</p>
<p>Let&#8217;s look at the IP address in binary first. Because it&#8217;s a twenty-four bit subnet mask, this tells us that it&#8217;s a Class C network and that the first three octets are locked and can&#8217;t be changed. Therefore, we will be breaking up the fourth octet.<br />
<code>192.168.128.00000000<br />
255.255.255.00000000</code></p>
<p>Similarly to subnetting for hosts, subnetting for networks is achieved by modifying the subnet mask. So rather than working from the last bit leftwards, let&#8217;s start with the first bit I am allowed to modify and work to the right. In our example, the twenty-fifth bit (the first bit of the fourth octet).</p>
<p>For each bit I change, I get 2^bits networks. Unlike hosts, I don&#8217;t lose the first IP address to the network ID or the last IP address to the broadcast. Therefore, if I use one bit I get two usable networks. If we extend this to cover our example, two bits gives me four networks (still not enough!). Can I get exactly six networks? Because I&#8217;m working with binary values (powers of two), it&#8217;s not possible to get exactly six networks. If I use three bits, I get eight networks. More than the required six.</p>
<p>First thing&#8217;s first: the subnet mask. The original Class C has been subnetted. Now I am using the first three bits of the fourth octet as the network portion. It did look like this: <code>255.255.255.00000000</code>. Now, after subnetting, it looks like this: <code>255.255.255.11100000</code> or, (after converting back to decimal) <code>255.255.255.224</code>.</p>
<p>My networks look something like this (the spaces represent the division between my new network ID and new host ID):<br />
<code>192.168.128.000 00000<br />
192.168.128.001 00000<br />
192.168.128.010 00000<br />
192.168.128.011 00000<br />
192.168.128.100 00000<br />
192.168.128.101 00000<br />
192.168.128.110 00000<br />
192.168.128.111 00000</code></p>
<p>How many hosts on each network? Seeing that we are using three bits for the network, the remaining five bits are the host portion ie. (2^5)-2 hosts or 32-2 hosts. A total of 30 hosts per network. Going back to the last tutorial, the host portion can&#8217;t be all zeroes, nor can it be all ones.</p>
<p>Therefore, my network ranges look like this:<br />
<code>192.168.128.000 00000     192.168.128.000 11111<br />
192.168.128.001 00000     192.168.128.001 11111<br />
192.168.128.010 00000     192.168.128.010 11111<br />
192.168.128.011 00000     192.168.128.011 11111<br />
192.168.128.100 00000     192.168.128.100 11111<br />
192.168.128.101 00000     192.168.128.101 11111<br />
192.168.128.110 00000     192.168.128.110 11111<br />
192.168.128.111 00000     192.168.128.111 11111</code></p>
<p>Any questions or problems, please email me contactme@invurted.com or my work email address.</p>
<div class="shr-publisher-170"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Fpractice-fixed-length-subnet-masking-2%2F' data-shr_title='%5BPRACTICE%5D+Fixed+length+subnet+masking+%232'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Fpractice-fixed-length-subnet-masking-2%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Fpractice-fixed-length-subnet-masking-2%2F' data-shr_title='%5BPRACTICE%5D+Fixed+length+subnet+masking+%232'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/practice-fixed-length-subnet-masking-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[PRACTICE] Fixed length subnet masking #1</title>
		<link>http://invurted.com/practice-fixed-length-subnet-masking-1/</link>
		<comments>http://invurted.com/practice-fixed-length-subnet-masking-1/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 01:37:00 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[fixed length subnet mask]]></category>
		<category><![CDATA[ip]]></category>
		<category><![CDATA[practice]]></category>

		<guid isPermaLink="false">http://invurted.com/2008/12/practice-fixed-length-subnet-masking-1/</guid>
		<description><![CDATA[After the other week&#8217;s CCENT course, I made a promise to start emailing subnetting examples out. Rather than writing and re-writing the same thing time and time again, I figured I&#8217;d put them up here instead. So, fixed length subnet masking example #1 is this: You have been given the network range 192.168.128.0/22. Your first [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>After the other week&#8217;s CCENT course, I made a promise to start emailing subnetting examples out. Rather than writing and re-writing the same thing time and time again, I figured I&#8217;d put them up here instead.</p>
<p>So, fixed length subnet masking example #1 is this:</p>
<p>You have been given the network range 192.168.128.0/22. Your first task is to break this network up into blocks of one hundred IP addresses. How many blocks of IP addresses will you get (how many networks will you have)? What are the network IDs and what are the broadcast IP addresses for each of the network ranges?</p>
<p>I will post the answer on Tuesday 9th December, 2008 at 10:30am EDST.</p>
<p><span id="more-166"></span>
<p>Okay. The question specifically asks for hosts. Therefore, we are working from the thirty second bit back to the start to get hosts. </p>
<p>The original subnet mask is a /22 (255.255.252.0). This tells me that the first twenty two bits are &#8220;locked away&#8221; leaving me the last ten bits to play with. Straight away we can discern at least one piece of information about my network: there are 2^10 total hosts in the network ie. 2^#bits that aren&#8217;t locked away, or one thousand and twenty four total hosts.</p>
<p>On to the good stuff. If we look at the IP address in it&#8217;s binary format we have to do a decimal to binary conversion on the third and fourth octets. By looking at the subnet mask this tells me it&#8217;s not a full block of eight bits in the third octet and the fourth is all zeroes.</p>
<p>Which looks something like this:<br /><code>192.168.10000000.00000000<br />255.255.11111100.00000000</code><br />Notice twenty two contiguous ones and ten contiguous zeroes.</p>
<p>As previously mentioned, I want hosts. So, I am working from the last bit leftwards. Each zero represents two hosts (1 and 0). Every time I go up a column, I am adding a power of two to the total number of hosts. If I use one column (the thirty-second bit), I have 2^1 hosts, two columns gives me 2^2 hosts etc. Can I get exactly 100 hosts for the network? The answer is no. If I use the last six bits I have sixty-four hosts (2^6), well below the required one hundred hosts! Let&#8217;s use the last seven bits. This gives me 2^7 hosts. One hundred and twenty eight is well above the one hundred required, but is the nearest value over one hundred I get given I have to count in powers of two.</p>
<p>My new subnet mask now looks something like this:<br /><code>192.168.100000 00.0 0000000<br />255.255.111111 11.1 0000000</code><br />The spaces show the modifications that I have made to the network range given the requirements of the scenario.</p>
<p>The three bits between the spaces are telling me what networks I am now defining. Three bits, straight away, tells me I have 2^3 or eight networks in total. The network part of the IP address has to be unique. The eight unique combinations of the network ID are: <code><br />192.168.100000 00.0 0000000 (192.168.128.0)<br />192.168.100000 00.1 0000000 (192.168.128.128)<br />192.168.100000 01.0 0000000 (192.168.129.0)<br />192.168.100000 01.1 0000000 (192.168.129.128)<br />192.168.100000 10.0 0000000 (192.168.130.0)<br />192.168.100000 10.1 0000000 (192.168.130.128)<br />192.168.100000 11.0 0000000 (192.168.131.0)<br />192.168.100000 11.1 0000000 (192.168.131.128)<br /></code></p>
<p>The rules of TCP/IP state that the host ID can&#8217;t be all zeroes and it can&#8217;t be all ones. The all zeroes address is the network ID and the all ones address is the broadcast IP address for that network.</p>
<p>In our example, the last six bits are the host ID. Therefore, the network IDs are up above and the broadcast IP addresses are:<code><br />192.168.100000 00.0 1111111 (192.168.128.127)<br />192.168.100000 00.1 1111111 (192.168.128.255)<br />192.168.100000 01.0 1111111 (192.168.129.127)<br />192.168.100000 01.1 1111111 (192.168.129.255)<br />192.168.100000 10.0 1111111 (192.168.130.127)<br />192.168.100000 10.1 1111111 (192.168.130.255)<br />192.168.100000 11.0 1111111 (192.168.131.127)<br />192.168.100000 11.1 1111111 (192.168.131.255)<br /></code></p>
<p>Any questions or problems, please email me <a href="&quot;mailto:contactme@invurted.com">contactme@invurted.com</a> or my work email address.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Stay tuned because I&#8217;ll post another example later this week.</p>
<div class="shr-publisher-166"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Fpractice-fixed-length-subnet-masking-1%2F' data-shr_title='%5BPRACTICE%5D+Fixed+length+subnet+masking+%231'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Fpractice-fixed-length-subnet-masking-1%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Fpractice-fixed-length-subnet-masking-1%2F' data-shr_title='%5BPRACTICE%5D+Fixed+length+subnet+masking+%231'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/practice-fixed-length-subnet-masking-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[TUTORIAL] Releasing Virtual Machine Files</title>
		<link>http://invurted.com/tutorial-releasing-files/</link>
		<comments>http://invurted.com/tutorial-releasing-files/#comments</comments>
		<pubDate>Tue, 28 Oct 2008 03:42:55 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[files]]></category>
		<category><![CDATA[machine]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[virtual]]></category>

		<guid isPermaLink="false">http://invurted.com/?p=149</guid>
		<description><![CDATA[Sometimes a file or set of files in a VMFS become locked and any attempts to edit them or delete will give a device or resource busy error, even though the virtual machine associated with the files is not running. If the virtual machine is running then you would need to stop the virtual machine [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Sometimes a file or set of files in a VMFS become locked and any attempts to edit them or delete will give a device or resource busy error, even though the virtual machine associated with the files is not running.  If the virtual machine is running then you would need to stop the virtual machine to manipulate the files.  If you know that the virtual machine is stopped then you need to find the ESX server that has the files locked and then stop the process that is locking the file(s). <span id="more-149"></span></p>
<ol>
<li> Logon to the ESX host where the virtual machine was last known to be running.</li>
<li>vmkfstools -D /vmfs/volumes/path/to/file to dump information on the file into /var/log/vmkernel</li>
<li>less /var/log/vmkernel and scroll to the bottom, you will see output like below:<br />
<code><br />
Nov 29 15:49:17 vm22 vmkernel: 2:00:15:18.435 cpu6:1038)FS3: 130: &lt; START vmware-16.log &gt;<br />
Nov 29 15:49:17 vm22 vmkernel: 2:00:15:18.435 cpu6:1038)Lock [type 10c00001 offset 30439424 v 21, hb offset 4154368Nov 29 15:49:17 vm22 vmkernel: gen 66493, mode 1, owner 46c60a7c-94813bcf-4273-0017a44c7727 mtime 8781867]<br />
Nov 29 15:49:17 vm22 vmkernel: 2:00:15:18.435 cpu6:1038)Addr &lt;4, 588, 7&gt;, gen 20, links 1, type reg, flags 0x0, uid 0, gid 0, mode 644<br />
Nov 29 15:49:17 vm22 vmkernel: 2:00:15:18.435 cpu6:1038)len 23973, nb 1 tbz 0, zla 2, bs 65536<br />
Nov 29 15:49:17 vm22 vmkernel: 2:00:15:18.435 cpu6:1038)FS3: 132: &lt; END vmware-16.log &gt;<br />
</code></li>
<li>The owner of the lock is on the third line, the last part is all you need, in this case 0017a44c7727</li>
<li>esxcfg-info | grep -i &#8216;system uuid&#8217; | awk -F &#8216;-&#8217; &#8216;{print $NF}&#8217; will display the system uuid of the esx server.  You need to run the esxcfg-info command on each esx server in the cluster to discover the owner.</li>
<li>When you find the ESX server that matches the uuid owner, logon to that ESX server and run the command: ps -elf|grep vmname where vmname is the problem virtual machine.  Example output below:<br />
<code>4 S root      7570     1  0  65 -10    -   435 schedu Nov27 ?        00:00:02 /usr/lib/vmware/bin/vmkload_app /usr/lib/vmware/bin/vmware-vmx -ssched.group=host/user/pool2 -@ pipe=/tmp/vmhsdaemon-0/vmxf7fb85ef5d8b3522;vm=f7fb85ef5d8b3522 /vmfs/volumes/470e25b6-37016b37-a2b3-001b78bedd4c/iu-lsps-vstest/iu-lsps-vstest.vmx0</code></li>
<li> Since there is a process running, pid 7570 in the example, you need to kill it by following steps 5-12 on Stopping a Virtual Machine.</li>
<li>Once the kill is complete the files should be released.</li>
</ol>
<div class="shr-publisher-149"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-releasing-files%2F' data-shr_title='%5BTUTORIAL%5D+Releasing+Virtual+Machine+Files'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-releasing-files%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-releasing-files%2F' data-shr_title='%5BTUTORIAL%5D+Releasing+Virtual+Machine+Files'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/tutorial-releasing-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[TUTORIAL] Stopping a Virtual Machine</title>
		<link>http://invurted.com/tutorial-stopping-a-vm/</link>
		<comments>http://invurted.com/tutorial-stopping-a-vm/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 03:23:11 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[machine]]></category>
		<category><![CDATA[virtual]]></category>

		<guid isPermaLink="false">http://invurted.com/?p=145</guid>
		<description><![CDATA[VMware has added a new command in VI3 to help when a user has a VM that has become unresponsive. Below are the progressives steps to go through to get the VM cleanly powered off. Whatever you do, DO NOT kill the pid for the VM from the Service Console, unless you have tried absolutely [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>VMware has added a new command in VI3 to help when a user has a VM that has become unresponsive.  Below are the progressives steps to go through to get the VM cleanly powered off.  Whatever you do, DO NOT kill the pid for the VM from the Service Console, unless you have tried absolutely everything.  Killing the pid from the Service Console may prevent the VM from restarting.<br />
<span id="more-145"></span><br />
The following steps assume that the usual graceful shutdowns do not work from within the VM operating system or the Virtual Infrastructure Client.  Commands are bold underscore type, with descriptions of path names and some example output is included.</p>
<ol>
<li>Logon to the ESX host where the VM is running and become root.</li>
<li>vmware-cmd -l to list all the registered VMs.</li>
<li>vmware-cmd /path/copied/from/vmware-cmd getstate to get state of vm.<br />
If the state requires an answer: vmware-cmd /path/copied/from/vmware-cmd answer<br />
If no answer is needed: vmware-cmd /path/copied/from/vmware-cmd stop trysoft<br />
If  “trysoft” does not work: vmware-cmd /path/copied/from/vmware-cmd stop hard</li>
<li>If the vmware-cmd does not help next up is to kill the master user world id</li>
<li>cat /proc/vmware/vm/*/names |grep vmname where vmname is the vm that is hung and find the value for vmid</li>
<li>less /proc/vmware/vm/vmid value/cpu/status where vmid value is the number from above</li>
<li>Scroll over to the right until you find the group field that shows vm.#### where the #### numbers after vm. will be the master user world id</li>
<li>/usr/lib/vmware/bin/vmkload_app -k 9 #### where #### is the master user world id. If successful you will get a WARNING message that a signal 9 is being sent</li>
<li>If vmkload_app does not help next up is to crash the vm with the vm-support -X command</li>
<li>vm-support -x to get the vmid</li>
<li>From a directory that has ample space vm-support -X #### where #### is the vmid</li>
<li>Answer all the questions with the default answers.  The entire process takes about 10 minutes and creates an archive log that can be submitted to support.  It will also crash the vm.</li>
</ol>
<div class="shr-publisher-145"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-stopping-a-vm%2F' data-shr_title='%5BTUTORIAL%5D+Stopping+a+Virtual+Machine'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-stopping-a-vm%2F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Finvurted.com%2Ftutorial-stopping-a-vm%2F' data-shr_title='%5BTUTORIAL%5D+Stopping+a+Virtual+Machine'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://invurted.com/tutorial-stopping-a-vm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

