Archive for June, 2010

Honeymoon – Day 0-1

Written by Cornelius J. van Dyk on . Posted in Vacation

WOW! WiFi speeds in Italy ROCKS!!! Jess and I just landed in Rome.  We got to our hotel and I connected the netbook through their wifi network.  I was curious, so I did a quick speed test.  Here are the results:

image_thumb_328F8DBC

Upload is about what you’d expect, but 5.5 Mb download via wifi from a small hotel on the coast of Italy?!  Are you kidding me?!!!  I don’t even get that kind of download speed via hardline from home! 

Anyway, we had a wonderful trip to the IND airport.  Chad and Lisa surprised us with a Lincoln Towncar to the airport!  You guys rock!  We had safe flight and enjoyed the transfer from Rome to Civitavecchia via a Mercedes Benz! There’s lots of those around here apparently. 

So here are my very fist impressions of Rome/Italy as I’ve experienced them…

  • Their roads are in AWESOME condition.  Unlike American roads that are cracked and full of pot holes, their roads are excellently maintained.
  • Streets are narrow.  To be expected in cities older than the US I guess. 
  • No SUVs.  That’s right.  Lots of small cars.  No big honkers.
  • Drivers tend to make use of ALL the road they have.  If there’s no traffic around, they’ll drive in the middle of the two lane road, right on the center line.
  • Highway exits are small and narrow.  If you don’t slow waaaay down for these bad boys, you’ll run over the edge for sure.
  • Most building roofs are made of clay tile.  I’m yet to see shingles anywhere.  I like clay tile more anyway.

Photo time…

 

OK, OK.  Enough of that.  Time for Jess and I to go take a walk on the beach and explore Civitavecchia bit.



Cheers
C




image

SQL Clustering or SQL Mirroring

Written by Cornelius J. van Dyk on . Posted in Blog

One of my readers, Steve, posed a good question to me asking which option would be the preferred option between SQL Clustering and SQL Mirroring.

As with all technology decisions, there isn’t any one answer that fits all.  There is only a decision that’s the right decision for any given company with a given culture, given specific constraints at a precise moment in time.  When the culture, technology (hardware or software) or any constraints (like budgets, available skill sets etc.) changes, the original decision may not remain the right decision and the evaluation *should* be recalculated.  I say should because it’s not always practical to revisit technology decisions frequently.  That being said, how often have you posed the question “Why is it being done like this?” and received the answer “Because that’s how we’ve always done it.” or “Because we’ve done it that way for years.”?  Given the fast pace at which technology changes, every major technology decision should be accompanied by a clear timeline for Return on Investment (ROI).  I believe at the end of that timeline, plus 50%, the original decision should be re-evaluated.  If not enough has changed in the equation to warrant an altering of the original decision, then savings continue post ROI.  If however factors have shifted dramatically, then it should be time to re-evaluate.  Change is the only constant…

OK, OK.  I’ll get off my soap box now and reflect, based on my own personal experience, on Steve’s question.  It is a very good question indeed and I’m just going to reflect my abbreviated view here.

  1. Hardware cost.  Clustering has greater hardware cost due to the shared storage requirement of the cluster.  Clustering generally means SAN storage is involved.  If you don’t already have a SAN, or have plans and budget for a SAN, clustering will be an expensive option. 
    Mirror + 1
  2. Idle hardware.  I’ve never met a CFO who liked the idea of having a Extra hardware idle, giving no benefit to the organization, or should I say active benefit.  That’s usually the tunnel vision view of the bean counters.  With Mirroring, the passive node is just waiting for failover and while we as technologists know and understand that in itself, that is an important function, CFOs generally want to see more Active/Active use of their hardware.
    Cluster + 1
  3. Automatic failover.  Yes, both solutions provide automatic failover… sort of.  Clustering is true hardware level failover without requiring applications to do anything because the instance is virtualized.  Mirroring on the other hand requires application code to be using ADO.NET or SQL Native Client in order to do Client Redirect properly and create the automatic failover ability. 
    Cluster + 1
  4. Clustering doesn’t do load balancing or scaling.  You have to manually spread your SQL instances across the cluster nodes in order to load balance.  Peer-to-peer mirroring allows data access from any of the peers, resulting in better scaling. 
    Mirror + 1
  5. Update conflicts.  Mirroring doesn’t resolve update conflicts resulting from multi peer updates mentioned in #4, out of the box.  As a result, the benefit in scaling listed in #4 could be offset by having to deal with update conflicts. 
    Mirror – 1
  6. Expertise required.  Clustering is very complex and most DBAs avoid it if they can.  If you’re going to cluster, you have to have people with the skill set on hand to maintain it.  Mirroring on the other hand is a less complex topic that can be mastered by most DBAs.  Mirror + 1
    Mirror + 1
  7. Assuming per #3 that not all your applications are “Designed for Mirror”, security and update patching can become a problem when you’re running something like a 99.999% uptime SLA.  A cluster backup node can be patched and failover forced to the patched/backup node.  You can then patch the primary node and let the system run on the backup node until the next time patching needs to be done.  At that point in time, the patch process will fail the cluster back over to the primary node. 
    Cluster + 1
  8. Storage redundancy.  A Mirror has redundant storage.  A Cluster has shared storage.  True, SAN technology will have RAID redundancy built in, but at least a RAID5 redundancy design is used in all data storage, so it stands to reason that all members of a Mirror will have some form of redundancy anyway.  The question is how far apart your mirror members are.  It’s not likely that a Cluster will survive a complete Datacenter loss, but a Mirror with an off site member could. 
    Mirror + 1

As you can see, there are many pros and cons to each solution and what is the right solution for you, will depend on your given factors in the equation.

If you can afford both the hardware and the technical expertise involved in doing clustering, then it has been the tried and true method to use.  True, mirroring is making inroads on this title, but most DBAs will still opt for clustering if given the choice. From personal experience, I’ve encountered less problems with *PROPERLY* run SQL Clusters than with Mirrors.



Cheers
C




image

Latest downloads in SharePoint land

Written by Cornelius J. van Dyk on . Posted in Blog

How do I – Install PowerPivot into an EXISTING SharePoint 2010 farm

Written by Cornelius J. van Dyk on . Posted in How Do I...

This one was a BEAR to work through.  There’s not much out there for it and everywhere I turned it seems everyone else was either having the same problem OR suggestion we “start with a clean install”.  Nice suggestion that last one.  Almost like… try rebooting the computer… but I digress.  So hopefully this guide will help some other poor soul save some time when they run into the same issue.

  1. Due to a farm admin error during PowerPivot install that incorrectly claims that the current user is NOT a Farm Administrator, you’ll need to logon to your SharePoint server, using the SharePoint Admin Service account credentials.

  2. Install the Microsoft Access Database Engine 2010 Redistributable.

  3. Startup the SQL Server 2008 R2 installer in Admin mode:

  4. Browse to the CD folder of the install media.

  5. Right click “Setup.exe”.

  6. On the popup menu, click “Run as administrator”.



  7. image_60_05C9C7A4

  8. On the SQL Server Installation Center menu, click “Installation”.



  9. image

  10. Click “New installation or add features to an existing installation”.



  11. image

  12. On the Setup Support Rules page, correct any issues that are identified and then click “OK”.



  13. image

  14. Now click “Install” to install the Setup file required.



  15. image

  16. On the Setup Support Rules page, Setup will run it’s support rules to check for valid install.  Correct any issues that are identified and then click “Next”.



  17. image

  18. On the Installation Type page, Setup will list already installed instances of SQL Server.  Here you want to select “New installation or add shared features”.  DO NOT select the “Add features…” option.

  19. Click “Next”.



  20. image

  21. On the Product Key page, select the “Enter the product key” radio button.

  22. Enter your SQL Server 2008 R2 product key that you received from Microsoft in the edit box.

  23. Click “Next”.



  24. image

  25. On the License Terms page, check the “I accept the license terms” checkbox.

  26. Click “Next”.



  27. image

  28. On the Setup Role, select the “SQL Server PowerPivot for SharePoint” radio button.  DO NOT select the SQL Server Feature Installation option.

  29. From the dropdown list box, select “Existing Farm”.

  30. Click “Next”.



  31. image

  32. On the Feature Selection page, Setup will show you the installation options to be added.  These cannot be changed.  Click “Next”.



  33. image

  34. On the Installation Rules page, Setup will run rules to check for blocks.  Correct any issues that are identified and then click “Next”.



  35. image

  36. On the Instance Configuration page, you cannot change the Named Instance name, but you can change the Instance ID, if you wish.

  37. Click “Next”.



  38. image

  39. On the Disk Space Requirements page, click “Next”.



  40. image

  41. On the Server Configuration page, Setup requires that you configure an account for SQL Server Analysis Services.  Best Practices dictates that this should NOT be a network service or system account, but rather it should be a dedicated domain account.

  42. Enter the domain account ID e.g. “DOMAIN\ServiceAccountName” in the Account Name edit box.

  43. Enter the domain password in the Password edit box.

  44. Leave the Startup Type as “Automatic”.

  45. Click “Next”.



  46. image

  47. On the Analysis Services Configuration page, Setup is asking you to identify the administrators of Analysis Services.

  48. Click “Add Current User”.

  49. The SharePoint Admin Service account should now be listed as an admin.

  50. Click “Add…” to add each account that needs to have Admin rights to Analysis Services and PowerPivot.

  51. Click “Next”.



  52. image

  53. On the Error Reporting page, click “Next”.



  54. image

  55. On the Installation Configuration Rules page, Setup will run some more rules.

  56. Resolve any identified issues and click “Next”.



  57. image

  58. On the Ready to Install page, STOP RIGHT HERE!!!

  59. If you click “Install” here, your installation WILL fail… but you already knew that. 😉  That’s why you’re reading this post. 😀

  60. HACK #1

  61. At the bottom of the window, Setup is displaying the path to the “ConfigurationFile.ini” file.  Copy the path to the file.  We have to pause the install here because the location of this .ini file changes on every install as Setup will take the current date/time stamp and use it for the …Log\<YYYYMMDD_HHMMDD>\… part of the folder location.



  62. image

  63. Open the “ConfigurationFile.ini” file with Notepad.

  64. Using Ctrl+F, locate the reference to “FARMADMINPORT”.



  65. image

  66. Your port number will show something random.  This is because PowerPivot assumes that its installing at the same time as a default SharePoint install.  Since we already have SharePoint installed, we need to edit this value and change it to match the port of our Central Admin location.

  67. Change the value between the quotes to match the port number of your current Central Admin.



  68. image

  69. Exit and save the .ini file.

  70. HACK #2

  71. The other problem with the current PowerPivot install is that it looks for the Microsoft.AnalaysisServices.SharePoint.Integration.dll file in the bootstrap folder, but it doesn’t exist there.  In past failed installs of PowerPivot, you may have encountered references to this DLL being “missing”.

  72. Copy Microsoft.AnalysisServices.SharePoint.Integration.dll to the PowerPivot bootstrap location of C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\SQLServer2008R2\x64

  73. You may, or may not have a copy of this DLL file handy.  If you don’t, you can download the copy I placed on my SkyDrive here:

  74. http://cid-3bc0ba53fcaf028c.office.live.com/self.aspx/.Public/Microsoft.AnalysisServices.SharePoint.Integration.dll.zip

  75. HACK #3

  76. Now we have to ensure that there are no remnants of this dll left over within the GAC.  Open Windows Explorer.

  77. Browse to “C:\Windows\assembly”.

  78. Scroll down and look for Microsoft.AnalysisServices.SharePoint.Integration.

  79. You should not find it because it’s not installed yet.  This was the case in my install as can be seen below.



  80. image

  81. That’s not necessarily true though as can be seen from my environment screen shot below:



  82. image

  83. Open a command shell via Start/Run/cmd

  84. Execute “cd\windows\assembly\gac_msil” from the command line.

  85. Execute “dir microsoft.analysisservices.s*” from the command line.

  86. Your output SHOULD show 0 files and 0 dirs.  If it doesn’t, like in my example above, the odds are you’ve had a failed install of AnalysisServices before and remnants were left behind when the installer didn’t cleanup behind itself.

  87. If there is a folder named “Microsoft.AnalysisServices.SharePoint.Integration”, you need to delete it by executing “rd  Microsoft.AnalysisServices.SharePoint.Integration” from the command line.

  88. Now that we’ve cleared the path for the installer by deleting remnants from the GAC, hacking the configuration file and manually providing a copy of the integration DLL, we can switch back to Setup and click “Install”.

  89. Setup should complete successfully this time around as in my example below:



  I hope this saves somebody some time and frustration out there.

Cheers
C




image

Step-by-Step – Installing the Microsoft Access Database Engine 2010 Redistributable

Written by Cornelius J. van Dyk on . Posted in How Do I...

This is a prerequisite to Installing PowerPivot for SharePoint into an EXISTING SharePoint Farm.  PowerPivot seems to work just fine being installed together with a clean install of SharePoint, but when you already have SharePoint installed and try to add PowerPivot… all hell breaks loose.  I was never able to find proper documentation on how to pull this off and managed to hack and debug my way through it like Holmes unraveling a mystery.  Hopefully this will save someone else some time and frustration…

  1. Logon to your server with the SharePoint service account.
  2. Download and run the appropriate setup package for the target version (x64 or x86) of your farm http://go.microsoft.com/fwlink/?LinkId=180629
  3. Click “Run” to execute the install package.
  4. image
  5. On the Welcome screen, click “Next”.
  6. image
  7. Check the “I accept the terms of the License Agreement” check box and click “Next” to continue.
  8. image
  9. Select the folder location to which you wish to install and finally click “Install”.
  10. image
  11. The installation should complete successfully.
  12. image


Cheers
C




image