Welcome to KnowledgeLink - The AKG Blog

SharePoint Updates and patches - preventing those 3 am calls

Posted by Lindsay O'Bannon on Fri, Dec 19, 2008 @ 15:12 PM

By Benjamin Hartley, December 19, 2008

It's 3 am on a weekend. One of your SharePoint servers just went down and you don't know why. Employees are on the phone, demanding the server be brought back up – now! Even though it's outside normal business hours, even though there's no one in the office, the server still needs to be up. Online collaboration can be a double-edged sword – while it means that users can do their work anytime and anywhere, it means that a server outage is always a major problem, even if it's the middle of night or a holiday on which people don't normally work. Outages must always be addressed immediately.

The best way to deal with outages is to prevent them. Prevention is often a thankless task – no one notices when the servers don't go down, after all. It's a very rewarding activity all the same; paid for in system reliability, long uptimes, and uninterrupted work. While infrastructure and hardware problems tend to get the most notice, software-related problems are far more likely to be the culprit in an outage. Most often, the basic problem is an unexpected software situation – in other words, the server crashed. Usually, server crashes can be avoided with appropriate testing and maintenance. A few minutes of work each day can prevent hours or even days of downtime later – or even prevent security breaches!

Modern computer software is terribly complicated. SharePoint, for example, requires that at minimum the server on which it is running already have installed Windows and IIS server. Each of these pieces of software requires other software be installed, which requires still other software… In short, any server will have several services running and dozens of programs installed. This software all interacts in extremely complex ways. Sometimes, software ends up acting in a fashion which was never anticipated. These are what the computer industry calls "bugs", and they're resolved by updating the system using a patch.

Every system administrator is familiar with "Black Tuesday" or "Patch Tuesday", the second Tuesday of the month and the day on which Microsoft releases regular patches. These patches are crucial to both security and availability. Without them, unexpected errors may crash your servers or hackers may be able to exploit recently discovered vulnerabilities. While downtime is generally to be avoided, it is of absolute importance to regularly apply patches. However, as with any new software installation, patches must be tested before being applied to the production platform.

An old adage in the computing field holds that "The biggest cause of unscheduled outages is scheduled outages". Often, a scheduled software update causes more problems than it fixes and the system cannot be easily restored. There's no good time to find this out but if it's going to happen, it's best to avoid making such discoveries on the production platform. While it may seem like an excessive expense, a development and test platform is key to assuring continued availability of a production platform. Would you buy a car without driving it? Rent an apartment without seeing it? Then why would you apply untried software to a business server without testing it? When looking to install new software, the only reasonable thing to do is to install it on a test platform first. Ideally, the test platform should be functionally identical to the production platform. This may not always be possible, as a complete replication of the production platform is exceptionally expensive. Even so, best effort is certainly called for here. It is not sufficient to merely install new software. The software must be tested. It must be used, and used under conditions which accurately reproduce the production environment. Even minor differences may conceal serious flaws, so it's important to make the test platform as realistic as possible.

Regularly updating your SharePoint servers does not guarantee they will not go down. There are always unexpected situations, even in software. But to ignore known issues in the hopes that they won't crop up would be very poor practice. Every system administrator needs to regularly check for updates and known problems with their systems, and address these problems as they are discovered. It's impossible to gauge how much downtime is prevented by such regular work, but there's no doubt that it's worth it. Regular updating and patching keeps servers up, even in the middle of the night. That means a company's road warriors and midnight owls can be working productively – while the system administrators get some well-earned sleep!

Read More

Topics: collaborative technology, moss sharepoint, moss, MOSS 2007, Microsoft SharePoint technology, best practices, Security, collaboration technology, Availability, SharePoint Updates and patches, patches, updates, vulnerability Consulting

Availability - An Introduction

Posted by Lindsay O'Bannon on Fri, Dec 12, 2008 @ 18:12 PM

By Benjamin Hartley, December 12, 2008

Availability refers to the ability to access your service reliably and quickly. That is, the service is available. SharePoint sites host crucial business data and provide necessary business functionality for an entire organization. As such, being able to access SharePoint is of great importance to a business.

But how important? Availability experts talk about the "nine 9s" or, outside of telecommunications, the "five 9s". These are the percentage of time a system is available. A system which has "nine 9s" of availability is up 99.9999999% of the time, which means it is down for a total of 1 second over the course of roughly thirty years. While that would be a great benchmark, it's almost unachievable, and the cost of making it happen is usually just not worthwhile.

For high-availability enterprise systems, the "five 9s", or 99.999% uptime is a much more realistic and still excellent goal. 99.999% uptime means that the system is available for all but five minutes over the course of an entire year. It's not nine 9s, to be sure, but it's still pretty excellent. In fact, most IT professionals would be exceptionally proud to be able to boast that kind of uptime.

But is it worth it? The reality is that achieving that kind of availability is very expensive. That kind of reliability depends on massive redundancy – 2, sometimes three power supplies per server. Full disk mirroring. Server replication. Hot site failover. Each of these increase a system's cost by at least a factor of 2. When a standard commercial-grade server can run $10,000 and the software needed for it is another $10,000, is it reasonable to double, triple, or quintuple that? And while SharePoint is relatively easy to administer, each server and each added redundancy makes that job even harder – meaning that often more system administrators are necessary. All this costs money. How do you strike a balance?

The answer comes down to the needs of a given organization compared to the depth of their pockets. The good news, however, is that there are a number of reasonable options which help increase uptime. Some, like the massive redundancy needed for "nine 9s" or even "five 9s" redundancy, are rather expensive. Fortunately there are other options which are cheaper, and no few are steps which any competent system administrator should already be doing.

Over the course of the next few weeks, we'll be covered many of the topics relating to availability. This will include redundancy strategies like hot and cold site failover, backup strategies, infrastructure issues like electricity and networking, monitoring, security, and making a plan which ties all these aspects together to assure maximum uptime at minimum cost.

Read More

Topics: Security, redundancy strategies, hot and cold, site failover, backup strategies, infrastructure issues like electricity, monitoring, Availability, cost, uptime

Northern Virginia Code Camp December 2008

Posted by Janetra Meyers on Tue, Dec 9, 2008 @ 15:12 PM

Northern Virginia Code Camp December 2008

Before I start, let me finish up my Dev Con 2008 recap.  The last two days of Dev Con included a convention floor full of vendors and a standout Silverlight session. 

Details of the session: Title:  ASL203 Silverlight 2.0 Annotation Using the InkPresenter Control

Speaker:  Julie Lerman

First thing that stood out about this session was the explanation and demonstration of the InkPresenter Control.  This control allows a user to actually draw using a web browser (think of the Tablet PC).  The speaker briefly went through the history of the Tablet PC, explained how Expression Blend works with Visual Studio 2008, and demonstrated building the application using these tools.  The coolest feature was the ability to seamlessly bounce between Visual Studio 2008 and Expression Blend with the project automatically reloading (being updated).  The speaker gave useful tips on good UI design and went into detail on how to modify the UI.  All in all, this was a great session and I learned a lot.

Additional information can be found here:  Create Web Apps You Can Draw On with Silverlight 2.0

Back to NOVA Code Camp 2008…

This event was held on December 6th, 2008 at the Microsoft Offices in Reston, VA.

Texas Hold'em Silverlight Game - Dean Fiala

This session was interesting because it presented Silverlight as a vehicle for recreational development and use.  I really enjoyed viewing the finished product, an actual online poker game, which is fitting after attending Dev Con 2008 in Las Vegas. 

The source code for this presentation is not available.

Click here for more information on Silverlight

Here are some additional web resources for game development with Silverlight

OOP in ASP.NET - Habeeb Rushdan

This session focused on the fundamentals of Object-Oriented-Programming.  I would recommend this session for classic ASP developers and developers that are not familiar with ASP.NET.

Web Resources for Object-Oriented-Programming using C#

http://www.sitepoint.com/article/c-asp-net-developers/

http://www.devarticles.com/c/a/ASP.NET/Using-Objects-in-ASP.NET-Part-1/

http://aspalliance.com/1328_ASPNET_OOP_and_Unit_Testing.all RESTful applications in WCF - David Makogon

 

I liked this session because the speaker went into great detail on how RESTful web services work, how it is different from traditional web services, and how it makes development with web services easier.  Being able to expose web services using SOAP and REST was a standout feature demonstrated during this session. 

Click here for more information on RESTful Web Services with Windows Communication Foundation

Read More

Topics: Microsoft, programming, asp.net, C#, Silverlight, code camp

Keeping a SharePoint Environment User Friendly

Posted by Andy Campbell on Fri, Dec 5, 2008 @ 14:12 PM

After a while, if things go well, you are going to have a lot of SharePoint sites in your environment. If you are making full use of SharePoint, you are going to be asking your people to put documents on a site and send links to the document in email – not attachments. You will be using the power of document version control, meeting management, workflow automation, etc. As the SharePoint site taxonomy grows, users need to know how to create a new site to support their work. Someone who understands the taxonomy needs to do it for them (promptly) or they can do it themselves with guidance on where to add the site. The key points here are taxonomy management and speed. If you've got a big SharePoint program, you are going to need an administrator/steward/facilitator (you pick the label) to manage the environment. We have had a lot of success having a central administrator, and then giving admin/steward responsibilities to one or two people in a given workgroup or organization. You need enough people to provide a rapid response (or your users will default to attaching documents to emails). These admins need a common vision of the taxonomy – and the vision needs to be refreshed regularly. In our company, we were working through a major telecommuting initiative and found that we had telecommuting sites in our HR and our Business Development SharePoint areas. The former (as it turned out) was created to manage our in-house initiative. The other was to gather data on what was happening with telecommuting in the marketplace as a possible revenue source for the company. We hadn't differentiated the sites with the metadata necessary to allow people to make the distinction. It is easy – even in a company that teaches this stuff – to have these kinds of issues crop up.

Bottom line – treat taxonomy management in a robust SharePoint program as carefully as you do your backup strategy. Without it, you'll have less and less to back up.

Read More

Topics: Metadata, telecommuting, governance, Workflow, backup, taxonomy, calendar, SharePoint Admins