How Alfresco is powering the ECM industry transformation and move to a cloud powered digital Enterprise – Introducing the Alfresco SPK

http://www.amsimaging.com/blog/bid/146509/3-Reasons-Why-You-Should-Move-Your-Documents-to-the-Cloud-With-ECM
ECM in the Cloud

The move to cloud is happening, and to be fair ECM has been one of the most lagging businesses to finally take the leap and seriously look into the new delivery models (XaaS) the cloud opens up.

Metrics are off the roof, all the indicators part of the global intel we gather from customers, partners and prospects point in one direction: the future of ECM, like any other enterprise information system, is rapidly moving to cloud, and AWS is driving the space.

SaaS, PaaS, IaaS and company are growingly looked at as major IT optimization factors and concerns over data security are being fast overcome. And this is happening much more rapidly that you’d think and that was predicted just 12/24 months ago. Even in large organization, typically in “closed” vertical, often lagging from technology advancement standpoint.

At Alfresco, we are heavily investing in providing a seamless unified content platform which will ubiquitously enable the deployment of your ECM solutions on premise or on cloud (private, public, hybrid), leveraging natively cloud scale and availability features to power mission critical massive content repositories.

But what’s driving this transformation? In other words, from a customer standpoint, what the key drivers that are increasingly driving customers to choose cloud as a primary ECM deployment vehicle?

Scale (and elasticity) is definitely a key driver. You might have recently read about our joint effort with Amazon that ingested, processed and served 1B documents on an Alfresco instance running on AWS (EC2 + Aurora). As you can appreciate in the technical details of this benchmark, Aurora as a super-scalable database and the flexibility of growing up to 20 Solr shards + 10 Alfresco instances were the key winning factors, validating the choice of basing this benchmark on a flexible and scalable infrastructure like AWS and be able to leverage native features like availability and auto-scaling.

But the most compelling reason remains optimization of the IT processes and the mirage of handing off  maintenance of thicker and thicker layers of the stack to 3rd party providers. While this is not exactly big news (see this post from 2 years ago), especially with the flourishing plethora of DevOps tools to automate provisioning (Chef, Puppet, Ansible, Salt, etc.), orchestration (Kubernetes, Terraform, etc) and more in general the whole Dev -> Ops workflow with immutable containers (Docker, Unikernels, etc), organizations are quickly realizing the end to end benefits of a cloud strategy that starts from the bottom layers of the stacks to rapidly become pervasive and drive to the outsourcing of shared services, application layer, even application development itself and some of the back office processes.

At Alfresco, we are very aware of this movement and real life customer requirements springing off the DevOps movement, and so we have focused our efforts to provide an answer to our customers, partners and community members trying to deploying even growing and arbitrarily complex architectures seamlessly in Cloud and On premise, with native support for virtualized environments and containers.

As an initial deliverable and project to follow, less than 2 weeks ago at the Alfresco Day Roma, we have launched a community preview of the Alfresco SPK (Software Provisioning Kit), a toolbelt for the Alfresco admins and DevOps (much like the alfresco-sdk for Developers), which constitutes a common layer to easily provision Alfresco instances and stacks, either from scratch or starting from pre-existing images, based on pre-existing and commonly used DevOps technology like chef, Vagrant, Packer and virtual image formats (AMIs and Docker to start with). I want to give kudos to our DevOps department and especially Maurizio to have patiently worked with me to convey our internal DevOps experience into a customer facing tool. The SPK is hosted on Github and it’s a 100% community open source effort, so we welcome your feedback!

The SPK constitutes the first key building block to enable a set of very real customer use cases:

  1. First and foremost, provide a modern way of consuming Alfresco software, in the form of immutable pre-baked instance templates (see OOTB) which can be configured by the customer and composed in arbitrarily complex stacks (OOTB or customer define) that can then be ran in your favorite cloud and orchestration system (currently AWS and Cloud formation)
  2. Allow more advanced customer DevOps departments to consume Alfresco software and build images from scratch, to produce stacks that can be then packaged in the virtual format of choice (AMI to start with, Docker later)
  3. Enable the immutable container driven (e.g. via Docker) extended Developer workflow, to allow building of reliable and repeatable stacks locally and remotely, and enable Alfresco to take part to modern processes of continuous delivery and leverage cloud scalability / failover capabilities natively

Maurizio has put together a thorough presentation for the Alfresco Day which describes all the features and current state of the SDK.  You can find it below and we welcome your feedback.

NOTE: While it can work with Alfresco Enterprise, the Alfresco SPK is currently in Community Preview, which means it is NOT supported by Alfresco.

So currently we are looking for feedback and validation, rather recommending than leveraging this tool in production (use at your own risk!).

We are working on a more solid timeline for an EA (Early Adopter) and the GA (General Availability), so stay tuned!