Cloud Computing


As the leading enterprise AWS Partner in the UK  ;o)  Smart421 had a big presence at the London AWS Summit last week (23 April).

Several of our customers also attended and one of them, Steve Howes, Chief Executive of Rail Settlement Plan part of Association of Train Operating Companies – ATOC) presented as part of the 2nd keynote, and very kindly mentioned us.

In fact, we were referenced thoughout the day, sometimes in unexpected ways. For example, within the opening five minutes of the first keynote, Smart421 was name-checked by Werner Vogels, CTO at Amazon.

Steve Howes takes to the stage

Steve Howes of RSP takes to the stage in front of 1,200 delegates

As per the recent Las Vegas event, it was a bit rock’n'roll in the keynotes, with music by Foo Fighters playing over the PA whilst we were waiting for the queuing hordes to make their way through the registration bottleneck and into the venue.  Vogels himself appeared on stage to the sound of Nirvana pumping out of the speakers.

What struck me was the size that this event had become, a significant increase on the 2012 AWS Summit.

AWS Summit London 2013

In the afternoon, the event split into separate streams. I stuck to the more involved sessions that were digging into the specifics of particular service releases such as Amazon Redshift and Amazon DynamoDB.

As you can see from the photo above, there was barely sitting room only in some of these techy sessions, let alone standing room.

It made me think – would conference attendees be prepared to sit on the floor for any vendor, especially in the corner of a crowded room? There must be few other vendors, if any, that have that kind of pulling power right now.

These are exciting times. Opportunities for enterprises to benefit are enormous.

2013 AWS Summit, London 23 AprilAnd this event confirmed my reflections that we’re reaching a tipping point in the market; adoption by the “early majority” in the technology adoption lifecycle is really visible and is happening – albeit with different market sectors arriving at very different stages.

Our conversations continued all day long over at the Smart421 stand, where we showcased three of our customer engagements:
Disaster Recovery on the AWS Cloud for Haven Power,
Big Data Analytics on the AWS Cloud for Aviva / Quotemehappy.com,
and Service Transition to the AWS Cloud for ATOC.

Frankly, we wanted to showcase even more but there just wasn’t the space.

Please Rate and Like this blog.  If you can, please leave a Comment.

EOA-summit-logo-2013It was great to see National Rail Enquiries (NRE) win an award at the European Outsourcing Association Awards in Amsterdam last Friday (26 April).

In recognition of their SIAM outsourcing strategy (Service Integration and Management), NRE won the award for Best Multi-sourcing Project of the Year , beating strong category finalists 60k and Centrica (Centrica won this category in 2012).

Smart421 is pleased to be a large part of that initiative, performing the Managed Services element on top of an AWS Cloud platform for several key NRE applications.

As customers struggle with the chains of traditional SI relationships, Smart421 is providing agile delivery and innovation methods in the IaaS world.

Many analysts see this as “third generation outsourcing” and a change for good – and so do I.

 

Please rate and Like this blog.  If you can, please leave a Comment.

Wow! SyncIpswich’s second meetup and around 80 people crammed into the Eastern Enterprise Hub in the James Hehir Building at University Campus Suffolk. Many of the attendees were working for local behemoths like BT but there were also a good mix of bootstrappers, Start Ups and tech entrepreneurs with all kinds of backgrounds (even spotted a Chartered Accountant).

Organisers Carl Farmer (@CarlFarmer), supported by Anders Fisher (@atleastimtrying) and others have done a great job with SyncIpswich, which we are proud to sponsor. The focus of this meetup was on building software quickly with good practices as well as a nice introduction to the Windows Azure Cloud.

Talk no 1. Continuous Delivery

The first presentation by Chris O’Dell from 7digital (@ChrisAnnOdell) described how Agile practices (CI, Kanban, etc) combined with their architectural evolution to SOA have reduced code to deploy times to half a day  at 7digital.  And, by the sound of it, makes their developers more productive by getting away from “DLL Hell” that used to be the bane of any Microsoft Windows developer’s life towards a loosely-coupled set of services and a public API.

7Digital Logo

Chris raised some really interesting points around developing small fine-grained service components – not being that familiar with .Net myself this seemed to be similar to what we are doing in the Java world with OSGi and Service Component Architecture. I do like the policy of developing new features on the trunk (no feature branches) but making good use of feature flags rather than old-fashioned branch & merge.

They are also using Git for the code version control and Chris showed the inversion of the classic Unit Test, Acceptance Test, QA triangle. Some in our own organisation are raising question marks about the usefulness of very granular unit tests so the approach taken by 7digital of increasing the number of Unit tests is interesting.

There were a lot of questions from the floor, I was particularly interested in how the small kanban teams (about 6 or 7 members in 5 or 6 teams I think) interact when there are common services. This is a key problem that us SOA architects need to get right to get the best value on services. Feature Flags is something that we’ve also thought about in the context of simplifying application testing by, for example, switching off authentication for functional testing.

It’s great to see a company like 7digital competing successfully with iTunes and Amazon in the digital music space. I’ll be checking out their API (and their JLS back catalogue !) in more detail this weekend.

Richard Astbury AzureTalk no 2. Starting out in Azure

The second talk of the night was by Richard Astbury (@richorama) of Two10 Degrees ( @two10degrees). Richard gave a nice introduction to Cloud computing and in particular using Microsoft Windows Azure, showing a picture of a MS data centre under construction, which was something I haven’t ever seen before. I think it really brought home the sheer scale and commodity nature of the Cloud and these facilities being full of containers of kit that is just thrown away or recycled when it stops working.

Building a website on Windows Azure from scratch can use a few main pre-canned routes like the obvious “Website”, “Virtual Machine” and “Cloud Service”.

And it now includes a “Mobile Service” which is of particular interest to me. Sadly, I didn’t have time to chat to Richard about this but it’s on my “To Do” list to get a Hello Smartie mobile service up and running. In fairness, Richard did do two masterful demos for Website, including a node.js based site which he even launched from his home computer (a Raspberry Pi no less). As Carl tweeted:

Deploying to Azure from a remote RaspberryPi at home… Impressive stuff from @richorama !

— SyncIpswich (@SyncIpswich) April 25, 2013

Well done to the people of Ipswich for turning out and drinking all the sponsored free beer!
SyncIpswich will run and run.

Please Rate and Like this blog.  If you can, please leave a Comment.

Alloys

Which Essex boy doesn’t want Titanium Alloys?
Photo © Maxpro Dreamstime Stock Photos & Stock Free Images

Introduction to Appcelerator

I’ve had my eye on Appcelerator and their Titanium mobile development platform product for some time. So I grabbed the opportunity to venture north of the [Suffolk] border to the ”SyncFocus“ a SyncNorwich spin-off event that was held in the Garden House Pub, upstairs room, in Norwich last night (20th March).  So, reflecting on my rough notes, I’m posting this blog with a few random thoughts thrown in and some links to further information for those interested in javascript-based mobile developments.

This SyncFocus featured as guest speaker non other than Boydlee.  For those who haven’t heard of Boydlee, he is a mobile application development guru and specialises in the Titanium platform who, like Beyoncé, is now so famous he doesn’t need to use his surname :-) .

My “executive summary” is that Titanium is a serious productivity tool for people who can write “well written” javascript code. It is in competition with the HTML5-based approach of PhoneGap, and does not (yet) have as many surrounding services as IBM Worklight which is squarely aimed at the big Enterprise market and is not as broad in its coverage of operating systems and devices (yet). It does however, have a thriving developer community and a very attractively priced (i.e. “FREE” cloud service). It does appear to be very easy for a moderately skilled javascript developer to create apps but it’s probably just as easy to create a horrendous mess so the newest approach is to supply a framework as the well-known MVC pattern through “Alloys” – which Essex boy doesn’t want Titanium Alloys on their racer?

Main points:

  • Titanium is purely JavaScript library coding against the Titanium api, the platform compiles the source to native Objective-C or Java code for the iOS and Android Apps and can easily be linked with the Xcode or Android SDK to complete the builds.
  • Links with emulators for iPhone, iPad and Android
  • Appcelerator has over 400,000 registered developers worldwide (a counter on their home page tells me it is just under 430,000 today)
  • The libraries themselves are “Free and open source”, available on GitHub
  • However, the Titanium studio is not free, and you can take the Appcelerator Paid support
  • An estimated one third of cross- platform apps are built on titanium
  • Claims to also support BlackBerry 10, but Windows 8 is not available until later this year

One really nice feature is a very large “Module marketplace” which is mostly compiled binary code aimed at one native operating system or the other that can be downloaded and incorporated into the build – for example something to integrate to native libraries, plugins, e.g. Barcode scanning

A lot of those modules also have their source code on GitHub, building the community even more and improving the eco-system. This appears to be thriving and also includes some javascript extensions as well as the compiled native iOS and Android libs.

Appcelerator Mobile Service (ACS)

ACS is an interesting move to give a free level of Mobile (application) Back-end as a Service (MBaaS) to developers of services, running on AWS.

This includes 20GB storage, 5m push, 5m api and 20 pre built common services, including key-value pairs (similar to AWS Simple DB), Ratings, Geo services, media, including thumbnails, Social integration (Facebook) and storage of custom objects, which I think was based on Mongo DB as a service. There is certainly capability to link directly with Node and Mongo backends and simple stuff like SMTP integration (again similar to AWS’s Simple Email Service “SES”).

Coding practices

Boydlee recommended looking into Common.js best practice for relative newbies to Javascript. Other frameworks are available, like backbone, require.js and one of his blog posts has recommended the javascript patterns book by Stoyan Stefanov.

There are also free books online available on styling, including best practices to cascade for tablets so you don’t just get an enlarged phone experience that sucks.

The CSS approach also over-rides for different devices, so it’s not always best to stick with pure javascript for everything, however, for those who really are blinkered by javascript there is a CSS to JSON converter library.

Boydlee’s books are on PACKT or there are kindle versions. Boydlee’s best practices book is one I will be getting for sure.

Finally, the newest developments in Appcelerator will probably be using Alloy which includes full Model View Controller (MVC) frameworks (again, all built on well-known javascript frameworks) that claims to speed up App development by another order of magnitude.

Comparing it with the IBM Mobile First offering the coverage of mobile O/S is much wider in Worklight (Windows 8 and BB 10 were available very soon after launch), the adaptor environment, the upgrade management and enterprise app centre seem more developed and you have the whole extra wrappers of security, analytics and so on within IBM’s Mobile offering. The customer list on Appcelerator’s website is mighty impressive for consumer-oriented Apps but the ability to integrate with Enterprise back-ends is less of a focus, which is why in our case we’re focusing on IBM for Enterprise mobility but Appcelerator is certainly worth considering.

Please Like and Rate this post.  If you can, please leave a Comment.

As my conference season is fast approaching I have been looking at what will I be wearing this year. Well, Open Identity, Open Infrastructure and Open Integration are the themes of my Spring collection.

First up is Open Identity with the Gartner Identity and Access Management Summit ( #GartnerIAM ). I’m heading straight for the ForgeRock stand which I think will be buzzing this year as we’re seeing interest taking off in their products – and our partnership is really starting to get into its stride too.

Next up will be Open Infrastructure at the AWS Summit in London. This will be especially interesting following Smart421 winning two major AWS contracts recently and starting to operate in the SIAM role for National Rail Enquiries. My expectation is that this time around many more enterprises be declaring their AWS credentials – which is closer to my personal experience.

Last but not least, it’s Open Integration, back at Gartner for the Application Architecture, Development & Integration Summit ( #GartnerAADI ) in London on 16-17 May. This time we’re showcasing how Smart421 is turning the Service Factory concept “inside-out” to create the Open Enterprise. If you want to see more then come along and meet us there.

All three themes all tie back to how we see the Future of Architecture developing and that’s getting quite exciting too.

Enterprises that are thinking about big data need to understand that it isn’t just about analytics of vast amounts of data but also how that information is stored, Amazon CTO Werner Vogels said during a keynote at a recent Cebit trade show.

His “Data without limits” speech encouraged enterprises to think about the big picture, and he also presented a blueprint for how Amazon’s cloud can be used to take out some of the pain of implementing Big Data systems.

“Big Data is not only about analytics, it’s about the whole pipeline. So when you think about Big Data solutions you have to think about all the different steps: collect, store, organise, analyse and share,” said Vogels.

Amazon itself has been doing Big Data and analytics for a long time to try to target customers and convey relevant recommendations. When mistakes have been made it’s because there isn’t enough data to back up a recommendation.
Amazon Web Services offers a number of services that can help an enterprise collect, store, organise, analyse and share data:
⁃    AWS Direct Connect allows an enterprise to establish a dedicated network connection from a customer to Amazon.
⁃    AWS Import/Export, which allows an enterprise to send portable storage devices to Amazon, which are then uploaded to Amazon’s cloud storage.

Other services that are also used for big data include:
⁃    Amazon’s Simple Storage Service
⁃    DynamoDB NoSQL database
⁃    Apache Hadoop-based Elastic MapReduce

A new service from Amazon, Data Pipeline can orchestrate the processing of data using data-driven workflows and built-in dependency checking in order to collect, store, organise, analyse and share, large data. Amazon designed the Data Pipeline service to automate the process of parsing large sets of data.  After processing the data, the results can be transferred to AWS services such as Amazon S3, Amazon RDS, Amazon DynamoDB, and Amazon Elastic MapReduce (EMR), and the Data Pipeline service is integrated with the Amazon Simple Notification Service (Amazon SNS) to send notifications of any failures during processing of the data.

Please Rate and Like this blog. If you can, please leave a Comment.

Photo © Ciprian.d Stock Free Images & Dreamstime Stock Photos

Photo © Ciprian.d Stock Free Images & Dreamstime Stock Photos

As you already know from the blog 5 Dec 2012, as we were preparing to tell  the world about our Big Data capabilities, our CTO Robin Meehan coined a cracking one-liner:

“It’s not about survival of the fittest – it’s about survival of the best informed”

We liked it so much we decided to include it on our go-to-market materials.

Since then, we’ve witnessed some upsides such as how our customers have decided to deliberately ’think outside of the box’ to better understand their portfolio of brands and be better equipped to attract customers without canabalisation of other lines of business.

A great case in point would have to be Quotemehappy.com which is already taking advantage of the analytical power in cloud computing with Big Data on AWS to understand its brand and build its business.

Aviva launched Quotemehappy.com in August 2011. With a national reputation and strong brand in the general insurance sector at stake, they wanted to know how their multi-touchpoint cross marketing activities impacted each brand in their enterprise portfolio.

Smart421 was invited to assist.  Smart421 architected the Cloud instances using Amazon Web Services (AWS) and developed the algorithms needed to maximise the power of the customer’s own data and the Big Data analytical environment. This gave the business a level of insight not previously possible with traditional on-premise business intelligence tools and techniques.

And the customer was kind enough to go on record about what we had been able to do.

“Smart421’s Cloud architects gave us a head start on making Big Data real for us, including how business insights are really delivered, what the costs really are, and how the technology really works in our context. Their output contributes to how we differentiate ourselves in a crowded market.”
Keith Misson, Operations Director at Quotemehappy.com (an Aviva company).
Naturally, we asked if we could feature this on our website because it evidences the transformation effect of what a well architected IT strategy can deliver for a business.

(Why not share this case study with your colleagues and friends using short URL http://bit.ly/Wby5Y6 )

Big Data is a good example of how technologies developed for one use have been deployed for an altogether different use. I think that Robin’s original quip on survival has actually gone on to deliver a powerful lesson on technological exaptation.

 

Please Rate and Like this post, If you can, please leave a Comment.

AWS

In my previous blog post on using AWS CloudFormation to provision a Centos based environment I mentioned how at first the JSON syntax used within CloudFormation templates can be a little daunting, especially for people with limited scripting experience.

At the time of writing the blog I was using a combination of   Notepad++ with the JSON Viewer Plug-In to create and maintain my CloudFormation templates. One of the problems I had with this approach was that the templates are treated as pretty basic text files by Notepad++ and the JSON Viewer Plug-In only checks the base JSON syntax, so there is no validation of the objects defined in the JSON to ensure that the correct properties are being creating to allow the template to form a valid CloudFormation stack.

As an early Christmas present to anyone working with CloudFormation AWS recently announced the introduction of a new CloudFormation editor as part of the AWS Toolkits for Visual Studio and Eclipse. I have now had a chance to download and experiment with the Visual Studio version of this and am really impressed with how much easier it makes the creation and maintenance of CloudFormation templates.

As a .Net developer I have grown used to regularly relying upon IntelliSense features to aid with code creation, particularly when it comes to accessing and updating object properties. The CloudFormation editor provides this for the objects defined within a template as well as code snippets for all the object types you might want to define within your template. This greatly reduces the number of errors caused by ‘finger problems’ that used to occur when creating a template by hand.

The other really useful feature of the editor is the ability to estimate the costs of a stack before creating it. In the past when quoting for customers we have tended to pull together a design, plug the figures into the AWS Simple Monthly Calculator and then once we have received the go ahead provision the environment. With the ability to create costs from a template we are now looking at generating a base template at the design phase and then costing and building from this, which should help with the speed of environment creation and clarity around the prices for altering the design.

Based on our experiences so far  it’s a big thank-you to AWS Santa and his helper elves for the early Christmas present of the CloudFormation Editor and we are all looking forward to further presents from AWS  throughout next year :-)

Turning disc

Turning disc by Toshiyuki IMAI.
CreativeCommons

With most enterprise arrays now providing the ability to allocate more storage than is physically installed and with data moving transparently between tiers of low cost and high performance with no human intervention – what could possibly go wrong?

For a long time now SAN infrastructure has been at the core of the Data Centre satisfying a need to hoard as much data as could possibly be collected. With the required capacity growing at an exponential rate, it has become common to predict massive data growth when designing services, often calculating growth for two or more years. This scenario leads to large amounts of storage being purchase in anticipation of things to come, by the time two years has passed, some of the attached systems will become legacy as they are superseded by shiny new solutions and some of the systems will just not have grown as expected. Even those systems that have behaved as designed are probably using no more than 70% of the storage as likely as not due to a “fudge factor” arbitrarily thrown into the mix by the architect.

Virtualised storage arrays (each in it’s own way it would seem) allow us, within reason, to allocate as many devices of whatever size we like to as many hosts as we see fit with only a small pool of physical disk. Allowing us to satisfy our storage hungry analysts whilst buying the disk in a phased manner and delaying spend until it is necessary. Add into this the reducing cost per Gigabyte over time and the benefits mount up.

At the same time, the array architecture has developed in such a way that it is harder to facilitate small amounts of physical growth. With larger RAID groups becoming more common and larger disk sizes compounding the issue, traditional SAN allocations became inflexible and for a small requirement, potentially expensive. The smallest building block becomes a RAID Group and for a one Terabyte requirement on a traditional storage array might require the business to grow an array by thirty Terabytes or more. With virtualisation comes the ability to create more devices for allocation without having to have physical storage installed to match. There is no longer a need to grow a system until the written data exceeds thresholds and the larger building blocks are far more palatable when they are shared between all attached systems.

As with everything in life, there is always a flip side. The balance in this case is increased risk; what if the physical pool fills up. At the very least, writes will have to stop but in some cases I/O stops altogether, neither scenario is one that a business will want to contemplate. This is where the need for careful planning and monitoring is essential.

In a simple virtualised environment, physical storage will be configured into Storage Pools and a number of virtual devices created and attached to these pools. As data is written to the logical device it will be written across the physical disks making up the storage pool.

Considerations when designing virtual solutions:

  • The number of servers that will be connected – To provision for sufficient connectivity and I/O capability. It is often not available but any additional I/O profiling for attached systems will also be useful.
  • The average server allocation size and utilisation – To calculate required space for allocation and physical writes.
  • The maximum allocation size –  Large allocations could result in a single server having the ability to fill all available pool space.
  • Maturity of the service – Mature systems will require larger initial space with slower growth; new systems may start small and grow into the allocated space over an extended period.
  • Performance – Is there sufficient throughput for the attached servers?
  • Criticality – There is an associated risk with over provisioning. There are ways to mitigate this and in some cases systems will be too critical to the business to accept any additional risk.
  • Mixed Production, Test and development environments – Will the different environments share the same pools or should they be ring fenced?
  • Alerting  – What level of alerting is configured? At what level of utilisation do warnings start? Can unexpected write bursts from a single application be identified and highlighted?
  • Capacity for growth – Can the pool be quickly expanded?
  • Time to deploy – How quickly can the vendor react to increase the Pool size.
  • Plan B – Can space be redeployed to production systems?
  • Cost reduction per GB – Flexibility may be cited as a benefit but the main driver for virtualised storage is to drive the cost per GB down, on the most part this is achieved by deferred purchase and tiered storage.

Monitoring:

With thin provisioning, monitoring is essential to maintaining a low risk environment.

As a minimum the capacities must be monitored on a regular basis depending on the activity in the environment, the attitude to risk and the subscription and utilisation figures. In most large environments daily should be sufficient or even weekly.

We have found the following capacity metrics to be the most useful and collect on a weekday basis so that we can produce trend analysis to support future forecasts.

For each pool on each array we collect:

  • Installed storage
  • Used
  • Virtual TB
  • Allocated
  • Subscription
  • Nett subscription

Experience shows that the larger environments have a very linear growth both in allocated and written storage and the trending figures provide quite accurate forecast estimates.

Performance figures should also be reviewed but a less regular basis is sufficient – weekly or even monthly.

With virtualisation improving the overall utilisation and ever larger physical disks being installed we see as a result that the I/O profile per disk is also increasing. These performance trends should be monitored and reviewed to anticipate thresholds being reached.

As a result of the increased utilisation and larger physical disks, we are also seeing the number of host connections to front-end ports (fan-out ratio) and the amount of storage allocated to front-end ports both increasing. The host ports should be monitored in the same way as the disks to anticipate performance thresholds being reached.

There is no point increasing the size of the pools to accommodate further allocations if the path to the data is already fully loaded.

This performance monitoring is specific to the capacity planning and does not replace the normal daily performance monitoring and alerting on the storage arrays.

What can be done to prepare for emergencies?

Most virtualised storage solutions have the functionality to preallocate storage. For systems that cannot afford any outage the storage can be preallocated in advance.

Understand the process with the vendors to increase the installed physical capacity.

  • How long for the vendor to install new storage from the request?
  • Can elements (such as procurement) be prepared in advance of the need or post deployment to avoid delaying the process?
  • Can hardware be left on site to reduce hardware deployment timescales?
  • Are sufficient resources available to accept additional disk?
    • Free drive bays
    • Cache
    • Power
    • Floor space

Understand the environment.

  • What systems are attached that could be sacrificed to maintain critical services?
  • Are there device replicas in the pool for non-production purposes that could be released?

These observations are based on simple virtualised pools, most hold true for tiered storage environments but these also bring their own sets of concerns and even more metrics to follow.

Please Rate and Like this blog. If you can, please leave a Comment.

I was doing some Hadoop demo work last week for a customer and mainly just because I could, I used spot instances to host my Hadoop/pig cluster using AWS’s Elastic MapReduce (EMR) offering.  I thought I’d have a quick look at what the resulting costs were over the few hours I was using it.  I used a combination of small and large instances in the US-East region – m1.small for the master node and m1.large for the core nodes.  Note – these costs exclude the PaaS-cost uplift for using EMR (another 6 cents per hour for a large instance).

In summary – it’s dirt cheap….

AWS Spot Price Analysis

What is more revealing is to look at this in terms of the % of the on-demand price that this represents…

AWS Spot Price Analysis Saving

So in summary, around an average saving of 90% on the on-demand price!  This is probably influenced by the fact that I was running the cluster mainly during the time when the US are offline.  We tend to get a bit fixated on the headline EC2 cost reductions that have frequently occurred over the last few years, and the general “race to the bottom” of on-demand instance pricing between AWS, Google, Microsoft etc.  Obviously not all workloads are suitable for spot pricing, but what I did here was deliberately bid high (at the on-demand price for each instance type in fact) knowing that this would mean that I was very unlikely to get booted off the instances as anyone bid higher if capacity got short.  As EC2 instance costs are so low anyway, we tend to not worry too much about optimising costs by using spot pricing for many non-business critical uses – which is a bit lazy really and we could all exploit this more.  Let’s do that!

Next Page »

Follow

Get every new post delivered to your Inbox.

Join 801 other followers