On behalf of the development team. I'm pleased to announce the 0.3.0 release of Microservices Infrastructure. In the weeks since 0.2, we've added a number of features and improvements.
The software can be downloaded at: https://github.com/CiscoCloud/microservices-infrastructure
Documentation is located at: https://microservices-infrastructure.readthedocs.org/en/latest
Microservices Infrastructure is software that launches servers and then configures them to support a wide range of applications -like continuous delivery or realtime data processing.
This makes it easy to run application containers alongside data-centric workloads like Kafka, HDFS, Cassandra and Elasticsearch. We take leading open-source projects (Docker, Consul, Terraform, Mesos) and integrate them to build a powerful platform.
Microservices Infrastructure deploys to multiple cloud providers in minutes. High-availability, service discovery, metrics, security, and logging are built in.
All the components are released under an Apache 2.0 license. Bug reports and pull requests are welcome.
Deployment to OpenStack, AWS and Google Cloud via Terraform
With the addition of Openstack support to Terraform, Ansible-based cloud provisioning has been deprecated. With this release we've included configurations for OpenStack, Amazon Web Services, and Google Cloud. Future releases will include storage, VPN, and networking configurations and support for more providers.
To make the cloud installation process smoother, we've included a dynamic Ansible inventory script terraform.py that automatically discovers your hosts across clouds from your Terraform tfstate file and integrates them with Ansible roles.
This release includes support for collectd and Logstash. Collectd is used to monitor system statistics and Logstash can be used to forward system logs to a central point of a logging service.
0.3.0 includes collectd plugins for Docker, Mesos, Marathon and Zookeeper.
We've simplified the Vagrant process, getting rid of the need to run security setup or install python modules. vagrant up will bring up an environment without needing to run any other commands.
To improve service discovery, we've developed mesos-consul, a tool that populates Consul service discovery with Mesos tasks. Mesos task <taskname> will be automatically discoverable via dns as <taskname>.service.consul.
One benefit of this approach is that Mesos leader detection is saved in Consul DNS. leader.mesos.service.consul will point to the current Mesos leader.
Future releases will support populating consul with Mesos Service Discovery and labels.
We've developed a bridge between Marathon state and consul with marathon-consul. This allows us to support richer haproxy configurations (see below).
Our haproxy container now supports optionally reading from marathon-consul data. This means we now support non-HTTP proxying using Marathon global ports.
Future releases will support Mesos Service Discovery and labels to fine tune the proxy configuration.
You can selectively disable security settings at a granular level (for example, turning off Marathon authentication), or disable security entirely.
Initial support has been added for creating ISO images that can be used on bare metal systems.
Packer builds have been added for AWS, Google Cloud, and Vagrant. Openstack Glance support will be added in a future release.
Future releases will integrate these builds with terraform in order to speed up deployments.
If you encounter any issues, please open a Github Issue against the project. We review issues daily.
We also have a gitter chat room. Drop by and ask any questions you might have. We'd be happy to walk you through your first deployment.
Cisco Intercloud Services provides support for OpenStack based deployments of Microservices Infrastructure.
What are microservices?