Tag Archives: Hosting - Page 2

Does anyone manually install IIS anymore?

Microsoft has made installing – and doing the initial base configuration of – Internet Information Services (IIS) ridiculously easy by using the Web Platform Installer (WebPI).

Open WebPI, select Products in the top menu bar, then select Server in the left menu bar, then choose the IIS Recommended Configuration. What’s installed/configured with the IIS Recommended Configuration install?

  • ASP.NET
  • Static Content
  • Default Document
  • Directory Browsing
  • HTTP Errors
  • HTTP Logging
  • Logging Tools
  • Request Monitor
  • .NET Extensibility
  • Request Filtering
  • Static Content Compression
  • ISAPI Extensions
  • ISAPI Filters
  • WAS Process Model
  • Management Console
  • WAS Configuration API
  • WAS .NET Environment
  • .NET 4.5 Extended with ASP.NET for Windows 8
  • .NET 3.5 for Windows 8

Let WebPI install all these things for you and you’re pretty much ready to roll. A few other things you might want to install on your web server afterward (also through WebPI) are:

  • Web Deploy
  • URL Rewrite
  • FTP Publishing

Happy hosting!

Brad on Google+

Can you run WordPress on Windows? Sure, it works great!

Did you know that WordPress works – and works great – on Microsoft Windows? Sure, WordPress runs on top of PHP and MySQL, which are commonly thought to be related to Linux, but they work perfectly on Windows Server also. In fact, this blog post that you’re reading right now is running via WordPress on Windows, MySQL, and PHP.

Here’s a blog post by Artur at OrcsWeb showing a walk-through of installing WordPress on Windows Server.

As you can see in the post, Microsoft’s WPI (Web Platform Installer) makes it super-easy even for non-administrators.

Happy hosting!

Extend Your Linux Disk Space

I was pondering an interesting, and likely fairly common, situation last night so this morning I was up early getting my geek on (aka, playing, testing, and troubleshooting).

If someone has a Linux VM (cloud server or whatever) with a set size but then need to add more space to their system and make it usable, what’s the best way to do that?

The first though was to power down the VM, increase the size of the disk, then tinker inside of Linux to get the space expanded. I didn’t spend much time messing with this because the first few resources I found sounded very risky and painful – multiple reboots, deleting and recreating existing partitions, etc.

My second thought was to add a second disk to the system and then figure if it could be added seamlessly into the existing space. Well, guess what, it can!

So… first an assumption. I’m starting out with a CentOS server (running in VMware, not that it matters) that has a standard /boot mapped but then has the rest of the space in a logical volume currently mapped to /. I won’t be surprised if someone comments to tell me how that isn’t ideal, but hey, that’s how I was already set up and it works perfectly with my disk-expansion solution.

Here’s what my disk system looked like during the installation:

Initial CentOS disk configuration

So you can see that I started out with a 20 GB (20,480 MiB) drive, assigned 500 MB to /boot and the rest set as a logical volume group containing two logical volumes – swap of 2 GB and / with the remaining (almost) 18 GB.

Here’s what it looks like from inside the system:

$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                       18G  3.2G   14G  20% /
tmpfs                 495M  112K  495M   1% /dev/shm
/dev/sda1             485M   33M  427M   8% /boot

While some people might not like this, and perhaps for good reasons, I do like it because it seems to be the most flexible, with all of the space allocation to / I don’t have to worry about the size of /home folders or web content in /var or logs in /var or anything else. The space is available where needed.

Okay, so, I have a 20 GB drive and I want a total of 40 GB. Rather than increasing the size of the current drive I added a second drive from within VMware. The drive was added “hot” (while the VM was live online and running) but the system didn’t recognize the drive until after a reboot.

Once rebooted, the system showed the new drive (via fdisk -l) but it wasn’t in any usable state. I found a few resources online that said to run fdisk in interactive mode for the first step of preparing this new disk. I’m not a fan of interactive mode when using the command line so when possible I try to avoid it. After some research I stumbled on parted command, which allowed me to avoid fdisk in my process.

So, I’m going to just jump straight into it. Note that when I ran fdisk -l the new (unusable) disk showed up as /dev/sdb – you’ll want to double-check your own system to see how it gets assigned before running any of the following commands.

First I needed to create a new partition out of the idle drive that was sitting around unavailable. As mentioned earlier, my drive was showing up as /dev/sdb. Here’s the command I ran:

parted -s -a optimal /dev/sdb mklabel gpt -- mkpart primary ext2 1 -1

I then needed to create a physical volume on that new partition:

pvcreate /dev/sdb1

Next I needed to add the newly created volume to my existing volume group – the name of which (VolGroup) was specified during the install (and is shown in the image above) and is also noted in the df -h output.

vgextend /dev/mapper/VolGroup /dev/sdb1

Okay, now I need to actually extend the volume that I want to have the additional space (in this case, / – which I named “root” in LVM). To know how large to make the new volume, I had to check the existing group to see how much free space it had, and then check the existing volume to see how much space it was taking. I did this by running the two commands below and taking note of the number of extents reported.

lvm vgdisplay|grep 'Free PE'

That showed 5119 free extents in the volume group.

lvdisplay /dev/VolGroup/lv_root | grep 'Current LE'

That showed 4498 extents were currently being used by the “root” volume.

So, 5119 plus 4498 equals 9617 – which is the new size I want the volume to be – essentially telling it to consume all the available space.

lvresize -l 9617 /dev/VolGroup/lv_root

Now that the volume has been extended, the space still doesn’t show. One last step is needed and that is to extend the file system to take up all of the space in the volume:

resize2fs /dev/VolGroup/lv_root

After that last step I ran another df -h and got this output:

$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                       37G  3.2G   32G   9% /
tmpfs                 495M  276K  495M   1% /dev/shm
/dev/sda1             485M   33M  427M   8% /boot

From that output you can see that the / directory that was originally 18 GB above is now 37 GB. Yeah, I know, 37 GB-18 GB doesn’t equal 20 GB. That’s normal though and explainable but beyond the scope of this post. :-)

Happy hosting!

Manually Remove the W3 Total Cache WordPress plugin

I installed the W3 Total Cache plugin last night and enabled about 1/2 of the features. Everything seemed fine initially so I left it alone. Today I went to write a post and noticed my site was down. Yikes! No idea how long it was down because no one bothered to tell me (thanks for nothing readers! :>).

Since the last thing I changed was adding the W3TC plugin, I decided to remove that. Since I couldn’t get the site to load, I had to figure out a way to do this manually. Thankfully I stumbled across this post:

http://www.tech-recipes.com/rx/36504/wordpress-manual-uninstall-of-w3-total-cache/

I followed the directions there (minus the .htaccess steps since I’m running on Windows/IIS versus Linux/Apache) then killed all the PHP and W3WP processes related to my site that were running. They kept popping up new ones so I stopped the app pool, then tried again and was able to kill them all. After that I restarted the app pool and hit the URL – all better! Yeah!

I think I’ll avoid that plugin now. :)

Microsoft Azure VM Role Pricing

Microsoft Azure has virtual machines (their “VM Role”) for as little as $9.36/month. Wow – that’s a crazy low price! Let’s dig a little deeper in this post though because there seems to remain a lot of confusion on the total cost of a solution.

Let’s compare the Azure VM Role to OrcsWeb’s Cloud ServerOrcsWeb pricing: http://www.orcsweb.com/hosting/pricing/

The base $99 offering at OrcsWeb includes: 40 GB disk, 1 GB RAM, and 1 vCPU. It also includes:

  • Cloudy features including automatic fail-over to another cluster node if there is a hardware failure
  • 250 GB monthly data transfers
  • A single rotating daily backup for DR purposes
  • Both email and telephone support with a 15 minute average response time. If you want administrative support (where OrcsWeb fully administers your server) and support to help you specifically isolate and troubleshoot issues specific to your application, that is covered with the Complete Care Managed Services (CCMS) for $125/month. That also adds 14-day retention to the backups.

How does Azure compare when adding in a few other key features? The base at Azure ($9.36/month) includes 768 MB of RAM, so it’s a lower-resourced solution, but still, we’ll use that to start the comparison. Microsoft Azure pricing for VMs: http://www.windowsazure.com/en-us/pricing/calculator/?scenario=virtual-machines

  • Automatic fail-over: This might be included – that’s unclear in their materials.
  • 250 GB monthly data transfers +$29.40/month
  • Azure does replicate data for DR purposes in a similar fashion that OrcsWeb does.
  • Support – this is where it gets interesting. Azure support plans and pricing are linked here: http://www.windowsazure.com/en-us/support/plans/

The included support with Microsoft Azure (which would put the hosting plan above at $38.76/month so far) is community forums only. Want to open a ticket or call someone? You need to upgrade support levels. Their next level of support (Developer) is an additional $29/month (now we’re up to $67.76) and allows for web-based ticket submissions with a “Fastest Response Time” of up-to 8 hours. Note too that this is the initial response time – not time to resolution. Want to be able to pick up the phone and speak with someone? You can upgrade to the next level of support (Standard) for an additional $300/month (now we’re up to $338.76). That level gives you three (yes, only 3) phone calls per month – which are “call backs” within 2 hours from the time you call them. If you want to drop the response time to 1 hour it takes the Professional Direct level of support at $1,000/month (yes, so $1,038.76/month for a VM!). How about a 15 minute response time? That’s the Premier level of support which starts at $30,000/year or approximately +$2,500/month.

So, if you want a super-cheap Windows VM with no support, Azure might be something to consider. But in my experience, even with development and test machines, support is important and when you need something you probably don’t want to cross your fingers and hope someone in the community forums will help you. Want to be able to send an email or pick up the phone and speak to someone in support, then you are looking at an Azure solution priced at least $338.76/month compared to an OrcsWeb Cloud Server priced at $99.00/month (or $224/month if you want 14 days of backups and complete hands-off system administration).

I hope this helps clarify VM Role pricing at Azure. Happy hosting!