From the Blogosphere
Developing a Microservices Pipeline | @DevOpsSummit #DevOps #Microservices
Organizations need smarter automation, better visibility, and standard controls applied across all services
Mar. 20, 2016 03:30 PM
Developing a Microservices Pipeline
By Necco Ceresani
The rise of microservices has enabled teams to branch out from developing for innately complicated, monolithic applications and work with small, flexible and comparatively simple components. But when these components (numbering anywhere from the hundreds to the thousands for one application) need to work together, traditional tools and release processes can be lacking. Organizations need to adopt new delivery models, release strategies and tooling that can handle this new multitude of services and their dependencies.
To reap the benefits of microservices at scale while also reducing application delivery cycle times and improving quality, organizations need smarter automation, better visibility, and standard controls applied across all services.
A benefit of microservices is that each one can be developed and delivered independent of others. The downside is that each also has its own development and release lifecycle, as well as its own release pipeline. The complexity of developing, testing and deploying the right versions of each service goes up exponentially as you scale. Coordinating across component delivery pipelines, ensuring consistency and control while still allowing manual steps when necessary is essential.
Manually tracking compliance data for microservices architectures can overtax the resources of even the most mature organizations: it’s just not possible. Automation support for compliance and security procedures make sure they are “baked in” to the release process. They automatically keep track of who did what, to what, when, and approved by whom, so audit requirements can be easily met. As an added bonus, automation support can capture metrics and produce reports you can use to continuously improve your processes.
Building applications from small, independent components makes applications easier to develop and evolve, but more moving parts means more to track – both the components themselves and the relationships between components. Better visibility means giving your teams the ability to manage dependencies and provide you with visibility into the release and deployment status of each microservice, so you have a single view into the entire ecosystem. When you deliver at rapid release cycles, enforcing dependencies and preventing deployment conflicts that slow releases and destabilize applications is only achievable with better visibility into your release processes.
Release Orchestration is the enablement of various automated tasks in a Continuous Delivery pipeline to be invoked at the right time. They generally also record the state and output of each of those tasks and visualize the flow of features through the pipeline. Regardless of what tools you use and where you choose to deploy – cloud, on-premise, container, mainframe, or a combination – you want to release and deploy with confidence.
The post Developing a Microservices Pipeline appeared first on XebiaLabs.
Read the original blog entry...