Ok, so here is my approach to bindings in IIS using Web Farm Framework 2.x. I have seen several ways of doing this, but all involved setting up replace rules for WFF and I didn’t want to mess with that.
What I do is, on my controller webserver, I add all of the bindings for each of the machines. In the drop down menu for IP address, you can manually type in the IP, and the server will let you add anything, regardless of it being assigned to the machine. Then IIS will accept the requests for which it has an assigned IP address, the rest will be there but not do anything. These settings will propagate to all of your servers in your WFF Server Farm, and you will be able to maintain your single point of administration for IIS.
I’ve been a little out of touch with this blog in the last month or so. Ever since Thanksgiving things have been crazy, especially at work with the busy season.
Over the last year we have made some great efforts to dramatically increase our stability as well as availability by increasing redundancy to remove single points of failure. This was on many levels including the networking layer by introducing an HA firewall pair, and an HA load balancer pair. We also built out our server infrastructure by implementing 3 web servers for the load balancing, as well as clustering our database hardware and our application server hardware. All of this was intended to be able to easily handle the load of the retail busy season, between Thanksgiving and New Year’s weekend. To be able to really know how much we could handle we wanted to load test the infrastructure top to bottom. Continue reading Unintentional load test
Its been almost a year since my first post on this subject. Over the past year I have moved from hosting all of my websites with Server 2003 to Server 2008, and in the course of that I had to re-setup my log zipping application.
In the course of that, I found that the previous script did not work with IIS7 logfiles. The difference being the default naming convention of the files. In IIS 6 the name was exYYMMDD.log, in IIS7 the name is u_exYYYYMMDD.log. that extra u_ was throwing off the script as it tried to parse the date out to create the zip file. So I got back in touch with my buddy who originally wrote the script and requested some features.
What we came up with is a script that determines the offset of the date in the filename and can parse the date regardless of the convention. This will allow you to run it against IIS6 or IIS7 logs without modification. (In theory you could use this against any type of log file that includes a date, but I have not tested it)
We also threw in a variable that allows the user to set how many days of logfiles to keep on the drive unzipped. In this fashion you can keep the most recent X days of logs uncompressed for troubleshooting.
I also included a batch file that will allow you to run, and/or schedule a task to run the script as needed. The files are located here. Give it a shot and let me know if it helps!
I’ve been working with Windows Sever 2008 and 2008 R2 only for a couple of months now. Generally the OS is greatly improved over 2003. There are many quirks that are frustrating though. They are generally little things, but there is nearly zero documentation and only extensive web searches reveal the fix.
One issue I’ve been struggling with is the Task Scheduler not working on what I had assumed were basic tasks. I have a script that I run to clean out files of a certain age from a specified folder. I use it for deleting log files and some backups etc. The task simply executes a batch file which calls a .vbs script. The task was failing with error code 0x1 without any farther details. After some time spent searching and trying different things I found the trick that worked.
When running a batch file at least, it seems that when setting up a task you cannot just specify the file to be run, you also have to specify the ‘start in’ parameter. For example if you specify c:\temp\script.bat you also have to specify c:\temp as the start in parameter. I did this and my task is now working like a charm!