With the release of Power Pack 3 for Windows Home Server, I have been thinking about trying it out. Having an MSDN subscription and a virtual machine host made this quite a bit easier, as I didn’t need to purchase any additional hardware to use it.
Prior to installing WHS, I had a Windows 2008 virtual machine that I installed all my stuff on and had shares. It definitely worked, but some of the cool features of WHS kept me wanting to move in that direction. Things like automated backups of client machines, a console, better managed and accessible shares, and Media Center tie-ins (I have a Win7 virtual machine as a Media Center and an Xbox 360 as the extender). All in all, I think it is definitely going to be a move in the right direction, but that doesn’t mean there weren’t issues getting there. I am going to outline a bunch of them here in the hopes that others can find comfort in the work I have done to resolve them.
Just silly stuff like that, which take awhile to troubleshoot, when they don’t need to. Turn it off.
Protocol mismatch. This computer uses protocol version 6.0.2030.2, but partner computer [server] uses protocol version 6.0.2030.0. A connection cannot be established
This was because the http://server:55000/enrollid/id.aspx webservice that the connector uses on the WHS machine was returning the incorrect version. The only way to fix it that I found was by installing the final build of Power Pack 3. The beta didn’t work, nor did downgrading to a previous PP.
Hopefully this little guide helps someone else out there. As I tinker with it some more, I will probably add additional articles, but it is amazing how long it has taken me to get this silly machine up and running, especially when this is supposed to be an appliance. I know that MS is learning a lot from this, but the polish is still a bit missing, and this is after 3 Service Packs (Power Packs).
Normally on a Windows machine when you attempt to access a share in a different domain you are prompted for credentials. However, there are no copy utilities (copy, xcopy, robocopy, etc) that pass credentials in the command line. Also, as it is an untrusted domain, you simply can’t do a RunAs (need to manually type in a password for that anyways).
The answer was so obvious, I can’t believe it didn’t come to me right away. However, net use, the simplest of commands, is your friend again. Using the following command you can initiate the connection and then copy between the machines as much as you like via normal UNC path.
net use \\[server]\[path] [password] /user:[username]
copy [source] \\[server]\[path]\[more path]
net use \\[server]\[path] /delete /y
By using the following syntax there is no mapped drive. There is simply a stored connection with the associated credentials for the life of the profile or until the delete command is run.
On my current project they deploy PSExec to all machines. The downside? It is a version from 2004. Yes, that is right from over 5 years ago. Needless to say, there has been nothing but problems with it. Granted, PSExec is probably one of the easiest things to upgrade as you just need to upgrade the version that you are calling PSExec from. It then copies itself out to the machine and does it’s job. However, if the old version was ever tried against a machine, you may be in some weird state like we were where PSExec wouldn’t start, or it would and wouldn’t close, etc.
Stumbling along the internet I found someone else who had this issue. However, his processes doesn’t always work because there may be something hanging onto the PSExecsvc.exe file still. Instead I recommend using the following batch file.
sc \\%1 stop psexesvc
sc \\%1 delete psexesvc
del \\%1\admin$\psexesvc.exe
del \\%1\admin$\system32\psexesvc.exe
It just deletes the service before it tries to delete the files. Works like a charm.
Been a long time again, but I have a few updates to put up here. They may not help a lot of people, but they are good things that I want to remember :)
Commerce Server uses a pretty antiquated system for doing content and code promotions. It is called Commerce Server Staging (CSS). We have set it up, but want to better automate the deployment of all the CSS projects (jobs). For the life of me, I could not figure out how to add in the destination authentication account programmatically. Thankfully it wasn’t something short sighted I was missing. After discussing with Microsoft for awhile, there is apparently some undocumented switches on CSS.exe. After you add the project (css.exe addproj), you then need to edit the project with the following syntax:
css.exe editproj [project] Destination=[server];[username];[password]
Yay to automation!
Update:
Turns out you can do this with the Addproj also doing the same way with the semicolon separated items for the destination.
Netflix streaming straight to the Xbox 360 has got to be the coolest thing ever. Last weekend we watched two movies that way. I just wish they would get more movies on the streaming feature. Screw DVDs moving forward. It’s all about the streaming media.
The team that I’m currently working on is focused on performance testing. None of us on the current team are really SQL experts though and we’re running into an issue that appears to be SQL related. Well, it turns out in SQL 2005, there’s these great new things: Database Management Views. What makes them even cooler is that you can pool them all together. And the hottest thing about this whole thing, is a script we found to do most of the work on our own. This things is awesome for SQL performance testing, and will definitely get a lot of reuse, that’s for sure.
Having issues accessing Commerce Server 2007 performance counters remotely? We were too. It seemed like only specific ones were able to be remotely accessed. Well, it turns out that is “by design” (bullet point #2). However, you can get around this by allowing the Remote Registry service run as an account that has access to the database. Down side to that is I’m not exactly sure what permissions are actually required for the Remote Registry service (something above a normal user), and who knows what that breaks.