<?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>TechProsaic &#187; Software</title>
	<atom:link href="http://halr9000.com/article/category/software/feed" rel="self" type="application/rss+xml" />
	<link>http://halr9000.com</link>
	<description>(powershell &#38; other stuff)</description>
	<lastBuildDate>Mon, 06 Sep 2010 20:08:50 +0000</lastBuildDate>
	<language>en-us</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Interviewed on VIRTUMANIA 20 &#8211; Powershell is Latin to Me</title>
		<link>http://halr9000.com/article/906</link>
		<comments>http://halr9000.com/article/906#comments</comments>
		<pubDate>Sun, 25 Jul 2010 03:40:41 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Podcasting]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/906</guid>
		<description><![CDATA[I had a great time chatting with my vNeighbor Rich Brambley, Marc Farley, and Scott Herold on the Virtumania podcast the other day. Please go check out VIRTUMANIA 20 and be sure to download their other episodes. From the blog post: “This week’s discussion focuses on using Powershell in virtual environments instead of a GUI, [...]]]></description>
			<content:encoded><![CDATA[<!-- no icon for 'Podcasting' --><!-- no icon for 'VMware' --><p>I had a great time chatting with my vNeighbor Rich Brambley, Marc Farley, and Scott Herold on the Virtumania podcast the other day. Please go check out <a href="http://virtumania.podbean.com/2010/07/24/virtumania-20-powershell-is-latin-to-me/">VIRTUMANIA 20</a> and be sure to download their <a href="http://virtumania.podbean.com/">other episodes</a>. </p>
<p>From the blog post:</p>
<blockquote><p>“This week’s discussion focuses on using Powershell in virtual environments instead of a GUI, compares learning scripting to learning the verbs and nouns of a new language such as Latin, and highlights several Powershell sites and tools that every administrator should check out.”</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/906/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Quick PowerCLI Tip: Determine vNetwork Teaming Uplinks for Distributed Virtual Switch PortGroups</title>
		<link>http://halr9000.com/article/903</link>
		<comments>http://halr9000.com/article/903#comments</comments>
		<pubDate>Sat, 17 Jul 2010 19:01:25 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[PowerCLI]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[portgroup]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/903</guid>
		<description><![CDATA[Need to determine what the uplink policy is for your DVSwitches? Here is a quick PowerCLI snippet to do that. I’d go into more detail but I don’t have time this moment. Consider this longer than a tweet, but shorter than my normal blog post. Here is the corresponding screen in the vSphere Client (pardon [...]]]></description>
			<content:encoded><![CDATA[<!-- no icon for 'PowerCLI' --><a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p>Need to determine what the uplink policy is for your DVSwitches? Here is a quick <a href="http://vmware.com/go/powercli">PowerCLI</a> snippet to do that. I’d go into more detail but I don’t have time this moment. Consider this longer than a tweet, but shorter than my normal blog post. <img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://halr9000.com/wp-content/uploads/2010/07/wlEmoticonsmile.png" /></p>
<p>Here is the corresponding screen in the vSphere Client (pardon the font issues, I’m running blind-person-size-font) with the relevant portion highlighted:</p>
<p><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="vSphere client screenshot" border="0" alt="vSphere client screenshot" src="http://halr9000.com/wp-content/uploads/2010/07/image.png" width="753" height="469" /></p>
<p>And the code:</p>
<pre><span style="color: #0000ff">PS</span><span style="color: #000000">&gt;</span><span style="color: #000000"> </span><span style="color: #800080">$pgName</span><span style="color: #000000"> </span><span style="color: #ff0000">=</span><span style="color: #000000"> </span><span style="color: #800000">'</span><span style="color: #800000">Name of your DV port group</span><span style="color: #800000">'</span><span style="color: #000000">
</span><span style="color: #0000ff">PS</span><span style="color: #000000">&gt;</span><span style="color: #000000"> </span><span style="color: #800080">$pg</span><span style="color: #000000"> </span><span style="color: #ff0000">=</span><span style="color: #000000"> </span><span style="color: #5f9ea0">Get-View</span><span style="color: #000000"> </span><span style="color: #5f9ea0">-ViewType</span><span style="color: #000000"> </span><span style="color: #0000ff">DistributedVirtualPortgroup</span><span style="color: #000000"> </span><span style="color: #5f9ea0">-Filter</span><span style="color: #000000"> </span><span style="color: #000000">@</span><span style="color: #000000">{ </span><span style="color: #0000ff">Name</span><span style="color: #000000"> </span><span style="color: #ff0000">=</span><span style="color: #000000"> </span><span style="color: #800080">$pgName</span><span style="color: #000000"> }
</span><span style="color: #0000ff">PS</span><span style="color: #000000">&gt;</span><span style="color: #000000"> </span><span style="color: #800080">$pg</span><span style="color: #000000">.</span><span style="color: #8b4513">Config</span><span style="color: #000000">.</span><span style="color: #8b4513">DefaultPortConfig</span><span style="color: #000000">.</span><span style="color: #8b4513">UplinkTeamingPolicy</span><span style="color: #000000">.</span><span style="color: #8b4513">UplinkPortOrder</span><span style="color: #000000">

</span><span style="color: #0000ff">ActiveUplinkPort</span><span style="color: #000000">  </span><span style="color: #000000">:</span><span style="color: #000000"> {</span><span style="color: #0000ff">dvUplink1</span><span style="color: #000000">,</span><span style="color: #000000"> </span><span style="color: #0000ff">dvUplink2</span><span style="color: #000000">}
</span><span style="color: #0000ff">StandbyUplinkPort</span><span style="color: #000000"> </span><span style="color: #000000">:</span><span style="color: #000000">
</span><span style="color: #0000ff">Inherited</span><span style="color: #000000">         </span><span style="color: #000000">:</span><span style="color: #000000"> </span><span style="color: #0000ff">True</span><span style="color: #000000">
</span><span style="color: #0000ff">DynamicType</span><span style="color: #000000">       </span><span style="color: #000000">:</span><span style="color: #000000">
</span><span style="color: #0000ff">DynamicProperty</span><span style="color: #000000">   </span><span style="color: #000000">:</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/903/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Security Authorization in vSphere</title>
		<link>http://halr9000.com/article/894</link>
		<comments>http://halr9000.com/article/894#comments</comments>
		<pubDate>Thu, 24 Jun 2010 02:14:18 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Screencast]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[powercli]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[train signal]]></category>
		<category><![CDATA[vsphere]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/894</guid>
		<description><![CDATA[I thought I’d share another slide with you tonight. This is also from my upcoming Train Signal vSphere Pro video. Before tackling a set of PowerCLI cmdlets, I like to give you a good base understanding of the concepts.]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'Screencast' --><!-- no icon for 'VMware' --><p>I thought I’d share another slide with you tonight. This is also from my upcoming <a href="http://trainsignal.com">Train Signal</a> vSphere Pro video. Before tackling a set of <a href="http://vmware.com/go/powercli">PowerCLI</a> cmdlets, I like to give you a good base understanding of the concepts.</p>
<p><a href="http://halr9000.com/wp-content/uploads/2010/06/image1.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://halr9000.com/wp-content/uploads/2010/06/image_thumb1.png" width="644" height="484" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/894/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Get-Stat cmdlet is a bit hard to work with</title>
		<link>http://halr9000.com/article/890</link>
		<comments>http://halr9000.com/article/890#comments</comments>
		<pubDate>Sat, 19 Jun 2010 19:32:53 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Screencast]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/890</guid>
		<description><![CDATA[As evidenced by the slide I’m working on at the moment for the upcoming TrainSignal vSphere Pro Series lesson titled “Performance with PowerCLI”. I really wanted to use stars for the difficulty level and make them vibrate like they do in the game, but I was spending too much time on this slide as it [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'Screencast' --><!-- no icon for 'VMware' --><p>As evidenced by the slide I’m working on at the moment for the upcoming <a href="http://www.trainsignal.com/VMware-vSphere-Pro-Series-Training-Vol-1-P91.aspx">TrainSignal vSphere Pro Series</a> lesson titled “Performance with PowerCLI”.</p>
<p>I really wanted to use stars for the difficulty level and make them vibrate like they do in the game, but I was spending too much time on this slide as it was. <img src='http://halr9000.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://halr9000.com/wp-content/uploads/2010/06/image.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://halr9000.com/wp-content/uploads/2010/06/image_thumb.png" width="644" height="484" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/890/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Please vote for my PowerCLI Codestock session!</title>
		<link>http://halr9000.com/article/870</link>
		<comments>http://halr9000.com/article/870#comments</comments>
		<pubDate>Sat, 13 Mar 2010 18:43:53 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/870</guid>
		<description><![CDATA[If you are in the Southeast US, you may be interested in the upcoming Codestock event coming up in June in Knoxville, TN. It seems to be heavily slanted towards developers, but they are doing IT Pro and Entrepeneur tracks this year as well. I have submitted one session for my Managing VMware with PowerShell [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p>If you are in the Southeast US, you may be interested in the upcoming <a href="http://codestock.org">Codestock</a> event coming up in June in Knoxville, TN. It seems to be heavily slanted towards developers, but they are doing IT Pro and Entrepeneur tracks this year as well. I have submitted one session for my <a href="http://codestock.org/sessions/managing-vmware-with-windows-powershell-and-powercli.aspx">Managing VMware with PowerShell thing</a>. If you have a minute, please go over to the site to register and vote my session up. </p>
<p>I’ve never been to Codestock before, but it looks like fun. In fact, it looks like a lot more fun than your typical canned vendor convention. I don’t plan on doing many speaker engagements this year aside from the occasional <a href="http://atlsmug.org">SMUG</a> or <a href="http://powershellgroup.org/atlanta.ga">APUG</a> meeting here in Atlanta, but I thought going to Knoxville might be a neat excuse to get out an d see a new city. The drive to Knoxville from Atlanta is pretty nice if you go through Chattahoochee and Nantahala national forests, so we are looking forward to that.</p>
<p><img src="http://l.yimg.com/g/images/spaceball.gif" /><img src="http://l.yimg.com/g/images/spaceball.gif" /></p>
</p>
<p><img src="http://l.yimg.com/g/images/spaceball.gif" /><img src="http://l.yimg.com/g/images/spaceball.gif" /></p>
</p>
<p><img alt="Brasstown Bald Road by tfdavis." src="http://farm4.static.flickr.com/3115/3159556923_248f4a319f.jpg" /></p>
<p>(credit <a href="http://www.flickr.com/photos/tfdavis/3159556923/">tfdavis on flickr</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/870/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Kind Words from a Reader</title>
		<link>http://halr9000.com/article/869</link>
		<comments>http://halr9000.com/article/869#comments</comments>
		<pubDate>Mon, 01 Mar 2010 01:58:44 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Book]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/869</guid>
		<description><![CDATA[This email arrived in my inbox today: Just finished your book for the second time.&#160; Man, have I learned a lot!&#160; I am way ahead of the PowerShell curve for admins in general.&#160; No one at my work can touch me!&#160; SQl, AD, VMware, IIS, Group Policy, log extraction, etc…&#160; I do it all with [...]]]></description>
			<content:encoded><![CDATA[<!-- no icon for 'Book' --><!-- no icon for 'VMware' --><p>This email arrived in my inbox today:</p>
<blockquote><p>Just finished your book for the second time.&#160; Man, have I learned a lot!&#160; I am way ahead of the PowerShell curve for admins in general.&#160; No one at my work can touch me!&#160; SQl, AD, VMware, IIS, Group Policy, log extraction, etc…&#160; I do it all with PowerShell.</p>
<p>A lot of people say, you can do all this stuff in the VMware client.&#160; My reply is simply- no you can’t…&#160; I have at least 30 automated PowerShell scripts that run throughout the week.&#160; I don’t know how I lived without PowerShell.&#160; </p>
<p>Again, your book rocked.&#160; I actually paid for it!&#160; I won’t let anyone borrow it either.&#160; I need it way too much.&#160; I tell them to BUY THEIR OWN!!!</p>
<p>G.B.</p>
</blockquote>
<p>I really enjoyed reading it and wanted to share this with everyone. Very cool of him to take the time to send me the note.</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/869/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PowerCLI Tip: Speed up your login</title>
		<link>http://halr9000.com/article/867</link>
		<comments>http://halr9000.com/article/867#comments</comments>
		<pubDate>Sun, 24 Jan 2010 21:32:57 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[powercli]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/867</guid>
		<description><![CDATA[When using PowerCLI, the first thing you have to do is to create a connection and authenticate yourself to your vSphere and/or vCenter servers. This is done with the Connect-VIServer cmdlet. Sometimes, this connection can be slow, taking ten or more seconds just to display a password prompt! That gets old pretty quickly. There is [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p><a href="http://halr9000.com/wp-content/uploads/2010/01/image.png"><img style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 5px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" align="right" src="http://halr9000.com/wp-content/uploads/2010/01/image_thumb.png" width="244" height="187" /></a> When using <a href="http://vmware.com/go/powercli">PowerCLI</a>, the first thing you have to do is to create a connection and authenticate yourself to your vSphere and/or vCenter servers. This is done with the <a href="http://www.vmware.com/support/developer/windowstoolkit/wintk40u1/html/Connect-VIServer.html">Connect-VIServer</a> cmdlet. Sometimes, this connection can be slow, taking ten or more seconds just to display a password prompt! That gets old pretty quickly.</p>
<p>There is a good reason for the slowness before you are prompted for credentials, and turns out, it’s a feature, not a bug. PowerCLI supports a single-sign-on (SSO) authentication when you attempt a connection to a vCenter server. What happens in the background is that your current Windows credentials are being passed on to the server and that is tried first, before even prompting you for credentials. This is great if you are sitting at the office and have a fast link to the vCenter server, and you happen to be logging into your workstation with a domain accont, and that domain account has vCenter rights. This transparent passing of credentials is definitely a timesaver under those circumstances.</p>
<p>But on the other hand, what if you are connecting from home over a slow link? What if you are on your home PC or a local account? What if, due to security policies at your company, your normal user account doesn’t even HAVE admin privileges? Yup, the authentication attempt fails (or simply takes a while), and you are left twiddling your thumbs, waiting for the “real” login prompt to appear.</p>
<h3>Resolution</h3>
<p>The fix is an easy one. Instead of typing this to connect:</p>
<pre class="csharpcode">Connect-VIServer vcenter.domain.com
<style type="text/css">.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }
</style>
</pre>
<p>…type something like this:</p>
<pre class="csharpcode">Connect-VIServer vcenter.domain.com -Credential (Get-Credential)</pre>
<p>or the less-recommended, yet still quite functional:</p>
<pre class="csharpcode">Connect-VIServer vcenter.domain.com -user myuser -password mypass</pre>
<style type="text/css">
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>
<p>By using one of these methods, you are instructing Connect-VIServer to explicitly use a set of credentials which you specify. This way, it won’t bother attempting to pass along your current credentials, thus saving you a few seconds and perhaps a gray hair or two.</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/867/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PowerCLI Script: New-Farm</title>
		<link>http://halr9000.com/article/845</link>
		<comments>http://halr9000.com/article/845#comments</comments>
		<pubDate>Sat, 19 Dec 2009 18:34:47 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[powercli]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/845</guid>
		<description><![CDATA[This is a sample script that I created to show how you might create a relatively complex virtual farm environment. The hypothetical requirements for this farm are: Add 10 ESX servers to a vCenter, one for each customer Create a resource pool for each customer Inside each of these, create a resource pool for each [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p>This is a sample script that I created to show how you might create a relatively complex virtual farm environment. The hypothetical requirements for this farm are:</p>
<ol>
<li>Add 10 ESX servers to a vCenter, one for each customer</li>
<li>Create a resource pool for each customer</li>
<li>Inside each of these, create a resource pool for each server role, and a specified number of virtual machines, based on previously-created VM templates
<ol>
<li>2 x proxy server</li>
<li>4 x web server</li>
<li>2 x app server</li>
<li>2 x database server</li>
</ol>
</li>
</ol>
<p>I hope you find the script useful!</p>
<p><script type="text/javascript" src="http://PoshCode.org/embed/1547"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/845/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Quick Outlook Automation Examples</title>
		<link>http://halr9000.com/article/836</link>
		<comments>http://halr9000.com/article/836#comments</comments>
		<pubDate>Fri, 20 Nov 2009 14:15:29 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[outlook]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/836</guid>
		<description><![CDATA[PowerShell is so cool… I had no idea how to automate Outlook with COM before today. Took me about 5 minutes to learn how with PowerShell. I knew it could be done with VBS, right? That’s how viruses are made. This won’t be a long blog unfortunately, but wanted to paste real quick a series [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<a href="http://halr9000.com/article/category/software/windows" title="Windows"><img src="/wp-content/icons/topic_windows.gif" align="right" width="54" height="46" alt="Windows" /></a>
<p>PowerShell is so cool…</p>
<p>I had no idea how to automate Outlook with COM before today. Took me about 5 minutes to learn how with PowerShell. I knew it could be done with VBS, right? That’s how viruses are made. <img src='http://halr9000.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>This won’t be a long blog unfortunately, but wanted to paste real quick a series of commands which I basically figured out in a shell interactively. I didn’t have to read any docs, Get-Member told me all I needed to know.</p>
<p>I did go back and add some comments. I hope you find it useful.</p>
<div id="codeSnippetWrapper" style="border-right: silver 1px solid; padding-right: 4px; border-top: silver 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: silver 1px solid; width: 97.5%; cursor: text; direction: ltr; line-height: 12pt; padding-top: 4px; border-bottom: silver 1px solid; font-family: &#39;Courier New&#39;, courier, monospace; background-color: #f4f4f4; text-align: left; max-height: 200px">
<div id="codeSnippet" style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$ol = New-Object -com Outlook.Application <span style="color: #008000"># starts outlook</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$ol.Reminders | select caption, nextreminderdate <span style="color: #008000"># show reminders</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$ol | gm -mem method <span style="color: #008000"># show all methods (actions) on the com object</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$n = $ol.CreateItem(<span style="color: #006080">'olNoteItem'</span>) <span style="color: #008000"># creates a note</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$n <span style="color: #008000"># display note object</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$n.Body = <span style="color: #006080">'test'</span> <span style="color: #008000"># set body of note</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$n | gm <span style="color: #008000"># display object members (methods &amp; properties) of note</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$n.Display() <span style="color: #008000"># show note</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$n.Color <span style="color: #008000"># display color value</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$n.Color = 4 <span style="color: #008000"># set color</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">1..5 | ForEach-Object { $n.Color = $_; sleep 1 } <span style="color: #008000"># change color of note 5 times</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$m = $ol.CreateItem(<span style="color: #006080">'olMailItem'</span>) <span style="color: #008000"># create mail object</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$m <span style="color: #008000"># display mail object</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$m | gm -mem property <span style="color: #008000"># show mail properties</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$m.Subject = <span style="color: #006080">'test'</span> <span style="color: #008000"># set subject</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$m.Body = <span style="color: #006080">'test'</span> <span style="color: #008000"># set body</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$m.To = <span style="color: #006080">'email@domain.com'</span> <span style="color: #008000"># set to address</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$m.Display() <span style="color: #008000"># display mail item on screen </span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$m.Send() <span style="color: #008000"># send mail item</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none">$ol <span style="color: #008000"># display outlook object</span></pre>
<p><!--CRLF--></p>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none">$ol | gm # display outlook methods</pre>
<p><!--CRLF--></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/836/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Adding Port Groups with PowerCLI</title>
		<link>http://halr9000.com/article/828</link>
		<comments>http://halr9000.com/article/828#comments</comments>
		<pubDate>Fri, 02 Oct 2009 12:22:09 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[portgroup]]></category>
		<category><![CDATA[powercli]]></category>
		<category><![CDATA[virtual networking]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/828</guid>
		<description><![CDATA[David at the Holy VM! blog just put up an article with a script showing you how to create port groups using PowerCLI. He was kind enough to reference my book as inspiration, so the least I can do in return is link to it. Be sure to follow David’s blog, I see several interesting [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p>David at the <a href="http://www.holy-vm.com/">Holy VM!</a> blog just put up an article with a script showing you how to <a href="http://www.holy-vm.com/2009/10/01/adding-port-groups-with-powercli/">create port groups using PowerCLI</a>. He was kind enough to reference my book as inspiration, so the least I can do in return is link to it. <img src='http://halr9000.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Be sure to follow David’s blog, I see several interesting posts on there recently about his experiences with vSphere.</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/828/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Demos from VMworld</title>
		<link>http://halr9000.com/article/798</link>
		<comments>http://halr9000.com/article/798#comments</comments>
		<pubDate>Thu, 10 Sep 2009 02:00:56 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[demos]]></category>
		<category><![CDATA[powercli]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[vmworld]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/798</guid>
		<description><![CDATA[If you were waiting for me to post the demo scripts from TA2650: Taking PowerCLI to the Next Level, then you wait is over! My co-presenter Luc Dekens actually buckled under the pressure and started his own blog.&#160; He’s got four posts on it already, and they are: TA2650 scripts – Part 1 – Profiling [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p>If you were waiting for me to post the demo scripts from TA2650: Taking PowerCLI to the Next Level, then you wait is over! My co-presenter <a href="http://lucd.info/">Luc Dekens</a> actually buckled under the pressure and started his own blog.&#160; He’s got four posts on it already, and they are:</p>
<ul>
<li><a href="http://lucd.info/?p=7">TA2650 scripts – Part 1 – Profiling your vSphere environment</a></li>
<li><a href="http://lucd.info/?p=106">TA2650 scripts – Part 2 – Using the profile XML file for SDK programming</a></li>
<li><a href="http://lucd.info/?p=162">TA2650 scripts – Part 3 – Checking cluster node configurations</a></li>
<li><a href="http://lucd.info/?p=182">TA2650 scripts – Part 4 – NIC Teaming – “hidden” failure criteria</a></li>
</ul>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/798/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building MSI Packages from PowerShell &#8211; The Beginning</title>
		<link>http://halr9000.com/article/768</link>
		<comments>http://halr9000.com/article/768#comments</comments>
		<pubDate>Sun, 16 Aug 2009 05:05:08 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[deployment]]></category>
		<category><![CDATA[installer]]></category>
		<category><![CDATA[msi]]></category>
		<category><![CDATA[wixsharp]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/768</guid>
		<description><![CDATA[This is very much a work-in-progress, but I just successfully built an MSI package from PowerShell using WixSharp and the following test code: $dll = 'C:\Program Files\WixSharp\WixSharp.dll' $path = "c:\temp\out.msi" [system.Environment]::CurrentDirectory = ( Split-Path $path ) Add-Type -Path $dll $project = New-Object wixsharp.Project $project.Name = "MyApp" $project.GUID = [system.Guid]'3bb9cf27-5258-4192-b35b-418f0782c7a3' $project.Id = "MyApp" $dir = New-Object [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<a href="http://halr9000.com/article/category/software/windows" title="Windows"><img src="/wp-content/icons/topic_windows.gif" align="right" width="54" height="46" alt="Windows" /></a>
<p>This is very much a work-in-progress, but I just successfully built an MSI package from PowerShell using <a href="http://csscript.net/WixSharp.html">WixSharp</a> and the following test code:</p>
<div class="wlWriterEditableSmartContent" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:b0fb8d3b-a3ae-4093-9d04-f50ea3360d28" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">
<pre class="brush: powershell">$dll = 'C:\Program Files\WixSharp\WixSharp.dll'
$path = "c:\temp\out.msi"
[system.Environment]::CurrentDirectory = ( Split-Path $path )
Add-Type -Path $dll
$project = New-Object wixsharp.Project
$project.Name = "MyApp"
$project.GUID = [system.Guid]'3bb9cf27-5258-4192-b35b-418f0782c7a3'
$project.Id = "MyApp"
$dir = New-Object wixsharp.Dir( "%ProgramFiles%\My Company\My Product" )
$dir.files = @(
	( New-Object wixsharp.File( "C:\temp\ext18866\install.exe" ) ),
	( New-Object wixsharp.File( "c:\temp\ext18866\install.res.dll" ) )
)
$project.Dirs = @( $dir )
[wixsharp.Compiler]::BuildMsi( $project, $path )</pre>
</div>
<p>Very simple installer, obviously, but it may just solve a problem for me.&#160; I’ll have to write more about my research which led up to Wixsharp, but for now—it’s time to sleep.&#160; <img src='http://halr9000.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>One more thing: this <a href="http://www.codeproject.com/KB/install/WixSharpArticle.aspx">Wixsharp howto</a> was invaluable.</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/768/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Managing VMware Infrastructure with Windows PowerShell Book Now Available for Pre-Order!</title>
		<link>http://halr9000.com/article/716</link>
		<comments>http://halr9000.com/article/716#comments</comments>
		<pubDate>Thu, 02 Apr 2009 14:23:52 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Book]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/716</guid>
		<description><![CDATA[I am very pleased to announce that my book, Managing VMware Infrastructure with Windows PowerShell: TFM is now available to pre-order for $41.99 at SAPIEN’s ScriptingOutput site. Estimated ship date is mid-April. [See update at end about availability at other e-tailers and shipping prices.] Here’s what the book is about:   VMware is the king [...]]]></description>
			<content:encoded><![CDATA[<!-- no icon for 'Book' --><a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p><a href="http://www.scriptingoutpost.com/p-129-managing-vmware-infrastructure-with-windows-powershell-tfm.aspx"><img style="display: inline; margin-left: 0px; margin-right: 0px" src="http://www.scriptingoutpost.com/images/PRODUCT/medium/129.jpg" alt="Click here to view larger image" align="right" /></a></p>
<p>I am very pleased to announce that my book, <a href="http://sapienpress.com/vmware.asp">Managing VMware Infrastructure with Windows PowerShell: TFM</a> is now available to pre-order for $41.99 at SAPIEN’s <a href="http://www.scriptingoutpost.com/p-129-managing-vmware-infrastructure-with-windows-powershell-tfm.aspx">ScriptingOutput</a> site. Estimated ship date is mid-April. <em>[See update at end about availability at other e-tailers and shipping prices.]</em></p>
<p>Here’s what the book is about:</p>
<p> </p>
<p>VMware is the king when it comes to virtualization. Windows PowerShell has gotten huge accolades as an extremely powerful tool for automation of IT tasks. These two technologies make a lot of sense together, and VMware is now making that happen with the release of their VI Toolkit for Windows.</p>
<p>In &#8220;Managing VMware Infrastructure with PowerShell&#8221;, you will learn how to perform everything from simple ad-hoc reporting at the command-line (&#8220;are any of my virtual machines powered off?&#8221;) to complex scripts to automate a massive deployment of hundreds of virtual machines. Simple, yet powerful; concise, yet robust; you will enjoy using this new language to solve your old problems using less code than you thought possible.</p>
<p>If you are a system administrator responsible for managing a VMware Virtual Infrastructure (version 2.0 or above), or a standalone ESX Server (version 3.0 or above), then you need this book. Aimed at scripters of every level, the book starts off with a PowerShell primer and continues well into the internals of virtualization on the VMware platform.</p>
<h5>Table of Contents</h5>
<ul>
<li>Introduction &#8211; Why You Need This Book</li>
</ul>
<ol>
<li>Windows PowerShell Crash Course</li>
<li>Getting Started</li>
<li>Scripting with Virtual Infrastructure</li>
<li>Inventory and Reporting</li>
<li>Deployment and Configuration</li>
<li>Maintenance and Operations</li>
<li>Troubleshooting and Problem Resolution</li>
<li>Managing VMWare with PowerGUI</li>
</ol>
<div><strong>Update @ Apr 7, 2009</strong></div>
<div></div>
<div>Many are concerned at the costs to ship this book outside of the United States.  What I recommend for you guys is to wait just a bit until the book is available at Amazon and other retailers&#8211;retailers which do the volume necessary in order to get that shipping cost down.  I&#8217;ll add a link to other stores once I have them.</div>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/716/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Book News</title>
		<link>http://halr9000.com/article/715</link>
		<comments>http://halr9000.com/article/715#comments</comments>
		<pubDate>Thu, 02 Apr 2009 00:48:29 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Book]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/715</guid>
		<description><![CDATA[I have two pieces of cool news on my book, Managing VMware Infrastructure with PowerShell: TFM. First, it should be going to print around April 15th! I think it’ll be available on pre-order before then, but I don’t know precisely when that will happen. Second, VMware has partnered with my publisher to make a 10% [...]]]></description>
			<content:encoded><![CDATA[<!-- no icon for 'Book' --><a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p>I have two pieces of cool news on my book, <a href="http://sapienpress.com/vmware.asp">Managing VMware Infrastructure with PowerShell: TFM</a>. First, it should be going to print around April 15th! I think it’ll be available on pre-order before then, but I don’t know precisely when that will happen. Second, VMware has partnered with my publisher to make a 10% off coupon available to ISVs and IHVs. If you are currently on VMware’s TAP mailing list, look for that coupon to arrive in the March newsletter which should be in your inbox now.</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/715/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Newly Awarded: VMware vExpert</title>
		<link>http://halr9000.com/article/700</link>
		<comments>http://halr9000.com/article/700#comments</comments>
		<pubDate>Wed, 25 Feb 2009 15:15:22 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/700</guid>
		<description><![CDATA[Got this cool email this morning: Congratulations! On behalf of VMware, we would like to thank you for all the work you’ve done giving back to the virtualization community and sharing your expertise with others. We are pleased to present you with the VMware vExpert Award for 2009. VMware is giving this award to individuals [...]]]></description>
			<content:encoded><![CDATA[<!-- no icon for 'VMware' --><p>Got this cool email this morning:</p>
<blockquote><p>Congratulations! On behalf of VMware, we would like to thank you for all the work you’ve done giving back to the virtualization community and sharing your expertise with others. We are pleased to present you with the <a href="http://www.vmware.com/communities/vexpert/">VMware vExpert Award</a> for 2009. VMware is giving this award to individuals who have contributed significantly to the community of VMware users over the past year.      <br />VMware vExpert award winners will receive:      <br />* An award certificate and gift      <br />* Access to a private vExpert community      <br />* vExpert logo to display on website or email signature      <br />* Free subscription to conference session materials on VMworld.com      <br />* Access to exclusive online events and other opportunities to participate in activities      <br />* Inclusion in public vExpert directory      <br />The vExpert award duration is one year (through February, 2010).</p>
</blockquote>
<p>The vExpert program is new from VMware as of today (Feb 25th, 2009).&#160; I presume they are modeling it after similar programs like Microsoft’s Most Valuable Professional. Looks like I’m one of 300 people chosen for the inaugural award. Pretty neat!</p>
<p>You can read more about the program from its administrator, John Troyer on <a href="http://blogs.vmware.com/vmtn/2009/02/vmware-vexpert-awards.html">this VMTN blog post</a>.</p>
<p>I didn’t plan on a big speech, but I will say: thanks, C-Dawg! Time to update my email and forum signatures.&#160; <img src='http://halr9000.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/700/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>PowerShell Plus 2.1 Beta &#8211; Now Available</title>
		<link>http://halr9000.com/article/695</link>
		<comments>http://halr9000.com/article/695#comments</comments>
		<pubDate>Tue, 03 Feb 2009 16:26:39 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[idera]]></category>
		<category><![CDATA[ise]]></category>
		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/695</guid>
		<description><![CDATA[You can find the full announcement here.&#160; I’ll pull out just a couple of my favorite items from it: Includes ability to download scripts from PoshCode STA mode support means you can run PowerBoots. The current size of the console is overlaid as you resize the window.&#160; Silly little feature, but as it was my [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'Software' --><p>You can find the full announcement <a href="http://powershell.com/cs/blogs/news/archive/2009/02/01/powershellplus-v2-1-beta-is-live.aspx">here</a>.&#160; I’ll pull out just a couple of my favorite items from it:</p>
<ul>
<li>Includes ability to download scripts from <a href="http://poshcode.org">PoshCode</a></li>
<li>STA mode support means you can run <a href="http://huddledmasses.org/powerboots-shoes-for-powershell/">PowerBoots</a>.</li>
<li>The current size of the console is overlaid as you resize the window.&#160; Silly little feature, but as it was my idea, you can thank me.&#160; <img src='http://halr9000.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li>PowerShell V2 CTP3 support! This means things like block comments will be interpreted correctly in the editor and console.</li>
</ul>
<p>To download the beta you will need to register. It’s worth it.</p>
<p><a href="http://powershell.com/cs/blogs/news/archive/2009/02/01/powershellplus-v2-1-beta-is-live.aspx"><img src="http://powershell.com/cs/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.03/psp213.png" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/695/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Win a copy of Managing VMware Infrastructure with PowerShell: TFM on the podcast!</title>
		<link>http://halr9000.com/article/691</link>
		<comments>http://halr9000.com/article/691#comments</comments>
		<pubDate>Thu, 29 Jan 2009 16:02:19 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Book]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/691</guid>
		<description><![CDATA[You can be one of the first to receive a copy of my book when it comes out (not long, I swear!), for free!&#160; Be sure to listen to Episode 57 for details. And let me give you a tip.&#160; Last time I looked, we had around 1,800 subscribers who listen to the recorded show.&#160; [...]]]></description>
			<content:encoded><![CDATA[<!-- no icon for 'Book' --><a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p><img style="margin: 0px 0px 0px 20px; display: inline" alt="Managing VMware Infrastructure with Windows PowerShell cover (Large)" align="right" src="http://halr9000.com/stuff/BookCover_10CAB/ManagingVMWareInfrastructurewithWindowsPowerShellcoverLarge_3.jpg" width="169" height="240" /></p>
<p>You can be one of the first to receive a copy of my book when it comes out (not long, I swear!), for free!&#160; Be sure to listen to Episode 57 for details. </p>
<p>And let me give you a tip.&#160; Last time I looked, we had around 1,800 subscribers who listen to the recorded show.&#160; We typically have between 15 and 40 people show up to the live show on our <a href="http://www.ustream.tv/channel/powerscripting-podcast">Ustream channel</a>. We’ll give away a book or two live, and save some for the “regular podcast”.&#160; Odds are a bit better if you show up tonight for the live show.&#160; <img src='http://halr9000.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/691/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Why Isn&#8217;t Add/Remove Programs Better?</title>
		<link>http://halr9000.com/article/675</link>
		<comments>http://halr9000.com/article/675#comments</comments>
		<pubDate>Wed, 24 Dec 2008 18:56:55 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[asides]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/675</guid>
		<description><![CDATA[I hate this window! And it really isn’t much better on Vista. I spent several minutes looking for a single app (old version of PowerShell) this morning so that I could uninstall it and install CTP3. I really want a list that I can filter by partial string. And it takes so long to open! [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/software/windows" title="Windows"><img src="/wp-content/icons/topic_windows.gif" align="right" width="54" height="46" alt="Windows" /></a>
<!-- no icon for 'asides' --><p><a href="http://halr9000.com/stuff/WhyIsntAddRemoveProgramsBetter_C420/image.png"><img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="222" alt="image" src="http://halr9000.com/stuff/WhyIsntAddRemoveProgramsBetter_C420/image_thumb.png" width="304" align="right" border="0" /></a>I hate this window! And it really isn’t much better on Vista. I spent several minutes looking for a single app (old version of <a title="Microsoft Windows PowerShell command line shell and scripting language" href="http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx" target="_blank">PowerShell</a>) this morning so that I could uninstall it and install CTP3. I really want a list that I can filter by partial string. And it takes so long to open!</p>
<p>I know there’s third-party several replacements for it, but I’ve not tried any. Do you have any that you use?</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/675/feed</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Using the PowerShell VI Toolkit with VMware Server 2</title>
		<link>http://halr9000.com/article/674</link>
		<comments>http://halr9000.com/article/674#comments</comments>
		<pubDate>Tue, 23 Dec 2008 01:14:41 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/674</guid>
		<description><![CDATA[I just wanted to make a quick post to show you how to connect to a VMware Server (version 2 required) with the VI Toolkit.&#160; As Server uses a different default port than VirtualCenter (which uses 443), you must specify it to the Connect-VIServer cmdlet. PS &#62; $vi = Connect-VIServer magneto -Port 8333 There were [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p>I just wanted to make a quick post to show you how to connect to a VMware Server (version 2 required) with the VI Toolkit.&#160; As Server uses a different default port than <a href="http://www.vmware.com/products/vi/vc/" target="_blank">VirtualCenter</a> (which uses 443), you must specify it to the Connect-VIServer cmdlet.</p>
<div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &#39;Courier New&#39;, courier, monospace; background-color: #f4f4f4">
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none">PS <span style="color: #0000ff">&gt;</span> $vi = Connect-VIServer magneto -Port 8333
There were one or more problems with the server certificate:

* A certification chain processed correctly, but terminated in a root certificate which isn't trus
ted by the trust provider.

PS <span style="color: #0000ff">&gt;</span> Get-VM
PS <span style="color: #0000ff">&gt;</span> New-VM -Name testvm -MemoryMB 256 -DiskMB 10 -RunAsync

Name                           State      % Complete Start Time   Finish Time
----                           -----      ---------- ----------   -----------
CreateVM_Task                  Running             0 02:07:41 PM

PS <span style="color: #0000ff">&gt;</span> Get-Datastore

Name                               FreeSpaceMB      CapacityMB
----                               -----------      ----------
standard                                 67208           76308</pre>
</div>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/674/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Manage Multiple VMware ESXi servers for free&#8212;Only with PowerShell</title>
		<link>http://halr9000.com/article/612</link>
		<comments>http://halr9000.com/article/612#comments</comments>
		<pubDate>Sun, 14 Dec 2008 15:19:34 +0000</pubDate>
		<dc:creator>halr9000</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://halr9000.com/article/612</guid>
		<description><![CDATA[Update – read to the end, I just got some news on some…limitations. Update #2 &#8211; All API restrictions have been removed with v3.5U3! Update #3 &#8211; false alarm According to Mike D, this was an accident and it&#8217;ll be turned off in U4. Have you checked out VMware’s free ESXi hypervisor yet?  It’s some [...]]]></description>
			<content:encoded><![CDATA[<a href="http://halr9000.com/article/category/programming/scripting/powershell" title="Powershell"><img src="/wp-content/icons/topic_powershell.png" align="right" width="70" height="53" alt="Powershell" /></a>
<!-- no icon for 'VMware' --><p><strong>Update </strong>– read to the end, I just got some news on some…limitations.</p>
<p><strong>Update #2</strong> &#8211; All API restrictions have been removed with v3.5U3!</p>
<p><strong>Update #3</strong> &#8211; false alarm <img src='http://halr9000.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  <a href="http://www.mikedipetrillo.com/mikedvirtualization/2008/12/update-vmware-rcli-now-writes-to-esxi-free-hosts.html">According to Mike D</a>, this was an accident and it&#8217;ll be turned off in U4.</p>
<p>Have you checked out VMware’s free <a href="http://www.vmware.com/products/esxi/" target="_blank">ESXi</a> hypervisor yet?  It’s some pretty neat stuff, taking most of the high perf features we know and love from its big brother and wrapping them in a tiny package. It’s a great tool which I’ve started to get into lately (we have an existing VI3 ESX shop).</p>
<p>One thing you cannot do with the free version however, is connect to and manage multiple host systems at the same time.  The VI Client is great, but it’s scope is limited to a single server.  If you happen to have a <a href="http://www.vmware.com/products/vi/vc/" target="_blank">VirtualCenter</a>, you’ll find that you can’t add an ESXi server to your farm—it fails due to a missing license.</p>
<p>Not all is lost!  Late in the dev cycle of VMware’s <a href="http://vmware.com/go/powershell" target="_blank">VI Toolkit (for Windows)</a>, they added a <strong>Server </strong>parameter to every cmdlet. Let me show you how you can use it to control multiple ESXi servers at once—for free.  You can’t beat free.</p>
<div style="font-size: 8pt; margin: 20px 0px 10px; overflow: auto; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas, 'Courier New', courier, monospace; background-color: #f4f4f4; border: gray 1px solid; padding: 4px;">
<pre style="font-size: 8pt; margin: 0em; overflow: visible; width: 100%; color: black; line-height: 12pt; font-family: consolas, 'Courier New', courier, monospace; background-color: #f4f4f4; border-style: none; padding: 0px;">PS &gt; $esxi = Connect-VIServer 192.168.0.51,192.168.0.55 -Credential (Get-Credential)

cmdlet Get-Credential at command pipeline position 1
Supply values <span style="color: #0000ff">for</span> the following parameters:
Credential
PS &gt; $esxi

Name                           Port                           User
----                           ----                           ----
192.168.0.51                   443                            root
192.168.0.55                   443                            root

PS &gt; $DefaultVIServer

Name                           Port                           User
----                           ----                           ----
192.168.0.55                   443                            root

PS &gt; (Get-VM | Measure-Object).Count
7
PS &gt; (Get-VM -Server $esxi | Measure-Object).Count
10</pre>
</div>
<p>Note that if you leave off the Server param, the cmdlets will operate on the most recently-connected server, which will be stored automatically in the $DefaultVIServer variable.</p>
<h3>Limitations to Management API in ESXi</h3>
<p><span style="text-decoration: line-through;">I just learned from the product group that most of the objects exposed by the VI API in the free edition are read-only.  This is pretty harsh.  This means your reporting scenarios will still work well, but you can forget about ongoing maintenance. I’ll probably post a follow up to this article once I have a better handle on what you can and can’t do.  Stay tuned.</span></p>
<p>Update @ 12/14/08 &#8211; With version 3.5U3, VMware has thankfuilly decided to remove all API restrictions. See <a href="http://www.mikedipetrillo.com/mikedvirtualization/2008/12/vmware-rcli-now-writes-to-esxi-free-hosts.html">this article</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://halr9000.com/article/612/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>
