Archive

Two weeks before mobile world congress the Canonical offices received from Amazon one of the cheapest Intel servers with 6 Ethernet ports. It contains no hardware acceleration. Two weeks later employees from Ericsson, Cisco, Huawei, ZTE, HP Networking had to admit that they could not take us to see a smarter switch in the whole of MWC. This blog post is about what made this switch the smartest switch. The next blog post explains how this smart switch can solve the four biggest problems in the telecom industry (I.e. new revenue, churn reduction, cost reduction and OTT revenues).

So what made this switch so smart. First of all when we got it, it was an Intel server with an i5 processor and we had to go and buy 8GB of RAM and a 256GB SSD and put Ubuntu Core on it. The next thing our brilliant engineer Loic created was a Snapp App or Snap that made port 1 into WAN and the others into LAN. Now we actually had a switch. He and our equally brilliant head of R&D, Alex, also worked with F5 on a Snap that can boot up a KVM in which you run another operating system. This allowed us to put F5 Linerate in the switch. The end result is that we have the only Switch that very easily can support any exotic operating system to run on top. Via our Docker framework we could also run Docker based networking logic. However if you run the networking logic inside a Snap then this would give bare-metal performance with the flexibility of completely reconfiguring the switch by just deploying a different snap or adding multiple. If the engineers of the companies, that had to admit we had the smartest switch, want to win tomorrow then they just need to take a box with accelerated networking hardware and put a Snappy Framework that mediates between different Snaps that use network hardware acceleration. It would be the most flexible software defined networking appliance or SDNA out there. We also worked with the super engineers from Balabit that delivered a Firewall Snap in three days. So now we can assign Linerate to port 2 till 4 and Zorp to port 5 and 6. Making it a very flexible SDNA and Ubuntu Core the perfect NFV or SDNA operating system.

Zabbix already made one of our best written Juju Charms and they made a Snap of the Zabbix agent for ARM and Intel in no time. This means that our SDNA was now being monitored.

When telling the public that we called Microsoft to ask if they could write some software for our SNDA and open source it, everybody was surprised they said yes. The truth is that Microsoft is one of our best partners for quite some time now. Two days later we had a Snap that worked both on Intel and ARM and put a nice graph of the real-time load of our SDNA onto Azure. They even documented everything hence any programmer can connect Ubuntu Core to Azure super easy. Impressive work and thank you Microsoft because it made for a very surprising element in our story.

Even more surprising was the fact that we had ARM software running on Intel. Thanks to Forgerock and ARM we had an ARM mbed coap snap and mbed device server running in the cloud. Forgerock and ARM helped to put our SDNA inside a complete device management solution with identity and access management being seamlessly resolved.

However none of these solutions made us have the smartest switch of MWC. That was reserved to our amazing IoT partners Dataart and Cybervision. A simple €5 bluetooth low energy dongle integrated our switch with light and temperature sensors. Devicehive made our switch magically into a light controller. What was event more amazing was that via a Snap our switch became AllJoyn compliant and was the first switch to be able to talk to a television, dishwasher or fridge. The open source Devicehive will shortly be extended with Snaps for all possible IoT standards solving one of the biggest IoT problems for IoT developers instantly: interoperability. This will be the easiest way for any industrial gateway to become compliant with all types of standards. Also the cool open source IoT platform Kaa made our switch magical. Imagine how a shop can easily buy a Snap from a Snap Store that would be able to project Tweets onto a large LED display in the shop’s window. If only one Tweet every ten seconds would be randomly selected, it could start a new trend of Tweesplaying. The store that started it could potentially have millions of Tweets competing to be on the display and become an instant social network celebrity.

The last part was my most personal contribution. If you work with the most brilliant engineers you have to be able to ask intelligent questions. Nothing better than actually trying out the technology they just created. Thanks to a discount in Maplin, we were able to buy a robot arm for £35. Three hours later it was build. However there were no Linux drivers. I have been looking for an excuse to learn Golang and build something with Ajax. The end result is on github and you can now control the Maplin robot and make it do amazing demos via a Json script or some buttons.

All this would not have been possible without the contributions of all these amazing partners and colleagues, so thank you very much. So without any delay here is the smartest switch and the first software define network appliance, or SDNA. We hope somebody soon makes a smarter one because the hardware specs was embarrassingly low-end compared to what was available on the show.

Adrian was speaking at Gigaom’s Structure event and one detail of Gigaom’s article struck my attention. According to them Adrian thinks: ” Google will not be a huge factor in enterprise computing”.

How can it be that one of the biggest technology companies, owner of the most advanced distributed systems in the world and the inventor of cloud computing for internal use, can not get enterprise computing?

Why is Google’s Cloud not ready for Enterprise Computing?

1) Cloud-only vision

Google is the only of the three that has a Cloud-only vision. The two others understand that enterprises will not drop everything their doing and moving overnight all systems to the cloud. Without a “VPC” or hybrid cloud vision, Google is going nowhere.

2) Focused on the visionnaires

API solutions for mobile, prediction, etc. are all good and well but most enterprises don’t know what oAuth and REST mean. They are still stuck in the Corba, J2EE/RMI, Dotnet, etc. era. Yes Google has Apps, Gmail, etc. and they can compete with Office, Exchange, etc. but most enterprise software is customised for Office integration, not yet for Apps integration.

3) Lack of exit strategy

If you are a challenger you need to convince enterprises that the risk of moving to your platform is worth it. The best strategy is to say that people can easily go back. When AWS was only starting, you had Eucalyptus being the exit strategy. What will a CTO do when Google’s prediction API becomes too expensive? In enterprises the expression has always been: “Nobody ever got fired for choosing [fill in SAP, Microsoft, Oracle, etc.]”. AWS is the dominant player. Without an exit strategy Google is a big risk for enterprises.

4) Lack of trust

Google’s Gmail is famous for reading your emails and putting targeted ads on the Internet. Snowden, the NSA and Google scare non-American enterprises.

Solutions?

1) Cheapest without free movement is worthless

Google is starting a price war but AWS and Azure have done a good job at locking people into their services APIs. Google should work on multi-cloud solutions that allow people to convert any software into as-a-Service, a.k.a. Anything-as-a-Service / XaaS. Make people independent of the cloud provider and price becomes the most important aspect. There are solutions already for XaaS, you just need to know where to look.

2) On-Site Option

Google should embrace OpenStack and make sure it delivers on-par with the market leader VMWare but more importantly make sure that there is a one click option to move between OpenStack on-premise and the Google cloud as well as vice-versa.

3) Easy path from yesterday to tomorrow

Are you hooked on Exchange, Oracle, SAP, etc.? There should be easy migration tools as well as solutions to encapsulate the past and make it work with the future. Instant legacy integration is possible. Again you just need to know where to look.

4) Trust & SLA

One simple message: “Google will not spy on you and will give you the best SLA of the cloud industry”.

AWS is the undisputed winner of cloud 1.0 by haven taken the majority of the market. However prices are about to drop substantially. This will mean that compute and storage will become commodity.

Now what will Cloud 2.0 bring. It depends on who you ask. Here are some of the answers:

AWS Cloud 2.0
We are the cloud standard. You should come to us because we have abstracted every possible low-level service behind an easy to consume API. You don’t have to worry about a thing…

Google Cloud 2.0
Amazon is build on old school technology. We invented Cloud, just come to us and you will get superior technology and lightning speed. If you don’t want to pay but are willing to let us peep inside your VM then we are even willing to give cloud for free. Remember Google is good…

Azure Cloud 2.0
We are the easiest cloud to work with. If you have a Windows data centre then you can have a Windows cloud data centre in minutes.

Mom & Pops Cloud 2.0
We were cheaper than Amazon before but no longer. We are less innovative. Cash flow problem……..tut….tut…tut…crack

CTO Cloud 2.0
It is clear that having my own data centre is not a good business. Unless I need a private cloud for legal reasons, why not start using the public cloud. But which one and how can I move from one to another.

My Cloud 2.0
People need solutions that allow switching between different public and private clouds and find a common solution that is easy to use and very price competitive, ideally free.

If you want to see my Cloud 2.0 become reality and have used too many priority Cloud services, you want to take a look at what we are doing at Juju.ubuntu.com

Cloudify, from the scalability experts GigaSpaces, is still its early stages. Unlike Google App Engine, Azure, Heroku, etc. this PaaS is more focused on the application life cycle and not on being a “transparent” application server and database. The main focus is automating application and services deployment, monitoring, autoscaling, etc. The closest competitor would be Scalr.

Unlike Scalr, Cloudify’s focus is on Cloud-neutrality. Cloudify is not focusing on using specific Amazon services for scalability but instead to make a neutral Cloud platform. The advantage is that every possible Cloud being it private or public can be used and scenarios like hybrid clouds with Cloud bursting from private to public cloud are possible. The deep understanding of large-scale architectures in a company like GigaSpaces is a guarantee that Cloudify will scale in the future.

Cloudify is still missing some important functionality like security, multi-tenancy, integrations with lower-level automation frameworks (e.g. Chef and Puppet), complex upgrade management [e.g. rolling upgrades, MySQL schema upgrades, A/B testing of new features, etc.], etc. However the roadmap is pointing towards most of these items.

Software architects should understand the possibilities Cloudify, Scalr, etc. bring. By having a reusable automation framework companies are able to spend more development and operations time on bringing new business features and less on reinventing the wheel.

Most operators have a mobile portal in which end-users can buy games, applications, ringtones, etc. Several operators have a legacy of server hosting, email hosting, and other business services. Some operators have a marketplace where small medium enterprises can buy SaaS. Others are thinking or building a private cloud and want to become an infrastructure as a service provider. Often to avoid legacy hosting to disappear.

There can be reasons why a small, medium or large enterprise wants to use the infrastructure from an operator compared to a public cloud: SLAs, quality of network service, security, etc. Price is very likely not going to be one of them. Neither will be innovation or flexibility because here the likes of Amazon, Google and Microsoft are almost impossible to beat.

So why is it that operators think that IaaS is their preferred strategy to enter the cloud? I have no idea but my opinion is that it is easier to start with SaaS and work down to PaaS then to start at IaaS and work upwards. IaaS will have hyper-competition and very small margins as a consequence…

An alternative telco cloud strategy

Operators often have a direct sales channel towards medium-sized enterprises. By offering a SaaS marketplace they could extend the amount of services they are providing towards these medium enterprises. After reaching a tipping point, smaller enterprises will likely follow via direct web-based purchases. However reselling SaaS can never be a long-term strategy.

SaaS should be an initial start of a new customer relationship. Operators should focus on selling complete solutions focused on a specific industry or problem domain. Examples:

The operator should not focus on inventing these services but instead on creating the tools, the eco-system and the community for smaller IT shops and other to come up with scalable niche services.

To fully utilize a SaaS an SME needs help: training, configuration, customization, integration, etc. For this you need a services marketpace closely linked to your SaaS marketplace. As well as a long tail support solution.

Not clear??? A small company knows best what another small company need. However they do not have the infrastructure to reach and help thousands of other small companies in the world that have the same problem. This is where the operator should help both with global communication and IT solutions. A small company should not be focusing on installing a CRM, call center, ERP, etc. if they want to help others configuring and customizing a health care reminder service. They should have specialists in the health care reminder service and should be able to purchase the rest from the Long Tail Telco’s marketplace. They should also be able to auction a request for legal assistance, escrow-service, translation, etc., basically an all-in deal. The operator should focus on business communication in the broad sense, not the telephone service sense…

In the past automatic deployment of software was something that a handfull of data center specialists dominated. However the cloud is changing this needs. If you need to deploy a battery of web servers, application servers, database clusters, nosql farm, etc. then you need to think of automatic software deployment from day one. Additionally you might have to deploy applications on Google App Engine, Azure, Amazon EC2/S3/etc., Rackspace, GoGrid, etc.

The three core areas to automate are:

Cloud Provisioning

Configuration Management and Automation

Monitoring

Cloud Provisioning

The main advantage of the Cloud is its capability to autoscale. If you get more requests during the day, you turn up more machines. If you get less during the night then you switch some off. You can even do autoscaling by the hour or less. Since you pay by the hour, your costs will match your revenues.

These installers can be handy when we are talking about a private cloud. However in case a public cloud is used, we are more likely to want to use the public APIs offered by public Cloud providers to provision machines. Unfortunately there are no standard APIs in public Cloud land yet. The best option is to use tools or APIs that can handle multiple clouds: e.g. Openstack, JClouds, Fog,Deltacloud, etc. Using one API to deploy on multiple clouds is key to avoid vendor lock-in.

The truth to be said, there is no clear winner in this space yet because most solutions have limitations and customization will be required. However expect very active development to happen in the coming months.

Configuration Management and Automation

The clear marketleader in this area is Puppet, which becomes even better when combined with mCollective. Puppet is a client/server configuration management solution that allows you to describe what you want to install and configure in a abstraction language. mCollective adds real-time notification. The whole solution is very powerful, although some learning will be required before you are up and running.

Additionally there are tools whose focus is not on the software installation but instead on the deployment of applications once the main software stack is installed. Examples are: ControlTier, Capistrano, Fabric, etc.

Monitoring

With multiple servers, solutions and applications spread over multiple cloud providers, you need to monitor. Monitor to see if they are available, but also monitor to see if you need to switch on extra capacity or if it is safe to switch off some capacity.

Creating an automatec stack of tools to provision, deploy and monitor is an initial investment that will pay itself back very quickly. Other systems could be added to the stack like inventory and asset tracking, software version control, build automation, etc. In general there is no easy solution that gives you everything and this is where open source communities should focus their attention: bringing it all together and simplifying so we do not need experts…

Disclaimer

All the contents of the Blog, EXCEPT FOR COMMENTS AND QUOTED MATERIAL, constitute the opinion of the Author, and the Author alone; they do not represent the views and opinions of the Author’s employers, supervisors, nor do they represent the view of organizations, businesses or institutions the Author is a part of.

The Author is not responsible for the content of any comments made by the Commenter(s).

While we have made every attempt to ensure that the information contained in this Blog has been obtained from reliable sources, the Author is not responsible for any errors or omissions, or for the results obtained from the use of this information. All information in this Blog is provided "as is", with no guarantee of completeness, accuracy, timeliness or of the results obtained from the use of this information, and without warranty of any kind.