tag:blogger.com,1999:blog-44428615646580291352018-08-29T09:38:17.711-07:00Grinding-IT-OutYour basic ITPro blog... What's going on at work, what I'm interested in.Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.comBlogger133125tag:blogger.com,1999:blog-4442861564658029135.post-78190286449564318272014-01-28T20:00:00.001-07:002014-01-28T20:00:48.416-07:00Poor Man’s Bandwidth Throttling<p>I had an issue. We use AppAssure for backups. The backup jobs that AppAssure would run against our main file server were using up all of our WAN link bandwidth. We have a high-speed (200Mb) <a href="http://www.centurylink.com/wholesale/pcat/ixcmoe.html" target="_blank">MoE</a> link between the site with our file server and the site with our AppAssure server. Our longer backup jobs would use all 200Mb of that link, or most of it. This was causing performance issues for other services trying to use that link also.</p> <p>My initial solution was to just pause my backup jobs during the time window when these other services were in need of bandwidth and performance. I would then unpause the jobs once they were finished. This kind of worked, but not really. Mainly because it was very labor intensive, with me having to manually manage the job pausing/unpausing. I needed something better.</p> <p>Version 2 of my ‘solution’ was to just set the speed/duplex of the network card on my AppAssure server to 100Mb/Full. This way, the most bandwidth it could use was half of my MoE pipe. This actually works pretty well. Well, it works as expected. Of course, longer backup jobs now ran about twice as long as they did before. So, I am still not where I want to be.</p> <p>Today, I implemented Version 3 of this solution. Now, I am scheduling the change of this speed/duplex setting on the network card. So, my AppAssure server is only set to 100Full during the small window that the other services are in need of the extra bandwidth. The rest of the time, AppAssure can use as much as it needs. This actually turned out to be pretty simple, once I figured it out.</p> <p>These settings are kept in  the Registry. So, I had to find the key holding this configuration information for my network card. It can be found at: HKLM\System\CurrentControlSet\Control\Class\<SSID>\<number>. I went to the \Class level and did a search for my network card name. I found the key and, after a little bit of poking around, found the value that stores SpeedDuplex. I verified that when I changed my settings on the network card in the GUI, the value would change in the registry. So, I knew I had the right registry key.</p> <p>From there, I just exported the key to a .reg file twice, once when the network card was set to 100Full and once when it was set to 1GBFull. I tested the .reg files by importing them back and forth and making sure that my network card settings were changing as I desired.</p> <p>The next step was to create to batch files, one to set the network card to 100Full and one to set it to 1GbFull. The batch files each had three lines:</p> <p><font face="Courier New">regedit /s <path to .reg file> <br />netsh interface set interface <interfaceName> DISABLED <br />netsh interface set interface <interfaceName> ENABLED</font></p> <p>The first line imports the appropriate .reg file. The next two lines reset the network card to apply the setting. Simple.</p> <p>Once I had the two .reg files and the two .bat batch files to apply my settings, I just used Task Scheduler to schedule these batch files to be run at the proper times. This allows my backups to run at full speed for most of the week, but still throttles them when my other apps need the bandwidth.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-32360831305799553182014-01-22T16:48:00.001-07:002014-01-22T16:48:53.262-07:00What Time Is It?!<p>We had an issue this weekend with our Checkin system. At least, that is how it initially appeared. It turned out, though to be something completely different.</p> <p>Our checkin kiosks were not opening the events at the right time. After a little bit of looking around, it turned out that our server had the wrong system time. When I heard about this, I was very confused. As a member server in our AD, it should have been getting the correct time from its local DC. Indeed, it was getting its time from the DC, but the DC had the wrong time also! This is where the actual problem presented itself.</p> <p>The issue was with how this particular DC was getting its time. As a VM (hosted on a Hyper-V cluster), it was set to get its time from its host server (the default for the Integration Services, I believe). So, the DC was getting its time from its host. Then the hosts, and my other servers in that AD Site, were getting their time from the DC. Each machine was feeding the other the wrong time.</p> <p>The solution? Turn off “Sync Time With Hyper-V Host” in the Integration Services section of the VM’s configuration.</p> <p><a href="http://lh5.ggpht.com/-zx5bF_ajRUg/UuBY4SJ3oqI/AAAAAAAAAVI/wApQZzX-FEo/s1600-h/image%25255B3%25255D.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://lh3.ggpht.com/-WoYGUoTA3Yw/UuBY461bnLI/AAAAAAAAAVQ/wUXuZxxIF60/image_thumb%25255B1%25255D.png?imgmax=800" width="450" height="311" /></a></p> <p>Then, as AD member machines, my servers started getting their time from my authoritative DC in my domain.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-80213666813282299492013-08-29T22:40:00.001-07:002013-08-29T22:40:46.755-07:00New Lab Migration–Part 3<p>The last server in this little lab of mine is the Exchange server. To recap, my network now looks like:</p> <ul> <li>DC1 running Windows 2012</li> <li>DC2 running Windows 2012</li> <ul> <li>AD forest/domain at Win2012 functional level</li> </ul> <li>FS1 running Windows 2012</li> <li>EXCH1 running Windows 2008 and Exchange 2010</li> </ul> <p>Like the other servers, I install the Windows 2012 disk and run setup</p> <ul> <li>Insert Windows 2012 setup DVD</li> <li>/setup.exe</li> <ul> <li>“Install now”</li> <li>Go online to install updates as needed</li> <li>Product key</li> <li>Select OS type to install</li> <li>Accept license terms</li> <li>“Upgrade”</li> <li>Compatibility report</li> <li>GO!</li> <li>A few reboots… This one is taking WAY longer than the others… Making me nervous.</li> <li>It FINALLY finished!</li> </ul> </ul> <p>It looks like the update worked. But, while waiting for this to finish, I did some research. It looks like early versions of Exchange 2010 don’t play nicely with Windows 2012. I am actually surprised that the lab Exchange server didn’t blow up when I upgraded the OS on it… From what I have read, I am surprised it is working. In either case, I will make sure that my production Exchange server is current with all updates before running the OS upgrade. Exchange 2010 SP3 and later seems to work fine with Windows 2012.</p> <p>This has been a good lab. I am confident that these upgrades will go well on my production systems. I have already run the checks (listed in Part 1) and my AD/replication/etc. all look good.</p> <p>Ready to go!</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-43190791218882807962013-08-29T20:08:00.001-07:002013-08-29T20:08:16.883-07:00New Lab Migration–Part 2<p>We have successfully upgraded our DCs. So, the network now looks like:</p> <ul> <li>DC1 running Windows 2012</li> <li>DC2 running Windows 2012</li> <ul> <li>AD raised to Windows 2012 functional level</li> </ul> <li>FS1 running Windows 2008R2</li> <li>EXCH1 running Windows 2008R2</li> <li>CLIENT1 running Windows 7</li> </ul> <p>I know want to run an in-place upgrade on the file server. I am just going to put the disk in and run setup.exe</p> <ul> <li>Insert Windows 2012 setup disk</li> <li>run /setup.exe</li> <ul> <li>“Install Now”</li> <li>Go online and install updates as needed</li> <li>Enter license key</li> <li>Pick OS type to install</li> <li>Accept license terms</li> <li>‘Upgrade’</li> <li>Warnings/Compatibility report</li> <li>GO!</li> <li>Reboots, etc.</li> <li>Done.</li> <li>Add Dedupe Role feature</li> <ul> <li>File and Storage Services Role</li> <ul> <li>File and iSCSI Services</li> <ul> <li>Data Deduplication</li> </ul> </ul> </ul> </ul> <li>Enable Dedupe on data volumes</li> <ul> <li>File and Storage Services</li> <ul> <li>Volumes</li> <ul> <li>Disks</li> <ul> <li>Select the data disk</li> <li>Under volumes, right click on volume and select “Configure Data Deduplication”</li> <ul> <li>Enable Data Dedupe</li> <li>Configure</li> </ul> </ul> </ul> </ul> </ul> <li>Wanted to test something I read about, some people having problems accessing network shares on Windows 2012 servers if the disk/volume is added after server is joined to domain</li> <ul> <li>Create new VHD and attach to FS1</li> <li>Set up disk</li> <li>Create the folders/shares</li> <li>Test access from client computer</li> <ul> <li>No problems accessing shares/files/folders on new volume. Good news.</li> </ul> </ul> <li>I set the dedupe aging to 1 day. I also copied a file over an over. Hopefully, it will dedupe and I can see the numbers.</li> </ul> <p>So far, everything is working well. Now, to see about upgrading the Exchange server.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-47867442787590214202013-08-29T18:04:00.001-07:002013-08-29T18:04:01.471-07:00New Lab Migration–Part 1<p>I outlined <a href="http://grinding-it-out.blogspot.com/2013/08/more-testing.html" target="_blank">here</a> a new lab that I am running. My goal is to test in-place upgrades from Win08 to Win12 on DCs, File servers, and Exchange2010 servers.</p> <p>My first step is to upgrade the DCs.</p> <p>To review, the current lab network consists of:</p> <ul> <li>DC1 running Win08R2 <ul> <li>Running AD, DNS, DHCP </li> </ul> </li> <li>DC2 running Win08R2 <ul> <li>Running AD, DNS </li> </ul> </li> <li>FS1 running Win08R2 <ul> <li>Various shares, files, ACLs, etc. </li> </ul> </li> <li>EXCH1 running  WIN08R2 and Exchange 2010 </li> <li>CLIENT1 running Win7 </li> </ul> <p>So, my first step is going to be upgrading the DCs and domain to Windows 2012. I will be following the steps I outlined in <a href="http://grinding-it-out.blogspot.com/2013/03/upgrading-fileserver-and-domain-from_13.html" target="_blank">this post</a>. Should be pretty straightforward.</p> <p>First, run a couple of test tools to see if anything looks horrible.</p> <ul> <li>Dcdiag /v /c /d /e /s:<b>DCName</b> >c:\dcdiag.log [please replace <b>DCName</b> with your Domain Controller name]</li> <li>Repadmin /showrepl <b>dc*</b> /verbose /all /intersite >c:\repl.log ["<b>dc*</b> is a place holder for the starting name of the DCs if they all begin the same (if more than one DC exists)]</li> <ul> <li>These are taken from <a href="http://msmvps.com/blogs/mweber/archive/2012/07/27/upgrading-an-active-directory-domain-from-windows-server-2008-or-windows-server-2008-r2-to-windows-server-2012.aspx" target="_blank">here</a>.</li> </ul> </ul> <p>Then…</p> <ul> <li>On DC1</li> <ul> <li>AD Sites and Services to force replication</li> <li>Start command prompt as Administrator</li> <ul> <li>from Windows2012 install disk</li> <ul> <li>\support\adprep\adprep /forestprep</li> <li>\support\adprep\adprep /domainprep</li> <li>\setup.exe</li> <ul> <li>Go online and get updates as needed</li> <li>Enter product key</li> <li>Select OS to install (core, w/GUI, etc.)</li> <li>Accept license terms</li> <li>‘Upgrade’</li> <li>Warnings?</li> <li>GO!</li> <li>Automatic reboot</li> <li>More GO!</li> <li>A couple more reboots…</li> <li>All Done!</li> </ul> </ul> </ul> <li>Verify services and everything looks OK.</li> </ul> <li>Reboot Mail server</li> <ul> <li>Looks like it needs the new schema info</li> </ul> <li>Reboot file server</li> <ul> <li>For good measure</li> </ul> <li>Test client connectivity, services, etc.</li> <li>On DC2</li> <ul> <li>from Windows2012 install disk</li> <ul> <li>run \setup.exe</li> <ul> <li>Go online and get updates as needed</li> <li>Enter product key</li> <li>Select OS to install</li> <li>Accept license terms</li> <li>‘Upgrade’</li> <li>Warnings?</li> <li>GO!</li> <li>Etc. Etc. </li> <li>All Done!</li> </ul> </ul> </ul> <li>Force replication between DCs</li> <li>AD Domains and Trusts</li> <ul> <li>Right-click on AD Domains and Trusts</li> <ul> <li>Raise Forest functional level</li> </ul> </ul> </ul> <p>Everything seems to have worked as advertised in the lab! I know have two Windows 2012 DCs with a Windows 2012 forest/domain.</p> <p>Now, on to the file server upgrade.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-52672648271680628152013-08-29T09:22:00.001-07:002013-08-29T09:22:05.111-07:00More Testing<p>I am back in my lab, doing some more testing. I have decided that this is the year to get off of Win08 and move everything I can to Win2012. To that end, I am building a lab that replicates our production environment and am going to do some upgrade/migration testing. Specifically, I want to test (and perhaps re-test):</p> <ul> <li>Windows08R2 AD upgrade to Windows 2012 AD</li> <li>An existing file server, running Windows08, upgrade to Windows2012</li> <li>An existing Exchange2010 server, running on Windows08, upgrade to Windows2012</li> </ul> <p>My plan is to do these three upgrade in this order.</p> <p>My starting environment will look like this:</p> <ul> <li>DC1 running Win08R2</li> <ul> <li>Running AD, DNS, DHCP</li> </ul> <li>DC2 running Win08R2</li> <ul> <li>Running AD, DNS</li> </ul> <li>FS1 running Win08R2</li> <ul> <li>Various shares, files, ACLs, etc.</li> </ul> <li>EXCH1 running  WIN08R2 and Exchange 2010</li> <li>CLIENT1 running Win7</li> </ul> <p>All of these machines will be part of the AD domain. My plan is to test in-place upgrade of the OS for all of these servers, in the order listed.</p> <p>We will see how it goes. Stay tuned.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-57757642833818762902013-03-20T13:19:00.001-07:002013-03-20T13:19:32.156-07:00DFS Testing In A Lab–Part 2<p>Here in part two, I am going to add two file servers and a client computer to the lab network. I discovered that I also want to test another feature on my lab. </p> <p>Our current file server is running Win08. I have a disk on my SAN that is being passed-through to the file server VM and used to store my file shares. I want to test turning up a Win12 file server and moving the disk over. It will be great if this is a fairly simple operation.</p> <p>Another thing I will want to test is upgrading a Win08 domain to a Win12 domain. This would be a true test of upgrades in our environment. More blog posts to come!</p> <p>In any case, here are the steps I am taking to add file servers, clients, and DFS in to the environment:</p> <ul> <li>Add a Win08 file server to domain.</li> <li>Add a Win12 file server to domain.</li> <li>Add a Win8 client computer to domain.</li> </ul> <p>Simple enough.</p> <p>The Win08 file server had the File Services Role on it. I am basically following the steps outlined on the website (listed below under Resources) to implement DFS.</p> <ul> <li>Add the DFS Role Service</li> <li>Using DFS Management tool, create the namespace</li> <ul> <li>First decision, which server to make the namespace host. First thought was the file server itself. But, decided to go with my DCs after reading a bit online.</li> <li>Left all namespace host related options at default.</li> </ul> <li>Opted for domain-based namespace.</li> <li>Once the namespace was created, I added my other DC as another namespace server.</li> <li>Add two folders to the namespace, my ‘groups’ folder and my ‘users’ folder.</li> <ul> <li>Add a folder called ‘groups’</li> <li>Selected the ‘groups’ shared folder on FS01</li> <li>Did the same for my ‘users’ shared folder</li> </ul> <li>Enable access-based enumeration on the namespace</li> <ul> <li>Right-click on namespace and select ‘Properties’</li> <li>Advanced Tab | checkbox to ‘Enable access-based enumeration for this namespace’</li> </ul> <li>From a second file server, I added second folder target to the ‘groups’ DFS folder.</li> <ul> <li>I was hoping that DFS would aggregate the available folders from the multiple targets into a single namespace, for example:</li> <ul> <li>FS01</li> <ul> <li>groups\folder1</li> <li>groups\folder2</li> </ul> <li>FS02</li> <ul> <li>groups\folder3</li> <li>groups\folder4</li> </ul> <li><domain>\groups\</li> <ul> <li>folder1</li> <li>folder2</li> <li>folder3</li> <li>folder4</li> </ul> </ul> <li>But, it does not seem to work this way.</li> <li>I was able to create a replication group with these two folders in it. Now, both servers have identical data on it.</li> </ul> </ul> <p>Some thoughts-</p> <ul> <li>There are no DFS-related Powershell cmdlets for Win08, only Win8/Win12. In my production environment, we are Win08 (at the domain and file server). This could be a compelling reason to upgrade.</li> <li>Moving to DFS won’t be as straightforward as I was initially anticipating. I will have to do some design work to implement DFS, rather than just install it and point it to my current shares.</li> <ul> <li>I will likely want just a subset of my shared folder replicated between my sites. This will require that I break things out a bit and design an appropriate DFS namespace/folders.</li> </ul> </ul> <p>There is still a lot to learn about DFS. But, this was a good introduction. As always, please add your comments/experiences below.</p> <p>Resources:</p> <p><a title="http://technet.microsoft.com/en-us/library/cc732863%28v=ws.10%29.aspx" href="http://technet.microsoft.com/en-us/library/cc732863%28v=ws.10%29.aspx">http://technet.microsoft.com/en-us/library/cc732863%28v=ws.10%29.aspx</a></p> <p><a title="http://social.technet.microsoft.com/Forums/en-US/winserverfiles/thread/6a745bf3-78c5-4739-9add-2ed171c8e65b/" href="http://social.technet.microsoft.com/Forums/en-US/winserverfiles/thread/6a745bf3-78c5-4739-9add-2ed171c8e65b/">http://social.technet.microsoft.com/Forums/en-US/winserverfiles/thread/6a745bf3-78c5-4739-9add-2ed171c8e65b/</a></p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-9563969888116276292013-03-13T16:35:00.001-07:002013-03-13T16:35:31.203-07:00Upgrading A Fileserver (and domain) from Win08 to Win12–Part 3<p>In Part 3 here, I am going to look at upgrading my domain from Win08R2 to Win12. I shut all my test VMs off, snapped them, and then started them back up.</p> <p>Now, there are likely a number of things to consider before doing an upgrade like this. I am sure I could go to <em><insert preferred search engine></em> and quickly find countless articles and blogs on this process. But, I figured I would just put the Win12 DVD in one of my DCs and run setup. Let’s see what happens.</p> <p>So, setup runs, asks for a key, has me pick a version, runs a compatibility report… and STOPS! It looks like I need to run ADPREP before installing. Doing that now; running ADPREP /FORESTPREP</p> <p>Failure. ADPREP could not verify that schema master has replicated AD to all DCs… or some such error. I used Sites and Services to replicate and tried again. SUCCESS! Running setup.exe again.</p> <p>Fail! Need to run ADPREP /DOMAINPREP as well. (For some reason, I would have figured that these steps would have been more automated). Command was a success. Third time’s a charm?</p> <p>Compatibility Check gives me a NEXT button, rather than a CLOSE button. Looking good. Installing. Rebooting. Getting ready. Another reboot. </p> <p>LOGIN SCREEN!</p> <p>Logging in, I see that DNS, DHCP, AD all look good. So, to update my functional level to Win12, I need to upgrade my second DC as well. Doing that now. Heh. No need to run ADPREP again…  :/</p> <p>Upgrade was successful. I tried updating the forest functional level, but it said that there were DCs in my domain that were not on the correct Windows version. Both DCs have been upgraded to Win12. Maybe server reboots will help?</p> <p>Active Directory Domains and Trusts will not let me raise the forest or domain functional level. But, using the Active Directory Administrative Center lets me do it. Oops. Actually that failed too. It looks like this was a replication issue between the DCs again. Like before, I used AD Sites and Services to manually replicate between DCs. After replication, AD-D&T let me raise the functional level without a problem.</p> <p>So, from this test, it looks like the basic steps are:</p> <ul> <li>From the Win12 disk on first DC</li> <ul> <li>run ADPREP /FORESTPREP</li> <li>run ADPREP /DOMAINPREP</li> <li>run setup.exe</li> </ul> <li>Check and make sure services are working</li> <li>From the Win12 disk on next DC</li> <ul> <li>run setup.exe</li> <li>repeat as necessary</li> </ul> <li>Make sure DCs have all replicated with each other and are all up-to-date with domain info</li> <li>Raise the forest/domain level to Win12</li> <li>Double-check everything</li> </ul> <p>Easy!</p> <p>Of, course… you should make sure that you have good, usable backups of your domain/DCs. Also, as notes on the article listed below, you should probably run some checks to make sure there are no problems with your domain.</p> <p> </p> <p>Resources:</p> <p><a title="http://msmvps.com/blogs/mweber/archive/2012/07/27/upgrading-an-active-directory-domain-from-windows-server-2008-or-windows-server-2008-r2-to-windows-server-2012.aspx" href="http://msmvps.com/blogs/mweber/archive/2012/07/27/upgrading-an-active-directory-domain-from-windows-server-2008-or-windows-server-2008-r2-to-windows-server-2012.aspx">http://msmvps.com/blogs/mweber/archive/2012/07/27/upgrading-an-active-directory-domain-from-windows-server-2008-or-windows-server-2008-r2-to-windows-server-2012.aspx</a></p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-25794484926093754322013-03-12T09:31:00.001-07:002013-03-12T09:31:33.088-07:00Upgrading A Fileserver (and domain) from Win08 to Win12–Part 2<p><em>NOTE: This blog post is primarily my notes on this test. While I hope you find it informative (and feel free to ask any questions about it), I am mainly using this to keep my information straight. Thanks.</em></p> <p>Here in Part 2 of my little test, I have completed setting up the environment. I have:</p> <ul> <li>2x Win08 domain controllers</li> <li>1x Win08 file server</li> <li>1x Win12 file server</li> <li>1x Win7 client</li> </ul> <p>My next steps are these:</p> <ul> <li>Record folder share and security information</li> <li>Shut down both file servers</li> <li>Move the VHD containing my actual data from old file server to new file server</li> <li>Bring up the new file server</li> <li>Make sure the new file server can see the data VHD</li> <li>Re-create the shares on the new file server</li> <li>Test access and connectivity from the client computer</li> </ul> <p>The process to manage shares is a little different in Win12 than in Win08. </p> <ul> <li>Computer Management | Storage | Disk Management</li> <ul> <li>Bring disk online</li> <li>Assign drive letter (E:)</li> <li>Share folders, using the same settings as on the old file server</li> <li>Enable ABE</li> <ul> <li>Server Manager | File and Storage Services | Shares</li> <li>Right-click on share | select Properties</li> <li>Settings | Enable access-based enumeration</li> </ul> </ul> </ul> <p>Things look good from my client. Too easy!</p> <p>Now, in production, there are other steps of course. Modifying logon scripts, drive mappings, backups (new base in AppAssure, OUCH!). But it looks like I can get our file serving moved onto a Win12 box without too much difficulty.</p> <p>As I think more about it, the ‘backups’ question may prove to be a tough one… We use AppAssure for backups. Our repository does not have enough room to do ANOTHER base image of our main file server. Moving this data to a new Win12 box would, I think, trigger a new base image to be taken. Looking at AppAssure, I may be able to delete old base images of our old file server and see if that won’t free up enough room to take the new base. Once the new file server is up and running and have some backup history in place, I can then clear out the rest of the old file server images.</p> <p>Now, to look at Win08-to-Win12 domain upgrade.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-29906256236724118442013-03-11T13:20:00.001-07:002013-03-11T13:20:41.348-07:00Upgrading A Fileserver (and domain) from Win08 to Win12–Part 1<p>I am setting up another quick lab to test two things out…</p> <ol> <li>Upgrading my fileserver from Win08 to Win12. I will actually be creating a new file server and just moving a disk from the SAN to the new server. At least, I am hoping this will work smoothly.</li> <li>Upgrading my domain from Win08R2 to Win12.</li> </ol> <p>I should be able to do both tests with a very simple lab environment. The lab will consist of:</p> <ul> <li>DC01 (Win08)</li> <li>DC02 (Win08)</li> <li>FS01 (Wino8)</li> <li>FS03 (Win12)</li> <li>Client02 (Win7)</li> </ul> <p>I will test the file server upgrade first and the domain upgrade second. The plan is simple… Set up a file server with a few shares, files and folders using security groups for access permissions, ABE, etc. Your standard fare, and a fair representation of what we have in production. I will then turn up the Win12 file server and see about moving the disk from the old to the new. I am guessing that I will need to duplicate the share configuration on the new server. But, the NTFS permissions should ‘just work’. (famous last words). Then, just tell everyone the new server name (hoping that, someday, DFS will alleviate this step).</p> <p>Once I get this file server migration tested, I am then going to look at the DC upgrade and domain migration. Fun!</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-14674932087330755522013-03-07T14:36:00.001-07:002013-03-07T14:36:49.207-07:00DFS Testing In A Lab–Part 1<p>I have never used DFS before. This changes now.</p> <p>As noted in a <a href="http://grinding-it-out.blogspot.com/2012/04/we-have-test-lab-environment.html" target="_blank">previous blog post</a>, we have a small lab setup in place. My plan is to build out a Windows 2012 domain and do some DFS testing. My thinking for an initial setup is the following:</p> <ul> <li>Networks <ul> <li>Lab LAN01 </li> <li>Lab LAN02 </li> </ul> </li> <li>Servers <ul> <li>Win12-DC01 <ul> <li>192.162.1.10 </li> <li>AD, DNS, DHCP for 192.168.1.200+ </li> </ul> </li> <li>Win12-DC02 <ul> <li>192.168.2.10 </li> <li>AD, DNS, DHCP for 192.168.2.200+ </li> </ul> </li> <li>Win12-RRAS <ul> <li>192.168.1.1 </li> <li>192.168.2.1 </li> </ul> </li> <li>Win12-FS01 <ul> <li>192.168.1.20 </li> </ul> </li> <li>Win12-FS02 <ul> <li>192.168.2.20 </li> </ul> </li> <li>Win7-Client01 <ul> <li>DHCP Client </li> </ul> </li> </ul> </li> </ul> <p>The setup will be pretty basic, but I am hoping it will allow me to install, configure, and test the features of DFS. The domain will have two sites on two subnets. DFS will be configured and used on both file servers. In this Part 1 post, O will be setting up the RRAS server and the two domain controllers. Here are the actual configuration steps I am taking:</p> <ul> <li>Create VMs (differencing disks from a base Win12 install)</li> <li>Configure RRAS server first</li> <ul> <li>Rename server.</li> <li>This server has two NICs. Give each its IP address. Only configure IP address and subnet mask.</li> <li>Installed the ‘Remote Access’ Role (which added other roles and features as needed).</li> <ul> <li>Made sure the ‘Routing’ Role service was selected</li> </ul> <li>Open RRAS console.</li> <ul> <li>Right-click on server and select ‘Configure and Enable Routing and Remote Access’</li> <li>Enable LAN-to-LAN routing</li> </ul> <li>Enable ‘Allow PING’ in firewall</li> </ul> <li>Configure first DC</li> <ul> <li>Configure IP address</li> <li>Rename server</li> <li>Enable ‘Allow PING’ in firewall</li> <li>Install ADDS Role</li> <li>Promote server to DC</li> <ul> <li>Create new domain: DFSLab.local</li> </ul> <li>Install DHCP Role and configure to hand out IP addresses for clients on the 192.168.1.x network</li> </ul> <li>Configure second DC</li> <ul> <li>Configure IP address</li> <li>Rename server</li> <li>Enable ‘Allow PING’ in firewall</li> <li>Install ADDS Role</li> <li>Promote server to DC</li> <ul> <li>Add to existing domain</li> <ul> <li>Had to move the server onto the same subnet as my first DC</li> <li>Had to add a DNS server address in the IP config</li> </ul> </ul> <li>Put server back on its own subnet</li> </ul> <li>Set up two Sites and subnets in Active Directory Sites and Services</li> <li>Test connectivity</li> </ul> <p>In Part 2, I will be adding the two file servers and a client computer.</p> <p>I would love to hear your thoughts and recommendations regarding this. I am in new waters here and any guidance/thoughts/hints would be wonderful.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-86781763542496716222013-03-06T11:14:00.001-07:002013-03-06T11:47:21.831-07:00Name Migration Between IIS Servers<p>We are migrating our current Arena server’s name to our new Arena server. Our initial thought was to simply remove the old server from the network and modify the DNS record for OLDARENA to point to the IP address of NEWARENA. When we did this, we found our new server would challenge us for AD credentials.</p> <p>The problem turned out to be with SPNs. Even with the changes listed above, the SPNs for OLDARENA were still associated with the actual OLDARENA server. Deleting these SPNs resolved the auth/credentials/kerberos issues. For completeness, we added the SPNs to the associate with the NEWARENA server.</p> <p>We used the “setspn” command line tool to accomplish this. See for information: <br /><a title="http://technet.microsoft.com/en-us/library/cc731241%28v=ws.10%29.aspx" href="http://technet.microsoft.com/en-us/library/cc731241%28v=ws.10%29.aspx">http://technet.microsoft.com/en-us/library/cc731241%28v=ws.10%29.aspx</a></p> <p>This blog post put me on the right track: <a title="http://blogs.iis.net/brian-murphy-booth/archive/2007/03/09/the-biggest-mistake-serviceprincipalname-s.aspx" href="http://blogs.iis.net/brian-murphy-booth/archive/2007/03/09/the-biggest-mistake-serviceprincipalname-s.aspx">http://blogs.iis.net/brian-murphy-booth/archive/2007/03/09/the-biggest-mistake-serviceprincipalname-s.aspx</a></p> <p> </p> <p>Other item of note: <br />DNS record replication between DNS servers. When making static changes, records are having a hard time replicating. Looks to be a timing issue. As troubleshooting steps, I deleted the DNS record and then rebooted the server, hoping (correctly) that it would trigger a DNS record add/update. Replication then occurred to my other DNS servers after a short period of time.</p> <p>UPDATE: A much better account of this: <a title="http://codersforchrist.com/cs/blogs/nick/archive/2013/03/06/Server-Swap-Leads-to-SPN-Discovery.aspx" href="http://codersforchrist.com/cs/blogs/nick/archive/2013/03/06/Server-Swap-Leads-to-SPN-Discovery.aspx"> <br />http://codersforchrist.com/cs/blogs/nick/archive/2013/03/06/Server-Swap-Leads-to-SPN-Discovery.aspx</a></p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-29710619987565598422013-02-04T12:11:00.001-07:002013-02-04T12:11:04.650-07:00VM Migration from 2008 to 2012… Not too Smooth<p>Well, the Cluster Migration Wizard worked like a charm. That is to say, the configuration has been migrated successfully. It is almost too easy. I am amazed that migration from a Win08 Hyper-V cluster to a Win12 Hyper-V cluster is turning out to be so simple. Tonight, I will actually move the SAN resources to the new cluster.</p> <p>More to come this evening: SAN management with the MD3000i, turning VMs up on the new cluster, celebrate!</p> <p>--------</p> <p>Not so fast… I migrated the SAN virtual disks to the new cluster and tried to bring the resources online. No dice. Then, after some researching, I realized that I had not put the MD3000i management software on the servers, which included their MPIO drivers. Oh yeah, I remember that now. Once I did this, all was shiny!</p> <p>The CSVs came online in the new cluster. But, there is another problem… Some VMs start, others fail. Recommendation is to run the cluster validation tool. (Did I say things were almost too easy somewhere above?!)</p> <p>The validation tool showed a couple of warnings, but no show-stoppers. Also, I more robustly configured the iSCSI Initiator, using multiple connections and enabling MPIO. </p> <p>Server reboots.</p> <p>Some VMs start, other don’t. Getting event IDs 1069, 1205.</p> <p>I blew out the VM configs for the VMs that won’t start. Created new configs and attached my existing VHDs. Things are starting now.</p> <p>Some VMs won’t live migrate. Turns out these are the Vms that WOULD start after migration. Strange. Did a quick migrate on the VM. It moves to the new host but won’t resume. Turns out the NIC config was showing bad. Reset the NIC config to point to a valid virtual switch port. All seems good now.</p> <p>After running fine over the weekend, VM host server lost connectivity to MD3000i iSCSI disks. Had to reboot the MD3000i and VM host machines. things seem to be running smoothly now.</p> <p>We will see how things go this week.</p> <p>It’s been an adventure.</p> <p> </p> <p>RESOURCES:</p> <p><a title="http://paulgrevink.wordpress.com/2012/02/21/configure-dell-md3000i-mpio-with-windows-2008-r2/" href="http://paulgrevink.wordpress.com/2012/02/21/configure-dell-md3000i-mpio-with-windows-2008-r2/">http://paulgrevink.wordpress.com/2012/02/21/configure-dell-md3000i-mpio-with-windows-2008-r2/</a></p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-20744814772770924692013-01-29T08:32:00.001-07:002013-01-29T08:32:13.961-07:00Some Not-Minor Work This Evening<p>We here at Central have some work lined up this evening. The biggest task will be upgrading our Hyper-V infrastructure. We currently have three Win08 Hyper-V servers (clustered) hosting our VMs. I have blogged about this environment in the past. We recently got three new servers and are running Win2012 DCE on them. These will be our new Hyper-V servers. Everything is set up and ready for the Cluster Migration Wizard to do its thing. Based on what I have read, and some initial test, this should be a pretty smooth process.</p> <p>The biggest upgrade in all of this is our host memory situation. We are going from 32GB per host to 96GB per host. This will give us the ability to add some memory to some of our high-need VMs (Exchange, SQL Server, etc.). I am hoping that these systems will be a bit better performing after this work.</p> <p>Here’s to hoping the “Cluster Migration Wizard” performs as advertised!</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-64753002517235168692013-01-08T13:05:00.001-07:002013-01-08T13:05:15.998-07:00A New Year, Win2012 Hyper-V Servers<p>Long time! The new year is starting off with a big project. We currently have three Win08 Hyper-V servers clustered hosting out VMs. We will soon be replacing them with three Win12 boxes. These new servers will have 3x the memory and beefier guts in general. I am excited to see the new Hyper-V and the new server OS. Updates to come. Comments (if you have been through this already) welcome!</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-79758771589245458932012-05-30T13:24:00.001-07:002012-05-30T13:24:19.066-07:00Network Configured To Automate Cisco APs<p>We had a couple Cisco APs go bad on us recently. I bought a couple replacements and soon realized that my laptop doesn’t have a COM port… No consoling in to set IP config on the APs. After a little research, I decided to set up out network (DHCP, DNS) to auto-config new APs. Short version below:</p> <p>Configured network infrastructure to support Cisco Aironet c1300 series APs.</p> <ul> <li>Created DNS entry in domain: CISCO-LWAPP-CONTROLLER.myDomain.com –> <IP of WLC></li> <li>In DHCP Scope</li> <li>Added Scope Option: 43 = <calculated HEX value></li> <ul> <li>See: http://www.cisco.com/en/US/tech/tk722/tk809/technologies_configuration_example09186a00808714fe.shtml#t1 </li> <li>See: http://www.cisco.com/en/US/docs/wireless/access_point/1130/installation/guide/1130hig_book.pdf</li> </ul> <li>Reset APs to factory defaults: held down reset button while plugging power in. </li> <li>Plugged AP into network. </li> <li>Once WLC sees and updates the AP: </li> <ul> <li>Rename AP </li> <li>Enable HREAP (as needed)</li> <li>Change AP Group as needed </li> <li>Verify all settings</li> </ul> </ul> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-35581386738951280532012-04-24T22:31:00.001-07:002012-04-24T22:31:14.283-07:00We Have A Test Lab Environment!<p>It have been a long time in coming, but we have a small test lab environment. We were able to get a single Dell 2950 server with some memory (32GB) and some disk (6x2TB drives).</p> <p>I put Win08R2 on running the Hyper-V role. I used the <a href="http://www.microsoft.com/download/en/details.aspx?id=6815" target="_blank">Microsoft Test Lab Guide Base Configuration</a> to set up an initial lab environment. To speed things up, my VMs all use differencing disks pointing to a sysprepped ‘base disk’ for each OS (Windows Server 08 R2 and Windows 7 64bit Professional). This let’s me turn up new machines in just a few minutes.</p> <p>Some of the first things I am going to be testing in this lab are a few possible backup solutions. Specifically, I am going to be looking at Data Protection Manager and AppAssure.</p> <p>I am very excited to be able to test before implementing now.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-15005351080442382522012-03-23T11:31:00.001-07:002012-03-23T11:31:59.209-07:00Oh, by the way… We migrated to Exchange 2010<p>So, yeah… We did that last week.</p> <p>First things first, sorry for being such a horrible blogger. </p> <p>We were running an Exchange 2003 environment in our old domain and have been running two AD domains side-by-side to way too long. Our new domain (Win2008) did not have email and we were managing multiple domains. A total pain.</p> <p>So, we finally put Exchange 2010 in our new domain and migrated everyone and everything. Overall, it went pretty well. There were no show-stoppers. We are not using public folders in the new environment, so we are sharing “public” calendars from a resource user. It is functioning, I think. We are not a SharePoint shop (and aren’t likely to become one), so this is how I think we need to do it.</p> <p>We upgraded all of our clients to Outlook 2010 before the migration, so profiles moved over automagically… for the most part. There were a few issues to mitigate, but creating a new Outlook profile usually did the trick.</p> <p>Thank you to <a href="http://bricomp.com/">BriComp</a> for their help and hand-holding, especially in setting up the new Exchange 2010 server… yes, a single server running all essential roles. We have a pretty simple environment.</p> <p>Another shout-out to <a href="http://www.digicert.com/">DigiCert</a>. They provided us with our SSL cert for the new environment. Super easy and super fast to work with. Couldn’t be happier!</p> <p>Last steps now… Make sure we don’t need our old domain/Exchange any more and decommission it. Then, any lingering clean-up.</p> <p>It will be nice to have just the one domain to deal with again.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-58967783219023392292012-01-26T13:33:00.001-07:002012-01-26T13:33:00.395-07:00Long time, no blog…<p>So, it has been quite a while since I have posted anything here. Did you miss me? Heh… as if anyone is here.</p> <p>Anyway, here’s a quick synopsis of the current goings-on around here:</p> <p>1) Moving forward on our Exchange migration project. This is a biggie. We are currently running to forests/domain side by side. One domain (Win08) hosts everything EXCEPT email. The second domain (Win03) hosts our email. This has not be ideal, to say the least, from a usability and management point. But, we are going to be rectifying that shortly. We are going to be putting in an Exchange 2010 infrastructure in our new domain and migrating everything to that. So, we will finally be able to decommission our old domain and be rid of this multi-domain structure. Looking forward to that!</p> <p>2) Continuing my ‘developing development’. I finished version 1.0 of my <a href="http://grinding-it-out.blogspot.com/2011/08/iis7-virtual-directory-reportingpart-ii.html" target="_blank">Friendly URL Management App</a>. It is an <a href="http://www.shelbysystems.com/products/shelbyarena/" target="_blank">Arena</a> module and works pretty well, though it is a bit slow form a performance standpoint. I haven’t done any work on trying to optimize it yet. But, it is functioning. Users can visit the page to see which Friendly URLs (fURLs! Just thought of this… and like it!) exists, check their destinations, create requests to add new or edit fURLs, etc. Users can also get a QR Code for the fURL, even choosing the size of the QR Code. The app also has a management component so I can add/edit/remove fURLs from the web interface. All in all, it is a great app and I learned a ton writing it! As always, I have to give huge shout-outs to <a href="http://codersforchrist.com/cs/blogs/nick/default.aspx" target="_blank">Nick</a> and <a href="http://jsondata.tumblr.com/" target="_blank">Jason</a> for their guidance, input, and mentoring. Thanks guys!!</p> <p>3) Along the lines of Point 2 above, I have been working on a new Arena App recently. This app is for our Prayer Ministry and is intended to replace an existing app with the same functionality. The existing app is hosted off-site (at a cost to us) and does not leverage any of the functionality/data available to us in Arena. So, I have been working on creating an Arena’ed version of the app. Basically, this is an app to collect prayer requests for various contributors and then create a book/compilation that is distributed to prayer team members. This has been a fun project to work on and, again, I have learned so much. I am excited by the prospect of actually rolling this out for use by our Prayer Ministry.</p> <p>4) In addition to all of this, I still have my day-to-day work on network management, Windows server admin, backups, etc. etc. etc.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-57273016894508309222011-08-17T12:53:00.001-07:002011-08-17T12:53:44.897-07:00IIS7 Virtual Directory Reporting–Part II<p><a href="http://grinding-it-out.blogspot.com/2011/06/iis7-virtual-directory-reporting.html" target="_blank">My last post</a> was on the topic of IIS Virtual Directory reporting in Powershell. The script worked well and gave me a nice little report that I could then send off to others in our Communications Department, for example, when requested. It wasn’t long after this that it was suggested that we build a webpage that generated this report. Then, our Communications Department could just go view the report for themselves.</p> <p>Coincidentally, I have been working on improving my web development skills. So, I was asked if I wanted to try and tackle this task. I did and we came up with the following short list of features:</p> <ul> <li>Report a list of current Virtual Directories and their httpRedirect – or “Friendly URL” – attributes.</li> <li>Provide a QR Code for each Friendly URL.</li> <li>Link to our Arena assignment page to Add/Change a Friendly URL.</li> <li>FOR ME: A page to create/modify Friendly URLs.</li> </ul> <p>My initial thoughts on how I would accomplish this included parsing the XML in web.config files, traversing physical folders, reading other .config files for the relevant data, etc. It seemed like it was going to be very complicated. Then, as I was researching this project further, I came across the magic that is the <a href="http://msdn.microsoft.com/en-us/library/microsoft.web.administration%28v=vs.90%29.aspx" target="_blank">Microsoft.Web.Administration Namespace</a>. As you can imagine (or already know if you are familiar with it), this made things MUCH simpler.</p> <p>Now, I’m no developer (yet), but I am learning and hope to become somewhat proficient someday. I have two great friends, resources, and mentors in <a href="http://codersforchrist.com/cs/blogs/nick/default.aspx" target="_blank">Nick</a> and <a href="http://jsondata.tumblr.com/" target="_blank">Jason</a> here at <a href="http://www.centralaz.com/" target="_blank">Central</a>. With their help, I am actually getting this project built. The goal is to implement it as an <a href="http://www.shelbysystems.com/products/shelbyarena/" target="_blank">Arena</a> module to leverage various Arena features.</p> <p>I hope to have more to come in the near future as this project develops. It has been fun so far and I have already learned a ton… Mostly, I am learning just how much I DON’T know!</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-32722937650496547652011-06-22T08:58:00.001-07:002011-06-23T09:32:19.246-07:00IIS7 Virtual Directory Reporting<p align="center"><strong>WARNING:</strong> This post is bred out of ignorance. I don’t know much at all about IIS7 administration (it’s new to us) or the IIS7 Powershell cmdlets. Everything below is a result of web searches and trial-and-error. I am completely confident that there is a better and easier way to accomplish this stuff. I would love to hear about it! Thanks!</p> <p>***</p> <p>I got a request for a list of our virtual directories and their ‘HTTP Redirect’ settings on our web server. We are running IIS7. I knew that there is a Powershell module for IIS7 management – named ‘WebAdministration’ – so I figured that this would be an easy one-liner… something like:</p> <p>- Get-WebVirtualDirectory | Select Name, HTTPRedirectDestination</p> <p>Or something similar…</p> <p>But, this did not work. After looking around for a while, it looks like the WebVirtualDirectory cmdlets don’t have any capacity to report on, or modify, these settings. Further, some of my vDirs had this information stored in a web.config file in their physical path location and some did not (was it in the IIS metabase?!). I would look at the web.config files of two vDirs that looked the same in the GUI and the web.config files would have totally different settings. I was getting very confused and frustrated.</p> <p>But, I need this report so I needed a plan of attack. I settled on the following:</p> <ul> <li>Get all vDir configurations to be consistent, using a web.config file. <ul> <li>Make sure each vDir has a unique physical path. </li> <li>Make sure each vDir has a web.config file with the proper configuration items. </li> </ul> </li> <li>Write a Powershell script to list vDirs and pull the redirect destination information out of the web.config file. </li> </ul> <p>To that end, I ended up with the following few lines of Powershell -</p> <div> <pre id="codeSnippet" class="csharpcode">$hashTable = @{}<br /><br /><span class="kwrd">foreach</span> ($virtualDirectory <span class="kwrd">in</span> Get-WebVirtualDirectory)<br />{<br /> $vdName = $virtualDirectory.Path.Trim(<span class="str">'/'</span>)<br /> $vdPath = $virtualDirectory.physicalPath<br /> $webConfig = $vdPath + <span class="str">"\web.config"</span><br /> $webConfigXML = [xml](Get-Content $webConfig)<br /> $redirectDestination = $webConfigXML.configuration.FirstChild.httpRedirect.destination<br /><br /> $hashTable[$vdName] = $redirectDestination<br />}<br /><br />$hashTable.GetEnumerator() | Sort Name</pre>
</div>
<div>From here, I just Out-File the script results to a text file and send the report off. Functional, I guess.</div>
<div> </div>
<div>*******************</div>
<div> </div>
<div>UPDATE: I updated this script a bit to add a little more information to the output. I also changed the output object from a hashtable.</div>
<div> </div>
<div id="codeSnippetWrapper">
<pre id="codeSnippet" class="csharpcode">$vDirs = @()<br /><br /><span class="kwrd">foreach</span> ($virtualDirectory <span class="kwrd">in</span> Get-WebVirtualDirectory)<br />{<br /> $vdName = $virtualDirectory.Path.Trim(<span class="str">'/'</span>)<br /> $vdPath = $virtualDirectory.physicalPath<br /> $webConfig = $vdPath + <span class="str">"\web.config"</span><br /> $webConfigXML = [xml](Get-Content $webConfig)<br /> $redirectDestination = $webConfigXML.configuration.FirstChild.httpRedirect.destination<br /> $vdCreationDate = (Get-ChildItem $vdPath).CreationTime <span class="rem">#.ToShortDateString()</span><br /><br /> $obj = New-Object object<br /> Add-Member -InputObject $obj -MemberType NoteProperty -Name <span class="str">"Name"</span> -Value $vdName<br /> Add-Member -InputObject $obj -MemberType NoteProperty -Name <span class="str">"RedirectDestination"</span> -Value $redirectDestination<br /> Add-Member -InputObject $obj -MemberType NoteProperty -Name <span class="str">"CreationDate"</span> -Value $vdCreationDate<br /><br /> $vDirs += $obj<br />}<br /><br />$vDirs</pre>
</div> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-20015307084779042752011-05-09T15:52:00.001-07:002011-05-09T15:52:14.329-07:00Test Lab!<p>So, this is something I have been wanting to do for a long time. Being able to ‘play’ with new technology is a huge benefit in my industry and job.</p> <p>With our virtualization environment being as robust as it is now, we have some headroom and the ability to put a small lab environment in place. So, I have used <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=ab6c61af-9c34-4692-815c-4396b482d31b" target="_blank">this guideline</a> to create a base lab environment.</p> <p>Looking forward to using this to explore new technologies.</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-27367698368148798802011-04-26T09:49:00.001-07:002011-04-26T09:49:08.795-07:00Managing IIS<p>If you have to manage IIS servers and environments, and you are not watching <a href="http://www.youtube.com/watch?v=0Yyod4XOC4M" target="_blank">this video series</a>, you are missing out!</p> <p>Thank you, Scott Forsyth!</p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0tag:blogger.com,1999:blog-4442861564658029135.post-69724460536470217582011-02-15T14:10:00.001-07:002011-02-15T14:10:18.410-07:00Hyper-V Cluster Is IN!<p>So, the work is complete… Well, this sort of work is never really complete, per se. But, our Hyper-V cluster project is complete enough to call it complete. Make sense?</p> <p>I have blogged about this saga before, so I’m not going to go into every nitty-gritty detail. But, here is an overview of what we did.</p> <p>BEFORE:</p> <ul> <li>2 x Hyper-V hosts in production.</li> <li>MD3000i iSCSI SAN providing storage to Hyper-V hosts.</li> <li>Virtual Machine Manager used (primarily) for management of Hyper-V hosts.</li> </ul> <p>AFTER:</p> <ul> <li>3 x Clustered Hyper-V hosts</li> <li>MD3000i iSCSI SAN providing CSV storage to cluster.</li> <li>Virtual Machine Manager still being used to manage the environment.</li> <li>1 x 5TB DAS to be re-deployed as storage for our Worship Arts department.</li> </ul> <p>PROCESS:</p> <ul> <li>Brought up a third Hyper-V Host server and attached DAS and SAN.</li> <li>Migrated ALL of our VMs onto this one host (scary!!).</li> <li>Reinstalled Win2008R2 on original two hosts.</li> <li>Created a two-node cluster with these hosts, using the SAN to provide CSVs.</li> <li>Migrated all VMs off the interim Hyper-V host and into the cluster.</li> <li>Added interim host as a third node in the cluster.</li> <li>Tested fail-over, fail-back, Live Migration, etc. etc. etc.</li> <li>Sat quietly for a moment, very pleased with the outcome.</li> </ul> <p>SOME TAKEAWAYS:</p> <ul> <li>This was my first experience with clustering. It could not have been easier. </li> <li>Getting a Hyper-V pass-through disk into a cluster was not as daunting as I was expecting. Just make sure you know of the limitations, caveats, and oddities.</li> <li>I like VMM, though I still find I have to go into Hyper-V Manager and Cluster Manager for some things. It’s rare though, which is nice.</li> <li>I wish fail-back in the cluster would use Live Migration, rather than Quick Migration. Maybe I’m missing something here.</li> <li>I love being able to do maintenance on my Hyper-V hosts without having to ‘down’ my VMs. This is huge!</li> <li>Now that our environment has it, I want to maintain an N+1 type environment.</li> <li>I sure could use a 4th node in my cluster! And a 5th…</li> <li>BackupExec 2010 works really well with the Hyper-V cluster. Yes, the agents aren’t cheap, but what is your data/environment worth?!</li> </ul> <p>During this project, I hit a few snags here and there. Luckily, someone invented the Internets a while ago, so every answer I needed was only one Google search away!</p> <p>Lastly, I am looking forward to SP1 that should, from what I have read, give me memory-oversubscribe and a few other cool updates. </p> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com2tag:blogger.com,1999:blog-4442861564658029135.post-35987077063490333672011-01-28T10:57:00.001-07:002011-01-28T10:57:27.037-07:00Clustered Hyper-V Environment<p>I got to work on this project this week. We had three discreet Hyper-V hosts. I moved all of our VMs onto one of the hosts, turning off non-essential VMs and minimizing resource usage as I could to make them all fit. Once the other tow VM host machines were empty, I re-installed the OS (Windows 2008 R2 DCE), created a failover cluster, configured CSVs, etc. and got these machines ready to host HA VMs.</p> <p>I have been testing failover, live migration, etc. Things are working great! Once I have all of the VMs on the cluster, I will add the third host into the cluster, giving me a great VM hosting environment.</p> <p>This project has been on my front-burner for quite a while. It is great being in the last stages of it now!</p> <p>One last note, if you aren’t using SCVMM to manage your Hyper-V virtualization environment… well… you’re doing it wrong!  <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://lh4.ggpht.com/_06A6cuUZTfU/TUMDhusielI/AAAAAAAAAM0/RjrtNr9FFss/wlEmoticon-smile%5B2%5D.png?imgmax=800" /></p> <p>Here is my ‘plan’ that I followed for this project.</p> <p>----------------------</p> <p>RESOURCES:</p> <ol> <li>How To</li> <ol> <li><a href="http://www.simple-talk.com/sysadmin/virtualization/hyper-v-r2-live-migration/">http://www.simple-talk.com/sysadmin/virtualization/hyper-v-r2-live-migration/</a></li> <li><a href="http://blogs.technet.com/b/josebda/archive/2008/07/16/failover-clustering-for-hyper-v-with-file-server-storage.aspx">http://blogs.technet.com/b/josebda/archive/2008/07/16/failover-clustering-for-hyper-v-with-file-server-storage.aspx</a></li> <li><a href="http://support.microsoft.com/kb/957256">http://support.microsoft.com/kb/957256</a></li> </ol> <li>Pass-through Disk in a cluster</li> <ol> <li><a href="http://social.technet.microsoft.com/wiki/contents/articles/hyper-v-how-to-add-a-pass-through-disk-on-a-failover-cluster.aspx">http://social.technet.microsoft.com/wiki/contents/articles/hyper-v-how-to-add-a-pass-through-disk-on-a-failover-cluster.aspx</a></li> <li><a href="http://blogs.technet.com/b/askcore/archive/2009/02/20/adding-a-pass-through-disk-to-a-highly-available-virtual-machine.aspx">http://blogs.technet.com/b/askcore/archive/2009/02/20/adding-a-pass-through-disk-to-a-highly-available-virtual-machine.aspx</a></li> <li><a href="http://blogs.technet.com/b/askcore/archive/2008/10/24/configuring-pass-through-disks-in-hyper-v.aspx">http://blogs.technet.com/b/askcore/archive/2008/10/24/configuring-pass-through-disks-in-hyper-v.aspx</a></li> </ol> <li>Hyper-V Cluster and VMM08</li> <ol> <li><a href="http://technet.microsoft.com/en-us/library/cc764274.aspx">http://technet.microsoft.com/en-us/library/cc764274.aspx</a></li> </ol> <li>Error With Live Migration</li> <ol> <li><a href="http://social.technet.microsoft.com/Forums/en-US/virtualmachinemgrclustering/thread/f60a4311-03a3-453f-891f-a1fa3d3f10d5">http://social.technet.microsoft.com/Forums/en-US/virtualmachinemgrclustering/thread/f60a4311-03a3-453f-891f-a1fa3d3f10d5</a></li> </ol> </ol> <p>VIRTUAL DISKS</p> <ol> <li>1Gb – Cluster Quorum Disk</li> <li>3 x big - CSV volumes</li> </ol> <p>TASKS</p> <ol> <li>Move all VMs onto temporary VM host – VMH00</li> <li>Change Host Type of VMH04 and VMH05 from non-clustered to clustered</li> <li>Create 1GB virtual disk to use as quorum disk for cluster</li> <li>Create Host Group in MDSM (added VH04 and VMH05 to host group)</li> <li>Disconnected VM storage virtual disk from VMH05 and renamed to ‘CSV01’</li> <li>Upgrade OS on VMH05 to Win2008R2DCE</li> <ol> <li>Remove Hyper-V role</li> <li>Add “Desktop Experience” feature to get to disk cleanup tool</li> <ol> <li>Required to free up space to do the OS upgrade</li> </ol> <li>Can’t upgrade OS. Need to do a new install. Can it be done from the R2 disk? YES!</li> <ol> <li>Install OS into new partition – blow out old partition</li> <li>IP address</li> <li>Name and domain (VMH01, was VMH05)</li> <li>Add features – SNMP, Failover Clustering, Desktop Experience, MPIO</li> <li>Add roles - File Services, Hyper-V</li> </ol> <li>Intel VT 1000 Quad Port NIC Drivers</li> <li>Install Dell MD software</li> <li>Configure iSCSI Initiator</li> </ol> <li>Configure Hyper-V networking identical on both VMH machines</li> <li>Make virtual disks available to both hosts for VM storage</li> <ol> <li>On VMH01</li> <ol> <li>Use iSCSI Initiator to connect to Virt Disks</li> <li>User Server Manager|Disk Management to configure Virtual disks for access (initialize, partition, format, etc.)</li> <li>Take disks offline (not sure if needed)</li> </ol> <li>On VMH02</li> <ol> <li>Use iSCSI Initiator to connect to both Virt Disks</li> <li>ONLY USE Disk Management to rescan for disks</li> </ol> </ol> <li>Use Server Manager to install Failover Cluster Feature</li> <ol> <li>On both hosts!</li> </ol> <li>Open Failover Cluster Manager (in Administrative Tools on VMH01)</li> <ol> <li>Validate configuration, using both cluster node names, run all tests</li> <li>Remediate issues as needed</li> <li>Create the Cluster</li> <ol> <li>Select “Create a Cluster” from action menu</li> <li>Add both cluster nodes</li> <li>Cluster name</li> <li>Cluster IP address – fixed IP</li> <li>Select cluster in navigation pane</li> <li>“Enable Cluster Shared Volumes” in action pane</li> <li>Read notice and click OK</li> </ol> <li>Select ‘Cluster Shared Volumes’ in the navigation pane</li> <ol> <li>“Add Storage” from action pane</li> <li>Select the big disks used for VM storage</li> </ol> </ol> <li>Open Hyper-V Manager on both Cluster nodes</li> <ol> <li>Select ‘Hyper-V Settings’ in the action pane</li> <li>Enter new directory locations –</li> <ol> <li>Examples:</li> <ol> <li>C:\ClusterStorage\Volume1\Hyper-V\Virtual Hard Disk (VHDs)</li> <li>C:\ClusterStorage\Volume1\Hyper-V (VMs)</li> </ol> </ol> </ol> <li>Add HyperVCluster to VMM08</li> <li>Configure storage locations in VMM to point to all CSV resources</li> <li>If not using VMM</li> <ol> <li>Migrate a non-essential VM from VMH00 onto a cluster host, using cluster storage for the VM</li> <li>Shut down VM</li> <li>Open Failover Cluster Manager on the VM host that holds the VM</li> <ol> <li>Under Cluster Name, select “Services and Applications” node</li> <li>“Configure a service or application” in the action pane</li> <ol> <li>Select Virtual Machine – NEXT</li> <li>Select VM that was imported – NEXT – NEXT – FINISH</li> </ol> <li>Right-click the VM and select START</li> <li>To live-migrate –</li> <ol> <li>Select the VM</li> <li>“Live Migrate…” from action pane</li> <li>Select available cluster node (VMH05)</li> </ol> </ol> </ol> <li>Test migration, etc. in VMM.</li> <ol> <li>Was getting an error with Live Migration. Had to disable cluster communication on the iSCSI networks. Cluster communication only allowed on the LAN network.</li> <li>Set VM processor for ‘allow migration to VM host with a different processor’</li> <li>Make sure “Enable virtual network optimizations’ is NOT checked</li> </ol> <li>Move other VMs from VMH00 into the cluster.</li> <li>Once VMH00 is empty of VMs, add VMH00 to cluster.</li> </ol> Derek Mangrumhttp://www.blogger.com/profile/05932163848657045446noreply@blogger.com0