Robert McLaws: FunWithCoding.NET

Public Shared Function BrainDump(ByVal dotNet As String) As [Value]

News

<script type="text/javascript"><!-- google_ad_client = "pub-4330602465258980"; google_hints = "ASP.NET, VB.NET, C#, C#.NET, WindowsForms, .NET Framework, VS2005, Visual Studio, XAML, WinFX, Windows Workflow, WPF, WCF, Atlas, NetFX3, Visual Studio Orcas"; google_ad_width = 120; google_ad_height = 240; google_ad_format = "120x240_as"; google_ad_type = "text_image"; google_ad_channel ="4997399242"; google_color_border = "B6C9E7"; google_color_bg = "EFEFEF"; google_color_link = "0000FF"; google_color_text = "000000"; google_color_url = "002C99"; //--></script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<!--
-->

You should feel free to challenge me, disagree with me, or tell me I'm completely nuts in the comments section of each blog entry, but I reserve the right to delete any comment for any reason whatsoever. That said, I will most likely only delete abusive, profane, rude, or annonymous comments, so keep it polite, please.

Blogroll

Cool .NET Articles

My .NET Tools

My Builder.com Articles

My MSKB Articles

Sharepoint Observations - Installation

There has been an explosion in recent days regarding the number of people blogging about Sharepoint, and having just spent 4 days testing and installing the system on my own servers, I thought I'd throw my observations into the ring.

Installation
All and all, installation was pretty simple. Before I got started installing, I tried to find a role-based installation guide. You know, something that helped walk you through installation in a simple manner based on your existing server setup. While the included documentation came close, it was way to jargon heavy for regular users to be able to figure out. Obtuse documentation strikes again! Fortunately, I was able to figure it out relatively quickly, and my test installation on a VMWare instance of Windows Server 2003 was a smart move on my part. I screwed it up twice, and had to start over, so I didn't bring down any websites with my lack of experience.

Tip #1: If your SQL Server is on another machine, download and run the Sharepoint Services installer (Observation: Why is the installation program named with the initials of its former name, “Sharepoint Team Services”?). As soon as it unpacks everything, it will begin to run the main installer. Click cancel, and it will close out. Open up a command prompt, and navigate to the “Program Files\STS2Setup_1033” folder. The type “setupsts remotesql=true”. The installer will run with a new “Web Farm” setup optin underneath the “Typical Installation” section.

Microsoft Suckage Alert #1: More often than not, the SQL server will be located elsewhere. I should not have to fire up a command prompt to be able to get this option.
Microsoft Suckage Alert #2: What's with the “Web Farm“ crap? I can have a SQL Server and a Web Server on two different machines (oh wait, I DO have that) and not be in a Web Farm. That's way confusing. Call them “Single Server“ and “Multiple Server“ installations, and stop trying to preserve market share through consumer confusion.

Next, it's going to ask you to set up your SQL Server connection. Supply your credentials, select a database name, and continue.

Microsoft Suckage Alert #3: If you look at the database structure, you'll see tables named “Sites“ and “VirtualServers“, and Stored Procedures named “sproc_dropSite“. They assume that you'll always have a separate database, and would never integrate it with another existing database. a) Don't make undocumented assumptions, and b) It's safe to assume that if it shows up in the “Stored Procedures“ section of SQLEM, it's a SPROC. MS, you really need to change the DB structure to prefix everything with something like “WSS_“ or “sharepoint_“ so that Sharepoint stuff can reside in existing databases.

Configuration:
Configuration is an interesting and complex process. Because there is no dynamic UI, get ready to spend A LOT of time with click-throughs and postbacks. ASPnetMenu, anyone? Anyways, after the installer completes, it will launch the Windows Sharepoint Services administration page, where it will give you a bunch of confusing options regarding “Extending Virtual Servers“ and “Creating Top-Level Sites“. More jargon to wade through. You're probably going to want to “Create or Extend a Virtual Server“.

Tip #2: DO NOT install Sharepoint services on an IIS web that has content in it. Windows Sharepoint Services is based on ASP.NET, and uses a bunch of HttpHandlers to intercept requests. Your best bet is to run them out of a separate DNS Subdomain, like http://sharepoint.yourwebsite.com. Better to eliminate the possibility for hassles by keeping things separate.

Along those same lines, the documentation says to uninstall FrontPage Extensions is they exist on the server. The problem is, they don't make the distinction between IIS virtual servers, and the machine itself. I'll clarify this for you here: You can leave FPSE installed on the machine, but it cannot be installed on the IIS Web. If you extend a clean IIS web in a separate subdomain, like I said in Tip #2, you should be fine.

When you click “Extend or upgrade virtual server“, you will be given a list of IIS webs on the server. If you have FPSE install, chances are you'll see is how that site's version as “5.0.2.5012“, and it will ask you to upgrade that site. Do not mess with these sites, unless of course you enjoy making your life more difficult. Click on http://sharepoint.yourwebsite.com, and you'll be taken to the confirmation page, where you are given two options: “Extend and create content database“ or “Extend and map to another virtual server“. The first option is the one you want, unless you already have a Sharepoint site, and you want to map another site to it. This would be the option to use in load-balancing situations.

Microsoft Suckage Alert #4: This one rates about a 9.7 on Robert's Scale of Software Suckage (S3 - Patent Pending). When you get to the next page, among other things, it asks you for database access information. The default option says “Use default content database server”. Ladies and gentlemen, if you haven't been paying attention thus far, please do so now. Selecting this option DOES NOT default to the database settings you entered earlier. That database stores only data about the sites that are installed on the server. Unless you specify name and credentials here, Sharepoint will come up with some database name like “STS_server41_1956784809”. The naming convention stands for the server name, and then the IIS web index, which is a hash of the name if you are using IIS6. The only reason this sucks so bad is because it is not very well documented, and the “default” behavior is not the expected behavior. If I created a database in the beginning, I would expect all of the websites I create on that server to be stored in the same database, unless I tell it otherwise.

That's about it for todays's post. I'll be recording my other observations over the days and weeks ahead. Oh yeah, and MS Sharepoint Team, it would be really cool if you could make these things not suck in the rext release.

Comments

SBC said:

good posting Robert. I am going through some SP deployment myself (http://weblogs.asp.net/sbchatterjee/archive/2003/12/07/41910.aspx) and must admit that the new version (WSS - basically ASP.NET) is a serious improvement over the prior one (STS).
Thanks for Tip#2 - almost clobbered one of my servers.
LOL on your "Robert's Scale of Software Suckage" - hope you get the patent.. :-)
# January 24, 2004 9:05 PM

EROL said:

Thanks for all your information, that keep me time to make translation of this info. on my Blog, but it's important for the begining of SPS 2003 in France !
;+) EROL
# January 25, 2004 4:52 AM

bliz said:

Good stuff, Robert. I'm going to do some experimentation with Sharepoint in the near future.... I'll keep an eye out for such suckage. ;)
# January 25, 2004 5:02 PM

tim said:

i'm surprised by your experience...i've worked with sps2003 since pre-beta for the past year and installation was the least of our troubles...especially surprised about your comment about running the sql sharepoint installer first (your tip#1)...our installations used sql servers in other countries and we had no problems running the default installation guidelines outlined in the readme and administrator guides provided...if you want more sharepoint tidbits, webparts...check out my blog http://www.timheuer.com/blog -- or web parts at http://www.timheuer.com/stuff.htm
# January 25, 2004 10:37 PM

Robert McLaws said:

I didn't have a problem with installing on other SQL servers. We followed the directions and it worked fine. My point was that the nomenclature is confusing and that option should nto be a command-line only one.
# January 26, 2004 2:02 AM

Steve Schofield said:

Thanks for the heads up, I"m doing a design right now and getting ready to install this into our lab environment. I like the term "web-farm". Too often people call them "web clusters" when its not really a cluster. Clustering provides fault-tolerance where as a web-farm provides redundancy. Ok splitting hears but just a pet peeve of mine!
# January 26, 2004 6:10 AM

tim said:

re: the "web farm"
if you read the installation documents you'll see that sharepoint only is supported under two different configurations..."stand alone" and "web farm" -- so the deliniation is single/multiple server...but web farm is appropriate terminology for multiple server in their installation...the web farm implies multiple web servers, etc....not necessarily just different web/sql...and the documentation is clear on the supported configurations...and to add a suckage note on the docs...whenever the configuration says "this is for 'x' or more web servers..." it really means just the number (i.e., if it says 2 or more, it really means just 2) or you will get an unsupported configuration message (even though it will still run)
# January 26, 2004 12:49 PM

Robert McLaws said:

Well, my interpretation of "web farm" has always been several web servers in a load-balancing/failover situation. My point remains that it should be a built-in, UI accessible option, and not something that has to be accessed from the command line.
# January 26, 2004 12:54 PM

tim said:

exactly what a web farm is...but with regard to sharepoint...the reason they make that deliniation is because there are only supported configurations...and if there will be more than one web server in your environment...then SQL *has* to be on it's own box for a supported configuration...but i agree that is a weird install option...one thing to note, that is only a WSS option...SharePoint Portal Server does ask you where your db is located.
# January 26, 2004 3:09 PM

Ali Khawaja said:

I need help! I uninstalled fpse, installed everything(spsv2, biztalk, etc). i cannot create web projects in vs.net 2003 anymore. i installed fpse again and its properly configured with my default website, but still its not working. The error messages that i get are posted in my briefcase:

http://briefcase.yahoo.com/bc/akhawaja@sbcglobal.net/lst?.dir=/VS.Net+Issues

I'll appreciate any help.

Thanks
Ali
# March 9, 2004 4:20 PM

TrackBack said:

Installing Sharepoint Services (WSS) with Project Server 2003 - Part I
# March 23, 2004 12:45 AM

RC said:

Has anyone managed to get Outlook and Sharepoint Contacts to sync both ways yet - this is a major hurdle in my company - we really want one contacts list but want access using sharepoint and Outlook without creating umpteen different versions of our contacts list - any help gratefully received.

# May 31, 2006 7:22 PM

Installing Sharepoint Services (WSS) with Project Server 2003 - Part I « Can i help you? said:

Pingback from  Installing Sharepoint Services (WSS) with Project Server 2003 - Part I  &laquo; Can i help you?

# August 11, 2008 9:33 AM

.NET Tutorials said:

Alex Chang Originally Published: March 22, 2004 7:44 Installing Sharepoint Services (WSS) with Project

# May 26, 2009 7:49 PM