Book Image

Multi-Cloud Handbook for Developers

By : Subash Natarajan, Jeveen Jacob
Book Image

Multi-Cloud Handbook for Developers

By: Subash Natarajan, Jeveen Jacob

Overview of this book

Unleash the power of cloud computing with Multi-Cloud Handbook for Developers, your guide to mastering the nuances of cloud-native and multi-cloud, covering practical strategies for design, development, and management. Explore the essential concepts, challenges, and methodologies critical for navigating the complex landscape of modern cloud computing. Using core architectural and design principles (such as microservices and 12-factor architecture) and advanced strategies (such as distributed application design patterns, domain-driven design (DDD), and API-first strategies), you’ll learn how to build portable and efficient apps across various cloud platforms. You’ll understand how to leverage Infrastructure as Code (IaC), continuous integration and deployment (CI/CD), GitOps, and DevOps practices, along with containerization and orchestration techniques using Docker and Kubernetes. You’ll also get to grips with data, security, compliance, and cloud cost management strategies in multi-cloud environments. With real-world case studies, best practices, and insights into future trends, this book will equip you with the skills to develop, manage, troubleshoot, and innovate cloud-native applications across diverse cloud platforms, positioning you at the forefront of the cloud computing revolution.
Table of Contents (17 chapters)
1
Part 1:Introduction to Multi-Cloud and Cloud-Native
4
Part 2: Designing and Developing Cloud-Native Applications for Multi-Cloud
7
Part 3: Managing and Operating Cloud-Native Apps in Multi-Cloud
11
Part 4: Best Practices, Case Studies, and Future Trends for Multi-Cloud and Cloud-Native

CI/CD

Continuous Integration (CI) encourages developers to merge their code changes into a central repository frequently, preferably several times a day. This frequent integration can help prevent the dreaded “merge hell.” It allows teams to catch bugs and conflicts early and rectify them when they’re still fresh and relatively easy to fix.

When CI is combined with continuous deployment (CD), we have a robust system that takes the freshly integrated code and automatically tests, builds, and deploys it. This can mean deploying to a staging environment for further testing, or it could mean deploying straight to production if the automated tests provide enough confidence in the quality of the build. This continuous process ensures rapid feedback on the software and quicker delivery of features to the end users.

There are various tools available to implement CI/CD. Jenkins, an open source automation server, provides numerous plugins for building, deploying, and...