Cloud Computing and SaaS event

October 2, 2008 – 5:33 pm

Event Registraton

Last month I took part in the Codeworks Connect event called SaaS and Cloud Computing. This event was sponsored by Amazon Web Services and emailcloud.

120 people from the IT sector in the North East of England attended. It was an excellent opportunity to network with other technology based businesses and enthusiasts. 

The event kicked off with some housekeeping jobs for Codeworks, namely pitches by five people (including yours truly) for a position on the advisory board of Codeworks. In my pitch I told people about the Super Mondays range of events and how I can help bring the views of the technology community to the board…lets hope that people vote for me…if you want you can help?

Excellent Networking Opportunity

Excellent Networking Opportunity

I gave a very quick presentation on cloud computing where I explained that the term can be used to loosely group together the three business models of SaaS, PaaS and IaaS.

SaaS describes the business model of ’software as a service’. This concept is growing in popularity with small businesses where you can get access to an application on a pay-per-use model rather than paying a large license fee in advance and running the application on your internal network. By far the most popular application sector for this service delivery method is CRM ( an example is salesforce.com) but there are many other examples in the areas of finance and HR.

PaaS describes the ‘platform as a service’ business model. Estimating system resources on a development project is very hard for developers and once the project has been deployed it can often be hard to manage the infrastructure (such as databases, web servers and file storage servers). The PaaS market has commoditised many of these services and delivered them on a pay-per-use basis. The market is supported by players such as Amazon Web Services, Google App Engine and Mosso.

The croud gets ready for an awsome evening

The croud gets ready for an awsome evening

IaaS covers the ‘infrastructure as a service’ market, by far the biggest of the three market sectors, the dominant player in this area is Amazon Web Services. AWS gives you access to servers (the full OS), storage and other infrastructure in a scalable and cost effective way on a pay-per-use model.

The common threads between the three business models are pay-per-use, scalability, security, reliability and the ability to integrate using API’s. The market new has access to services that can lower the cost of development, reduce infrastructure wastage and manage scalability in a cost effective way.

The program progressed to a panel discussion, chaired by Andrew Robson. The panel comprised of Ross Cooney (AWSUG and emailcloud, Tony Lucas (Flexiscale.net), Steve Caughey (Arjuna), Sarat Pediredla (Hedgehog Labs) and Duncan Mactear (4Projects).

The pannel discussion

The pannel discussion

The optimistic view, taken by the majority of the panel, was that we are on a journey towards cloud computing becoming the norm for business computing. Duncan Mactear of 4Projects sounded a more cautious note; his company provides SaaS for the construction industry but does not use cloud; instead their servers are hosted in a third-party data centre. To which Tony Lucas of Flexiscale pointed out that 10 years ago, similar companies weren’t even using hosting services.

Trust was raised as a key issue. Several panellists opined that interoperability was the best answer to this; then if your provider has problems, you can switch your application to another. Rozmic run their EmailCloud application on both Amazon and Flexiscale, switching between them when one has problems. The downside of this is that it is currently expensive to implement applications for multiple providers, although some companies (such as CohesiveFT and Rightscale) are providing systems to aid this process.

engaged

engaged

I was initially concerned that the panel discussion would be either too technical or too basic…I feel that on the night that we hit the balance correctly. Here is just one thought from Richard Laverick from UBrands:

 ”It was interesting to hear the for and against arguments for the adoption of cloud computing. I made some great new contacts and look forward to future codeworks connect events.”

I hope that the popularity of the event will spill over into the super mondays events over the next few months.

Thanks to Dave Berry for allowing me to plagiarize his blog ;)

Redundant Hosting Setup

September 29, 2008 – 10:59 am
Redundant Servers

Redundant Servers

I have just spent the weekend helping a friend to build servers and setting up a hosting facility. It was a weekend of cables, kernels and RAID driver patches!

A few months ago we sat down and started a planning session to evaluate the needs of his company and we decided that the current hosting setup was not good enough. The days of using a collection cheap dedicated servers at a US hosting facility were long gone because their customers demanded a more reliable service. After evaluating some of their needs we quickly decided that Cloud Computing is not an option. We had to build our own system on our own servers.

We had many variables to consider including:

  1. dedicated resources
  2. physical access to the servers
  3. load balanced HTTP service across several servers
  4. Cloudbursting facility for web and application servers
We went for the following:
  1. Decent powered servers with lots of RAM and RAID
  2. CentOS 5 OS’s
  3. Pound load balancer
  4. Multiple instances of Apache2, PHP5 etc
  5. qmail email server
The system is now ready to be moved into a cabinet at Databanx and it is hoped that it will go live later this week for a few of the clients. The ultimate plan is to transitioning all clients before the end of October.
I love the smell of fresh tin in the morning!

Super Monday Something (SMS)

September 23, 2008 – 2:24 pm

After several months of planning we have finally held our first large usergroup event last night at the Beehive in Newcastle University.

At short notice we collected 20 people from the following various usergroups:

  • AWS (Amazon Web Services)
  • Ruby
  • LUG (Linux User Group)
  • ACCU
  • Refresh Newcastle
The ultimte goal is to build the profile of open source software in the North East of England. To do this it has been agreed that we need to boost the membership of the various user groups and allow them access to a really prefessional and properly managed meeting space for regular meetings. Newcastle University have been really generous to allow us access to the Beehive area.
Once the regular monthly process is setup properly then we can drive membership and attendance by running large format events every three months. The first of which is planned for Thursday 25th Sepember and billed as an indroduction to Software as a Service and is being managed by Codeworks Connect.
The untimate goal is to build participation in the region and make Super Monday Something a part of the monthly diary for digital and IT based companies in the North East.
If you are interested in attending one of the future events you can find out more on the NCL.OSN Google Group.
The group has setup a web site here:
Http://www.supermondaysomething.com

Google Developer Day, London 2008

September 19, 2008 – 3:44 pm
Google Developer Day, Google App Engine PresentationGoogle Developer Day, Google App Engine Presentation

On tuesday I travelled to London to the Google Developer Day. As expected, the event was very well organised.

Mano Marks gave an excellent set of presentation on Google App Engine. You can view them on YouTube.

I went along to see what I can learn about the Google App Engine and specifically to see if it would be possible to move some of the emailcloud administation system to AppEngine. It seems that this is not possible because of the following reasons:

  1. AppEngine currently only supports python…it will support more in the future but google have not announced a date.
  2. There is no way to use the service to manipulate a file…so that we can get a file from AWS S3 and then release it to an email user.
  3. There is a limit of 5m page views a month…this will increase soon…but no date was announced.
  4. there is a limit of 1Mb per transaction…this is too small
  5. there is a time limit of 10 seconds for transactions and 4 seconds for external URL calls
  6. the only viable database system it can use is BigTable (as to use any SQL database you would need to host it externally and then be limited to access by URL, including the 4 second delay).
  7. no SLA
  8. EVERYTHING is covered under the Patriot Act

There were more…but I stopped listening after all this.

Powering Your Business with Cloud Computing

September 5, 2008 – 4:03 pm

Next month I will be speaking at a webinar alongside Dave Berry and Alan WIlliamson. The webinar is entitled “Powering Your Business with Cloud Computing” and takes place on Tuesday October 14th 2008, 1.30pm.

More Details Here

You can signup for the event here.

Dave Barry has written a blog post about this here.

The first of our open source themed events has been announced!

August 12, 2008 – 4:20 pm

After several months of hard work we have finally announced the first event! Codeworks are promoting the event which will cover the ‘Software as a Service’ and Cloud Computing markets.

 

The event will take place on 25th September at a venue in Newcastle. There is more information on www.thinkandadrink.com (this will be updated in a few days). The target attendance is 100…but I want to hit 200 in on the night.

 

The event will take the form of a panel discussion, with each panel member having a few minutes to introduce themselves and why they are interested in SaaS or cloud Computing. We have three panel members confirmed (Steve Caughy from Arjuna, Tony Lucas from Flexiscale.net and yours truly). We are looking for a further three members on the panel. Do you know anybody who would like to join us? The criteria are that the person is local and they have some knowledge of the technology on a technical or business related way. It would be great to get a developer or perhaps a member of one of the local user groups to join the panel so that they can publicize their group etc. If you are interested please email me.

 

I hope that this is the first of many open source software ‘friendly’ themed events. The idea is that we host regular (quarterly) events about software with a slant upon open source technologies. The event will be attended by the people behind Software City. They have expressed an interest in promoting/hosting the future events. None of this will progress unless I can prove that the tech community in the North East is interested!!! I am relying upon everybody who expressed an interest to attend this event….it has taken months to organize and it is a direct output from the numerous meetings that we have had over the past few months.

Please, Please, Please attend! Bring your friends!

The Journal Newspaper have written the follwing two articles on this topic:

IaaS, the answer to an internet startup’s dreams but not a co-lo killer !

August 2, 2008 – 3:44 pm

Traditionally, if you wanted to setup an online business you needed money…and lots of it. With the advent of commercial Infrastructure as a Service (IaaS) providers the economics of the internet startup has changed….for the better.

In the past if you came up with the next ‘killer app’ you would be faced with a serious decision…do you try to build your business on a shoe string and risk the chance of being a victim of the Slash Dot effect  or do you try to navigate the slippery road of equity investment funding. Entrepreneurs have travelled both paths, neither are fun and both are fraught with danger.

The business economics of the Slash Dot Effect are not new and certainly not confined to the internet. UK telephone company Talk Talk had serious problems last year when it announced it’s free broadband service…the company simply could not handle the number of queries. On the internet there have been many casualties but the general result is ridicule and perhaps business failure. The fate of a fully funded internet business is not guaranteed either. The internet is littered of stories describing how the entrepreneurial flair and energy was sucked straight out of the company by an evil equity investor.

The basic problem is that in order for your business to be successful you need to give your application an adequate provision of bandwidth, processor power and storage capacity…and properly defining adequate is the problem. If you try to save money you can end up with insufficient capacity. If you project to buy too much you might find it hard to raise equity funds.

The advent of IaaS has resolved this little issue. Now, instead of needing to estimate and purchase your capacity (bandwidth, processor and storage) in advance you can buy it as you use it, in a ‘pay as you go’ system. In our case we buy servers of several providers (AWS and Flexiscale) on a per server per hour basis. We fluctuate between having 20 and 150 servers (instances) running at any time. This business model allows us to compete with some of our VC backed rivals in our market as our capacity is not limited by our cash reserves!

Buying your capacity in this way not only gives you a cash-flow advantage it also gives you unlimited scalability. Online video website Animoto went from roughly 50 servers to needing more than 3,500 in three days. Imagine having to predict growth and get servers racked, stacked and online in time to meet the growth! While a hardware order like this would be a dream for DELL, I doubt they have that kind of stock readily available or indeed the logistics to ship and set it up in that time. The New York Times covered this in more detail.

Using IaaS you can scale in a very cheap way without serious capital investment. This now allows entrepreneurs to setup and start trading with very little funding…hopefully getting them into profit earlier and retaining more of the equity of their business. Indeed, this is now causing problems for VC’s as they traditionally justified their huge equity stakes (or excessive protection clauses in their subscription agreements) because of the high commercial risks. These risks can now be significantly lowered which can allow entrepreneurs drive a harder line.

Once the startup  is trading and actually making money the economics can change significantly. While having unlimited scalability in a cash flow friendly manner is advantages in the early days it can often be cheaper in the longer term to transition the infrastructure in-house (or to a co-location facility). While this calculation is dependent upon how you application uses hardware (is it CPU intensive Vs RAM intensive) it is generally true.  So, start-ups need to look at buying their own infrastructure after a period and start transitioning their applications. The ultimate goal is to move the bulk of the application to your own infrastructure and still use IaaS for any additional or burst capacity.

In my day job I am involved in transitioning some of our capacity from our IaaS suppliers to our own hardware. So, at the moment I am planning to setup several racks of servers in several data centres and installing commodity servers in clusters. Then using fancy traffic routing I plan to point our traffic at these banks for processing and then using IaaS to give us burstable capacity. We have effectively used IaaS to bootstrap our business into existence…something that would have been impossible in the past.

So where previously the startup had the ‘shoe string’ or ‘VC’ route they now have an additional option…the ‘bootstrap and transition’ route. The interesting point is that rather than being a disrupter for the traditional co-location market, I have found that IaaS is actually building demand for co-lo providers as it lowers the cost for start-ups and will eventually increase the numbers of them…thus building the co-lo market!

Simple email analysis

July 27, 2008 – 4:45 pm

I was asked a simple question this week about the composition of email….basically, what percentage of email is spam? I have seen stats on this several times before…but I decided to look into this myself.

I decided to run some simple tests and produce some stats on a portion of the infrastructure that I use to run the emailcloud platform. During the filtration process the emailcloud platform will scan an email twice using two different server clusters. The first cluster is rather crude and will remove the vast majority of spam emails. I analysed this cluster first. The graph of the first cluster is here:

Firstly, the yellow line is the number of SMTP connections per 5 minute interval, which peaked at around 2500 connections per five minute interval at around midday. The black line is the number of emails that were allowed to pass through this mail cluster. The various lines in the middle describe which test was used to stop the particular emails. This shows that we filtered out 95% of all email using the first cluster!

The second cluster performs a very resource intensive scanning process which mathematically analyses the content and composition of the email. I was surprised at that and then went on to analyse the second cluster. The Graph is as follows:

In this cluster I only analysed the total email traffic and the “clean” email. You will notice that it peaks at 280 connections per five minute interval at around mid-day. I was really surprised that this cluster blocked 47% of the email that it processed. This basic analysis (on traffic that passed through these particular clusters on a Saturday) shows that around 97.5% of email is spam…..rather high don’t you think!

What are the business benefits of IaaS?

July 23, 2008 – 7:45 pm

I was asked to summarise the benefits of IaaS (Infrastructure as a Service) to the business community over traditional server deployments.

I can only answer this from my personal prospective…but as a small business owner I can tell you that the benefit in IaaS is:

  1. in allowing startups access to infrastructure or CPU cycles that they usually cant access…due to cash or speed to deploy. I am thinking our own service emailcloud.com and the Animoto story here.
  2. in helping enterprises to process some periodic batch jobs…large transactional or process driven jobs and not the day to day stuff. I am thinking of the NYTimes story here.
  3. in providing tools or basic consulting for either of the above. I am thinking of Rightscale etc here.

I think that the various AWS services and Flexiscale are ‘on the money’ because they allow very simple access to all three.

How to scale a web site…very basic example using AWS.

July 11, 2008 – 3:26 pm

I was asked by a friend how I would setup a website in a scalable way using Amazon Web Services (AWS).

The website will have a service where it will take file uploads from users, process them and make the result publically available on the website. It is expected that this website will be very busy and without proper planning it will have bandwidth issues and long processing delays.

In its most basic form, the site will have three components, namely:

  1. load balancer
  2. web server
  3. processing server

It will also use the following AWS services:

  1. S3: http://aws.amazon.com/s3
  2. SQS: http://aws.amazon.com/sqs
  3. EC2: http://aws.amazon.com/ec2

To perform the load balancing function you can use an EC2 instance with some load balance app installed on it. There are plenty of these publically available under the GPL such as Pound (http://www.apsis.ch/pound) or Crossroads (http://crossroads.e-tunity.com).

Behind this you can add the bank of web servers, perhaps two at the start. The web servers would manage the following these steps:

  1. allow the user to upload the file that needs to be processed
  2. save the file in S3 and create a log entry in the website database
  3. insert a message into SQS (listing the location of the video file)
  4. setup the processing servers to poll the SQS queue and take the next available job, process it, save the result in S3 and update the mysql database to say that the processing has been completed and the file is available for public viewing

The really low-tech way to scale either the web server bank or the processing bank is to get the individual servers to email you (using cron) when the load averages are high. The more tech savvy way to do it is to use either Scalr (http://code.google.com/p/scalr) or your own auto-deploy tool/app.

This is not supposed to be an exhaustive study or example of how the site would be setup…but I hope that this acts as a starting block.